@atelier-ui/react 0.0.3 → 0.0.4
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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atelier-ui/react",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.4",
|
|
4
4
|
"description": "Atelier UI component library for React — LLM-optimised, accessible, design-token-driven",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"react",
|
|
@@ -19,7 +19,9 @@
|
|
|
19
19
|
},
|
|
20
20
|
"peerDependencies": {
|
|
21
21
|
"react": "^18.0.0 || ^19.0.0",
|
|
22
|
-
"react-dom": "^18.0.0 || ^19.0.0"
|
|
22
|
+
"react-dom": "^18.0.0 || ^19.0.0"
|
|
23
|
+
},
|
|
24
|
+
"dependencies": {
|
|
23
25
|
"@atelier-ui/spec": "*"
|
|
24
26
|
},
|
|
25
27
|
"types": "./src/index.d.ts",
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { HTMLAttributes, ReactNode, AnchorHTMLAttributes } from 'react';
|
|
2
|
-
import type { LlmBreadcrumbItemSpec } from '@atelier-ui/spec';
|
|
2
|
+
import type { LlmBreadcrumbsSpec, LlmBreadcrumbItemSpec } from '@atelier-ui/spec';
|
|
3
3
|
import './llm-breadcrumbs.css';
|
|
4
4
|
/**
|
|
5
5
|
* Properties for the LlmBreadcrumbs component.
|
|
6
6
|
*/
|
|
7
|
-
export interface LlmBreadcrumbsProps extends HTMLAttributes<HTMLElement
|
|
7
|
+
export interface LlmBreadcrumbsProps extends HTMLAttributes<HTMLElement>, LlmBreadcrumbsSpec {
|
|
8
8
|
/**
|
|
9
9
|
* The breadcrumb items to be rendered.
|
|
10
10
|
*/
|
|
@@ -13,7 +13,7 @@ export interface LlmBreadcrumbsProps extends HTMLAttributes<HTMLElement> {
|
|
|
13
13
|
/**
|
|
14
14
|
* A breadcrumbs component for displaying a navigation trail.
|
|
15
15
|
*/
|
|
16
|
-
export declare function LlmBreadcrumbs({ children, className, ...rest }: LlmBreadcrumbsProps): import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
export declare function LlmBreadcrumbs({ children, separator, className, style, ...rest }: LlmBreadcrumbsProps): import("react/jsx-runtime").JSX.Element;
|
|
17
17
|
/**
|
|
18
18
|
* Properties for the LlmBreadcrumbItem component.
|
|
19
19
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm-breadcrumbs.d.ts","sourceRoot":"","sources":["../../../../../../libs/react/src/lib/breadcrumbs/llm-breadcrumbs.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,oBAAoB,EAA0C,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"llm-breadcrumbs.d.ts","sourceRoot":"","sources":["../../../../../../libs/react/src/lib/breadcrumbs/llm-breadcrumbs.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,oBAAoB,EAA0C,MAAM,OAAO,CAAC;AAEhH,OAAO,KAAK,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAClF,OAAO,uBAAuB,CAAC;AAE/B;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,cAAc,CAAC,WAAW,CAAC,EAAE,kBAAkB;IAC1F;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,EAAE,QAAQ,EAAE,SAAe,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE,mBAAmB,2CAwB3G;AAED;;GAEG;AACH,MAAM,WAAW,sBACf,SAAQ,oBAAoB,CAAC,iBAAiB,CAAC,EAC7C,qBAAqB;IACvB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,IAAI,EACJ,OAAe,EACf,QAAQ,EACR,SAAS,EACT,GAAG,IAAI,EACR,EAAE,sBAAsB,2CAqBxB"}
|
|
@@ -4,7 +4,7 @@ import './llm-breadcrumbs.css';
|
|
|
4
4
|
/**
|
|
5
5
|
* A breadcrumbs component for displaying a navigation trail.
|
|
6
6
|
*/
|
|
7
|
-
export function LlmBreadcrumbs({ children, className, ...rest }) {
|
|
7
|
+
export function LlmBreadcrumbs({ children, separator = '/', className, style, ...rest }) {
|
|
8
8
|
const classes = ['llm-breadcrumbs', className].filter(Boolean).join(' ');
|
|
9
9
|
// Automatically mark the last child as current
|
|
10
10
|
const childArray = Children.toArray(children);
|
|
@@ -14,7 +14,7 @@ export function LlmBreadcrumbs({ children, className, ...rest }) {
|
|
|
14
14
|
}
|
|
15
15
|
return child;
|
|
16
16
|
});
|
|
17
|
-
return (_jsx("nav", { className: classes, "aria-label": "Breadcrumb", ...rest, children: _jsx("ol", { className: "breadcrumbs-list", children: enhancedChildren }) }));
|
|
17
|
+
return (_jsx("nav", { className: classes, "aria-label": "Breadcrumb", style: { '--llm-separator': `'${separator}'`, ...style }, ...rest, children: _jsx("ol", { className: "breadcrumbs-list", children: enhancedChildren }) }));
|
|
18
18
|
}
|
|
19
19
|
/**
|
|
20
20
|
* An individual breadcrumb item.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm-breadcrumbs.js","sourceRoot":"","sources":["../../../../../../libs/react/src/lib/breadcrumbs/llm-breadcrumbs.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAmD,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"llm-breadcrumbs.js","sourceRoot":"","sources":["../../../../../../libs/react/src/lib/breadcrumbs/llm-breadcrumbs.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAmD,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAGhH,OAAO,uBAAuB,CAAC;AAY/B;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,EAAE,QAAQ,EAAE,SAAS,GAAG,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,IAAI,EAAuB;IAC1G,MAAM,OAAO,GAAG,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEzE,+CAA+C;IAC/C,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC9C,MAAM,gBAAgB,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACvD,IAAI,cAAc,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7D,OAAO,YAAY,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAY,CAAC,CAAC;QAC1D,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,OAAO,CACL,cACE,SAAS,EAAE,OAAO,gBACP,YAAY,EACvB,KAAK,EAAE,EAAE,iBAAiB,EAAE,IAAI,SAAS,GAAG,EAAE,GAAG,KAAK,EAAmB,KACrE,IAAI,YAER,aAAI,SAAS,EAAC,kBAAkB,YAC7B,gBAAgB,GACd,GACD,CACP,CAAC;AACJ,CAAC;AAsBD;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAChC,IAAI,EACJ,OAAO,GAAG,KAAK,EACf,QAAQ,EACR,SAAS,EACT,GAAG,IAAI,EACgB;IACvB,MAAM,OAAO,GAAG,CAAC,qBAAqB,EAAE,OAAO,IAAI,YAAY,EAAE,SAAS,CAAC;SACxE,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,GAAG,CAAC,CAAC;IAEb,OAAO,CACL,aAAI,SAAS,EAAE,OAAO,YACnB,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAClB,YAAG,IAAI,EAAE,IAAI,EAAE,SAAS,EAAC,iBAAiB,KAAK,IAAI,YAChD,QAAQ,GACP,CACL,CAAC,CAAC,CAAC,CACF,eACE,SAAS,EAAC,oBAAoB,kBAChB,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,YAEzC,QAAQ,GACJ,CACR,GACE,CACN,CAAC;AACJ,CAAC","sourcesContent":["import { HTMLAttributes, ReactNode, AnchorHTMLAttributes, Children, isValidElement, cloneElement } from 'react';\nimport type { CSSProperties } from 'react';\nimport type { LlmBreadcrumbsSpec, LlmBreadcrumbItemSpec } from '@atelier-ui/spec';\nimport './llm-breadcrumbs.css';\n\n/**\n * Properties for the LlmBreadcrumbs component.\n */\nexport interface LlmBreadcrumbsProps extends HTMLAttributes<HTMLElement>, LlmBreadcrumbsSpec {\n /**\n * The breadcrumb items to be rendered.\n */\n children?: ReactNode;\n}\n\n/**\n * A breadcrumbs component for displaying a navigation trail.\n */\nexport function LlmBreadcrumbs({ children, separator = '/', className, style, ...rest }: LlmBreadcrumbsProps) {\n const classes = ['llm-breadcrumbs', className].filter(Boolean).join(' ');\n\n // Automatically mark the last child as current\n const childArray = Children.toArray(children);\n const enhancedChildren = childArray.map((child, index) => {\n if (isValidElement(child) && index === childArray.length - 1) {\n return cloneElement(child, { current: true } as object);\n }\n return child;\n });\n\n return (\n <nav\n className={classes}\n aria-label=\"Breadcrumb\"\n style={{ '--llm-separator': `'${separator}'`, ...style } as CSSProperties}\n {...rest}\n >\n <ol className=\"breadcrumbs-list\">\n {enhancedChildren}\n </ol>\n </nav>\n );\n}\n\n/**\n * Properties for the LlmBreadcrumbItem component.\n */\nexport interface LlmBreadcrumbItemProps\n extends AnchorHTMLAttributes<HTMLAnchorElement>,\n LlmBreadcrumbItemSpec {\n /**\n * The URL the breadcrumb points to.\n */\n href?: string;\n /**\n * Whether this is the current page.\n */\n current?: boolean;\n /**\n * The content to be rendered inside the breadcrumb item.\n */\n children?: ReactNode;\n}\n\n/**\n * An individual breadcrumb item.\n */\nexport function LlmBreadcrumbItem({\n href,\n current = false,\n children,\n className,\n ...rest\n}: LlmBreadcrumbItemProps) {\n const classes = ['llm-breadcrumb-item', current && 'is-current', className]\n .filter(Boolean)\n .join(' ');\n\n return (\n <li className={classes}>\n {href && !current ? (\n <a href={href} className=\"breadcrumb-link\" {...rest}>\n {children}\n </a>\n ) : (\n <span\n className=\"breadcrumb-current\"\n aria-current={current ? 'page' : undefined}\n >\n {children}\n </span>\n )}\n </li>\n );\n}\n"]}
|