Skip to content

Commit 33bcc37

Browse files
authored
Merge pull request #1978 from rgaiacs/1955-esbuild-frontend
Move the React components its own package
2 parents 1b04d27 + 3b215d4 commit 33bcc37

File tree

21 files changed

+65
-20
lines changed

21 files changed

+65
-20
lines changed

binderhub/static/js/pages/HomePage.jsx

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
import { LinkGenerator } from "../components/LinkGenerator.jsx";
2-
import { BuilderLauncher } from "../components/BuilderLauncher.jsx";
3-
import { HowItWorks } from "../components/HowItWorks.jsx";
1+
import { LinkGenerator } from "@jupyterhub/binderhub-react-components/LinkGenerator.jsx";
2+
import { BuilderLauncher } from "@jupyterhub/binderhub-react-components/BuilderLauncher.jsx";
3+
import { HowItWorks } from "@jupyterhub/binderhub-react-components/HowItWorks.jsx";
44
import { useEffect, useState } from "react";
5-
import { FaviconUpdater } from "../components/FaviconUpdater.jsx";
6-
import { Spec, LaunchSpec } from "../spec.js";
5+
import { FaviconUpdater } from "@jupyterhub/binderhub-react-components/FaviconUpdater.jsx";
6+
import { Spec, LaunchSpec } from "@jupyterhub/binderhub-client/spec.js";
77

88
/**
99
* @typedef {object} HomePageProps

binderhub/static/js/pages/LoadingPage.jsx

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import { useEffect, useState } from "react";
2-
import { BuilderLauncher } from "../components/BuilderLauncher.jsx";
2+
import { BuilderLauncher } from "@jupyterhub/binderhub-react-components/BuilderLauncher.jsx";
33
import { useParams, useSearch } from "wouter";
4-
import { NBViewerIFrame } from "../components/NBViewerIFrame.jsx";
5-
import { LoadingIndicator } from "../components/LoadingIndicator.jsx";
6-
import { FaviconUpdater } from "../components/FaviconUpdater.jsx";
7-
import { LaunchSpec, Spec } from "../spec.js";
8-
import { ErrorPage } from "../components/ErrorPage.jsx";
4+
import { NBViewerIFrame } from "@jupyterhub/binderhub-react-components/NBViewerIFrame.jsx";
5+
import { LoadingIndicator } from "@jupyterhub/binderhub-react-components/LoadingIndicator.jsx";
6+
import { FaviconUpdater } from "@jupyterhub/binderhub-react-components/FaviconUpdater.jsx";
7+
import { LaunchSpec, Spec } from "@jupyterhub/binderhub-client/spec.js";
8+
import { ErrorPage } from "@jupyterhub/binderhub-react-components/ErrorPage.jsx";
99

1010
/**
1111
* @typedef {object} LoadingPageProps

js/packages/binderhub-client/package.json

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
{
22
"name": "@jupyterhub/binderhub-client",
3-
"version": "0.4.0",
3+
"version": "0.5.0",
44
"description": "Simple API client for the BinderHub EventSource API",
5-
"main": "lib/index.js",
5+
"exports": {
6+
"./*.js": "./lib/*.js"
7+
},
68
"repository": {
79
"type": "git",
810
"url": "git+https://github.com/jupyterhub/binderhub.git"

js/packages/binderhub-client/tests/index.test.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// fetch polyfill (only needed for node tests)
22
import { fetch, TextDecoder } from "@whatwg-node/fetch";
33

4-
import { BinderRepository } from "@jupyterhub/binderhub-client";
4+
import { BinderRepository } from "@jupyterhub/binderhub-client/client.js";
55
import { parseEventSource, simpleEventSourceServer } from "./utils";
66
import { readFileSync } from "node:fs";
77

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# `binderhub-react-components`
2+
3+
A collection of [React](https://react.dev/) components for [BinderHub](https://binderhub.readthedocs.io/).
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
{
2+
"name": "@jupyterhub/binderhub-react-components",
3+
"version": "0.1.0",
4+
"description": "Collection of React components for BinderHub",
5+
"exports": {
6+
"./*.jsx": "./src/*.jsx"
7+
},
8+
"scripts": {
9+
"build": "esbuild src/*.jsx --loader:.ico=dataurl --bundle --external:react --outdir=dist",
10+
"lint": "eslint binderhub/static/js js",
11+
"test": "echo \"Error: no test specified\" && exit 1"
12+
},
13+
"repository": {
14+
"type": "git",
15+
"url": "git+https://github.com/jupyterhub/binderhub.git"
16+
},
17+
"keywords": [
18+
"binderhub"
19+
],
20+
"author": "Project Jupyter Contributors",
21+
"license": "BSD-3-Clause",
22+
"bugs": {
23+
"url": "https://github.com/jupyterhub/binderhub/issues"
24+
},
25+
"homepage": "https://github.com/jupyterhub/binderhub#readme",
26+
"devDependencies": {
27+
"esbuild": "^0.25.6",
28+
"eslint": "^9.31.0"
29+
},
30+
"dependencies": {
31+
"@jupyterhub/binderhub-client": "^0.5.0",
32+
"@xterm/addon-fit": "^0.10.0",
33+
"@xterm/xterm": "^5.5.0",
34+
"copy-to-clipboard": "^3.3.3"
35+
},
36+
"peerDependencies": {
37+
"react": "^19.1.0"
38+
}
39+
}

binderhub/static/js/components/BuilderLauncher.jsx renamed to js/packages/binderhub-react-components/src/BuilderLauncher.jsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { BinderRepository } from "@jupyterhub/binderhub-client";
1+
import { BinderRepository } from "@jupyterhub/binderhub-client/client.js";
22
import { useEffect, useRef, useState } from "react";
33
import { Terminal } from "@xterm/xterm";
44
import { FitAddon } from "@xterm/addon-fit";

0 commit comments

Comments
 (0)