@flipdish/ui-library 0.41.2 → 0.42.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/components/atoms/Dot/Dot.styles.cjs +1 -0
- package/dist/components/atoms/Dot/Dot.styles.cjs.map +1 -1
- package/dist/components/atoms/Dot/Dot.styles.d.ts +4 -0
- package/dist/components/atoms/Dot/Dot.styles.d.ts.map +1 -1
- package/dist/components/atoms/Dot/Dot.styles.js +1 -0
- package/dist/components/atoms/Dot/Dot.styles.js.map +1 -1
- package/dist/components/molecules/Tags/Tags.styles.cjs +66 -0
- package/dist/components/molecules/Tags/Tags.styles.cjs.map +1 -0
- package/dist/components/molecules/Tags/Tags.styles.d.ts +141 -0
- package/dist/components/molecules/Tags/Tags.styles.d.ts.map +1 -0
- package/dist/components/molecules/Tags/Tags.styles.js +64 -0
- package/dist/components/molecules/Tags/Tags.styles.js.map +1 -0
- package/dist/components/molecules/Tags/components/TagCheckbox.cjs +2 -1
- package/dist/components/molecules/Tags/components/TagCheckbox.cjs.map +1 -1
- package/dist/components/molecules/Tags/components/TagCheckbox.d.ts +2 -1
- package/dist/components/molecules/Tags/components/TagCheckbox.d.ts.map +1 -1
- package/dist/components/molecules/Tags/components/TagCheckbox.js +2 -1
- package/dist/components/molecules/Tags/components/TagCheckbox.js.map +1 -1
- package/dist/components/molecules/Tags/components/TagCloseX.cjs +2 -6
- package/dist/components/molecules/Tags/components/TagCloseX.cjs.map +1 -1
- package/dist/components/molecules/Tags/components/TagCloseX.d.ts +2 -1
- package/dist/components/molecules/Tags/components/TagCloseX.d.ts.map +1 -1
- package/dist/components/molecules/Tags/components/TagCloseX.js +2 -6
- package/dist/components/molecules/Tags/components/TagCloseX.js.map +1 -1
- package/dist/components/molecules/Tags/index.cjs +11 -48
- package/dist/components/molecules/Tags/index.cjs.map +1 -1
- package/dist/components/molecules/Tags/index.d.ts +12 -3
- package/dist/components/molecules/Tags/index.d.ts.map +1 -1
- package/dist/components/molecules/Tags/index.js +11 -48
- package/dist/components/molecules/Tags/index.js.map +1 -1
- package/dist/native/components/atoms/Dot/Dot.styles.d.ts +4 -0
- package/dist/native/components/atoms/Dot/Dot.styles.d.ts.map +1 -1
- package/dist/native/components/atoms/Dot/Dot.styles.js +1 -0
- package/dist/native/components/atoms/Dot/Dot.styles.js.map +1 -1
- package/dist/native/components/molecules/Tags/Tags.styles.d.ts +141 -0
- package/dist/native/components/molecules/Tags/Tags.styles.d.ts.map +1 -0
- package/dist/native/components/molecules/Tags/Tags.styles.js +92 -0
- package/dist/native/components/molecules/Tags/Tags.styles.js.map +1 -0
- package/dist/native/components/molecules/Tags/index.d.ts +95 -8
- package/dist/native/components/molecules/Tags/index.d.ts.map +1 -0
- package/dist/native/components/molecules/Tags/index.js +98 -0
- package/dist/native/components/molecules/Tags/index.js.map +1 -0
- package/package.json +2 -2
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
2
|
+
import { Check, X, User01 } from '@flipdish/ui-icons';
|
|
3
|
+
import { Dot } from '../../atoms/Dot/index.js';
|
|
4
|
+
import { cx } from '../../../utilities/cx/index.js';
|
|
5
|
+
import { useTestIdPrefix, slugifyTestId, useResolvedTestId, TestIdProvider, joinTestId } from '../../../utilities/testIdUtils/index.js';
|
|
6
|
+
import { createContext, useContext, useState } from 'react';
|
|
7
|
+
import { Text, View, Pressable, Image } from 'react-native';
|
|
8
|
+
import { styles } from './Tags.styles.js';
|
|
9
|
+
|
|
10
|
+
/** Grows the close target outward only — a left slop would cover the end of the label. */
|
|
11
|
+
const CLOSE_HIT_SLOP = { top: 8, bottom: 8, right: 8 };
|
|
12
|
+
const TagGroupContext = createContext({
|
|
13
|
+
selectionMode: 'none',
|
|
14
|
+
size: 'sm',
|
|
15
|
+
selectedKeys: new Set(),
|
|
16
|
+
toggle: () => undefined,
|
|
17
|
+
});
|
|
18
|
+
/**
|
|
19
|
+
* Small round avatar at the start of a native `Tag`. Same fallback behaviour as web;
|
|
20
|
+
* contrast border uses a `border` rather than CSS `outline`.
|
|
21
|
+
*
|
|
22
|
+
* @summary small round avatar for a tag (React Native)
|
|
23
|
+
*/
|
|
24
|
+
const TagAvatar = ({ src, alt, contrastBorder = true, className }) => {
|
|
25
|
+
const [isFailed, setIsFailed] = useState(false);
|
|
26
|
+
const size = styles.native.avatarSize;
|
|
27
|
+
return (jsx(View, { className: cx(styles.avatar, contrastBorder && 'border border-black/16', className), style: { width: size, height: size, borderRadius: size / 2 }, children: src && !isFailed ? (jsx(Image, { source: { uri: src }, accessibilityLabel: alt, onError: () => setIsFailed(true), style: { width: size, height: size, borderRadius: size / 2 } })) : (jsx(User01, { size: styles.native.avatarIconSize, color: styles.native.closeIconColor })) }));
|
|
28
|
+
};
|
|
29
|
+
const toKeySet = (keys) => new Set(keys ?? []);
|
|
30
|
+
/**
|
|
31
|
+
* React Native `TagGroup` — display-only, single-select, multi-select and removable
|
|
32
|
+
* tags built from `View` / `Pressable` instead of react-aria. Keyboard Backspace/Delete
|
|
33
|
+
* removal (`onRemove`) and `dotClassName` are web-only; use `onClose` per tag and
|
|
34
|
+
* `dotColor` for status-dot colour.
|
|
35
|
+
*
|
|
36
|
+
* @summary group of tags for filtering, selection or categorisation (React Native)
|
|
37
|
+
*/
|
|
38
|
+
const TagGroup = ({ label, selectionMode = 'none', size = 'sm', selectedKeys: selectedKeysProp, defaultSelectedKeys, onSelectionChange, children, className, 'data-testid': dataTestId, }) => {
|
|
39
|
+
const rootTestId = useResolvedTestId({ testId: dataTestId, segment: 'tag-group', rootName: 'tag-group' });
|
|
40
|
+
const [uncontrolledKeys, setUncontrolledKeys] = useState(() => toKeySet(defaultSelectedKeys));
|
|
41
|
+
const selectedKeys = selectedKeysProp !== undefined ? toKeySet(selectedKeysProp) : uncontrolledKeys;
|
|
42
|
+
const toggle = (id) => {
|
|
43
|
+
if (selectionMode === 'none')
|
|
44
|
+
return;
|
|
45
|
+
const next = new Set(selectedKeys);
|
|
46
|
+
if (selectionMode === 'single') {
|
|
47
|
+
if (next.has(id) && next.size === 1)
|
|
48
|
+
return;
|
|
49
|
+
next.clear();
|
|
50
|
+
next.add(id);
|
|
51
|
+
}
|
|
52
|
+
else if (next.has(id)) {
|
|
53
|
+
next.delete(id);
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
next.add(id);
|
|
57
|
+
}
|
|
58
|
+
if (selectedKeysProp === undefined)
|
|
59
|
+
setUncontrolledKeys(next);
|
|
60
|
+
onSelectionChange?.(next);
|
|
61
|
+
};
|
|
62
|
+
return (jsx(TagGroupContext.Provider, { value: { selectionMode, size, selectedKeys, toggle }, children: jsx(TestIdProvider, { value: rootTestId, children: jsx(View, { testID: rootTestId, accessibilityLabel: label, className: className, children: children }) }) }));
|
|
63
|
+
};
|
|
64
|
+
/** Horizontal wrapping row of tags inside a `TagGroup`. */
|
|
65
|
+
const TagList = ({ children, className }) => jsx(View, { className: cx('flex flex-row flex-wrap gap-2', className), children: children });
|
|
66
|
+
// Check icon is authored at 24px; web's 14px viewBox used stroke 2 → 24/7 for equivalent weight.
|
|
67
|
+
const CHECK_STROKE = 24 / 7;
|
|
68
|
+
/**
|
|
69
|
+
* React Native `Tag` — optional avatar or status dot, count, selection checkbox and
|
|
70
|
+
* remove button. Selection and close use `Pressable`; label colour is a light-mode hex
|
|
71
|
+
* because `Text` ignores `className` under the current `react-native-css` preview.
|
|
72
|
+
*
|
|
73
|
+
* @summary single tag with optional adornments and selection (React Native)
|
|
74
|
+
*/
|
|
75
|
+
const Tag = ({ id, avatarSrc, avatarContrastBorder = true, dot, dotColor = 'fg-success-secondary', isDisabled, count, className, children, onClose, 'data-testid': dataTestId, }) => {
|
|
76
|
+
const context = useContext(TagGroupContext);
|
|
77
|
+
const prefix = useTestIdPrefix();
|
|
78
|
+
const idPart = slugifyTestId(String(id));
|
|
79
|
+
const tagTestId = dataTestId ?? (prefix ? joinTestId(prefix, `tag-${idPart}`) : undefined);
|
|
80
|
+
const closeTestId = tagTestId ? `${tagTestId}-close` : undefined;
|
|
81
|
+
const isSelected = context.selectedKeys.has(id);
|
|
82
|
+
const inSelectionGroup = context.selectionMode !== 'none';
|
|
83
|
+
const sizeStyles = styles.sizes[context.size];
|
|
84
|
+
const [closePressed, setClosePressed] = useState(false);
|
|
85
|
+
const leadingContent = avatarSrc ? (jsx(TagAvatar, { src: avatarSrc, alt: "Avatar", contrastBorder: avatarContrastBorder })) : dot ? (jsx(Dot, { color: dotColor, size: "sm" })) : null;
|
|
86
|
+
const labelNode = typeof children === 'string' || typeof children === 'number' ? (jsx(Text, { style: { color: styles.native.labelColor, fontWeight: '500', ...styles.native.labelText[context.size] }, children: children })) : (children);
|
|
87
|
+
const body = (jsxs(Fragment, { children: [jsxs(View, { className: cx('flex flex-row items-center gap-1', sizeStyles.content), children: [context.selectionMode !== 'none' && (jsx(View, { className: cx('items-center justify-center rounded border border-primary bg-primary', styles.checkbox[context.size].root, isSelected && 'border-brand-solid bg-brand-solid', isDisabled && 'opacity-50', isDisabled && !isSelected && 'bg-tertiary'), children: isSelected ? (jsx(Check, { size: styles.native.checkIconSize[context.size], color: styles.native.checkColor, strokeWidth: CHECK_STROKE })) : null })), leadingContent, labelNode, typeof count === 'number' && (jsx(View, { className: cx(styles.count, sizeStyles.count), children: jsx(Text, { style: { color: styles.native.labelColor, fontWeight: '500', ...styles.native.countText[context.size] }, children: count }) }))] }), onClose && (jsx(Pressable, { testID: closeTestId, accessibilityRole: "button", accessibilityLabel: "Remove this tag", disabled: isDisabled, hitSlop: CLOSE_HIT_SLOP, onPress: () => onClose(String(id)), onPressIn: () => setClosePressed(true), onPressOut: () => setClosePressed(false), className: cx('items-center justify-center rounded-[3px]', styles.close[context.size].root, closePressed && 'bg-primary_hover'), children: jsx(X, { size: styles.native.closeIconSize[context.size], color: closePressed ? styles.native.closeIconColorPressed : styles.native.closeIconColor, strokeWidth: styles.native.closeIconStroke[context.size] }) }))] }));
|
|
88
|
+
const rootClassName = cx(styles.rootNative, sizeStyles.root.base, avatarSrc && sizeStyles.root.withAvatar, onClose && sizeStyles.root.withClose, dot && sizeStyles.root.withDot, typeof count === 'number' && sizeStyles.root.withCount, inSelectionGroup && sizeStyles.root.withCheckbox, className);
|
|
89
|
+
// Keep Pressable (with `disabled`) for any selectable group so a disabled+selected tag
|
|
90
|
+
// still exposes checkbox role and checked state; plain View only when display-only.
|
|
91
|
+
if (inSelectionGroup) {
|
|
92
|
+
return (jsx(Pressable, { testID: tagTestId, disabled: isDisabled, onPress: () => context.toggle(id), accessibilityRole: "checkbox", accessibilityState: { checked: isSelected, disabled: Boolean(isDisabled) }, className: rootClassName, children: body }));
|
|
93
|
+
}
|
|
94
|
+
return (jsx(View, { testID: tagTestId, accessibilityState: { disabled: Boolean(isDisabled) }, className: rootClassName, children: body }));
|
|
95
|
+
};
|
|
96
|
+
|
|
97
|
+
export { Tag, TagAvatar, TagGroup, TagList };
|
|
98
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../src/components/molecules/Tags/index.native.tsx"],"sourcesContent":[null],"names":["_jsx","_jsxs","_Fragment","XClose"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@flipdish/ui-library",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.42.0",
|
|
4
4
|
"description": "Flipdish Design System — atomic-design component library (Tailwind v4 + UntitledUI + React Aria).",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"imports": {
|
|
@@ -230,7 +230,7 @@
|
|
|
230
230
|
"@storybook/addon-a11y": "^10.5.8",
|
|
231
231
|
"@storybook/addon-docs": "^10.5.8",
|
|
232
232
|
"@storybook/addon-mcp": "^0.7.0",
|
|
233
|
-
"@storybook/addon-vitest": "10.6.
|
|
233
|
+
"@storybook/addon-vitest": "10.6.3",
|
|
234
234
|
"@storybook/react-vite": "^10.5.8",
|
|
235
235
|
"@tailwindcss/vite": "^4.3.1",
|
|
236
236
|
"@testing-library/jest-dom": "^6.9.1",
|