@luxfi/ui 7.4.5 → 7.4.6

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.
Files changed (116) hide show
  1. package/dist/accordion.d.cts +74 -0
  2. package/dist/accordion.d.ts +74 -0
  3. package/dist/alert.d.cts +30 -0
  4. package/dist/alert.d.ts +30 -0
  5. package/dist/avatar.d.cts +25 -0
  6. package/dist/avatar.d.ts +25 -0
  7. package/dist/badge.d.cts +19 -0
  8. package/dist/badge.d.ts +19 -0
  9. package/dist/bank.d.cts +83 -0
  10. package/dist/bank.d.ts +83 -0
  11. package/dist/button.d.cts +55 -0
  12. package/dist/button.d.ts +55 -0
  13. package/dist/checkbox.d.cts +32 -0
  14. package/dist/checkbox.d.ts +32 -0
  15. package/dist/chrome.d.cts +93 -0
  16. package/dist/chrome.d.ts +93 -0
  17. package/dist/close-button.d.cts +9 -0
  18. package/dist/close-button.d.ts +9 -0
  19. package/dist/collapsible.d.cts +23 -0
  20. package/dist/collapsible.d.ts +23 -0
  21. package/dist/color-mode.d.cts +25 -0
  22. package/dist/color-mode.d.ts +25 -0
  23. package/dist/dialog.d.cts +118 -0
  24. package/dist/dialog.d.ts +118 -0
  25. package/dist/drawer.d.cts +36 -0
  26. package/dist/drawer.d.ts +36 -0
  27. package/dist/empty-state.d.cts +13 -0
  28. package/dist/empty-state.d.ts +13 -0
  29. package/dist/expiration-selector.d.cts +16 -0
  30. package/dist/expiration-selector.d.ts +16 -0
  31. package/dist/field.d.cts +24 -0
  32. package/dist/field.d.ts +24 -0
  33. package/dist/greeks-display.d.cts +14 -0
  34. package/dist/greeks-display.d.ts +14 -0
  35. package/dist/gui.d.cts +2 -0
  36. package/dist/gui.d.ts +2 -0
  37. package/dist/heading.d.cts +10 -0
  38. package/dist/heading.d.ts +10 -0
  39. package/dist/iam.d.cts +65 -0
  40. package/dist/iam.d.ts +65 -0
  41. package/dist/icon-button.d.cts +33 -0
  42. package/dist/icon-button.d.ts +33 -0
  43. package/dist/icons.d.cts +1 -0
  44. package/dist/icons.d.ts +1 -0
  45. package/dist/identity.d.cts +64 -0
  46. package/dist/identity.d.ts +64 -0
  47. package/dist/image.d.cts +57 -0
  48. package/dist/image.d.ts +57 -0
  49. package/dist/index.d.cts +64 -0
  50. package/dist/index.d.ts +64 -0
  51. package/dist/input-group.d.cts +17 -0
  52. package/dist/input-group.d.ts +17 -0
  53. package/dist/input.d.cts +17 -0
  54. package/dist/input.d.ts +17 -0
  55. package/dist/link.d.cts +37 -0
  56. package/dist/link.d.ts +37 -0
  57. package/dist/lux.config.d.cts +433 -0
  58. package/dist/lux.config.d.ts +433 -0
  59. package/dist/menu.d.cts +84 -0
  60. package/dist/menu.d.ts +84 -0
  61. package/dist/next.d.cts +32 -0
  62. package/dist/next.d.ts +32 -0
  63. package/dist/option-chain.d.cts +37 -0
  64. package/dist/option-chain.d.ts +37 -0
  65. package/dist/option-position.d.cts +29 -0
  66. package/dist/option-position.d.ts +29 -0
  67. package/dist/pin-input.d.cts +25 -0
  68. package/dist/pin-input.d.ts +25 -0
  69. package/dist/pnl-diagram.d.cts +11 -0
  70. package/dist/pnl-diagram.d.ts +11 -0
  71. package/dist/popover.d.cts +73 -0
  72. package/dist/popover.d.ts +73 -0
  73. package/dist/progress-circle.d.cts +47 -0
  74. package/dist/progress-circle.d.ts +47 -0
  75. package/dist/progress.d.cts +28 -0
  76. package/dist/progress.d.ts +28 -0
  77. package/dist/provider.d.cts +25 -0
  78. package/dist/provider.d.ts +25 -0
  79. package/dist/radio.d.cts +53 -0
  80. package/dist/radio.d.ts +53 -0
  81. package/dist/rating.d.cts +14 -0
  82. package/dist/rating.d.ts +14 -0
  83. package/dist/select.d.cts +130 -0
  84. package/dist/select.d.ts +130 -0
  85. package/dist/separator.d.cts +13 -0
  86. package/dist/separator.d.ts +13 -0
  87. package/dist/skeleton.d.cts +60 -0
  88. package/dist/skeleton.d.ts +60 -0
  89. package/dist/slider.d.cts +24 -0
  90. package/dist/slider.d.ts +24 -0
  91. package/dist/strategy-builder.d.cts +26 -0
  92. package/dist/strategy-builder.d.ts +26 -0
  93. package/dist/switch.d.cts +27 -0
  94. package/dist/switch.d.ts +27 -0
  95. package/dist/table.d.cts +107 -0
  96. package/dist/table.d.ts +107 -0
  97. package/dist/tabs.d.cts +78 -0
  98. package/dist/tabs.d.ts +78 -0
  99. package/dist/tag.d.cts +21 -0
  100. package/dist/tag.d.ts +21 -0
  101. package/dist/textarea.d.cts +13 -0
  102. package/dist/textarea.d.ts +13 -0
  103. package/dist/toaster.d.cts +29 -0
  104. package/dist/toaster.d.ts +29 -0
  105. package/dist/tooltip.d.cts +38 -0
  106. package/dist/tooltip.d.ts +38 -0
  107. package/dist/use-narrow.d.cts +12 -0
  108. package/dist/use-narrow.d.ts +12 -0
  109. package/dist/utils.d.cts +5 -0
  110. package/dist/utils.d.ts +5 -0
  111. package/dist/vite.d.cts +29 -0
  112. package/dist/vite.d.ts +29 -0
  113. package/dist/white-label.d.cts +59 -0
  114. package/dist/white-label.d.ts +59 -0
  115. package/package.json +1 -1
  116. package/tokens.css +613 -319
package/dist/vite.d.ts ADDED
@@ -0,0 +1,29 @@
1
+ interface LuxUiViteOptions {
2
+ /**
3
+ * Extra packages to keep to a single physical copy. React, the gui engine and
4
+ * TanStack Query are always deduped.
5
+ */
6
+ readonly dedupe?: ReadonlyArray<string>;
7
+ /**
8
+ * Extra packages to pre-bundle. The engine, react-native-web and the CJS-only
9
+ * colour helper are always included.
10
+ */
11
+ readonly include?: ReadonlyArray<string>;
12
+ }
13
+ /** Minimal structural shape of a Vite plugin — avoids a hard `vite` type dep. */
14
+ interface LuxUiVitePlugin {
15
+ readonly name: string;
16
+ readonly config: () => {
17
+ define: Record<string, string>;
18
+ resolve: {
19
+ alias: Record<string, string>;
20
+ dedupe: Array<string>;
21
+ };
22
+ optimizeDeps: {
23
+ include: Array<string>;
24
+ };
25
+ };
26
+ }
27
+ declare function luxUi(options?: LuxUiViteOptions): LuxUiVitePlugin;
28
+
29
+ export { type LuxUiViteOptions, luxUi };
@@ -0,0 +1,59 @@
1
+ declare const LUX_BRAND: {
2
+ readonly lux: "#7000FF";
3
+ readonly zoo: "#6C5EFB";
4
+ readonly hanzo: "#EA580C";
5
+ readonly pars: "#1C3879";
6
+ readonly bootnode: "#3B82F6";
7
+ };
8
+ declare const PARS_GOLD = "#C8A45C";
9
+ type LuxBrand = keyof typeof LUX_BRAND;
10
+ type Org = LuxBrand;
11
+ interface OrgIdentity {
12
+ /** Org id — also the gui child-theme suffix (`dark_lux`, `dark_zoo`, …). */
13
+ readonly org: Org;
14
+ /** Display name for chrome (header, title, sign-in copy). */
15
+ readonly name: string;
16
+ /** Canonical apex domain. */
17
+ readonly domain: string;
18
+ /** IAM/OIDC host. The issuer is `https://` + this. */
19
+ readonly iamDomain: string;
20
+ /** Brand accent hex — the same value the gui child-theme row is built from. */
21
+ readonly accent: string;
22
+ /** Foreground used on top of the accent. */
23
+ readonly accentForeground: string;
24
+ }
25
+ declare const ORGS: Readonly<Record<Org, OrgIdentity>>;
26
+ declare const DEFAULT_ORG: Org;
27
+ interface WhiteLabel extends OrgIdentity {
28
+ /** Hostname the identity was resolved from, port stripped, lowercased. */
29
+ readonly host: string;
30
+ /** App slug taken from the hostname — `mpc.lux.cloud` → `mpc`. */
31
+ readonly app: string;
32
+ /** gui child-theme row to hand GuiProvider — `dark_lux`, `dark_zoo`, … */
33
+ readonly theme: string;
34
+ /** OIDC issuer — `https://lux.id`. */
35
+ readonly issuer: string;
36
+ /** IAM client id, `<org>-<app>` per the fleet naming scheme — `lux-mpc`. */
37
+ readonly clientId: string;
38
+ }
39
+ /**
40
+ * Resolve the full white-label identity from a Host header value.
41
+ *
42
+ * Pure and total: an unknown or missing host falls back to the Lux row rather
43
+ * than throwing, so a preview URL or a health probe never blanks the UI.
44
+ *
45
+ * resolveWhiteLabel('mpc.lux.network') // org lux, clientId lux-mpc, issuer https://lux.id
46
+ * resolveWhiteLabel('zoo.cloud') // org zoo, clientId zoo-cloud, issuer https://zoolabs.id
47
+ * resolveWhiteLabel('cloud.pars.network') // org pars, clientId pars-app, issuer https://pars.id
48
+ */
49
+ declare function resolveWhiteLabel(host?: string | null): WhiteLabel;
50
+ /**
51
+ * The current host in a browser, or '' during SSR / prerender.
52
+ * Server code must pass `req.headers.host` to resolveWhiteLabel explicitly —
53
+ * there is no ambient request here, and guessing would bake in a brand.
54
+ */
55
+ declare function currentHost(): string;
56
+ /** Identity for the org id itself, for the rare surface that is not host-routed. */
57
+ declare function orgIdentity(org: Org): OrgIdentity;
58
+
59
+ export { DEFAULT_ORG, LUX_BRAND, type LuxBrand, type Org, type OrgIdentity, PARS_GOLD, type WhiteLabel, currentHost, orgIdentity, ORGS as orgs, resolveWhiteLabel };
@@ -0,0 +1,59 @@
1
+ declare const LUX_BRAND: {
2
+ readonly lux: "#7000FF";
3
+ readonly zoo: "#6C5EFB";
4
+ readonly hanzo: "#EA580C";
5
+ readonly pars: "#1C3879";
6
+ readonly bootnode: "#3B82F6";
7
+ };
8
+ declare const PARS_GOLD = "#C8A45C";
9
+ type LuxBrand = keyof typeof LUX_BRAND;
10
+ type Org = LuxBrand;
11
+ interface OrgIdentity {
12
+ /** Org id — also the gui child-theme suffix (`dark_lux`, `dark_zoo`, …). */
13
+ readonly org: Org;
14
+ /** Display name for chrome (header, title, sign-in copy). */
15
+ readonly name: string;
16
+ /** Canonical apex domain. */
17
+ readonly domain: string;
18
+ /** IAM/OIDC host. The issuer is `https://` + this. */
19
+ readonly iamDomain: string;
20
+ /** Brand accent hex — the same value the gui child-theme row is built from. */
21
+ readonly accent: string;
22
+ /** Foreground used on top of the accent. */
23
+ readonly accentForeground: string;
24
+ }
25
+ declare const ORGS: Readonly<Record<Org, OrgIdentity>>;
26
+ declare const DEFAULT_ORG: Org;
27
+ interface WhiteLabel extends OrgIdentity {
28
+ /** Hostname the identity was resolved from, port stripped, lowercased. */
29
+ readonly host: string;
30
+ /** App slug taken from the hostname — `mpc.lux.cloud` → `mpc`. */
31
+ readonly app: string;
32
+ /** gui child-theme row to hand GuiProvider — `dark_lux`, `dark_zoo`, … */
33
+ readonly theme: string;
34
+ /** OIDC issuer — `https://lux.id`. */
35
+ readonly issuer: string;
36
+ /** IAM client id, `<org>-<app>` per the fleet naming scheme — `lux-mpc`. */
37
+ readonly clientId: string;
38
+ }
39
+ /**
40
+ * Resolve the full white-label identity from a Host header value.
41
+ *
42
+ * Pure and total: an unknown or missing host falls back to the Lux row rather
43
+ * than throwing, so a preview URL or a health probe never blanks the UI.
44
+ *
45
+ * resolveWhiteLabel('mpc.lux.network') // org lux, clientId lux-mpc, issuer https://lux.id
46
+ * resolveWhiteLabel('zoo.cloud') // org zoo, clientId zoo-cloud, issuer https://zoolabs.id
47
+ * resolveWhiteLabel('cloud.pars.network') // org pars, clientId pars-app, issuer https://pars.id
48
+ */
49
+ declare function resolveWhiteLabel(host?: string | null): WhiteLabel;
50
+ /**
51
+ * The current host in a browser, or '' during SSR / prerender.
52
+ * Server code must pass `req.headers.host` to resolveWhiteLabel explicitly —
53
+ * there is no ambient request here, and guessing would bake in a brand.
54
+ */
55
+ declare function currentHost(): string;
56
+ /** Identity for the org id itself, for the rare surface that is not host-routed. */
57
+ declare function orgIdentity(org: Org): OrgIdentity;
58
+
59
+ export { DEFAULT_ORG, LUX_BRAND, type LuxBrand, type Org, type OrgIdentity, PARS_GOLD, type WhiteLabel, currentHost, orgIdentity, ORGS as orgs, resolveWhiteLabel };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@luxfi/ui",
3
- "version": "7.4.5",
3
+ "version": "7.4.6",
4
4
  "description": "Cross-platform DeFi UI components built on @hanzo/gui (Tamagui). Native mobile + web.",
5
5
  "type": "module",
6
6
  "license": "MIT",