8seneca-app-launcher 0.1.3 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +17 -11
- package/dist/index.js +57 -32
- package/dist/styles.css +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import * as react from 'react';
|
|
2
|
-
import { LucideIcon } from 'lucide-react';
|
|
3
2
|
|
|
4
|
-
type AppId = "hrm" | "plane";
|
|
3
|
+
type AppId = "hrm" | "plane" | "ai";
|
|
4
|
+
/** Deployment ring — decides which host each tile points at. */
|
|
5
|
+
type RingId = "prod" | "kc-test" | "sandbox";
|
|
5
6
|
type AppTile = {
|
|
6
7
|
id: AppId;
|
|
7
8
|
name: string;
|
|
8
9
|
url: string;
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
color: string;
|
|
10
|
+
/** The app's square brand logo as an image URL; the panel rounds its corners. */
|
|
11
|
+
logo: string;
|
|
12
12
|
};
|
|
13
13
|
type AppLauncherProps = {
|
|
14
14
|
/** Override tile URLs by id — local development only. */
|
|
@@ -33,14 +33,20 @@ type PanelProps = {
|
|
|
33
33
|
declare function LauncherPanel({ tiles, hostname, label, id }: PanelProps): react.JSX.Element;
|
|
34
34
|
|
|
35
35
|
/**
|
|
36
|
-
*
|
|
37
|
-
* conventions diverge (NEXT_PUBLIC_* vs VITE_*), so
|
|
38
|
-
*
|
|
36
|
+
* One URL set per deployment ring. Baked in on purpose: the apps' env
|
|
37
|
+
* conventions diverge (NEXT_PUBLIC_* vs VITE_*), so this keeps every consumer
|
|
38
|
+
* at zero configuration. Adding a ring or moving a host means publishing.
|
|
39
39
|
*/
|
|
40
|
+
declare const RINGS: Record<RingId, Record<AppId, string>>;
|
|
41
|
+
declare function ringFor(hostname: string): RingId;
|
|
42
|
+
/** The production tiles, for consumers that want the list without a hostname. */
|
|
40
43
|
declare const APPS: AppTile[];
|
|
41
|
-
/**
|
|
42
|
-
|
|
44
|
+
/**
|
|
45
|
+
* Tiles for the ring `hostname` belongs to, with per-id URL overrides applied
|
|
46
|
+
* last. Unknown ids and empty strings are ignored.
|
|
47
|
+
*/
|
|
48
|
+
declare function resolveApps(urls?: Partial<Record<AppId, string>>, hostname?: string): AppTile[];
|
|
43
49
|
/** True when the tile points at the page we are already on. */
|
|
44
50
|
declare function isCurrent(app: AppTile, hostname: string): boolean;
|
|
45
51
|
|
|
46
|
-
export { APPS, type AppId, AppLauncher, AppLauncherFab, type AppLauncherProps, type AppTile, LauncherPanel, isCurrent, resolveApps };
|
|
52
|
+
export { APPS, type AppId, AppLauncher, AppLauncherFab, type AppLauncherProps, type AppTile, LauncherPanel, RINGS, type RingId, isCurrent, resolveApps, ringFor };
|
package/dist/index.js
CHANGED
|
@@ -3,29 +3,60 @@
|
|
|
3
3
|
// src/launcher.tsx
|
|
4
4
|
import { Grip } from "lucide-react";
|
|
5
5
|
|
|
6
|
+
// src/logos/8people-logo.svg
|
|
7
|
+
var people_logo_default = 'data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 52 52">%0A <defs>%0A <linearGradient id="brand" x1="0" y1="0" x2="1" y2="1">%0A <stop offset="0" stop-color="%23181e54"/>%0A <stop offset="1" stop-color="%23fd364f"/>%0A </linearGradient>%0A </defs>%0A <rect width="52" height="52" fill="url(%23brand)"/>%0A <path transform="translate(17.45 10) scale(0.052288)" fill="%23fff" d="M269.4 354.9L168.7 254.3L120.7 206.4C107.8 193.4 100.6 176.5 100.6 158.5C100.5 140.5 107.6 123.4 120.5 110.5C124 107 127.7 104.1 131.8 101.4C135.5 98.9 139 97.1 143 95.5C144.8 94.8 146.6 94.1 149 93.4L155.5 91.8C161.3 90.6 167.2 90.2 173.1 90.6C189.4 91.7 204.9 98.8 216.7 110.6C227.7 121.6 234.7 135.9 236.4 151C236.7 153.6 236.8 156.1 236.8 158.6H236.9V291.8L269.5 259.2C287.9 240.8 300.9 217.9 307.1 193C311.2 176.6 312.4 159.7 310.5 142.7C306.9 110.9 292.3 80.7 269.5 57.9C244.9 33.3 212.4 18.5 178.2 16.3C165.3 15.5 152.3 16.4 139.5 19.1L128.4 21.9C123.5 23.3 118.9 25 114.8 26.7C106.7 30 98.6 34.3 91.3 39.1C83.3 44.2 75.5 50.5 68.1 57.8C41 84.9 26.1 120.8 26.2 158.7C26.2 196.3 41 232 68 259.1L107.1 298.1L113.1 304.1L168.7 359.6L206.4 397.3L216.6 407.5C229.5 420.5 236.7 437.5 236.7 455.4C236.8 473.4 229.7 490.5 216.8 503.3C213.3 506.8 209.6 509.8 205.5 512.4C201.8 514.9 198.3 516.7 194.3 518.3C192.4 519.1 190.4 519.8 188.2 520.4L181.8 522C176 523.2 170.2 523.6 164.2 523.2C147.9 522.1 132.4 515 120.6 503.2C109.6 492.2 102.6 477.9 100.9 462.8C100.7 460.6 100.5 458.3 100.5 456.1V322.3L67.9 354.9C49.5 373.3 36.5 396.2 30.3 421.1C26.2 437.5 25 454.4 26.9 471.4C30.5 503.2 45.1 533.4 67.9 556.2C92.5 580.8 125 595.6 159.3 597.8C162.4 598 165.6 598.1 168.7 598.1C178.5 598.1 188.3 597.1 198 595L209 592.2C213.9 590.8 218.5 589.1 222.6 587.4C230.7 584.1 238.8 579.8 246.1 575C254.1 569.9 261.9 563.6 269.3 556.3C296.4 529.2 311.3 493.3 311.2 455.4C311.3 417.6 296.5 382 269.4 354.9Z"/>%0A</svg>%0A';
|
|
8
|
+
|
|
9
|
+
// src/logos/8projects-logo.png
|
|
10
|
+
var projects_logo_default = "data:image/png;base64,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";
|
|
11
|
+
|
|
12
|
+
// src/logos/8ai-logo.svg
|
|
13
|
+
var ai_logo_default = 'data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 3813 3813" fill="none">%0D%0A <path d="M1906 0C1906.27 1052.7 2759.74 1906 3812.5 1906C3812.67 1906 3812.83 1906 3813 1906L3813 1906C3812.83 1906 3812.67 1906 3812.5 1906C2759.57 1906 1906 2759.57 1906 3812.5C1906 3812.67 1906 3812.83 1906 3813L1906 3813C1906 3812.83 1906 3812.67 1906 3812.5C1906 2759.74 1052.7 1906.27 0 1906V1906C1052.53 1905.73 1905.73 1052.53 1906 0H1906Z" fill="url(%23g0)"/>%0D%0A <path d="M1037.41 2805C1037.46 3000.67 1194.36 3159.27 1387.91 3159.27C1387.94 3159.27 1387.97 3159.27 1388 3159.27L1388 3159.27C1387.97 3159.27 1387.94 3159.27 1387.91 3159.27C1194.38 3159.27 1037.49 3317.84 1037.41 3513.48C1037.32 3317.87 880.483 3159.32 687 3159.27V3159.27C880.502 3159.22 1037.36 3000.63 1037.41 2805Z" fill="url(%23g1)"/>%0D%0A <path d="M2825.76 259C2825.83 533.701 3050.07 756.368 3326.66 756.368C3326.7 756.368 3326.75 756.367 3326.79 756.367L3326.79 756.369C3326.75 756.369 3326.7 756.369 3326.66 756.369C3050.06 756.369 2825.83 979.041 2825.76 1253.75C2825.7 979.085 2601.53 756.441 2325 756.369V756.367C2601.53 756.295 2825.69 533.657 2825.76 259H2825.76Z" fill="url(%23g2)"/>%0D%0A <defs>%0D%0A <linearGradient id="g0" x1="1906.5" y1="0" x2="1906.5" y2="3813" gradientUnits="userSpaceOnUse">%0D%0A <stop stop-color="%23181E54"/><stop offset="1" stop-color="%23EB1933"/>%0D%0A </linearGradient>%0D%0A <linearGradient id="g1" x1="1037.5" y1="2805" x2="1037.5" y2="3513.48" gradientUnits="userSpaceOnUse">%0D%0A <stop stop-color="%23181E54"/><stop offset="1" stop-color="%23EB1933"/>%0D%0A </linearGradient>%0D%0A <linearGradient id="g2" x1="2825.9" y1="259" x2="2825.9" y2="1253.75" gradientUnits="userSpaceOnUse">%0D%0A <stop stop-color="%23181E54"/><stop offset="1" stop-color="%23EB1933"/>%0D%0A </linearGradient>%0D%0A </defs>%0D%0A</svg>%0D%0A';
|
|
14
|
+
|
|
6
15
|
// src/apps.ts
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
{
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
16
|
+
var TILES = [
|
|
17
|
+
{ id: "hrm", name: "8People", logo: people_logo_default },
|
|
18
|
+
{ id: "plane", name: "8Projects", logo: projects_logo_default },
|
|
19
|
+
{ id: "ai", name: "8AI", logo: ai_logo_default }
|
|
20
|
+
];
|
|
21
|
+
var AI_URL = "https://8ai.up.railway.app/assistant";
|
|
22
|
+
var RINGS = {
|
|
23
|
+
prod: {
|
|
24
|
+
hrm: "https://people.8seneca.com",
|
|
25
|
+
plane: "https://projects.8seneca.com",
|
|
26
|
+
ai: AI_URL
|
|
27
|
+
},
|
|
28
|
+
// The Keycloak test ring: hrm on its kc-test environment, Plane on its
|
|
29
|
+
// sandbox one — the two that authenticate against the same realm.
|
|
30
|
+
"kc-test": {
|
|
31
|
+
hrm: "https://hr-systemweb-kc-test.up.railway.app",
|
|
32
|
+
plane: "https://hub-plane-sandbox.up.railway.app",
|
|
33
|
+
ai: AI_URL
|
|
15
34
|
},
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
35
|
+
// hrm's own sandbox environment. There is only one sandbox Plane, so it
|
|
36
|
+
// points at the same host kc-test does.
|
|
37
|
+
sandbox: {
|
|
38
|
+
hrm: "https://hr-systemweb-sandbox.up.railway.app",
|
|
39
|
+
plane: "https://hub-plane-sandbox.up.railway.app",
|
|
40
|
+
ai: AI_URL
|
|
22
41
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
42
|
+
};
|
|
43
|
+
var HOST_RING = {
|
|
44
|
+
"people.8seneca.com": "prod",
|
|
45
|
+
"projects.8seneca.com": "prod",
|
|
46
|
+
"hr-systemweb-kc-test.up.railway.app": "kc-test",
|
|
47
|
+
// The sandbox Plane is the Keycloak-enabled one, so it pairs with kc-test hrm.
|
|
48
|
+
"hub-plane-sandbox.up.railway.app": "kc-test",
|
|
49
|
+
"hr-systemweb-sandbox.up.railway.app": "sandbox"
|
|
50
|
+
};
|
|
51
|
+
function ringFor(hostname) {
|
|
52
|
+
return HOST_RING[hostname] ?? "prod";
|
|
53
|
+
}
|
|
54
|
+
var APPS = TILES.map((tile) => ({ ...tile, url: RINGS.prod[tile.id] }));
|
|
55
|
+
function resolveApps(urls, hostname = "") {
|
|
56
|
+
const ring = RINGS[ringFor(hostname)];
|
|
57
|
+
return TILES.map((tile) => {
|
|
58
|
+
const override = urls?.[tile.id];
|
|
59
|
+
return { ...tile, url: override || ring[tile.id] };
|
|
29
60
|
});
|
|
30
61
|
}
|
|
31
62
|
function isCurrent(app, hostname) {
|
|
@@ -51,17 +82,9 @@ function LauncherPanel({ tiles, hostname, label, id }) {
|
|
|
51
82
|
children: [
|
|
52
83
|
/* @__PURE__ */ jsx("p", { className: "mb-3 px-2 text-xs font-medium uppercase tracking-wide text-launcher-muted", children: label }),
|
|
53
84
|
/* @__PURE__ */ jsx("div", { className: "grid grid-cols-3 gap-1", children: tiles.map((app) => {
|
|
54
|
-
const Icon = app.icon;
|
|
55
85
|
const current = isCurrent(app, hostname);
|
|
56
86
|
const body = /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
57
|
-
/* @__PURE__ */ jsx(
|
|
58
|
-
"span",
|
|
59
|
-
{
|
|
60
|
-
className: "flex h-10 w-10 items-center justify-center rounded-xl",
|
|
61
|
-
style: { backgroundColor: app.color },
|
|
62
|
-
children: /* @__PURE__ */ jsx(Icon, { className: "h-5 w-5 text-white", strokeWidth: 2, "aria-hidden": "true" })
|
|
63
|
-
}
|
|
64
|
-
),
|
|
87
|
+
/* @__PURE__ */ jsx("img", { src: app.logo, alt: "", className: "h-10 w-10 rounded-md" }),
|
|
65
88
|
/* @__PURE__ */ jsx("span", { className: "text-[11px] font-medium", children: app.name })
|
|
66
89
|
] });
|
|
67
90
|
return current ? /* @__PURE__ */ jsx(
|
|
@@ -129,7 +152,7 @@ var TRIGGER_BASE = "inline-flex items-center justify-center rounded-full text-la
|
|
|
129
152
|
function AppLauncher({ urls, label = "Your apps", align = "end" } = {}) {
|
|
130
153
|
const { open, toggle, rootRef, triggerRef, panelId } = useLauncher();
|
|
131
154
|
const hostname = useHostname();
|
|
132
|
-
const tiles = resolveApps(urls);
|
|
155
|
+
const tiles = resolveApps(urls, hostname);
|
|
133
156
|
return /* @__PURE__ */ jsxs2("div", { ref: rootRef, className: "relative", children: [
|
|
134
157
|
/* @__PURE__ */ jsx2(
|
|
135
158
|
"button",
|
|
@@ -151,7 +174,7 @@ function AppLauncher({ urls, label = "Your apps", align = "end" } = {}) {
|
|
|
151
174
|
function AppLauncherFab({ urls, label = "Your apps" } = {}) {
|
|
152
175
|
const { open, toggle, rootRef, triggerRef, panelId } = useLauncher();
|
|
153
176
|
const hostname = useHostname();
|
|
154
|
-
const tiles = resolveApps(urls);
|
|
177
|
+
const tiles = resolveApps(urls, hostname);
|
|
155
178
|
return /* @__PURE__ */ jsxs2("div", { ref: rootRef, className: "fixed bottom-6 right-6 z-50", children: [
|
|
156
179
|
open && /* @__PURE__ */ jsx2("div", { className: "absolute bottom-16 right-0", children: /* @__PURE__ */ jsx2(LauncherPanel, { tiles, hostname, label, id: panelId }) }),
|
|
157
180
|
/* @__PURE__ */ jsx2(
|
|
@@ -176,6 +199,8 @@ export {
|
|
|
176
199
|
AppLauncher,
|
|
177
200
|
AppLauncherFab,
|
|
178
201
|
LauncherPanel,
|
|
202
|
+
RINGS,
|
|
179
203
|
isCurrent,
|
|
180
|
-
resolveApps
|
|
204
|
+
resolveApps,
|
|
205
|
+
ringFor
|
|
181
206
|
};
|
package/dist/styles.css
CHANGED
|
@@ -21,4 +21,4 @@
|
|
|
21
21
|
* utilities silently go missing. Listing them here makes the package
|
|
22
22
|
* self-contained — consumers only import this file.
|
|
23
23
|
*/
|
|
24
|
-
@source inline("absolute bg-launcher-hover bg-launcher-surface border border-launcher-border bottom-16 bottom-6 cursor-default fixed flex flex-col focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-launcher-ring font-medium gap-1 gap-1.5 grid grid-cols-3 h-10 h-5 h-9 hover:bg-launcher-hover hover:scale-105 inline-flex items-center justify-center left-0 mb-3 no-underline p-3 p-4 px-2 relative right-0 right-6 rounded-2xl rounded-full rounded-xl shadow-lg size-12 size-5 text-[11px] text-launcher-fg text-launcher-muted text-
|
|
24
|
+
@source inline("absolute bg-launcher-hover bg-launcher-surface border border-launcher-border bottom-16 bottom-6 cursor-default fixed flex flex-col focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-launcher-ring font-medium gap-1 gap-1.5 grid grid-cols-3 h-10 h-5 h-9 hover:bg-launcher-hover hover:scale-105 inline-flex items-center justify-center left-0 mb-3 no-underline p-3 p-4 px-2 relative right-0 right-6 rounded-2xl rounded-full rounded-md rounded-xl shadow-lg size-12 size-5 text-[11px] text-launcher-fg text-launcher-muted text-xs top-11 tracking-wide transition-colors transition-transform uppercase w-10 w-5 w-72 w-9 z-50");
|