@opengovsg/oui 0.0.41 → 0.0.43
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/cjs/breadcrumbs/breadcrumbs.cjs +180 -0
- package/dist/cjs/breadcrumbs/context.cjs +12 -0
- package/dist/cjs/breadcrumbs/i18n.cjs +19 -0
- package/dist/cjs/breadcrumbs/index.cjs +9 -0
- package/dist/cjs/index.cjs +5 -0
- package/dist/cjs/link/index.cjs +8 -0
- package/dist/cjs/link/link.cjs +27 -0
- package/dist/esm/breadcrumbs/breadcrumbs.js +177 -0
- package/dist/esm/breadcrumbs/context.js +9 -0
- package/dist/esm/breadcrumbs/i18n.js +17 -0
- package/dist/esm/breadcrumbs/index.js +2 -0
- package/dist/esm/index.js +2 -0
- package/dist/esm/link/index.js +2 -0
- package/dist/esm/link/link.js +25 -0
- package/dist/esm/menu/menu.js +2 -2
- package/dist/types/breadcrumbs/breadcrumbs.d.ts +56 -0
- package/dist/types/breadcrumbs/breadcrumbs.d.ts.map +1 -0
- package/dist/types/breadcrumbs/context.d.ts +8 -0
- package/dist/types/breadcrumbs/context.d.ts.map +1 -0
- package/dist/types/breadcrumbs/i18n.d.ts +15 -0
- package/dist/types/breadcrumbs/i18n.d.ts.map +1 -0
- package/dist/types/breadcrumbs/index.d.ts +2 -0
- package/dist/types/breadcrumbs/index.d.ts.map +1 -0
- package/dist/types/index.d.mts +2 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/link/index.d.ts +2 -0
- package/dist/types/link/index.d.ts.map +1 -0
- package/dist/types/link/link.d.ts +7 -0
- package/dist/types/link/link.d.ts.map +1 -0
- package/package.json +5 -5
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
"use client";
|
|
3
|
+
'use strict';
|
|
4
|
+
|
|
5
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
6
|
+
var $670gB$react = require('react');
|
|
7
|
+
var reactAria = require('react-aria');
|
|
8
|
+
var reactAriaComponents = require('react-aria-components');
|
|
9
|
+
var ouiTheme = require('@opengovsg/oui-theme');
|
|
10
|
+
var link = require('../link/link.cjs');
|
|
11
|
+
var menu = require('../menu/menu.cjs');
|
|
12
|
+
var children = require('../system/react-utils/children.cjs');
|
|
13
|
+
var context = require('./context.cjs');
|
|
14
|
+
var i18n = require('./i18n.cjs');
|
|
15
|
+
var chevronRight = require('../node_modules/.pnpm/lucide-react@0.475.0_react@19.2.3/node_modules/lucide-react/dist/esm/icons/chevron-right.cjs');
|
|
16
|
+
|
|
17
|
+
function Breadcrumbs({
|
|
18
|
+
separator = "chevron",
|
|
19
|
+
itemsBeforeTruncate = null,
|
|
20
|
+
itemsAfterTruncate = 2,
|
|
21
|
+
renderTruncate,
|
|
22
|
+
truncateProps,
|
|
23
|
+
...props
|
|
24
|
+
}) {
|
|
25
|
+
const slots = ouiTheme.breadcrumbsStyles();
|
|
26
|
+
const children$1 = $670gB$react.useMemo(() => {
|
|
27
|
+
if (itemsBeforeTruncate == null) {
|
|
28
|
+
return props.children;
|
|
29
|
+
}
|
|
30
|
+
const validChildren = children.getValidChildren(props.children);
|
|
31
|
+
const totalVisible = itemsBeforeTruncate + itemsAfterTruncate;
|
|
32
|
+
if (validChildren.length <= totalVisible) {
|
|
33
|
+
return props.children;
|
|
34
|
+
}
|
|
35
|
+
const visibleStart = validChildren.slice(0, itemsBeforeTruncate);
|
|
36
|
+
const visibleEnd = itemsAfterTruncate > 0 ? validChildren.slice(-itemsAfterTruncate) : [];
|
|
37
|
+
const hiddenItems = itemsAfterTruncate > 0 ? validChildren.slice(itemsBeforeTruncate, -itemsAfterTruncate) : validChildren.slice(itemsBeforeTruncate);
|
|
38
|
+
const hiddenItemData = hiddenItems.map((child, index) => {
|
|
39
|
+
const childProps = child.props;
|
|
40
|
+
return {
|
|
41
|
+
href: childProps.href,
|
|
42
|
+
children: childProps.children,
|
|
43
|
+
onPress: childProps.onPress,
|
|
44
|
+
id: child.key != null ? String(child.key) : `breadcrumb-hidden-${index}`
|
|
45
|
+
};
|
|
46
|
+
});
|
|
47
|
+
return [
|
|
48
|
+
...visibleStart,
|
|
49
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
50
|
+
BreadcrumbEllipsis,
|
|
51
|
+
{
|
|
52
|
+
items: hiddenItemData,
|
|
53
|
+
renderTruncate,
|
|
54
|
+
menuProps: truncateProps
|
|
55
|
+
},
|
|
56
|
+
"__breadcrumb-ellipsis"
|
|
57
|
+
),
|
|
58
|
+
...visibleEnd
|
|
59
|
+
];
|
|
60
|
+
}, [
|
|
61
|
+
itemsBeforeTruncate,
|
|
62
|
+
props.children,
|
|
63
|
+
itemsAfterTruncate,
|
|
64
|
+
renderTruncate,
|
|
65
|
+
truncateProps
|
|
66
|
+
]);
|
|
67
|
+
return /* @__PURE__ */ jsxRuntime.jsx(reactAriaComponents.Provider, { values: [[context.BreadcrumbsStyleContext, { separator, slots }]], children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
68
|
+
reactAriaComponents.Breadcrumbs,
|
|
69
|
+
{
|
|
70
|
+
...props,
|
|
71
|
+
className: slots.base({
|
|
72
|
+
className: props.className ?? props.classNames?.base
|
|
73
|
+
}),
|
|
74
|
+
children: children$1
|
|
75
|
+
}
|
|
76
|
+
) });
|
|
77
|
+
}
|
|
78
|
+
function useBreadcrumbSeparator(separatorProp, classNameOverride) {
|
|
79
|
+
const context$1 = context.useBreadcrumbsStyleContext() ?? {};
|
|
80
|
+
const separatorValue = separatorProp === void 0 ? context$1?.separator : separatorProp;
|
|
81
|
+
const slots = context$1?.slots ?? ouiTheme.breadcrumbsStyles();
|
|
82
|
+
return $670gB$react.useMemo(() => {
|
|
83
|
+
if (!separatorValue) return null;
|
|
84
|
+
switch (separatorValue) {
|
|
85
|
+
case "chevron":
|
|
86
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
87
|
+
chevronRight.default,
|
|
88
|
+
{
|
|
89
|
+
"aria-hidden": true,
|
|
90
|
+
className: slots.separator({ className: classNameOverride })
|
|
91
|
+
}
|
|
92
|
+
);
|
|
93
|
+
default:
|
|
94
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
95
|
+
"span",
|
|
96
|
+
{
|
|
97
|
+
"aria-hidden": true,
|
|
98
|
+
className: slots.separator({ className: classNameOverride }),
|
|
99
|
+
children: separatorValue
|
|
100
|
+
}
|
|
101
|
+
);
|
|
102
|
+
}
|
|
103
|
+
}, [classNameOverride, separatorValue, slots]);
|
|
104
|
+
}
|
|
105
|
+
function Breadcrumb({
|
|
106
|
+
separator: separatorProp,
|
|
107
|
+
classNames,
|
|
108
|
+
...props
|
|
109
|
+
}) {
|
|
110
|
+
const context$1 = context.useBreadcrumbsStyleContext() ?? {};
|
|
111
|
+
const slots = context$1?.slots ?? ouiTheme.breadcrumbsStyles();
|
|
112
|
+
const separator = useBreadcrumbSeparator(separatorProp, classNames?.separator);
|
|
113
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
114
|
+
reactAriaComponents.Breadcrumb,
|
|
115
|
+
{
|
|
116
|
+
...props,
|
|
117
|
+
className: ouiTheme.composeRenderProps(
|
|
118
|
+
props.className || classNames?.crumb,
|
|
119
|
+
(className, renderProp) => slots.crumb({ className, ...renderProp })
|
|
120
|
+
),
|
|
121
|
+
children: ({ isCurrent }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
122
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
123
|
+
link.Link,
|
|
124
|
+
{
|
|
125
|
+
...props,
|
|
126
|
+
className: ouiTheme.composeRenderProps(
|
|
127
|
+
props.className ?? classNames?.link,
|
|
128
|
+
(className, renderProps) => slots.link({ className, ...renderProps })
|
|
129
|
+
)
|
|
130
|
+
}
|
|
131
|
+
),
|
|
132
|
+
!isCurrent && separator
|
|
133
|
+
] })
|
|
134
|
+
}
|
|
135
|
+
);
|
|
136
|
+
}
|
|
137
|
+
function BreadcrumbEllipsis({
|
|
138
|
+
items,
|
|
139
|
+
renderTruncate,
|
|
140
|
+
menuProps
|
|
141
|
+
}) {
|
|
142
|
+
const context$1 = context.useBreadcrumbsStyleContext() ?? {};
|
|
143
|
+
const slots = context$1?.slots ?? ouiTheme.breadcrumbsStyles();
|
|
144
|
+
const separator = useBreadcrumbSeparator(void 0);
|
|
145
|
+
const stringFormatter = reactAria.useLocalizedStringFormatter(i18n.i18nStrings);
|
|
146
|
+
const ellipsisContent = "...";
|
|
147
|
+
if (renderTruncate === null) {
|
|
148
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(reactAriaComponents.Breadcrumb, { className: slots.crumb(), children: [
|
|
149
|
+
/* @__PURE__ */ jsxRuntime.jsx(link.Link, { isDisabled: true, children: ellipsisContent }),
|
|
150
|
+
separator
|
|
151
|
+
] });
|
|
152
|
+
}
|
|
153
|
+
const menuContent = renderTruncate ? renderTruncate(items) : /* @__PURE__ */ jsxRuntime.jsx(menu.Menu, { placement: "bottom start", ...menuProps, children: items.map((item) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
154
|
+
menu.MenuItem,
|
|
155
|
+
{
|
|
156
|
+
id: item.id,
|
|
157
|
+
href: item.href,
|
|
158
|
+
onPress: item.onPress,
|
|
159
|
+
children: item.children
|
|
160
|
+
},
|
|
161
|
+
item.id
|
|
162
|
+
)) });
|
|
163
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(reactAriaComponents.Breadcrumb, { className: slots.crumb(), children: [
|
|
164
|
+
/* @__PURE__ */ jsxRuntime.jsxs(reactAriaComponents.MenuTrigger, { children: [
|
|
165
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
166
|
+
link.Link,
|
|
167
|
+
{
|
|
168
|
+
"aria-label": stringFormatter.format("Show more navigation items"),
|
|
169
|
+
className: slots.ellipsisTrigger(),
|
|
170
|
+
children: ellipsisContent
|
|
171
|
+
}
|
|
172
|
+
),
|
|
173
|
+
menuContent
|
|
174
|
+
] }),
|
|
175
|
+
separator
|
|
176
|
+
] });
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
exports.Breadcrumb = Breadcrumb;
|
|
180
|
+
exports.Breadcrumbs = Breadcrumbs;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
var context = require('../system/react-utils/context.cjs');
|
|
5
|
+
|
|
6
|
+
const [BreadcrumbsStyleContext, useBreadcrumbsStyleContext] = context.createContext({
|
|
7
|
+
name: "BreadcrumbsStyleContext",
|
|
8
|
+
strict: false
|
|
9
|
+
});
|
|
10
|
+
|
|
11
|
+
exports.BreadcrumbsStyleContext = BreadcrumbsStyleContext;
|
|
12
|
+
exports.useBreadcrumbsStyleContext = useBreadcrumbsStyleContext;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
const i18nStrings = {
|
|
5
|
+
"en-SG": {
|
|
6
|
+
"Show more navigation items": "Show more navigation items"
|
|
7
|
+
},
|
|
8
|
+
"zh-SG": {
|
|
9
|
+
"Show more navigation items": "\u663E\u793A\u66F4\u591A\u5BFC\u822A\u9879"
|
|
10
|
+
},
|
|
11
|
+
"ms-SG": {
|
|
12
|
+
"Show more navigation items": "Tunjukkan lebih banyak item navigasi"
|
|
13
|
+
},
|
|
14
|
+
"ta-SG": {
|
|
15
|
+
"Show more navigation items": "\u0BAE\u0BC7\u0BB2\u0BC1\u0BAE\u0BCD \u0BB5\u0BB4\u0BBF\u0B9A\u0BC6\u0BB2\u0BC1\u0BA4\u0BCD\u0BA4\u0BB2\u0BCD \u0B89\u0BB0\u0BC1\u0BAA\u0BCD\u0BAA\u0B9F\u0BBF\u0B95\u0BB3\u0BC8\u0B95\u0BCD \u0B95\u0BBE\u0B9F\u0BCD\u0B9F\u0BC1"
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
exports.i18nStrings = i18nStrings;
|
package/dist/cjs/index.cjs
CHANGED
|
@@ -69,6 +69,8 @@ var index = require('./avatar/index.cjs');
|
|
|
69
69
|
var accordion = require('./accordion/accordion.cjs');
|
|
70
70
|
var timeField = require('./time-field/time-field.cjs');
|
|
71
71
|
var searchField = require('./search-field/search-field.cjs');
|
|
72
|
+
var link = require('./link/link.cjs');
|
|
73
|
+
var breadcrumbs = require('./breadcrumbs/breadcrumbs.cjs');
|
|
72
74
|
var sonner = require('sonner');
|
|
73
75
|
var avatarContext = require('./avatar/avatar-context.cjs');
|
|
74
76
|
var avatarGroup = require('./avatar/avatar-group.cjs');
|
|
@@ -186,6 +188,9 @@ exports.AccordionStyleContext = accordion.AccordionStyleContext;
|
|
|
186
188
|
exports.useAccordionStyleContext = accordion.useAccordionStyleContext;
|
|
187
189
|
exports.TimeField = timeField.TimeField;
|
|
188
190
|
exports.SearchField = searchField.SearchField;
|
|
191
|
+
exports.Link = link.Link;
|
|
192
|
+
exports.Breadcrumb = breadcrumbs.Breadcrumb;
|
|
193
|
+
exports.Breadcrumbs = breadcrumbs.Breadcrumbs;
|
|
189
194
|
Object.defineProperty(exports, "toast", {
|
|
190
195
|
enumerable: true,
|
|
191
196
|
get: function () { return sonner.toast; }
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
"use client";
|
|
3
|
+
'use strict';
|
|
4
|
+
|
|
5
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
6
|
+
var reactAriaComponents = require('react-aria-components');
|
|
7
|
+
var ouiTheme = require('@opengovsg/oui-theme');
|
|
8
|
+
var utils = require('../system/utils.cjs');
|
|
9
|
+
|
|
10
|
+
function Link(originalProps) {
|
|
11
|
+
const [props, variantProps] = utils.mapPropsVariants(
|
|
12
|
+
originalProps,
|
|
13
|
+
ouiTheme.linkStyles.variantKeys
|
|
14
|
+
);
|
|
15
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
16
|
+
reactAriaComponents.Link,
|
|
17
|
+
{
|
|
18
|
+
...props,
|
|
19
|
+
className: reactAriaComponents.composeRenderProps(
|
|
20
|
+
props.className,
|
|
21
|
+
(className, renderProps) => ouiTheme.linkStyles({ ...variantProps, className, ...renderProps })
|
|
22
|
+
)
|
|
23
|
+
}
|
|
24
|
+
);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
exports.Link = Link;
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
"use client";
|
|
3
|
+
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
4
|
+
import { useMemo } from 'react';
|
|
5
|
+
import { useLocalizedStringFormatter } from 'react-aria';
|
|
6
|
+
import { Provider, Breadcrumbs as Breadcrumbs$1, Breadcrumb as Breadcrumb$1, MenuTrigger } from 'react-aria-components';
|
|
7
|
+
import { breadcrumbsStyles, composeRenderProps } from '@opengovsg/oui-theme';
|
|
8
|
+
import { Link } from '../link/link.js';
|
|
9
|
+
import { Menu, MenuItem } from '../menu/menu.js';
|
|
10
|
+
import { getValidChildren } from '../system/react-utils/children.js';
|
|
11
|
+
import { BreadcrumbsStyleContext, useBreadcrumbsStyleContext } from './context.js';
|
|
12
|
+
import { i18nStrings } from './i18n.js';
|
|
13
|
+
import ChevronRight from '../node_modules/.pnpm/lucide-react@0.475.0_react@19.2.3/node_modules/lucide-react/dist/esm/icons/chevron-right.js';
|
|
14
|
+
|
|
15
|
+
function Breadcrumbs({
|
|
16
|
+
separator = "chevron",
|
|
17
|
+
itemsBeforeTruncate = null,
|
|
18
|
+
itemsAfterTruncate = 2,
|
|
19
|
+
renderTruncate,
|
|
20
|
+
truncateProps,
|
|
21
|
+
...props
|
|
22
|
+
}) {
|
|
23
|
+
const slots = breadcrumbsStyles();
|
|
24
|
+
const children = useMemo(() => {
|
|
25
|
+
if (itemsBeforeTruncate == null) {
|
|
26
|
+
return props.children;
|
|
27
|
+
}
|
|
28
|
+
const validChildren = getValidChildren(props.children);
|
|
29
|
+
const totalVisible = itemsBeforeTruncate + itemsAfterTruncate;
|
|
30
|
+
if (validChildren.length <= totalVisible) {
|
|
31
|
+
return props.children;
|
|
32
|
+
}
|
|
33
|
+
const visibleStart = validChildren.slice(0, itemsBeforeTruncate);
|
|
34
|
+
const visibleEnd = itemsAfterTruncate > 0 ? validChildren.slice(-itemsAfterTruncate) : [];
|
|
35
|
+
const hiddenItems = itemsAfterTruncate > 0 ? validChildren.slice(itemsBeforeTruncate, -itemsAfterTruncate) : validChildren.slice(itemsBeforeTruncate);
|
|
36
|
+
const hiddenItemData = hiddenItems.map((child, index) => {
|
|
37
|
+
const childProps = child.props;
|
|
38
|
+
return {
|
|
39
|
+
href: childProps.href,
|
|
40
|
+
children: childProps.children,
|
|
41
|
+
onPress: childProps.onPress,
|
|
42
|
+
id: child.key != null ? String(child.key) : `breadcrumb-hidden-${index}`
|
|
43
|
+
};
|
|
44
|
+
});
|
|
45
|
+
return [
|
|
46
|
+
...visibleStart,
|
|
47
|
+
/* @__PURE__ */ jsx(
|
|
48
|
+
BreadcrumbEllipsis,
|
|
49
|
+
{
|
|
50
|
+
items: hiddenItemData,
|
|
51
|
+
renderTruncate,
|
|
52
|
+
menuProps: truncateProps
|
|
53
|
+
},
|
|
54
|
+
"__breadcrumb-ellipsis"
|
|
55
|
+
),
|
|
56
|
+
...visibleEnd
|
|
57
|
+
];
|
|
58
|
+
}, [
|
|
59
|
+
itemsBeforeTruncate,
|
|
60
|
+
props.children,
|
|
61
|
+
itemsAfterTruncate,
|
|
62
|
+
renderTruncate,
|
|
63
|
+
truncateProps
|
|
64
|
+
]);
|
|
65
|
+
return /* @__PURE__ */ jsx(Provider, { values: [[BreadcrumbsStyleContext, { separator, slots }]], children: /* @__PURE__ */ jsx(
|
|
66
|
+
Breadcrumbs$1,
|
|
67
|
+
{
|
|
68
|
+
...props,
|
|
69
|
+
className: slots.base({
|
|
70
|
+
className: props.className ?? props.classNames?.base
|
|
71
|
+
}),
|
|
72
|
+
children
|
|
73
|
+
}
|
|
74
|
+
) });
|
|
75
|
+
}
|
|
76
|
+
function useBreadcrumbSeparator(separatorProp, classNameOverride) {
|
|
77
|
+
const context = useBreadcrumbsStyleContext() ?? {};
|
|
78
|
+
const separatorValue = separatorProp === void 0 ? context?.separator : separatorProp;
|
|
79
|
+
const slots = context?.slots ?? breadcrumbsStyles();
|
|
80
|
+
return useMemo(() => {
|
|
81
|
+
if (!separatorValue) return null;
|
|
82
|
+
switch (separatorValue) {
|
|
83
|
+
case "chevron":
|
|
84
|
+
return /* @__PURE__ */ jsx(
|
|
85
|
+
ChevronRight,
|
|
86
|
+
{
|
|
87
|
+
"aria-hidden": true,
|
|
88
|
+
className: slots.separator({ className: classNameOverride })
|
|
89
|
+
}
|
|
90
|
+
);
|
|
91
|
+
default:
|
|
92
|
+
return /* @__PURE__ */ jsx(
|
|
93
|
+
"span",
|
|
94
|
+
{
|
|
95
|
+
"aria-hidden": true,
|
|
96
|
+
className: slots.separator({ className: classNameOverride }),
|
|
97
|
+
children: separatorValue
|
|
98
|
+
}
|
|
99
|
+
);
|
|
100
|
+
}
|
|
101
|
+
}, [classNameOverride, separatorValue, slots]);
|
|
102
|
+
}
|
|
103
|
+
function Breadcrumb({
|
|
104
|
+
separator: separatorProp,
|
|
105
|
+
classNames,
|
|
106
|
+
...props
|
|
107
|
+
}) {
|
|
108
|
+
const context = useBreadcrumbsStyleContext() ?? {};
|
|
109
|
+
const slots = context?.slots ?? breadcrumbsStyles();
|
|
110
|
+
const separator = useBreadcrumbSeparator(separatorProp, classNames?.separator);
|
|
111
|
+
return /* @__PURE__ */ jsx(
|
|
112
|
+
Breadcrumb$1,
|
|
113
|
+
{
|
|
114
|
+
...props,
|
|
115
|
+
className: composeRenderProps(
|
|
116
|
+
props.className || classNames?.crumb,
|
|
117
|
+
(className, renderProp) => slots.crumb({ className, ...renderProp })
|
|
118
|
+
),
|
|
119
|
+
children: ({ isCurrent }) => /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
120
|
+
/* @__PURE__ */ jsx(
|
|
121
|
+
Link,
|
|
122
|
+
{
|
|
123
|
+
...props,
|
|
124
|
+
className: composeRenderProps(
|
|
125
|
+
props.className ?? classNames?.link,
|
|
126
|
+
(className, renderProps) => slots.link({ className, ...renderProps })
|
|
127
|
+
)
|
|
128
|
+
}
|
|
129
|
+
),
|
|
130
|
+
!isCurrent && separator
|
|
131
|
+
] })
|
|
132
|
+
}
|
|
133
|
+
);
|
|
134
|
+
}
|
|
135
|
+
function BreadcrumbEllipsis({
|
|
136
|
+
items,
|
|
137
|
+
renderTruncate,
|
|
138
|
+
menuProps
|
|
139
|
+
}) {
|
|
140
|
+
const context = useBreadcrumbsStyleContext() ?? {};
|
|
141
|
+
const slots = context?.slots ?? breadcrumbsStyles();
|
|
142
|
+
const separator = useBreadcrumbSeparator(void 0);
|
|
143
|
+
const stringFormatter = useLocalizedStringFormatter(i18nStrings);
|
|
144
|
+
const ellipsisContent = "...";
|
|
145
|
+
if (renderTruncate === null) {
|
|
146
|
+
return /* @__PURE__ */ jsxs(Breadcrumb$1, { className: slots.crumb(), children: [
|
|
147
|
+
/* @__PURE__ */ jsx(Link, { isDisabled: true, children: ellipsisContent }),
|
|
148
|
+
separator
|
|
149
|
+
] });
|
|
150
|
+
}
|
|
151
|
+
const menuContent = renderTruncate ? renderTruncate(items) : /* @__PURE__ */ jsx(Menu, { placement: "bottom start", ...menuProps, children: items.map((item) => /* @__PURE__ */ jsx(
|
|
152
|
+
MenuItem,
|
|
153
|
+
{
|
|
154
|
+
id: item.id,
|
|
155
|
+
href: item.href,
|
|
156
|
+
onPress: item.onPress,
|
|
157
|
+
children: item.children
|
|
158
|
+
},
|
|
159
|
+
item.id
|
|
160
|
+
)) });
|
|
161
|
+
return /* @__PURE__ */ jsxs(Breadcrumb$1, { className: slots.crumb(), children: [
|
|
162
|
+
/* @__PURE__ */ jsxs(MenuTrigger, { children: [
|
|
163
|
+
/* @__PURE__ */ jsx(
|
|
164
|
+
Link,
|
|
165
|
+
{
|
|
166
|
+
"aria-label": stringFormatter.format("Show more navigation items"),
|
|
167
|
+
className: slots.ellipsisTrigger(),
|
|
168
|
+
children: ellipsisContent
|
|
169
|
+
}
|
|
170
|
+
),
|
|
171
|
+
menuContent
|
|
172
|
+
] }),
|
|
173
|
+
separator
|
|
174
|
+
] });
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
export { Breadcrumb, Breadcrumbs };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
import { createContext } from '../system/react-utils/context.js';
|
|
3
|
+
|
|
4
|
+
const [BreadcrumbsStyleContext, useBreadcrumbsStyleContext] = createContext({
|
|
5
|
+
name: "BreadcrumbsStyleContext",
|
|
6
|
+
strict: false
|
|
7
|
+
});
|
|
8
|
+
|
|
9
|
+
export { BreadcrumbsStyleContext, useBreadcrumbsStyleContext };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
const i18nStrings = {
|
|
3
|
+
"en-SG": {
|
|
4
|
+
"Show more navigation items": "Show more navigation items"
|
|
5
|
+
},
|
|
6
|
+
"zh-SG": {
|
|
7
|
+
"Show more navigation items": "\u663E\u793A\u66F4\u591A\u5BFC\u822A\u9879"
|
|
8
|
+
},
|
|
9
|
+
"ms-SG": {
|
|
10
|
+
"Show more navigation items": "Tunjukkan lebih banyak item navigasi"
|
|
11
|
+
},
|
|
12
|
+
"ta-SG": {
|
|
13
|
+
"Show more navigation items": "\u0BAE\u0BC7\u0BB2\u0BC1\u0BAE\u0BCD \u0BB5\u0BB4\u0BBF\u0B9A\u0BC6\u0BB2\u0BC1\u0BA4\u0BCD\u0BA4\u0BB2\u0BCD \u0B89\u0BB0\u0BC1\u0BAA\u0BCD\u0BAA\u0B9F\u0BBF\u0B95\u0BB3\u0BC8\u0B95\u0BCD \u0B95\u0BBE\u0B9F\u0BCD\u0B9F\u0BC1"
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export { i18nStrings };
|
package/dist/esm/index.js
CHANGED
|
@@ -67,6 +67,8 @@ export { Avatar } from './avatar/index.js';
|
|
|
67
67
|
export { Accordion, AccordionContent, AccordionHeader, AccordionItem, AccordionStyleContext, useAccordionStyleContext } from './accordion/accordion.js';
|
|
68
68
|
export { TimeField } from './time-field/time-field.js';
|
|
69
69
|
export { SearchField } from './search-field/search-field.js';
|
|
70
|
+
export { Link } from './link/link.js';
|
|
71
|
+
export { Breadcrumb, Breadcrumbs } from './breadcrumbs/breadcrumbs.js';
|
|
70
72
|
export { toast } from 'sonner';
|
|
71
73
|
export { AvatarContext, useAvatarContext } from './avatar/avatar-context.js';
|
|
72
74
|
export { AvatarGroup } from './avatar/avatar-group.js';
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
"use client";
|
|
3
|
+
import { jsx } from 'react/jsx-runtime';
|
|
4
|
+
import { Link as Link$1, composeRenderProps } from 'react-aria-components';
|
|
5
|
+
import { linkStyles } from '@opengovsg/oui-theme';
|
|
6
|
+
import { mapPropsVariants } from '../system/utils.js';
|
|
7
|
+
|
|
8
|
+
function Link(originalProps) {
|
|
9
|
+
const [props, variantProps] = mapPropsVariants(
|
|
10
|
+
originalProps,
|
|
11
|
+
linkStyles.variantKeys
|
|
12
|
+
);
|
|
13
|
+
return /* @__PURE__ */ jsx(
|
|
14
|
+
Link$1,
|
|
15
|
+
{
|
|
16
|
+
...props,
|
|
17
|
+
className: composeRenderProps(
|
|
18
|
+
props.className,
|
|
19
|
+
(className, renderProps) => linkStyles({ ...variantProps, className, ...renderProps })
|
|
20
|
+
)
|
|
21
|
+
}
|
|
22
|
+
);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export { Link };
|
package/dist/esm/menu/menu.js
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
"use client";
|
|
3
3
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
4
4
|
import { forwardRef, useMemo, useCallback } from 'react';
|
|
5
|
-
import { useContextProps, MenuItem as MenuItem$1, composeRenderProps,
|
|
6
|
-
import { listBoxItemStyles, menuItemStyles, menuStyles, menuSectionStyles
|
|
5
|
+
import { useContextProps, MenuItem as MenuItem$1, composeRenderProps, MenuTrigger as MenuTrigger$1, SubmenuTrigger as SubmenuTrigger$1, Separator, Provider, Menu as Menu$1, MenuSection as MenuSection$1, Header, Collection } from 'react-aria-components';
|
|
6
|
+
import { listBoxItemStyles, menuItemStyles, menuDividerStyles, menuStyles, menuSectionStyles } from '@opengovsg/oui-theme';
|
|
7
7
|
import { Popover } from '../popover/popover.js';
|
|
8
8
|
import { forwardRefGeneric, mapPropsVariants } from '../system/utils.js';
|
|
9
9
|
import { createContext } from '../system/react-utils/context.js';
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import type { BreadcrumbProps as AriaBreadcrumbProps, BreadcrumbsProps as AriaBreadcrumbsProps, LinkProps } from "react-aria-components";
|
|
2
|
+
import type { BreadcrumbsSlots, SlotsToClasses } from "@opengovsg/oui-theme";
|
|
3
|
+
import type { MenuProps } from "../menu";
|
|
4
|
+
import type { BreadcrumbSeparator } from "./context";
|
|
5
|
+
type BreadcrumbsBaseProps<T extends object> = Omit<AriaBreadcrumbsProps<T>, "items"> & {
|
|
6
|
+
separator?: BreadcrumbSeparator;
|
|
7
|
+
classNames?: SlotsToClasses<BreadcrumbsSlots>;
|
|
8
|
+
};
|
|
9
|
+
export type BreadcrumbsProps<T extends object> = BreadcrumbsBaseProps<T> & ({
|
|
10
|
+
/** Data items for the Collection API. Cannot be used with truncation props. */
|
|
11
|
+
items: Iterable<T>;
|
|
12
|
+
itemsBeforeTruncate?: never;
|
|
13
|
+
itemsAfterTruncate?: never;
|
|
14
|
+
renderTruncate?: never;
|
|
15
|
+
truncateProps?: never;
|
|
16
|
+
} | {
|
|
17
|
+
items?: never;
|
|
18
|
+
/**
|
|
19
|
+
* Number of items to show before the truncation indicator.
|
|
20
|
+
* Setting this to a number enables truncation.
|
|
21
|
+
* Set to `null` to explicitly disable truncation.
|
|
22
|
+
*
|
|
23
|
+
* @example itemsBeforeTruncate={1} with [Home, A, B, C, D, Current]:
|
|
24
|
+
* Renders: Home > ... > Current
|
|
25
|
+
*
|
|
26
|
+
* @default null
|
|
27
|
+
*/
|
|
28
|
+
itemsBeforeTruncate?: number | null;
|
|
29
|
+
/**
|
|
30
|
+
* Number of items to show after the truncation indicator.
|
|
31
|
+
* @default 2
|
|
32
|
+
*/
|
|
33
|
+
itemsAfterTruncate?: number;
|
|
34
|
+
/**
|
|
35
|
+
* Custom render function for the dropdown content of the truncation ellipsis.
|
|
36
|
+
* The ellipsis breadcrumb item always renders; this controls the dropdown.
|
|
37
|
+
* Defaults to a dropdown menu showing hidden items.
|
|
38
|
+
* Set to `null` to show the ellipsis with no dropdown.
|
|
39
|
+
*/
|
|
40
|
+
renderTruncate?: ((items: BreadcrumbEllipsisItem[]) => React.ReactNode) | null;
|
|
41
|
+
truncateProps?: Partial<MenuProps<object>>;
|
|
42
|
+
});
|
|
43
|
+
export declare function Breadcrumbs<T extends object>({ separator, itemsBeforeTruncate, itemsAfterTruncate, renderTruncate, truncateProps, ...props }: BreadcrumbsProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
44
|
+
type BreadcrumbProps = AriaBreadcrumbProps & Omit<LinkProps, "className"> & {
|
|
45
|
+
separator?: BreadcrumbSeparator;
|
|
46
|
+
classNames?: SlotsToClasses<Exclude<BreadcrumbsSlots, "base">>;
|
|
47
|
+
};
|
|
48
|
+
export declare function Breadcrumb({ separator: separatorProp, classNames, ...props }: BreadcrumbProps): import("react/jsx-runtime").JSX.Element;
|
|
49
|
+
export interface BreadcrumbEllipsisItem {
|
|
50
|
+
href?: string;
|
|
51
|
+
children: React.ReactNode;
|
|
52
|
+
id: string;
|
|
53
|
+
onPress?: LinkProps["onPress"];
|
|
54
|
+
}
|
|
55
|
+
export {};
|
|
56
|
+
//# sourceMappingURL=breadcrumbs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"breadcrumbs.d.ts","sourceRoot":"","sources":["../../../src/breadcrumbs/breadcrumbs.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,eAAe,IAAI,mBAAmB,EACtC,gBAAgB,IAAI,oBAAoB,EACxC,SAAS,EACV,MAAM,uBAAuB,CAAA;AAW9B,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAG5E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AACxC,OAAO,KAAK,EACV,mBAAmB,EAEpB,MAAM,WAAW,CAAA;AAOlB,KAAK,oBAAoB,CAAC,CAAC,SAAS,MAAM,IAAI,IAAI,CAChD,oBAAoB,CAAC,CAAC,CAAC,EACvB,OAAO,CACR,GAAG;IACF,SAAS,CAAC,EAAE,mBAAmB,CAAA;IAC/B,UAAU,CAAC,EAAE,cAAc,CAAC,gBAAgB,CAAC,CAAA;CAC9C,CAAA;AAED,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,MAAM,IAAI,oBAAoB,CAAC,CAAC,CAAC,GACtE,CACI;IACE,+EAA+E;IAC/E,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAA;IAClB,mBAAmB,CAAC,EAAE,KAAK,CAAA;IAC3B,kBAAkB,CAAC,EAAE,KAAK,CAAA;IAC1B,cAAc,CAAC,EAAE,KAAK,CAAA;IACtB,aAAa,CAAC,EAAE,KAAK,CAAA;CACtB,GACD;IACE,KAAK,CAAC,EAAE,KAAK,CAAA;IACb;;;;;;;;;OASG;IACH,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACnC;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B;;;;;OAKG;IACH,cAAc,CAAC,EACX,CAAC,CAAC,KAAK,EAAE,sBAAsB,EAAE,KAAK,KAAK,CAAC,SAAS,CAAC,GACtD,IAAI,CAAA;IAER,aAAa,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAA;CAC3C,CACJ,CAAA;AAEH,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,EAAE,EAC5C,SAAqB,EACrB,mBAA0B,EAC1B,kBAAsB,EACtB,cAAc,EACd,aAAa,EACb,GAAG,KAAK,EACT,EAAE,gBAAgB,CAAC,CAAC,CAAC,2CAoErB;AAoCD,KAAK,eAAe,GAAG,mBAAmB,GACxC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,GAAG;IAC7B,SAAS,CAAC,EAAE,mBAAmB,CAAA;IAC/B,UAAU,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAA;CAC/D,CAAA;AAEH,wBAAgB,UAAU,CAAC,EACzB,SAAS,EAAE,aAAa,EACxB,UAAU,EACV,GAAG,KAAK,EACT,EAAE,eAAe,2CA8BjB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;CAC/B"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { breadcrumbsStyles } from "@opengovsg/oui-theme";
|
|
2
|
+
export type BreadcrumbSeparator = "chevron" | Exclude<React.ReactNode, string> | (string & {}) | null;
|
|
3
|
+
export interface UseProvideBreadcrumbsStylesReturn {
|
|
4
|
+
slots: ReturnType<typeof breadcrumbsStyles>;
|
|
5
|
+
separator?: BreadcrumbSeparator;
|
|
6
|
+
}
|
|
7
|
+
export declare const BreadcrumbsStyleContext: import("react").Context<UseProvideBreadcrumbsStylesReturn | undefined>, useBreadcrumbsStyleContext: () => UseProvideBreadcrumbsStylesReturn | undefined;
|
|
8
|
+
//# sourceMappingURL=context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/breadcrumbs/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAI7D,MAAM,MAAM,mBAAmB,GAC3B,SAAS,GACT,OAAO,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,GAChC,CAAC,MAAM,GAAG,EAAE,CAAC,GACb,IAAI,CAAA;AAER,MAAM,WAAW,iCAAiC;IAChD,KAAK,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAA;IAC3C,SAAS,CAAC,EAAE,mBAAmB,CAAA;CAChC;AAED,eAAO,MAAO,uBAAuB,0EAAE,0BAA0B,qDAI7D,CAAA"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export declare const i18nStrings: {
|
|
2
|
+
"en-SG": {
|
|
3
|
+
"Show more navigation items": string;
|
|
4
|
+
};
|
|
5
|
+
"zh-SG": {
|
|
6
|
+
"Show more navigation items": string;
|
|
7
|
+
};
|
|
8
|
+
"ms-SG": {
|
|
9
|
+
"Show more navigation items": string;
|
|
10
|
+
};
|
|
11
|
+
"ta-SG": {
|
|
12
|
+
"Show more navigation items": string;
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=i18n.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../../src/breadcrumbs/i18n.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW;;;;;;;;;;;;;CAaI,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/breadcrumbs/index.tsx"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA"}
|
package/dist/types/index.d.mts
CHANGED
package/dist/types/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,eAAe,CAAA;AAC7B,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,SAAS,CAAA;AACvB,cAAc,cAAc,CAAA;AAC5B,cAAc,SAAS,CAAA;AACvB,cAAc,aAAa,CAAA;AAC3B,cAAc,mBAAmB,CAAA;AACjC,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,kBAAkB,CAAA;AAChC,cAAc,QAAQ,CAAA;AACtB,cAAc,WAAW,CAAA;AACzB,cAAc,QAAQ,CAAA;AACtB,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,qBAAqB,CAAA;AACnC,cAAc,YAAY,CAAA;AAC1B,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,eAAe,CAAA;AAC7B,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,SAAS,CAAA;AACvB,cAAc,cAAc,CAAA;AAC5B,cAAc,SAAS,CAAA;AACvB,cAAc,aAAa,CAAA;AAC3B,cAAc,mBAAmB,CAAA;AACjC,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,kBAAkB,CAAA;AAChC,cAAc,QAAQ,CAAA;AACtB,cAAc,WAAW,CAAA;AACzB,cAAc,QAAQ,CAAA;AACtB,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,qBAAqB,CAAA;AACnC,cAAc,YAAY,CAAA;AAC1B,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,QAAQ,CAAA;AACtB,cAAc,eAAe,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/link/index.tsx"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { LinkProps as AriaLinkProps } from "react-aria-components";
|
|
2
|
+
import type { LinkVariantProps } from "@opengovsg/oui-theme";
|
|
3
|
+
interface LinkProps extends AriaLinkProps, LinkVariantProps {
|
|
4
|
+
}
|
|
5
|
+
export declare function Link(originalProps: LinkProps): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export {};
|
|
7
|
+
//# sourceMappingURL=link.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../../../src/link/link.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAGvE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAK5D,UAAU,SAAU,SAAQ,aAAa,EAAE,gBAAgB;CAAG;AAE9D,wBAAgB,IAAI,CAAC,aAAa,EAAE,SAAS,2CAa5C"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@opengovsg/oui",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.43",
|
|
4
4
|
"sideEffects": false,
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
6
6
|
"type": "module",
|
|
@@ -50,11 +50,11 @@
|
|
|
50
50
|
"storybook": "10.1.10",
|
|
51
51
|
"tsx": "^4.21.0",
|
|
52
52
|
"typescript": "5.7.3",
|
|
53
|
-
"@opengovsg/oui-theme": "0.0.
|
|
53
|
+
"@opengovsg/oui-theme": "0.0.43",
|
|
54
54
|
"@oui/chromatic": "0.0.0",
|
|
55
55
|
"@oui/eslint-config": "0.0.0",
|
|
56
|
-
"@oui/
|
|
57
|
-
"@oui/
|
|
56
|
+
"@oui/typescript-config": "0.0.0",
|
|
57
|
+
"@oui/prettier-config": "0.0.0"
|
|
58
58
|
},
|
|
59
59
|
"dependencies": {
|
|
60
60
|
"@internationalized/date": "^3.10.1",
|
|
@@ -88,7 +88,7 @@
|
|
|
88
88
|
"motion": ">=11.12.0 || >=12.0.0-alpha.1",
|
|
89
89
|
"react": ">= 18",
|
|
90
90
|
"react-aria-components": "^1.14.0",
|
|
91
|
-
"@opengovsg/oui-theme": "0.0.
|
|
91
|
+
"@opengovsg/oui-theme": "0.0.43"
|
|
92
92
|
},
|
|
93
93
|
"scripts": {
|
|
94
94
|
"build": "tsx ../../tooling/build-scripts/main.ts --dts --clean",
|