@hirobius/design-system 0.20.0 → 0.21.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.
Files changed (76) hide show
  1. package/AGENTS.md +123 -0
  2. package/CONSUMING.md +4 -2
  3. package/DESIGN.md +28 -17
  4. package/NOTICE.md +1 -1
  5. package/README.md +37 -5
  6. package/dist/chunks/empty-state-DNoThgfV.js +1227 -0
  7. package/dist/chunks/form-By82qZcC.js +66 -0
  8. package/dist/fonts/geist-mono-400.woff2 +0 -0
  9. package/dist/fonts/satoshi-400.woff2 +0 -0
  10. package/dist/fonts/satoshi-500.woff2 +0 -0
  11. package/dist/fonts/satoshi-700.woff2 +0 -0
  12. package/dist/fonts.css +53 -0
  13. package/dist/form.js +1 -1
  14. package/dist/hirobius-ui.js +876 -877
  15. package/dist/manifest.js +1 -1
  16. package/dist/patterns.js +189 -170
  17. package/dist/styles.css +2 -2
  18. package/dist/tokens.css +1 -1
  19. package/dist/tokens.js +136 -57
  20. package/dist/types/src/app/components/alert-dialog.d.ts +5 -0
  21. package/dist/types/src/app/components/asset-img.d.ts +1 -0
  22. package/dist/types/src/app/components/avatar-group.d.ts +1 -0
  23. package/dist/types/src/app/components/badge.d.ts +1 -1
  24. package/dist/types/src/app/components/blockquote.d.ts +1 -0
  25. package/dist/types/src/app/components/button.d.ts +2 -0
  26. package/dist/types/src/app/components/card.d.ts +3 -2
  27. package/dist/types/src/app/components/data-table-section.d.ts +1 -0
  28. package/dist/types/src/app/components/destructive-section.d.ts +1 -0
  29. package/dist/types/src/app/components/dialog.d.ts +1 -0
  30. package/dist/types/src/app/components/error-pattern.d.ts +6 -1
  31. package/dist/types/src/app/components/form-actions.d.ts +1 -0
  32. package/dist/types/src/app/components/form-control.d.ts +10 -0
  33. package/dist/types/src/app/components/grid.d.ts +5 -0
  34. package/dist/types/src/app/components/icon.d.ts +1 -0
  35. package/dist/types/src/app/components/kbd.d.ts +1 -0
  36. package/dist/types/src/app/components/metadata-list.d.ts +1 -0
  37. package/dist/types/src/app/components/metric-tiles.d.ts +1 -0
  38. package/dist/types/src/app/components/progress.d.ts +1 -1
  39. package/dist/types/src/app/components/skeleton.d.ts +1 -1
  40. package/dist/types/src/app/components/stat.d.ts +4 -3
  41. package/dist/types/src/app/components/status-tile.d.ts +3 -2
  42. package/dist/types/src/app/components/table.d.ts +5 -0
  43. package/dist/types/src/app/components/text.d.ts +53 -6
  44. package/dist/types/src/app/components/timestamp.d.ts +1 -0
  45. package/dist/types/src/app/data/manifest-types.d.ts +4 -0
  46. package/dist/types/src/app/design-system/generated-token-refs.d.ts +37 -28
  47. package/dist/types/src/app/design-system/generated-token-values.d.ts +3 -0
  48. package/dist/types/src/app/design-system/tokens.d.ts +117 -15
  49. package/dist/types/src/index.d.ts +43 -40
  50. package/dist/variables.css +41 -33
  51. package/docs/CONSUMING.md +63 -39
  52. package/hirobius.tokens.json +77 -73
  53. package/llms.txt +158 -50
  54. package/mcp/catalog.mjs +366 -0
  55. package/mcp/guide.mjs +315 -0
  56. package/mcp/hds-mcp.mjs +49 -0
  57. package/mcp/server.mjs +94 -0
  58. package/package.json +35 -9
  59. package/public/hds-manifest.json +348 -254
  60. package/public/llms/components.txt +4 -3
  61. package/public/llms/layout.txt +1 -1
  62. package/public/llms-full.txt +190 -70
  63. package/public/llms.txt +158 -50
  64. package/scripts/eslint-plugin-hds/index.d.mts +29 -0
  65. package/scripts/eslint-plugin-hds/index.mjs +55 -0
  66. package/scripts/eslint-plugin-hds/package.json +30 -0
  67. package/scripts/eslint-plugin-hds/rules/no-raw-controls.mjs +47 -0
  68. package/scripts/eslint-plugin-hds/rules/no-raw-hex.mjs +70 -0
  69. package/scripts/eslint-plugin-hds/rules/no-raw-px-spacing.mjs +125 -0
  70. package/scripts/eslint-plugin-hds/rules/prefer-hds-layout-primitive.mjs +54 -0
  71. package/scripts/eslint-plugin-hds/rules/sx-token-first.mjs +111 -0
  72. package/scripts/eslint-plugin-hds/rules/utils.mjs +66 -0
  73. package/src/app/data/component-api.json +114 -53
  74. package/dist/chunks/empty-state-BBqhCx0S.js +0 -1217
  75. package/dist/chunks/form-COP3vK9_.js +0 -66
  76. package/dist/types/src/app/components/status-dot.d.ts +0 -39
@@ -1,66 +0,0 @@
1
- 'use client';
2
- import { jsx as m, jsxs as u } from "react/jsx-runtime";
3
- import * as s from "react";
4
- import { cn as p } from "../cn.js";
5
- const g = /* @__PURE__ */ s.forwardRef(function({ className: e, ...l }, o) {
6
- return /* @__PURE__ */ m("form", { ref: o, className: p("flex flex-col gap-4", e), ...l });
7
- });
8
- function F({
9
- htmlFor: c,
10
- childId: e,
11
- description: l,
12
- error: o
13
- }) {
14
- const i = s.useId(), r = c ?? e ?? i, n = `${r}-description`, d = `${r}-error`, a = [l ? n : null, o ? d : null].filter(Boolean).join(" ") || void 0;
15
- return { controlId: r, descriptionId: n, errorId: d, describedBy: a };
16
- }
17
- const b = /* @__PURE__ */ s.forwardRef(
18
- function({ controlId: e, label: l, description: o, error: i, required: r = !1, className: n, children: d }, a) {
19
- const t = `${e}-description`, f = `${e}-error`;
20
- return /* @__PURE__ */ u("div", { ref: a, className: p("flex flex-col gap-2", n), children: [
21
- /* @__PURE__ */ u("label", { htmlFor: e, className: "text-sm font-medium text-foreground", children: [
22
- l,
23
- r ? /* @__PURE__ */ u("span", { "aria-hidden": "true", className: "text-destructive", children: [
24
- " ",
25
- "*"
26
- ] }) : null
27
- ] }),
28
- d,
29
- o && !i ? /* @__PURE__ */ m("p", { id: t, className: "text-xs text-muted-foreground", children: o }) : null,
30
- i ? /* @__PURE__ */ m("p", { id: f, role: "alert", className: "text-xs text-destructive", children: i }) : null
31
- ] });
32
- }
33
- ), N = /* @__PURE__ */ s.forwardRef(
34
- function({ label: e, children: l, htmlFor: o, description: i, error: r, required: n = !1, className: d }, a) {
35
- const t = s.Children.only(l), { controlId: f, describedBy: x } = F({
36
- htmlFor: o,
37
- childId: t.props.id,
38
- description: i,
39
- error: r
40
- }), h = s.cloneElement(t, {
41
- id: f,
42
- required: t.props.required ?? n,
43
- "aria-invalid": r ? !0 : t.props["aria-invalid"],
44
- "aria-describedby": [t.props["aria-describedby"], x].filter(Boolean).join(" ") || void 0
45
- });
46
- return /* @__PURE__ */ m(
47
- b,
48
- {
49
- ref: a,
50
- controlId: f,
51
- label: e,
52
- description: i,
53
- error: r,
54
- required: n,
55
- className: d,
56
- children: h
57
- }
58
- );
59
- }
60
- );
61
- export {
62
- g as F,
63
- b as a,
64
- N as b,
65
- F as u
66
- };
@@ -1,39 +0,0 @@
1
- /**
2
- * StatusDot — compact solid status indicator dot.
3
- * @category Feedback
4
- * @tier primitive
5
- */
6
- import * as React from 'react';
7
- import { type VariantProps } from 'class-variance-authority';
8
- declare const statusDotVariants: (props?: ({
9
- tone?: "success" | "danger" | "warning" | "info" | "neutral" | "inProgress" | null | undefined;
10
- size?: "sm" | "md" | "lg" | null | undefined;
11
- } & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
12
- type StatusDotVariantProps = VariantProps<typeof statusDotVariants>;
13
- /**
14
- * @public
15
- * @deprecated Use `BadgeProps` with `dot`: `tone`, `size` and `label` are the
16
- * same. Badge takes no `style`, so move a `style` to a wrapper or a
17
- * `className` first (MIGRATIONS.md, hds#395).
18
- * @removeIn 0.21.0
19
- */
20
- export interface StatusDotProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, 'children'>, StatusDotVariantProps {
21
- /**
22
- * Accessible name for the status. When provided the dot is exposed as a
23
- * `role="status"` with this label; when omitted the dot is decorative
24
- * (`aria-hidden`) and a sibling should carry the meaning.
25
- */
26
- label?: string;
27
- }
28
- /**
29
- * A small solid dot conveying a semantic status via `tone`.
30
- *
31
- * @deprecated Use `<Badge dot>`: `tone`, `size` and `label` are the same, and
32
- * so is the dot. Badge takes no `style`, so move a `style` to a wrapper or a
33
- * `className` first (MIGRATIONS.md, hds#395). Kept in 0.20.0 because ops passes
34
- * StatusDot a `style` no codemod can carry over.
35
- * @removeIn 0.21.0
36
- * @useInstead Badge with `dot`
37
- */
38
- export declare const StatusDot: React.ForwardRefExoticComponent<StatusDotProps & React.RefAttributes<HTMLSpanElement>>;
39
- export {};