Skip to content

Commit

Permalink
Release 2.0.2 (#1340)
Browse files Browse the repository at this point in the history
* New git branches setup (#1296)

* add dev branch to auto merge

* make clippy run on new branch setup

* remove version checker workflow

* add dev and release branch triggers to consistent workflow name checker

* Delete create_diagram.yml

* add dev and release branch triggers to lint workflow

* add release and dev branch triggers to provider_image workflow

* remove release drafter

* add dev and release branches to rustfmt workflow

* add dev and release branches to protocol test workflow

* add dev and release branches triggers to tests workflow

* add dev and release branch triggers to webpack bundling workflow

* switch cache creation to be post pr to dev

* rename post_pr workflow to cache

* Update cache.yml

* publish workflow

* Update cache.yml

* fix contract js/rust version check workflow

* install concurrently and cypress as workspace deps

* fix cypress workflow trigger

* fix cypress workflow branch triggers

* fix rust file triggers

* move webpack bundling check to tests workflow

* remove typechain version check

* rename workflows

* make the github actions cache include the branch name

* publish on push to main

* add js bundle test step

* workflow for ensuring all versions move in lockstep

* blurb for each workflow

* dockerhub login check for before a release

* rename publish to release

* remove typedoc step

* standardise step ids in release workflow

* dummy version bump

* Delete dockerhub_login.yml

* release version check

* workflow to check for valid version bumps

* auto merge all prs

* check consistent workflow names on all prs

* branch system docs

* check contract version on prs to main,dev,release/*

* add workflow_dispatch to all relevant workflows

* make auto merge only run on non-draft prs

* check versions on all branches

* make release run on push to main

* tag pushes to main

* rename version check workflow

* remove fetch all history and branches from clone

* fix docker js server version issue

* fix bump workflow to bump all package.json files and Cargo.tomls

* fix package.json version writing in bump workflow

* rename step

* make auto merge cancellable

* make deploy ahve a single notification of pass/fail

* debug info

* fix cache workflow name

* don't use cache in bump version workflow, not needed

* move buildx to top of workflow

* move the cli building to before publishing images in deploy workflow

* tag warning

* remove filters for tests, test more often

* add workflow dispatch to deploy workflow

* add bash error catching

* Create consistent_engine_node.yml

* Create consistent_engine_npm.yml

* Create consistent_nvmrc.yml

* cache docs

* event workflows for main and dev

* change event setup

* don't run unless non-draft pr

* combine protocol clippy and rustfmt into single lint workflow

* missing engine

* missing version

* revert version debug

* fix version

* fix workflow name detection

* add missing engines

* fix nvmrc check

* fix path typo in contract version check

* allow auto merge to run always

* Update package-lock.json

* lint

* lint

* Cache cypress install (#1305)

* remove install cypress step from cache workflow

* add cypress as dev dep

* Add staging branch to workflow (#1311)

* New linting (#1309)

* lint dockerfiles

* lint caddyfiles

* lint github actions workflows

* lint shell scripts

* yaml lint

* lint python

* yamllint config

* lint js

* lint html

* lint markdown

* htmlhint ignore files

* simplify caddy lint

* replace eslint + prettier with biome, add run-s and run-p

* lint rust

* lint toml

* configure biome target files

* lint svg

* jsx and tsx lint

* adjust lint command in npm scripts

* fix license

* change lint changed script name

* adjust lint workflow

* Update package-lock.json

* fix npm script error handling (#1306)

* fix auto merge (#1302)

* fix auto merge

* add repo parameter to auto merge

* add repo parameter to auto merge workflow

* Remove contract calls (#1308)

* remove contract calls from procaptcha

* linted stuff

* Adding empty providers

* Adding hardcoded random providers

* Adding changes to load process

* Debugging

* debug

* nearly working state management

* fast captchas with no contract

* Removing debug

* Timestamp signature validation

* Working no rpc calls full captcha flow

* linting

* Unit tests potentially working

* dropping debug

* All passing cypress demo

* Bundle falling over when hashing

* dropping bundle pure replace

* Remove polkadot manual bundling hacks

* No provider pow

* Working pow without contract calls

* revert sitekey changes

* verified instead of context

* don't log config

* removing cypress capture images

* removing bad deps

* Removing debug

* fixing build

* fixing providers

* Correct docstring

* rebuilt package lock

* Removing stats file

* Skipping lint in protocol

* removing typechain change because protocol bump required

* removing unused deps

* temp bump while firefighting

* Dropping provider gui

* Working build without provider gui

* Removing batch commit tasks

* Dropping protocol

* Working build without protocol dir

* Dropping proxy and package lock pointing to proxy

* Working build with new pkg deps

* Removing common contract

* Dropping tests for rewrite

* Working no captcha product

* Dropping merkle tree

* Refactoring provider and adding temp tests

* Refactored provider into multiple single responsibility classes

* lint fix

* pkg lock bump

* Renaming tests to non test file to pass

* Tests passing

* Debug for datasetId getter

* Working provider set dataset

* Auth Middleware Test

* Captcha scheduler tests

* Error Handler tests

* Provider now boots without connection to rpc node

* Full suite of unit tests for provider

* Tests passing

* Fixed build

* Integration tests. Actions for this to be set up

* Working image captcha integration tests

* Unit tests paths correction

* Fixing version bump yml

* Removing debug

* Adding dummy get random provider script

* Removing dockerfile and vite env config

* Replacing signedTimestamp with timestampSignature

* Deduping config by making it its own package

* Defaulting message to provider online

* Fixing type issues and ws requirement issues

---------

Co-authored-by: Chris Taylor <forgetso86@gmail.com>
Co-authored-by: George Oastler <goastler@users.noreply.github.com>

* Removing unused deps, bumping package lock

* Working pow captcha with timeouts

* Add missing deps and bundling command for staging

* Remove version from docker compose files

* Use NODE_ENV var for pulling in env var file into docker compose file

* Add staging deploy process

* Add staging bundle command

* package lock

* Remove old deps.

* Update package-lock.json

* Update event name

* Add missing dep

* Use latest image to create container from

* Use staging tag for container

* Await crypto WASM blob

* Allow NODE_ENV to be passed into Vite config

* Add load-balancer refs to tsconfigs

* Allow PROSOPO_DEFAULT_ENVIRONMENT to inherit from NODE_ENV

* Add some logging and change some imports

* exporting hardcoded provider from types

* Cleanup linting process (#1312)

* lint dockerfiles

* lint caddyfiles

* lint github actions workflows

* lint shell scripts

* yaml lint

* lint python

* yamllint config

* lint js

* lint html

* lint markdown

* htmlhint ignore files

* simplify caddy lint

* replace eslint + prettier with biome, add run-s and run-p

* lint rust

* lint toml

* configure biome target files

* lint svg

* jsx and tsx lint

* adjust lint command in npm scripts

* fix license

* change lint changed script name

* adjust lint workflow

* Update package-lock.json

* remove old lint scripts

* remove prettier + eslint config

* remove eslint dep

* remove prettier dep

* Update package-lock.json

* Fix provider not erroring on database connection error. Add option to specify the number of proxies between the provider API and the user

* Add staging command back in

* deploy staging workflow to bundle branch

* addit commit details for bumps

* Add watchtower to provider docker compose

* Don't mount missing file

* watch provider container only

* Change container name

* Use createConnection instead of connection

* Fix build

* Staging deploy workflow (#1314)

* rename version step

* detect prod/staging in deploy

* remove contract building in deploy

* build js bundles based on env

* use docker tag based on env

* use prod env

* gh release on prod only

* npm release on prod only

* use docker latest and version specific tags

* use docker tags from env in img tags

* join version and env steps

* prod/dev -> production/development

* NODE_ENV variable setup in npm scripts

* missing NODE_ENV fixes

* fix tsc build / clean cmds

* NODE_ENV semis

* vite use NODE_ENV as --mode

* use NODE_ENV to control bundling of production/development/staging env

* use NODE_ENV to control build scripts

* remove needless NODE_ENV setting

* Delete deploy-staging.yml

* deploy on unsafe branch guard

* upload bundle to staging release as part of deploy workflow

* typo missing vite

* license

* remove contract linting

* remove docker compose linting from dockerfile lint cmd

* fix yamllint

* make caddy fmt output diff

* install htmlhint

* fix rustfmt lint script

* use cargofmt instead of rustfmt

* fix lint rs naming

* fix clippy linting

* fix toml linting

* simplify xargs serial command usage in rust linting

* lint rust check

* webpack bundle dev mode fix

* webpack plugin fix

* webpack fix

* improve npm scripts

* improve node_modules associated with npm scripts

* bundle npm script

* fix release asset target

* remove any current assets before uploading any further staging assets

* Pkg json

* bump version to v2.0.0

* no build specified

* remove deploy_X scripts

* remove deploy_X scripts

* remove deploy_protocol script call

* remove deploy_protocol workflow step

* remove github assets for contract

* remove deploy_protool

* Use 2.0.0 everywhere

* Provider tests passing

* Adding if present to cjs

* Dropping auto merge

* Dropping dapp example demo

* fix check version bump all history available

* Update check_version_bump.yml

* Update check_version_bump.yml

* Remove out of date readme

* Update check_version_bump.yml

* Re-add old babel plugins

* start provider

* Always add the token to the form

* Supply token to onHuman function

* Fix build

* Adding button next for cypress tests

* Fixing hanging test

* Fixing get dataset being broken

* Remove substrate from docker compose

* Cypress tests passing

* stop the provider workflow from falling over if the npm packages are unreleased

* Only load the provider mock container if we built it

* Try to upload screenshots

* Try to store screenshots on failure

* Try using withinSubject:null

* Wait for button to be visible

* Wait for the the API call

* Remove wait for solution request

* try to force the click

* Just force, don't expect the element

* try waiting after clicking

* Store videos of cypress runs

* Remove the then

* Remove duplicate click

* Fix function return type

* try within

* Adding setup step for setup env in test

* Add data-cy attributes if environment is not production

* wait for docker containers to setup env

* Adding setup step for setup env in test

* Start docker first

* Check if there are references

* remove within

* Try to kill processes with concurrently

* Size fixes for widget and logo

* Make signature stuff less confusing

* Fix license header positions

* Fix tests

* Get it all working

* Fix size

* Fix lint issues (#1318)

* rename version step

* detect prod/staging in deploy

* remove contract building in deploy

* build js bundles based on env

* use docker tag based on env

* use prod env

* gh release on prod only

* npm release on prod only

* use docker latest and version specific tags

* use docker tags from env in img tags

* join version and env steps

* prod/dev -> production/development

* NODE_ENV variable setup in npm scripts

* missing NODE_ENV fixes

* fix tsc build / clean cmds

* NODE_ENV semis

* vite use NODE_ENV as --mode

* use NODE_ENV to control bundling of production/development/staging env

* use NODE_ENV to control build scripts

* remove needless NODE_ENV setting

* Delete deploy-staging.yml

* deploy on unsafe branch guard

* upload bundle to staging release as part of deploy workflow

* typo missing vite

* license

* remove contract linting

* remove docker compose linting from dockerfile lint cmd

* fix yamllint

* make caddy fmt output diff

* install htmlhint

* fix rustfmt lint script

* use cargofmt instead of rustfmt

* fix lint rs naming

* fix clippy linting

* fix toml linting

* simplify xargs serial command usage in rust linting

* lint rust check

* webpack bundle dev mode fix

* webpack plugin fix

* webpack fix

* improve npm scripts

* improve node_modules associated with npm scripts

* bundle npm script

* fix release asset target

* remove any current assets before uploading any further staging assets

* add nuke script

* set shell in dockerfile

* use json form of CMD in dockerfile

* fix multiple RUN commands in dockerfile

* remove apt sources after install

* use apt get

* use apt-get in dockerfile instead of apt

* join multiple run commands together in dockerfile

* entrypoint json form

* no install recommends

* ignore install recommends lint

* fix multiple run commands and apt clear

* CMD to json form

* no install recommends

* remove root user, is default

* set nginx version

* multiple RUN commands fix

* set shell to use pipefail

* delete apt lists after install

* fix consecutive RUN commands

* no install recommends

* ignore usage of latest

* dockerfile lint

* Update substrate-contracts-node.build.dockerfile

* json form for CMD

* lint dockerfile

* lint caddyfile

* fix needless cat

* useless echo

* speech marks for safety

* make dockerfile and shell linting command simpler

* fix quotes and variable usage in cache workflow

* fix quotes

* fix quotes

* fix quotes

* fix quotes

* fix NODE_ENV speech marks in workflows

* useless cat

* unused vars

* lint

* missing speech marks

* speech marks

* lint eval and @ usage in shell

* lint shell script

* fix yamllint linting

* fix lint md and js fix cmd

* autofix js

* fix biome cmdline args

* biome lint fixes

* biome lint fix

* make biome use vcs

* no export from tests

* fix key in list

* missing useEffect dep

* explicit any todo

* lint fixes

* warn on parameter assign

* todo for any

* trailing comma

* ignore any type for options

* fix line count parameter reassigned

* fix not null assertion

* ignore any from axios response

* ignore any casts

* ignore any in async ctor

* no reuse of parameter

* ignore i18n translation any

* ignore anys in nodejs polars plugin

* ignore any for response json

* avoid parameter reuse

* fix any usage in vite watch plugin

* fix side effect in vite watch plugin

* fix reused variables in error classes

* disable rule for key event with onClick

* forEach to for of

* missing bracket

* allow any

* forEach to for of

* allow any

* forEach to for of

* allow any

* allow any

* forEach to for of

* use item hash as key

* fix useEffect deps

* todo for async exec

* allow any + async exec

* allow any

* forEach to for of

* ignore spread

* TODOs for sendFunds

* allow any

* ignore async exec

* allow any

* todo for memo deps

* ignore detector code, contains loads of biome errors

* fix anys, foreach and local params

* ignore foreach

* fix any

* allow any

* allow any

* allow any and foreach

* allow any

* allow any

* allow any

* allow enum

* allow any

* allow any

* allow any

* allow any

* allow any

* allow any

* allow any

* allow any

* allow any

* allow any

* allow any

* allow any

* allow any

* foreach to for of

* allow any

* allow any

* allow any and foreach to for of

* img buffer type

* allow any

* allow any

* allow any

* foreach to for of

* allow any

* make biome do formatting too

* biome format

* ignore bundles

* lint

* lint md files

* lint md

* disable some markdown rules

* lint rs

* fix rs

* fix npm scripts

* lint

* ignore ruff.toml when linting tomls

* lint

* lint py npm scripts

* remove eslint directives

* make biome track the main branch and handle css

* fix caddy linting

* lint

* lint

* lint

* configure taplo

* Update ruff.toml

* fix scripts

* lint

* remove eslint

* lint

* fix speech mark issues

* typo

* fix lint fixes types

* more fixes for linting fixes

* fix for potentially undefined root node of merkle tree

* duplicate selector

* lint

* ignore bundle stats html file

* missing provider env for starting provider

* async factory fix

* remove debug

* lint

* revert detector index.js changes

* lint

* polyfill node: imports

* fix for node:url breaking bundle

* use package workspaces rather than cd'ing (#1321)

* Add push to js branch again to get live staging bundle

* Remove any existing procaptcha responses on human

* deploy staging on push to staging

* Use duplicate JS Server for now

* Silence GH warning about NoSQL injection in demo

* Silence GH warning about NoSQL injection in demo

* Set GH_TOKEN env

* Remove production step for JS Server

* Add back command to push to js-bundle branch. Remove quotes in asset deletion script

* Use correct docker tag

* Try moving to its own step

* don't fail if nothing to commit

* Update provider docker run CMD

* Always pull new version of tag for provider image

* Update provider CMD

* Alter the verify endpoint when in non-production environments in client-example demo

* Allow PoW captchas to be stored and counted

* Removing exportData from Manager

* Adding synamic config for load balancer

* Fix build

* fix server build

* fix server again

* fix provider build

* Removing dangerou

* Change scale-ts type to u64 to avoid losing data

* revert change to number for timestamp

* make sure procaptcha-response is deleted

* Fix scheduler database name and add env option for storage schedule

* Make the models available once the connection has been made

* Move headers

* Update js_server release step

* Try using secret directly

* Add some debug

* Modify debug

* Yet more debug

* I give up

* Working captcha results in mongo (#1322)

* Fixing db schema for pow captchas

* dropping new debug

* Use a var for mongo image

* more debug

* Removing lint fix from version bump

* User data mvp (#1327)

* Update captcha records for user portal data requirements

* pow types overhaul

* Harden tests against function parameter changes

* only run prosoponator on non-draft pr's (#1333)

* fix dir capitalisation (#1329)

* fix dir capitalisation

* fix path

* Introduce dotenv package for finding environment files (#1334)

* Introduce dotenv package for finding environment files

* Package-lock.json

* Update references to old loadEnv

* Update package references

* Add the config files

* Update loadEnv ref

* Update loadEnv refs in demos

* trigger tests

* Update dotenv reference

* Specify no tests

* Fix dataset IDs for staging providers

* Allow pow challenges to be submitted more than once for verification

* Fail if the challenge exists in the db

* Revert unlimited challenge checking

* Make demo re-render captcha component when form changes

* Allow navigating between the captcha types

* Fix license location

* remove debug

* Store something on each request. Update PoW types. Additional checks (#1336)

* removed network types

* remove substrate containers / env params

* remove CONTRACT env vars

* fix imports

* remove networks

* remove network from getPairAsync

* remove networks + contract

* remove default network from env

* remove default network

* remove network default + types from types pkg

* remove network types

* remove block number

* Update package-lock.json

* Update package-lock.json

* remove contract dep for demo

* Store something on each request. Update PoW types. Additional checks

* Additional checks

* Restrict captcha solution checking by dapp account

* fix build

* Fix cypress tests

* lots of updates to types

* Fix up tests. Add types for Get Image Captcha URL

* Remove some unuse types. Type an API URL

* Zod type translation keys. Use enum values when updating database. Add enum arrays to mongoose schemas. Use ApiParams everywhere

* Set the correct key and value for storedStatus

* Fix up unit tests

* Make sure we're setting updated timestamps everywhere. Don't send the same data to the captcha storage DB twice. Add details of cron jobs that have run to scheduled tasks collection

* Fix up tests

* remove file that does nothing

---------

Co-authored-by: George Oastler <goastler4@gmail.com>

* Bug fix for missing status in scheduled task record

* Fix captcha storage mechanism. Add tests (#1337)

* Fix captcha storage mechanism. Add tests

* Fix up tests. Move verifyRecency function to util

* Update test env template

* Fix build

* use correct branch name in bump version

* Bump version to 2.0.2

* Bump version to 2.0.2

* bump versions

---------

Co-authored-by: George Oastler <goastler@users.noreply.github.com>
Co-authored-by: George Oastler <goastler4@gmail.com>
Co-authored-by: Chris <forgetso86@gmail.com>
Co-authored-by: Hugh <90424587+HughParry@users.noreply.github.com>
Co-authored-by: Hugh <hughglynparry@gmail.com>
  • Loading branch information
6 people authored Aug 29, 2024
1 parent 1e18396 commit 7f12b46
Show file tree
Hide file tree
Showing 166 changed files with 13,151 additions and 9,591 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/prosoponator_bot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ on: issue_comment
jobs:
comment:
# This job only runs for pull request comments
if: ${{ github.event.issue.pull_request }}
if: ${{ github.event.issue.pull_request }} && github.event.pull_request.draft == false
runs-on: ubuntu-latest
steps:
- name: Print contexts
Expand Down
42 changes: 21 additions & 21 deletions demos/client-bundle-example/package.json
Original file line number Diff line number Diff line change
@@ -1,23 +1,23 @@
{
"name": "@prosopo/client-bundle-example",
"main": "index.js",
"engines": {
"node": ">=20",
"npm": ">=9"
},
"scripts": {
"test": "echo \"No test specified\"",
"build": "echo \"No build specified\"",
"start": "vite serve ./src --port 9232 --config vite.config.ts",
"clean": "echo 'nothing to clean'"
},
"dependencies": {
"dotenv": "^16.0.1",
"vite": "^5.1.7"
},
"version": "2.0.1",
"devDependencies": {
"tslib": "2.6.2",
"typescript": "5.1.6"
}
"name": "@prosopo/client-bundle-example",
"main": "index.js",
"engines": {
"node": ">=20",
"npm": ">=9"
},
"scripts": {
"test": "echo \"No test specified\"",
"build": "echo \"No build specified\"",
"start": "vite serve ./src --port 9232 --config vite.config.ts",
"clean": "echo 'nothing to clean'"
},
"dependencies": {
"dotenv": "^16.0.1",
"vite": "^5.1.7"
},
"version": "2.0.2",
"devDependencies": {
"tslib": "2.6.2",
"typescript": "5.1.6"
}
}
2 changes: 1 addition & 1 deletion demos/client-bundle-example/src/jsBundleTest.html
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
<div
class="procaptcha"
data-theme="light"
data-sitekey="5HUBceb4Du6dvMA9BiwN5VzUrzUsX9Zp7z7nSR2cC1TCv5jg"
data-sitekey="5HGjWAeFDfFCWPsjFQdVV2Msvz2XtMktvgocEZcCj68kUMaw"
></div>
</form>
</body>
Expand Down
5 changes: 1 addition & 4 deletions demos/client-example-server/env.development
Original file line number Diff line number Diff line change
@@ -1,13 +1,10 @@
PROSOPO_VERIFY_ENDPOINT=http://localhost:9237/dev/siteverify
PROSOPO_VERIFICATION_TYPE=local
PROSOPO_SITE_KEY=5HGjWAeFDfFCWPsjFQdVV2Msvz2XtMktvgocEZcCj68kUMaw
PROSOPO_SUBSTRATE_ENDPOINT=ws://localhost:9944
PROSOPO_CONTRACT_ADDRESS=
PROSOPO_WEB2=true
PROSOPO_SERVER_URL=https://localhost
PROSOPO_SITE_PRIVATE_KEY=//Eve
PROSOPO_SERVER_PORT=9228
PROSOPO_DEFAULT_ENVIRONMENT=development
PROSOPO_DEFAULT_NETWORK=development
PROSOPO_MONGO_EVENTS_URI=mongodb+srv://<MONGO_URI_HERE>/frictionless_events
_DEV_ONLY_WATCH_EVENTS=false
_DEV_ONLY_WATCH_EVENTS=false
100 changes: 50 additions & 50 deletions demos/client-example-server/package.json
Original file line number Diff line number Diff line change
@@ -1,52 +1,52 @@
{
"name": "@prosopo/client-example-server",
"version": "2.0.1",
"description": "Backend for client-example",
"main": "dist/app.js",
"type": "module",
"engines": {
"node": ">=20",
"npm": ">=9"
},
"scripts": {
"test": "echo \"No test specified\"",
"dev": "NODE_ENV=${NODE_ENV:-development}; vite serve --mode=$NODE_ENV --config ./vite.config.ts --host",
"start": "node ./dist/app.js",
"start:bundle": "node ./dist/bundle/prosopo_client_example_server.app.bundle.js",
"build": "tsc --build --verbose",
"bundle": "NODE_ENV=${NODE_ENV:-production}; vite build --mode=$NODE_ENV --config ./vite.config.ts",
"clean": "tsc --build --clean"
},
"repository": {
"type": "git",
"url": "git+https://github.com/prosopo/client-example-server.git"
},
"author": "PROSOPO LIMITED <info@prosopo.io>",
"license": "Apache-2.0",
"bugs": {
"url": "https://github.com/prosopo/client-example-server/issues"
},
"homepage": "https://github.com/prosopo/client-example-server#readme",
"dependencies": {
"@noble/hashes": "^1.3.1",
"@polkadot/util": "12.6.2",
"@polkadot/util-crypto": "12.6.2",
"@prosopo/api": "2.0.1",
"@prosopo/contract": "2.0.1",
"@prosopo/procaptcha": "2.0.1",
"@prosopo/server": "2.0.1",
"@prosopo/types": "2.0.1",
"@typegoose/auto-increment": "^4.5.0",
"cors": "^2.8.5",
"jsonwebtoken": "^9.0.0",
"mongoose": "^8.5.1",
"zod": "^3.22.3"
},
"devDependencies": {
"@prosopo/config": "2.0.1",
"@types/jsonwebtoken": "^9.0.2",
"tslib": "2.6.2",
"typescript": "5.1.6",
"vite": "^5.1.7"
}
"name": "@prosopo/client-example-server",
"version": "2.0.2",
"description": "Backend for client-example",
"main": "dist/app.js",
"type": "module",
"engines": {
"node": ">=20",
"npm": ">=9"
},
"scripts": {
"test": "echo \"No test specified\"",
"dev": "NODE_ENV=${NODE_ENV:-development}; vite serve --mode=$NODE_ENV --config ./vite.config.ts --host",
"start": "node ./dist/app.js",
"start:bundle": "node ./dist/bundle/prosopo_client_example_server.app.bundle.js",
"build": "tsc --build --verbose",
"bundle": "NODE_ENV=${NODE_ENV:-production}; vite build --mode=$NODE_ENV --config ./vite.config.ts",
"clean": "tsc --build --clean"
},
"repository": {
"type": "git",
"url": "git+https://github.com/prosopo/client-example-server.git"
},
"author": "PROSOPO LIMITED <info@prosopo.io>",
"license": "Apache-2.0",
"bugs": {
"url": "https://github.com/prosopo/client-example-server/issues"
},
"homepage": "https://github.com/prosopo/client-example-server#readme",
"dependencies": {
"@noble/hashes": "^1.3.1",
"@polkadot/util": "12.6.2",
"@polkadot/util-crypto": "12.6.2",
"@prosopo/api": "2.0.2",
"@prosopo/dotenv": "2.0.2",
"@prosopo/procaptcha": "2.0.2",
"@prosopo/server": "2.0.2",
"@prosopo/types": "2.0.2",
"@typegoose/auto-increment": "^4.5.0",
"cors": "^2.8.5",
"jsonwebtoken": "^9.0.0",
"mongoose": "^8.5.1",
"zod": "^3.22.3"
},
"devDependencies": {
"@prosopo/config": "2.0.2",
"@types/jsonwebtoken": "^9.0.2",
"tslib": "2.6.2",
"typescript": "5.1.6",
"vite": "^5.1.7"
}
}
6 changes: 2 additions & 4 deletions demos/client-example-server/src/app.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,15 +16,13 @@ import { ProsopoEnvError, getLoggerDefault } from "@prosopo/common";
import { getServerConfig } from "@prosopo/server";
import { at } from "@prosopo/util";
import cors from "cors";
import dotenv from "dotenv";
import { loadEnv } from "@prosopo/dotenv";
import express from "express";
import routesFactory from "./routes/routes.js";
import connectionFactory from "./utils/connection.js";
import memoryServerSetup from "./utils/database.js";

export function loadEnv() {
dotenv.config({ path: getEnvFile() });
}
loadEnv();

export function getEnvFile(filename = ".env", filepath = "./") {
const env = process.env.NODE_ENV || "development";
Expand Down
15 changes: 7 additions & 8 deletions demos/client-example-server/src/controllers/auth.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,3 @@
import { blake2b } from "@noble/hashes/blake2b";
import { u8aToHex } from "@polkadot/util";
import { randomAsHex } from "@polkadot/util-crypto";
import { ProsopoEnvError } from "@prosopo/common";
import { getPairAsync } from "@prosopo/contract";
import { ProsopoServer } from "@prosopo/server";
// Copyright 2021-2024 Prosopo (UK) Ltd.
//
// Licensed under the Apache License, Version 2.0 (the "License");
Expand All @@ -17,6 +11,13 @@ import { ProsopoServer } from "@prosopo/server";
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

import { blake2b } from "@noble/hashes/blake2b";
import { u8aToHex } from "@polkadot/util";
import { randomAsHex } from "@polkadot/util-crypto";
import { ProsopoEnvError } from "@prosopo/common";
import { getPairAsync } from "@prosopo/contract";
import { ProsopoServer } from "@prosopo/server";
import {
ApiParams,
type ProcaptchaToken,
Expand Down Expand Up @@ -86,7 +87,6 @@ const signup = async (
});
const payload = SubscribeBodySpec.parse(req.body);
const pair = await getPairAsync(
config.networks[config.defaultNetwork],
config.account.secret,
);
const prosopoServer = new ProsopoServer(config, pair);
Expand Down Expand Up @@ -153,7 +153,6 @@ const login = async (
) => {
const User = mongoose.model<UserInterface>("User");
const pair = await getPairAsync(
config.networks[config.defaultNetwork],
config.account.secret,
);
const prosopoServer = new ProsopoServer(config, pair);
Expand Down
28 changes: 14 additions & 14 deletions demos/client-example-server/vite.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.
import * as path from "node:path";
import { loadEnv } from "@prosopo/cli";
import { loadEnv } from "@prosopo/dotenv";
import { ViteBackendConfig } from "@prosopo/config";
import { defineConfig } from "vite";
import { version } from "./package.json";
Expand All @@ -31,17 +31,17 @@ process.env.TS_NODE_PROJECT = path.resolve("./tsconfig.json");

// Merge with generic backend config
export default defineConfig(async ({ command, mode }) => {
const backendConfig = await ViteBackendConfig(
packageName,
packageVersion,
bundleName,
dir,
entry,
command,
mode,
);
return defineConfig({
...backendConfig,
server: { port: process.env.PROSOPO_SERVER_PORT },
});
const backendConfig = await ViteBackendConfig(
packageName,
packageVersion,
bundleName,
dir,
entry,
command,
mode,
);
return defineConfig({
...backendConfig,
server: { port: process.env.PROSOPO_SERVER_PORT },
});
});
2 changes: 0 additions & 2 deletions demos/client-example/env.development
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
PROSOPO_SITE_KEY=5HGjWAeFDfFCWPsjFQdVV2Msvz2XtMktvgocEZcCj68kUMaw
PROSOPO_SUBSTRATE_ENDPOINT=ws://127.0.0.1:9944
PROSOPO_CONTRACT_ADDRESS=
PROSOPO_WEB2=true
PROSOPO_SERVER_URL=http://localhost
PROSOPO_PORT=9230
PROSOPO_DEFAULT_NETWORK=development
PROSOPO_DEFAULT_ENVIRONMENT=development
PROSOPO_MONGO_EVENTS_URI=mongodb+srv://<MONGO_URI_HERE>/frictionless_events
_DEV_ONLY_WATCH_EVENTS=false
Loading

0 comments on commit 7f12b46

Please sign in to comment.