Compare commits

..

4 commits

Author SHA1 Message Date
Yarmo Mackenbach
1ed3051f45
fix: add event filter to test CI 2024-06-02 16:51:27 +02:00
Yarmo Mackenbach
306895cb07
feat: fix node version during CI 2024-06-02 16:51:27 +02:00
Yarmo Mackenbach
a715e918c4
feat: add nix flake 2024-06-02 16:51:27 +02:00
Yarmo Mackenbach
2c91935862
feat: migrate from yarn to npm 2024-06-02 14:07:40 +02:00
21 changed files with 8193 additions and 7796 deletions

View file

@ -1,4 +1,4 @@
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"
yarn test
npm test

View file

@ -15,8 +15,10 @@ examples
\.woodpecker
package.json
yarn.lock
package-lock.json
rollup.config.js
\.editorconfig
\.gitignore
\.licenseignore
\.licenseignore
flake.nix
flake.lock

View file

@ -3,10 +3,9 @@ when:
event: tag
steps:
prepare:
image: node
image: node:20
commands:
- yarn --pure-lockfile
- yarn run prepare
- npm ci
publish-npm:
when:

View file

@ -1,7 +1,8 @@
when:
event: [push, pull_request, tag, release, manual]
steps:
test:
image: node
commands:
- yarn --pure-lockfile
- yarn run prepare
- yarn run test
- npm ci
- npm run test

Binary file not shown.

View file

@ -1,6 +0,0 @@
nodeLinker: node-modules
npmScopes:
myriation:
npmPublishRegistry: https://git.myriation.xyz/api/packages/myriation/npm/
npmAlwaysAuth: true
npmAuthToken: REPLACE-ME

643
dist/doip.core.js vendored

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

660
dist/doip.fetchers.js vendored

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

61
flake.lock Normal file
View file

@ -0,0 +1,61 @@
{
"nodes": {
"nixpkgs": {
"locked": {
"lastModified": 1717144377,
"narHash": "sha256-F/TKWETwB5RaR8owkPPi+SPJh83AQsm6KrQAlJ8v/uA=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "805a384895c696f802a9bf5bf4720f37385df547",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-24.05",
"repo": "nixpkgs",
"type": "github"
}
},
"root": {
"inputs": {
"nixpkgs": "nixpkgs",
"utils": "utils"
}
},
"systems": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"utils": {
"inputs": {
"systems": "systems"
},
"locked": {
"lastModified": 1710146030,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
}
},
"root": "root",
"version": 7
}

26
flake.nix Normal file
View file

@ -0,0 +1,26 @@
{
description = "doipjs";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-24.05";
utils.url = "github:numtide/flake-utils";
};
outputs = { self, nixpkgs, utils }:
utils.lib.eachDefaultSystem (system:
let
pkgs = import nixpkgs { inherit system; };
in
{
devShell = with pkgs; mkShell {
buildInputs = [
nodejs_20
];
shellHook = ''
echo "node `${pkgs.nodejs_20}/bin/node --version`"
'';
};
});
}

7474
package-lock.json generated Normal file

File diff suppressed because it is too large Load diff

View file

@ -1,6 +1,6 @@
{
"name": "@myriation/doipjs",
"version": "1.2.9+myriaiton.1",
"name": "doipjs",
"version": "1.2.9",
"description": "Decentralized Online Identity Proofs library in Node.js",
"type": "module",
"main": "./src/index.js",
@ -15,7 +15,6 @@
"default": "./src/fetcher/index.minimal.js"
}
},
"packageManager": "yarn@4.3.0",
"dependencies": {
"@openpgp/hkp-client": "^0.0.3",
"@openpgp/wkd-client": "^0.0.4",
@ -58,8 +57,8 @@
"rollup-plugin-visualizer": "^5.9.2"
},
"scripts": {
"release": "node ./prerelease.js && yarn run test && yarn run build",
"build": "rm -rf ./dist/ && yarn run build:bundle && yarn run build:minify",
"release": "node ./prerelease.js && npm run test && npm run build",
"build": "rm -rf ./dist/ && npm run build:bundle && npm run build:minify",
"build:bundle": "rollup -c",
"build:minify": "minify ./dist/doip.core.js > ./dist/doip.core.min.js && minify ./dist/doip.fetchers.js > ./dist/doip.fetchers.min.js && minify ./dist/doip.fetchers.minimal.js > ./dist/doip.fetchers.minimal.min.js",
"license:check": "license-check-and-add check",
@ -68,12 +67,12 @@
"docs:lib": "jsdoc -c jsdoc-lib.json -r -d ./docs -P package.json",
"lint": "eslint ./src",
"lint:fix": "eslint ./src --fix",
"test": "yarn lint && yarn run license:check && yarn run mocha",
"test": "npm run lint && npm run license:check && mocha",
"prepare": "husky install"
},
"repository": {
"type": "git",
"url": "https://git.myriation.org/myriation/doipjs"
"url": "https://codeberg.org/keyoxide/doipjs"
},
"homepage": "https://js.doip.rocks",
"keywords": [

View file

@ -22,4 +22,4 @@ limitations under the License.
* doip.js library version
* @constant {string}
*/
export const version = '1.2.9+myriaiton.1'
export const version = '1.2.9'

View file

@ -35,8 +35,7 @@ export const opts = {
privateKey: null
},
irc: {
nick: null,
sasl: []
nick: null
},
matrix: {
instance: null,

View file

@ -59,25 +59,12 @@ export async function fn (data, opts) {
}
try {
// Add sasl-related config if the server matches
const matchedSaslConfig = opts.claims.irc.sasl.find(saslConfig => data.domain.match(new RegExp(saslConfig.domainRegex)) !== null)
const saslOptions = matchedSaslConfig
? {
sasl: true,
userName: matchedSaslConfig.username,
password: matchedSaslConfig.password
}
: {
sasl: false
}
const client = new irc.Client(data.domain, opts.claims.irc.nick, {
port: 6697,
secure: true,
channels: [],
showErrors: false,
debug: false,
...saslOptions
debug: false
})
const reKey = /[a-zA-Z0-9\-_]+\s+:\s((?:openpgp4fpr|aspe):.*)/
const reEnd = /End\sof\s.*\staxonomy./

View file

@ -130,7 +130,6 @@ import { PublicKeyType, PublicKeyEncoding, PublicKeyFetchMethod, ProxyPolicy, Cl
* Config related to the verification of IRC claims
* @typedef {object} IrcClaimVerificationConfig
* @property {string} nick - The nick that the library uses to connect to the IRC server
* @property {{ domainRegex: string; username: string; password: string; }[]} sasl - An array of possible SASL logins
*/
/**

6389
yarn.lock

File diff suppressed because it is too large Load diff