lightning-terminal: init at 0.14.1-alpha (#383162)

This commit is contained in:
Pavol Rusnak
2025-02-28 22:30:42 +01:00
committed by GitHub
2 changed files with 245 additions and 0 deletions
@@ -0,0 +1,139 @@
{
"name": "lightning-terminal",
"version": "0.0.1",
"description": "Lightning Terminal",
"repository": "https://github.com/lightninglabs/lightning-terminal",
"private": true,
"scripts": {
"start": "BROWSER=none react-scripts start",
"develop": "REACT_APP_USE_SAMPLE_DATA=true yarn start",
"build": "react-scripts build",
"postbuild": "git restore build/.gitkeep",
"test": "react-scripts test --env=jest-environment-jsdom --transformIgnorePatterns \"node_modules/(?!d3)/\"",
"test:ci": "cross-env CI=true yarn test --coverage",
"eject": "react-scripts eject",
"lint": "eslint --ext .ts,.tsx --ignore-path .eslintignore .",
"tsc": "tsc --noEmit",
"protos": "node ./scripts/build-protos.js",
"storybook": "storybook dev -p 9009 -s public",
"build-storybook": "storybook build -s public"
},
"dependencies": {
"@emotion/react": "11.4.0",
"@emotion/styled": "11.3.0",
"@improbable-eng/grpc-web": "0.14.0",
"@types/react-collapse": "^5.0.1",
"big.js": "6.1.1",
"bootstrap": "4.6.1",
"buffer": "6.0.3",
"copy-to-clipboard": "3.3.1",
"d3": "7.8.5",
"date-fns": "2.14.0",
"debug": "4.3.1",
"file-saver": "2.0.2",
"http-proxy-middleware": "2.0.7",
"i18next": "19.5.1",
"i18next-browser-languagedetector": "5.0.0",
"lodash": "4.17.21",
"lottie-web": "5.7.0",
"mobx": "6.3.2",
"mobx-react-lite": "3.2.0",
"mobx-utils": "6.0.4",
"qrcode.react": "^3.1.0",
"rc-dialog": "^8.9.0",
"rc-select": "11.5.0",
"rc-switch": "^4.0.0",
"rc-tooltip": "4.2.1",
"react": "17.0.2",
"react-collapse": "^5.1.1",
"react-dom": "17.0.2",
"react-i18next": "13.5.0",
"react-router-dom": "^6.3.0",
"react-toastify": "6.0.6",
"react-virtualized": "9.21.2",
"reactour": "1.18.0",
"semver": "^7.5.2",
"styled-components": "5.1.1"
},
"devDependencies": {
"@storybook/addon-actions": "7.5.3",
"@storybook/addon-docs": "7.5.3",
"@storybook/addon-links": "7.5.3",
"@storybook/addons": "7.5.3",
"@storybook/preset-create-react-app": "7.5.3",
"@storybook/react": "7.5.3",
"@storybook/react-webpack5": "7.5.3",
"@testing-library/jest-dom": "5.11.5",
"@testing-library/react": "11.1.1",
"@testing-library/user-event": "12.2.0",
"@types/big.js": "6.1.1",
"@types/d3": "7.4.3",
"@types/debug": "4.1.5",
"@types/file-saver": "2.0.1",
"@types/google-protobuf": "3.15.10",
"@types/history": "4.7.6",
"@types/jest": "27.4.1",
"@types/lodash": "4.14.157",
"@types/node": "14.0.14",
"@types/react": "17.0.13",
"@types/react-dom": "17.0.8",
"@types/react-router-dom": "^5.3.3",
"@types/react-virtualized": "9.21.10",
"@types/reactour": "1.17.1",
"@types/semver": "^7.3.9",
"@typescript-eslint/eslint-plugin": "5.17.0",
"@typescript-eslint/parser": "5.17.0",
"cross-env": "7.0.2",
"eslint-config-prettier": "8.5.0",
"eslint-plugin-prettier": "4.0.0",
"eslint-plugin-react": "7.29.4",
"google-protobuf": "3.14.0",
"jest-canvas-mock": "2.3.0",
"jest-environment-jsdom": "27.5.1",
"prettier": "2.1.2",
"protoc-gen-js": "3.21.2",
"react-scripts": "^5.0.1",
"sass": "1.43.4",
"storybook": "7.5.3",
"ts-protoc-gen": "0.15.0",
"typescript": "4.1.6",
"webpack": "5.89.0"
},
"resolutions": {
"strip-ansi": "6.0.1",
"jackspeak": "2.1.1",
"wrap-ansi": "7.0.0"
},
"eslintConfig": {
"extends": "react-app",
"ignorePatterns": [
"src/types/generated/**/*.js"
]
},
"jest": {
"globalSetup": "./src/setupTestsGlobal.ts",
"resetMocks": false,
"collectCoverageFrom": [
"src/**/*.{js,jsx,ts,tsx}",
"!src/**/*.d.ts",
"!src/__(stories|mocks)__/**/*.{ts,tsx}",
"!src/types/**/*.{js,ts}",
"!src/i18n/**/*.{js,ts}",
"!src/util/tests/**/*.{ts,tsx}",
"!src/setupProxy.js",
"!src/index.tsx"
]
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
}
}
@@ -0,0 +1,106 @@
{
lib,
buildGoModule,
fetchFromGitHub,
mkYarnPackage,
fetchYarnDeps,
go,
versionCheckHook,
}:
buildGoModule rec {
pname = "lightning-terminal";
version = "0.14.1-alpha";
src = fetchFromGitHub {
owner = "lightninglabs";
repo = "lightning-terminal";
tag = "v${version}";
hash = "sha256-sv/NsjAAF0vwD2xjRuGwHwV0L1gjCFQEw0SVp14Zyz0=";
leaveDotGit = true;
# Populate values that require us to use git.
postFetch = ''
cd "$out"
>$out/COMMIT git rev-parse HEAD
>$out/LOOP_COMMIT sed -ne 's:^\s*github.com/lightninglabs/loop\s\(.*\):\1:p' go.mod
>$out/POOL_COMMIT sed -ne 's:^\s*github.com/lightninglabs/pool\s\(.*\):\1:p' go.mod
>$out/TAP_COMMIT sed -ne 's:^\s*github.com/lightninglabs/taproot-assets\s\(.*\):\1:p' go.mod
find -name .git -print0 | xargs -0 rm -rf
'';
};
vendorHash = "sha256-Gbx4uz6q9Ef4QNv6DpIoCACjhT66iZ7GPNpd/g9MgKQ=";
ldflags = [
"-s"
"-w"
"-X github.com/lightningnetwork/lnd/build.GoVersion=${go.version}"
"-X github.com/lightningnetwork/lnd/build.RawTags=${lib.concatStringsSep "," tags}"
"-X github.com/lightninglabs/lightning-terminal.appFilesPrefix="
"-X github.com/lightninglabs/lightning-terminal.Commit=${src.tag}"
];
# ldflags based on metadata from git and source
preBuild = ''
ldflags+=" -X github.com/lightninglabs/loop.Commit=$(cat LOOP_COMMIT)"
ldflags+=" -X github.com/lightninglabs/pool.Commit=$(cat POOL_COMMIT)"
ldflags+=" -X github.com/lightninglabs/taproot-assets.Commit=$(cat TAP_COMMIT)"
# Note that this is build.Commit, not Commit,
# this may be why Makefile uses COMMIT and not LND_COMMIT here,
# so let's do the same.
ldflags+=" -X github.com/lightningnetwork/lnd/build.Commit=${src.tag}"
ldflags+=" -X github.com/lightningnetwork/lnd/build.CommitHash=$(cat COMMIT)"
'';
subPackages = [
"cmd/litcli"
"cmd/litd"
];
tags = [
"litd"
"autopilotrpc"
"signrpc"
"walletrpc"
"chainrpc"
"invoicesrpc"
"watchtowerrpc"
"neutrinorpc"
"peersrpc"
];
doInstallCheck = true;
versionCheckProgram = "${placeholder "out"}/bin/litcli";
versionCheckProgramArg = "--version";
nativeInstallCheckInputs = [
versionCheckHook
];
lightning-app = mkYarnPackage {
pname = "lightning-app";
src = "${src}/app";
version = "0.0.1";
packageJSON = ./package.json;
yarnLock = "${src}/app/yarn.lock";
offlineCache = fetchYarnDeps {
yarnLock = "${src}/app/yarn.lock";
hash = "sha256-ulOgKQRLG4cRi1N1DajmbZ0L7d08g5cYDA9itXu+Esw=";
};
};
outputs = [
"out"
"app"
];
postFixup = ''
ln -s ${lightning-app} "$app"
'';
meta = {
description = "All-in-one Lightning node management tool that includes LND, Loop, Pool, Faraday, and Tapd";
homepage = "https://github.com/lightninglabs/lightning-terminal";
license = lib.licenses.mit;
changelog = "https://github.com/lightninglabs/lightning-terminal/releases/tag/v${version}";
maintainers = with lib.maintainers; [ HannahMR ];
mainProgram = "litcli";
outputsToInstall = [ "out" ];
};
}