@ndla/primitives 0.0.17 → 0.0.19
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/panda.buildinfo.json +52 -19
- package/dist/styles.css +166 -32
- package/es/Accordion.js +58 -30
- package/es/ArticleLists.js +70 -18
- package/es/Button.js +1 -1
- package/es/Card/Card.js +77 -0
- package/es/Checkbox.js +12 -4
- package/es/Combobox.js +33 -10
- package/es/Dialog.js +9 -3
- package/es/Menu.js +21 -7
- package/es/Pagination.js +15 -5
- package/es/Popover.js +30 -10
- package/es/RadioGroup.js +12 -4
- package/es/Select.js +39 -12
- package/es/Slider.js +15 -5
- package/es/Switch.js +9 -3
- package/es/Tabs.js +28 -14
- package/es/TagsInput.js +27 -9
- package/es/Toast.js +9 -3
- package/es/Tooltip.js +15 -5
- package/es/createStyleContext.js +4 -10
- package/es/index.js +4 -3
- package/lib/Accordion.d.ts +41 -2
- package/lib/Accordion.js +58 -30
- package/lib/ArticleLists.d.ts +56 -11
- package/lib/ArticleLists.js +69 -17
- package/lib/Badge.d.ts +1 -0
- package/lib/Button.d.ts +1 -1
- package/lib/Button.js +1 -1
- package/lib/Card/Card.d.ts +19 -0
- package/lib/Card/Card.js +83 -0
- package/lib/Checkbox.js +12 -4
- package/lib/Combobox.d.ts +49 -13
- package/lib/Combobox.js +34 -11
- package/lib/Dialog.js +9 -3
- package/lib/Menu.js +21 -7
- package/lib/Pagination.d.ts +6 -2
- package/lib/Pagination.js +15 -5
- package/lib/Popover.js +30 -10
- package/lib/RadioGroup.js +12 -4
- package/lib/Select.d.ts +3 -0
- package/lib/Select.js +40 -13
- package/lib/Slider.js +15 -5
- package/lib/Switch.js +9 -3
- package/lib/Tabs.d.ts +12 -7
- package/lib/Tabs.js +27 -13
- package/lib/TagsInput.d.ts +15 -2
- package/lib/TagsInput.js +27 -9
- package/lib/Toast.js +9 -3
- package/lib/Tooltip.js +15 -5
- package/lib/createStyleContext.d.ts +5 -2
- package/lib/createStyleContext.js +4 -10
- package/lib/index.d.ts +7 -6
- package/lib/index.js +49 -0
- package/package.json +3 -3
package/es/Tabs.js
CHANGED
|
@@ -6,12 +6,14 @@
|
|
|
6
6
|
*
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
import { Tabs
|
|
9
|
+
import { Tabs } from "@ark-ui/react";
|
|
10
10
|
import { cx, sva } from "@ndla/styled-system/css";
|
|
11
11
|
import { createStyleContext } from "./createStyleContext";
|
|
12
12
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
13
13
|
const tabsRecipe = sva({
|
|
14
|
-
|
|
14
|
+
// TODO: This still doesn't work. Need to figure out why we need to pass keys manually.
|
|
15
|
+
// slots: tabsAnatomy.keys(),
|
|
16
|
+
slots: ["root", "list", "trigger", "content", "indicator"],
|
|
15
17
|
base: {
|
|
16
18
|
root: {
|
|
17
19
|
position: "relative",
|
|
@@ -28,7 +30,7 @@ const tabsRecipe = sva({
|
|
|
28
30
|
position: "relative",
|
|
29
31
|
display: "flex",
|
|
30
32
|
flexShrink: "0",
|
|
31
|
-
|
|
33
|
+
flexWrap: "wrap",
|
|
32
34
|
_horizontal: {
|
|
33
35
|
flexDirection: "row"
|
|
34
36
|
},
|
|
@@ -106,10 +108,9 @@ const tabsRecipe = sva({
|
|
|
106
108
|
},
|
|
107
109
|
indicator: {
|
|
108
110
|
background: "transparent",
|
|
109
|
-
outline: "
|
|
111
|
+
outline: "3px solid",
|
|
110
112
|
outlineColor: "stroke.default",
|
|
111
|
-
|
|
112
|
-
outlineOffset: "-4px",
|
|
113
|
+
outlineOffset: "-3px",
|
|
113
114
|
_peerFocusVisible: {
|
|
114
115
|
height: "var(--height)",
|
|
115
116
|
width: "var(--width)",
|
|
@@ -121,14 +122,17 @@ const tabsRecipe = sva({
|
|
|
121
122
|
}
|
|
122
123
|
},
|
|
123
124
|
_horizontal: {
|
|
124
|
-
|
|
125
|
-
|
|
125
|
+
top: "calc(var(--top) + var(--height) - 6px)",
|
|
126
|
+
_peerFocusVisible: {
|
|
127
|
+
top: "var(--top)"
|
|
128
|
+
},
|
|
129
|
+
height: "3",
|
|
126
130
|
width: "var(--width)"
|
|
127
131
|
},
|
|
128
132
|
_vertical: {
|
|
129
133
|
height: "var(--height)",
|
|
130
134
|
left: "0",
|
|
131
|
-
width: "
|
|
135
|
+
width: "3"
|
|
132
136
|
}
|
|
133
137
|
},
|
|
134
138
|
content: {
|
|
@@ -201,7 +205,9 @@ const {
|
|
|
201
205
|
withProvider,
|
|
202
206
|
withContext
|
|
203
207
|
} = createStyleContext(tabsRecipe);
|
|
204
|
-
const InternalTabsRoot = withProvider(Tabs.Root, "root"
|
|
208
|
+
const InternalTabsRoot = withProvider(Tabs.Root, "root", {
|
|
209
|
+
baseComponent: true
|
|
210
|
+
});
|
|
205
211
|
export const TabsRoot = _ref => {
|
|
206
212
|
let {
|
|
207
213
|
lazyMount = true,
|
|
@@ -214,10 +220,18 @@ export const TabsRoot = _ref => {
|
|
|
214
220
|
...props
|
|
215
221
|
});
|
|
216
222
|
};
|
|
217
|
-
export const TabsContent = withContext(Tabs.Content, "content"
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
const
|
|
223
|
+
export const TabsContent = withContext(Tabs.Content, "content", {
|
|
224
|
+
baseComponent: true
|
|
225
|
+
});
|
|
226
|
+
export const TabsIndicator = withContext(Tabs.Indicator, "indicator", {
|
|
227
|
+
baseComponent: true
|
|
228
|
+
});
|
|
229
|
+
export const TabsList = withContext(Tabs.List, "list", {
|
|
230
|
+
baseComponent: true
|
|
231
|
+
});
|
|
232
|
+
const InternalTabsTrigger = withContext(Tabs.Trigger, "trigger", {
|
|
233
|
+
baseComponent: true
|
|
234
|
+
});
|
|
221
235
|
export const TabsTrigger = _ref2 => {
|
|
222
236
|
let {
|
|
223
237
|
className,
|
package/es/TagsInput.js
CHANGED
|
@@ -94,15 +94,33 @@ const {
|
|
|
94
94
|
withProvider,
|
|
95
95
|
withContext
|
|
96
96
|
} = createStyleContext(tagsInputRecipe);
|
|
97
|
-
export const TagsInputRoot = withProvider(TagsInput.Root, "root"
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
export const
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
export const
|
|
104
|
-
|
|
105
|
-
|
|
97
|
+
export const TagsInputRoot = withProvider(TagsInput.Root, "root", {
|
|
98
|
+
baseComponent: true
|
|
99
|
+
});
|
|
100
|
+
export const TagsInputClearTrigger = withContext(TagsInput.ClearTrigger, "clearTrigger", {
|
|
101
|
+
baseComponent: true
|
|
102
|
+
});
|
|
103
|
+
export const TagsInputControl = withContext(TagsInput.Control, "control", {
|
|
104
|
+
baseComponent: true
|
|
105
|
+
});
|
|
106
|
+
export const TagsInputInput = withContext(TagsInput.Input, "input", {
|
|
107
|
+
baseComponent: true
|
|
108
|
+
});
|
|
109
|
+
export const TagsInputItemDeleteTrigger = withContext(TagsInput.ItemDeleteTrigger, "itemDeleteTrigger", {
|
|
110
|
+
baseComponent: true
|
|
111
|
+
});
|
|
112
|
+
export const TagsInputItemInput = withContext(TagsInput.ItemInput, "itemInput", {
|
|
113
|
+
baseComponent: true
|
|
114
|
+
});
|
|
115
|
+
export const TagsInputItemPreview = withContext(TagsInput.ItemPreview, "itemPreview", {
|
|
116
|
+
baseComponent: true
|
|
117
|
+
});
|
|
118
|
+
export const TagsInputItem = withContext(TagsInput.Item, "item", {
|
|
119
|
+
baseComponent: true
|
|
120
|
+
});
|
|
121
|
+
export const TagsInputItemText = withContext(TagsInput.ItemText, "itemText", {
|
|
122
|
+
baseComponent: true
|
|
123
|
+
});
|
|
106
124
|
const InternalTagsInputLabel = withContext(TagsInput.Label, "label");
|
|
107
125
|
export const TagsInputLabel = /*#__PURE__*/forwardRef((_ref, ref) => {
|
|
108
126
|
let {
|
package/es/Toast.js
CHANGED
|
@@ -44,9 +44,15 @@ const {
|
|
|
44
44
|
withProvider,
|
|
45
45
|
withContext
|
|
46
46
|
} = createStyleContext(toastRecipe);
|
|
47
|
-
export const ToastRoot = withProvider(Toast.Root, "root"
|
|
48
|
-
|
|
49
|
-
|
|
47
|
+
export const ToastRoot = withProvider(Toast.Root, "root", {
|
|
48
|
+
baseComponent: true
|
|
49
|
+
});
|
|
50
|
+
export const ToastActionTrigger = withContext(Toast.ActionTrigger, "actionTrigger", {
|
|
51
|
+
baseComponent: true
|
|
52
|
+
});
|
|
53
|
+
export const ToastCloseTrigger = withContext(Toast.CloseTrigger, "closeTrigger", {
|
|
54
|
+
baseComponent: true
|
|
55
|
+
});
|
|
50
56
|
const InternalToastDescription = withContext(Toast.Description, "description");
|
|
51
57
|
export const ToastDescription = _ref => {
|
|
52
58
|
let {
|
package/es/Tooltip.js
CHANGED
|
@@ -36,9 +36,15 @@ const {
|
|
|
36
36
|
withContext
|
|
37
37
|
} = createStyleContext(tooltipRecipe);
|
|
38
38
|
export const TooltipRoot = withRootProvider(Tooltip.Root);
|
|
39
|
-
export const TooltipArrow = withContext(Tooltip.Arrow, "arrow"
|
|
40
|
-
|
|
41
|
-
|
|
39
|
+
export const TooltipArrow = withContext(Tooltip.Arrow, "arrow", {
|
|
40
|
+
baseComponent: true
|
|
41
|
+
});
|
|
42
|
+
export const TooltipArrowTip = withContext(Tooltip.ArrowTip, "arrowTip", {
|
|
43
|
+
baseComponent: true
|
|
44
|
+
});
|
|
45
|
+
export const TooltipContentStandalone = withContext(Tooltip.Content, "content", {
|
|
46
|
+
baseComponent: true
|
|
47
|
+
});
|
|
42
48
|
export const TooltipContent = /*#__PURE__*/forwardRef((_ref, ref) => {
|
|
43
49
|
let {
|
|
44
50
|
children,
|
|
@@ -54,5 +60,9 @@ export const TooltipContent = /*#__PURE__*/forwardRef((_ref, ref) => {
|
|
|
54
60
|
})
|
|
55
61
|
});
|
|
56
62
|
});
|
|
57
|
-
export const TooltipPositioner = withContext(Tooltip.Positioner, "positioner"
|
|
58
|
-
|
|
63
|
+
export const TooltipPositioner = withContext(Tooltip.Positioner, "positioner", {
|
|
64
|
+
baseComponent: true
|
|
65
|
+
});
|
|
66
|
+
export const TooltipTrigger = withContext(Tooltip.Trigger, "trigger", {
|
|
67
|
+
baseComponent: true
|
|
68
|
+
});
|
package/es/createStyleContext.js
CHANGED
|
@@ -29,11 +29,8 @@ export const createStyleContext = recipe => {
|
|
|
29
29
|
};
|
|
30
30
|
return StyledComponent;
|
|
31
31
|
};
|
|
32
|
-
const withProvider = (Component, slot) => {
|
|
33
|
-
const
|
|
34
|
-
baseComponent: true
|
|
35
|
-
};
|
|
36
|
-
const StyledComponent = styled(Component, {}, opts);
|
|
32
|
+
const withProvider = (Component, slot, options) => {
|
|
33
|
+
const StyledComponent = styled(Component, {}, options);
|
|
37
34
|
return /*#__PURE__*/forwardRef((_ref, ref) => {
|
|
38
35
|
let {
|
|
39
36
|
css: cssProp,
|
|
@@ -51,11 +48,8 @@ export const createStyleContext = recipe => {
|
|
|
51
48
|
});
|
|
52
49
|
});
|
|
53
50
|
};
|
|
54
|
-
const withContext = (Component, slot) => {
|
|
55
|
-
const
|
|
56
|
-
baseComponent: true
|
|
57
|
-
};
|
|
58
|
-
const StyledComponent = styled(Component, {}, opts);
|
|
51
|
+
const withContext = (Component, slot, options) => {
|
|
52
|
+
const StyledComponent = styled(Component, {}, options);
|
|
59
53
|
return /*#__PURE__*/forwardRef((_ref2, ref) => {
|
|
60
54
|
let {
|
|
61
55
|
css: cssProp,
|
package/es/index.js
CHANGED
|
@@ -11,8 +11,9 @@ export { OrderedList, UnOrderedList, DefinitionList } from "./ArticleLists";
|
|
|
11
11
|
export { Badge } from "./Badge";
|
|
12
12
|
export { BlockQuote } from "./BlockQuote";
|
|
13
13
|
export { Button, IconButton, buttonBaseRecipe, buttonRecipe, iconButtonRecipe } from "./Button";
|
|
14
|
+
export { CardRoot, CardHeading, CardContent, CardImage } from "./Card/Card";
|
|
14
15
|
export { CheckboxRoot, CheckboxIndicator, CheckboxLabel, CheckboxControl, CheckboxGroup, CheckboxHiddenInput } from "./Checkbox";
|
|
15
|
-
export { ComboboxRoot, ComboboxClearTrigger, ComboboxContent, ComboboxControl, ComboboxInput, ComboboxItemGroupLabel, ComboboxItemGroup, ComboboxItemIndicator, ComboboxItem, ComboboxItemText, ComboboxLabel, ComboboxPositioner, ComboboxTrigger } from "./Combobox";
|
|
16
|
+
export { ComboboxRoot, ComboboxClearTrigger, ComboboxContent, ComboboxControl, ComboboxInput, ComboboxItemGroupLabel, ComboboxItemGroup, ComboboxItemIndicator, ComboboxItem, ComboboxItemText, ComboboxLabel, ComboboxPositioner, ComboboxTrigger, ComboboxList } from "./Combobox";
|
|
16
17
|
export { DialogRoot, DialogBackdrop, DialogStandaloneContent, DialogPositioner, DialogContent, DialogDescription, DialogTitle, DialogTrigger, DialogCloseTrigger, DialogHeader, DialogBody } from "./Dialog";
|
|
17
18
|
export { ExpandableBox, ExpandableBoxSummary } from "./ExpandableBox";
|
|
18
19
|
export { FieldRoot } from "./Field";
|
|
@@ -20,7 +21,7 @@ export { FieldErrorMessage } from "./FieldErrorMessage";
|
|
|
20
21
|
export { FieldHelper } from "./FieldHelper";
|
|
21
22
|
export { Figure } from "./Figure";
|
|
22
23
|
export { FramedContent } from "./FramedContent";
|
|
23
|
-
export { Picture, Img, Image } from "./Image";
|
|
24
|
+
export { Picture, Img, Image, makeSrcQueryString, getSrcSet } from "./Image";
|
|
24
25
|
export { Input, FieldInput, InputContainer, TextArea, FieldTextArea } from "./Input";
|
|
25
26
|
export { Label, FieldLabel } from "./Label";
|
|
26
27
|
export { MenuRoot, MenuContent, MenuItemGroupLabel, MenuItemGroup, MenuItem, MenuPositioner, MenuTriggerItem, MenuTrigger, MenuSeparator } from "./Menu";
|
|
@@ -29,7 +30,7 @@ export { NdlaLogoEn, NdlaLogoNb, NdlaLogoText } from "./NdlaLogo";
|
|
|
29
30
|
export { PaginationRoot, PaginationItem, PaginationEllipsis, PaginationPrevTrigger, PaginationNextTrigger } from "./Pagination";
|
|
30
31
|
export { PopoverRoot, PopoverAnchor, PopoverArrowStandalone, PopoverArrow, PopoverArrowTip, PopoverCloseTrigger, PopoverContentStandalone, PopoverContent, PopoverDescription, PopoverIndicator, PopoverPositioner, PopoverTitle, PopoverTrigger } from "./Popover";
|
|
31
32
|
export { RadioGroupRoot, RadioGroupIndicator, RadioGroupItemControl, RadioGroupItem, RadioGroupItemText, RadioGroupLabel, RadioGroupItemHiddenInput } from "./RadioGroup";
|
|
32
|
-
export { SelectRoot, SelectClearTrigger, SelectContent, SelectControl, SelectIndicator, SelectItemGroupLabel, SelectItemGroup, SelectItemIndicator, SelectItem, SelectItemText, SelectLabel, SelectPositioner, SelectTrigger, SelectValueText } from "./Select";
|
|
33
|
+
export { SelectRoot, SelectClearTrigger, SelectContent, SelectControl, SelectIndicator, SelectItemGroupLabel, SelectItemGroup, SelectItemIndicator, SelectItem, SelectItemText, SelectLabel, SelectPositioner, SelectTrigger, SelectValueText, SelectList } from "./Select";
|
|
33
34
|
export { Skeleton } from "./Skeleton";
|
|
34
35
|
export { SliderRoot, SliderControl, SliderTrack, SliderRange, SliderThumb, SliderLabel, SliderHiddenInput } from "./Slider";
|
|
35
36
|
export { Spinner } from "./Spinner";
|
package/lib/Accordion.d.ts
CHANGED
|
@@ -6,10 +6,48 @@
|
|
|
6
6
|
*
|
|
7
7
|
*/
|
|
8
8
|
import { Accordion } from "@ark-ui/react";
|
|
9
|
-
import { JsxStyleProps } from "@ndla/styled-system/types";
|
|
9
|
+
import { JsxStyleProps, RecipeVariantProps } from "@ndla/styled-system/types";
|
|
10
|
+
declare const accordionRecipe: import("@ndla/styled-system/types").SlotRecipeRuntimeFn<"root" | "item" | "itemTrigger" | "itemContent" | "itemIndicator", {
|
|
11
|
+
variant: {
|
|
12
|
+
clean: {};
|
|
13
|
+
bordered: {
|
|
14
|
+
itemTrigger: {
|
|
15
|
+
paddingInline: "medium";
|
|
16
|
+
paddingBlock: "medium";
|
|
17
|
+
width: "100%";
|
|
18
|
+
borderRadius: "xsmall";
|
|
19
|
+
boxShadowColor: "stroke.subtle";
|
|
20
|
+
boxShadow: "inset 0 0 0 1px var(--shadow-color)";
|
|
21
|
+
_hover: {
|
|
22
|
+
background: "surface.actionSubtle.hover";
|
|
23
|
+
boxShadowColor: "stroke.hover";
|
|
24
|
+
};
|
|
25
|
+
_open: {
|
|
26
|
+
backgroundColor: "surface.actionSubtle.active";
|
|
27
|
+
boxShadowColor: "stroke.default";
|
|
28
|
+
borderBottomRadius: "sharp";
|
|
29
|
+
};
|
|
30
|
+
_focusVisible: {
|
|
31
|
+
outline: "none";
|
|
32
|
+
boxShadowColor: "stroke.default";
|
|
33
|
+
boxShadow: "inset 0 0 0 2px var(--shadow-color)";
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
itemContent: {
|
|
37
|
+
borderBottomRadius: "xsmall";
|
|
38
|
+
borderWidth: "0 1px 1px";
|
|
39
|
+
borderStyle: "solid";
|
|
40
|
+
borderColor: "stroke.default";
|
|
41
|
+
};
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
}>;
|
|
45
|
+
export type AccordionVariantProps = RecipeVariantProps<typeof accordionRecipe>;
|
|
10
46
|
export interface AccordionRootProps extends JsxStyleProps, Accordion.RootProps {
|
|
11
47
|
}
|
|
12
|
-
export declare const AccordionRoot: import("react").ForwardRefExoticComponent<AccordionRootProps &
|
|
48
|
+
export declare const AccordionRoot: import("react").ForwardRefExoticComponent<AccordionRootProps & {
|
|
49
|
+
variant?: "bordered" | "clean" | undefined;
|
|
50
|
+
} & import("react").RefAttributes<HTMLDivElement>>;
|
|
13
51
|
export declare const AccordionItemContent: import("react").ForwardRefExoticComponent<{
|
|
14
52
|
consumeCss?: boolean | undefined;
|
|
15
53
|
} & import("@ndla/styled-system/types").WithCss & Accordion.ItemContentProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -22,3 +60,4 @@ export declare const AccordionItem: import("react").ForwardRefExoticComponent<{
|
|
|
22
60
|
export declare const AccordionItemTrigger: import("react").ForwardRefExoticComponent<{
|
|
23
61
|
consumeCss?: boolean | undefined;
|
|
24
62
|
} & import("@ndla/styled-system/types").WithCss & Accordion.ItemTriggerProps & import("react").RefAttributes<HTMLButtonElement>>;
|
|
63
|
+
export {};
|
package/lib/Accordion.js
CHANGED
|
@@ -29,21 +29,15 @@ const accordionRecipe = (0, _css.sva)({
|
|
|
29
29
|
justifyContent: "space-between",
|
|
30
30
|
background: "surface.default",
|
|
31
31
|
cursor: "pointer",
|
|
32
|
-
paddingInline: "medium",
|
|
33
|
-
paddingBlock: "medium",
|
|
34
|
-
boxShadowColor: "stroke.subtle",
|
|
35
|
-
boxShadow: "inset 0 0 0 1px var(--shadow-color)",
|
|
36
|
-
borderRadius: "xsmall",
|
|
37
32
|
transitionDuration: "fast",
|
|
38
33
|
transitionTimingFunction: "default",
|
|
39
34
|
transitionProperty: "background, border-color, border, border-radius",
|
|
40
|
-
width: "100%",
|
|
41
35
|
_closed: {
|
|
42
36
|
transitionProperty: "background, border-color, border, border-radius"
|
|
43
37
|
},
|
|
44
38
|
_disabled: {
|
|
45
39
|
cursor: "not-allowed",
|
|
46
|
-
background: "surface
|
|
40
|
+
background: "surface.disabled.subtle",
|
|
47
41
|
boxShadowColor: "stroke.disabled",
|
|
48
42
|
color: "text.disabled",
|
|
49
43
|
_hover: {
|
|
@@ -51,20 +45,6 @@ const accordionRecipe = (0, _css.sva)({
|
|
|
51
45
|
boxShadowColor: "stroke.disabled",
|
|
52
46
|
color: "text.disabled"
|
|
53
47
|
}
|
|
54
|
-
},
|
|
55
|
-
_hover: {
|
|
56
|
-
background: "surface.actionSubtle.hover",
|
|
57
|
-
boxShadowColor: "stroke.hover"
|
|
58
|
-
},
|
|
59
|
-
_open: {
|
|
60
|
-
backgroundColor: "surface.actionSubtle.active",
|
|
61
|
-
boxShadowColor: "stroke.default",
|
|
62
|
-
borderBottomRadius: "sharp"
|
|
63
|
-
},
|
|
64
|
-
_focusVisible: {
|
|
65
|
-
outline: "none",
|
|
66
|
-
boxShadowColor: "stroke.default",
|
|
67
|
-
boxShadow: "inset 0 0 0 2px var(--shadow-color)"
|
|
68
48
|
}
|
|
69
49
|
},
|
|
70
50
|
itemIndicator: {
|
|
@@ -79,21 +59,59 @@ const accordionRecipe = (0, _css.sva)({
|
|
|
79
59
|
},
|
|
80
60
|
itemContent: {
|
|
81
61
|
overflow: "hidden",
|
|
62
|
+
// TODO: Is this needed?
|
|
82
63
|
transitionProperty: "padding-bottom",
|
|
83
64
|
transitionDuration: "normal",
|
|
84
65
|
transitionTimingFunction: "default",
|
|
85
66
|
paddingBlock: "xsmall",
|
|
86
67
|
paddingInline: "small",
|
|
87
|
-
borderBottomRadius: "xsmall",
|
|
88
|
-
borderWidth: "0 1px 1px",
|
|
89
|
-
borderStyle: "solid",
|
|
90
|
-
borderColor: "stroke.default",
|
|
91
68
|
_open: {
|
|
92
69
|
animation: "collapse-in"
|
|
93
70
|
},
|
|
94
71
|
_closed: {
|
|
95
72
|
animation: "collapse-out"
|
|
96
73
|
}
|
|
74
|
+
},
|
|
75
|
+
item: {
|
|
76
|
+
width: "100%"
|
|
77
|
+
}
|
|
78
|
+
},
|
|
79
|
+
defaultVariants: {
|
|
80
|
+
variant: "bordered"
|
|
81
|
+
},
|
|
82
|
+
variants: {
|
|
83
|
+
variant: {
|
|
84
|
+
clean: {},
|
|
85
|
+
bordered: {
|
|
86
|
+
itemTrigger: {
|
|
87
|
+
paddingInline: "medium",
|
|
88
|
+
paddingBlock: "medium",
|
|
89
|
+
width: "100%",
|
|
90
|
+
borderRadius: "xsmall",
|
|
91
|
+
boxShadowColor: "stroke.subtle",
|
|
92
|
+
boxShadow: "inset 0 0 0 1px var(--shadow-color)",
|
|
93
|
+
_hover: {
|
|
94
|
+
background: "surface.actionSubtle.hover",
|
|
95
|
+
boxShadowColor: "stroke.hover"
|
|
96
|
+
},
|
|
97
|
+
_open: {
|
|
98
|
+
backgroundColor: "surface.actionSubtle.active",
|
|
99
|
+
boxShadowColor: "stroke.default",
|
|
100
|
+
borderBottomRadius: "sharp"
|
|
101
|
+
},
|
|
102
|
+
_focusVisible: {
|
|
103
|
+
outline: "none",
|
|
104
|
+
boxShadowColor: "stroke.default",
|
|
105
|
+
boxShadow: "inset 0 0 0 2px var(--shadow-color)"
|
|
106
|
+
}
|
|
107
|
+
},
|
|
108
|
+
itemContent: {
|
|
109
|
+
borderBottomRadius: "xsmall",
|
|
110
|
+
borderWidth: "0 1px 1px",
|
|
111
|
+
borderStyle: "solid",
|
|
112
|
+
borderColor: "stroke.default"
|
|
113
|
+
}
|
|
114
|
+
}
|
|
97
115
|
}
|
|
98
116
|
}
|
|
99
117
|
});
|
|
@@ -101,8 +119,18 @@ const {
|
|
|
101
119
|
withProvider,
|
|
102
120
|
withContext
|
|
103
121
|
} = (0, _createStyleContext.createStyleContext)(accordionRecipe);
|
|
104
|
-
const AccordionRoot = exports.AccordionRoot = withProvider(_react.Accordion.Root, "root"
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
const
|
|
108
|
-
|
|
122
|
+
const AccordionRoot = exports.AccordionRoot = withProvider(_react.Accordion.Root, "root", {
|
|
123
|
+
baseComponent: true
|
|
124
|
+
});
|
|
125
|
+
const AccordionItemContent = exports.AccordionItemContent = withContext(_react.Accordion.ItemContent, "itemContent", {
|
|
126
|
+
baseComponent: true
|
|
127
|
+
});
|
|
128
|
+
const AccordionItemIndicator = exports.AccordionItemIndicator = withContext(_react.Accordion.ItemIndicator, "itemIndicator", {
|
|
129
|
+
baseComponent: true
|
|
130
|
+
});
|
|
131
|
+
const AccordionItem = exports.AccordionItem = withContext(_react.Accordion.Item, "item", {
|
|
132
|
+
baseComponent: true
|
|
133
|
+
});
|
|
134
|
+
const AccordionItemTrigger = exports.AccordionItemTrigger = withContext(_react.Accordion.ItemTrigger, "itemTrigger", {
|
|
135
|
+
baseComponent: true
|
|
136
|
+
});
|
package/lib/ArticleLists.d.ts
CHANGED
|
@@ -10,29 +10,74 @@ import { JsxStyleProps, RecipeVariantProps } from "@ndla/styled-system/types";
|
|
|
10
10
|
declare const orderedListRecipe: import("@ndla/styled-system/types").RecipeRuntimeFn<{
|
|
11
11
|
variant: {
|
|
12
12
|
numbers: {
|
|
13
|
+
counterReset: "level1";
|
|
14
|
+
"&[data-count='true']": {
|
|
15
|
+
counterReset: "level1 var(--start, 0)";
|
|
16
|
+
};
|
|
17
|
+
marginInline: "small";
|
|
13
18
|
"& > li": {
|
|
19
|
+
counterIncrement: "level1";
|
|
14
20
|
_marker: {
|
|
15
|
-
content: "
|
|
21
|
+
content: "counter(level1, decimal) '. '";
|
|
22
|
+
};
|
|
23
|
+
"& > ol:not([data-variant='letters'])": {
|
|
24
|
+
marginInlineStart: "xlarge";
|
|
25
|
+
counterReset: "level2";
|
|
26
|
+
"&[data-count='true']": {
|
|
27
|
+
counterReset: "level2 var(--start, 0)";
|
|
28
|
+
};
|
|
29
|
+
"& > li": {
|
|
30
|
+
counterIncrement: "level2";
|
|
31
|
+
_marker: {
|
|
32
|
+
content: "counter(level1, decimal) '.' counter(level2, decimal) '. '";
|
|
33
|
+
};
|
|
34
|
+
"& > ol:not([data-variant='letters'])": {
|
|
35
|
+
marginInlineStart: "xxlarge";
|
|
36
|
+
counterReset: "level3";
|
|
37
|
+
"&[data-count='true']": {
|
|
38
|
+
counterReset: "level3 var(--start, 0)";
|
|
39
|
+
};
|
|
40
|
+
"& > li": {
|
|
41
|
+
counterIncrement: "level3";
|
|
42
|
+
_marker: {
|
|
43
|
+
content: "counter(level1, decimal) '.' counter(level2, decimal) '.' counter(level3, decimal) '. '";
|
|
44
|
+
};
|
|
45
|
+
};
|
|
46
|
+
"& > ol:not([data-variant='letters'])": {
|
|
47
|
+
counterReset: "level4";
|
|
48
|
+
"&[data-count='true']": {
|
|
49
|
+
counterReset: "level4 var(--start, 0)";
|
|
50
|
+
};
|
|
51
|
+
"& > li": {
|
|
52
|
+
counterIncrement: "level4";
|
|
53
|
+
_marker: {
|
|
54
|
+
content: "counter(level1, decimal) '.' counter(level2, decimal) '.' counter(level3, decimal) '.' counter(level4, decimal) '. '";
|
|
55
|
+
};
|
|
56
|
+
};
|
|
57
|
+
};
|
|
58
|
+
};
|
|
59
|
+
};
|
|
16
60
|
};
|
|
17
61
|
};
|
|
18
62
|
};
|
|
19
63
|
letters: {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
};
|
|
64
|
+
counterReset: "level1";
|
|
65
|
+
"&[data-count='true']": {
|
|
66
|
+
counterReset: "level1 var(--start, 0)";
|
|
24
67
|
};
|
|
25
|
-
|
|
68
|
+
paddingInlineStart: "small";
|
|
69
|
+
"& > li": {
|
|
70
|
+
counterIncrement: "level1";
|
|
26
71
|
_marker: {
|
|
27
|
-
content: "counter(
|
|
72
|
+
content: "counter(level1, upper-alpha) '. '";
|
|
28
73
|
};
|
|
29
|
-
"& > ol > li": {
|
|
74
|
+
"& > ol[data-variant='letters'] > li": {
|
|
30
75
|
_marker: {
|
|
31
|
-
content: "counter(
|
|
76
|
+
content: "counter(level1, lower-alpha) '. '";
|
|
32
77
|
};
|
|
33
|
-
"& li": {
|
|
78
|
+
"& > ol[data-variant='letters'] > li": {
|
|
34
79
|
_marker: {
|
|
35
|
-
content: "counter(
|
|
80
|
+
content: "counter(level1, lower-roman) '. '";
|
|
36
81
|
};
|
|
37
82
|
};
|
|
38
83
|
};
|
package/lib/ArticleLists.js
CHANGED
|
@@ -19,9 +19,6 @@ var _jsxRuntime = require("react/jsx-runtime");
|
|
|
19
19
|
|
|
20
20
|
const orderedListRecipe = (0, _css.cva)({
|
|
21
21
|
base: {
|
|
22
|
-
listStyle: "revert",
|
|
23
|
-
listStylePosition: "inside",
|
|
24
|
-
paddingInlineStart: "small",
|
|
25
22
|
"& li": {
|
|
26
23
|
marginBlock: "small"
|
|
27
24
|
}
|
|
@@ -32,29 +29,74 @@ const orderedListRecipe = (0, _css.cva)({
|
|
|
32
29
|
variants: {
|
|
33
30
|
variant: {
|
|
34
31
|
numbers: {
|
|
32
|
+
counterReset: "level1",
|
|
33
|
+
"&[data-count='true']": {
|
|
34
|
+
counterReset: "level1 var(--start, 0)"
|
|
35
|
+
},
|
|
36
|
+
marginInline: "small",
|
|
35
37
|
"& > li": {
|
|
38
|
+
counterIncrement: "level1",
|
|
36
39
|
_marker: {
|
|
37
|
-
content: "
|
|
40
|
+
content: "counter(level1, decimal) '. '"
|
|
41
|
+
},
|
|
42
|
+
"& > ol:not([data-variant='letters'])": {
|
|
43
|
+
marginInlineStart: "xlarge",
|
|
44
|
+
counterReset: "level2",
|
|
45
|
+
"&[data-count='true']": {
|
|
46
|
+
counterReset: "level2 var(--start, 0)"
|
|
47
|
+
},
|
|
48
|
+
"& > li": {
|
|
49
|
+
counterIncrement: "level2",
|
|
50
|
+
_marker: {
|
|
51
|
+
content: "counter(level1, decimal) '.' counter(level2, decimal) '. '"
|
|
52
|
+
},
|
|
53
|
+
"& > ol:not([data-variant='letters'])": {
|
|
54
|
+
marginInlineStart: "xxlarge",
|
|
55
|
+
counterReset: "level3",
|
|
56
|
+
"&[data-count='true']": {
|
|
57
|
+
counterReset: "level3 var(--start, 0)"
|
|
58
|
+
},
|
|
59
|
+
"& > li": {
|
|
60
|
+
counterIncrement: "level3",
|
|
61
|
+
_marker: {
|
|
62
|
+
content: "counter(level1, decimal) '.' counter(level2, decimal) '.' counter(level3, decimal) '. '"
|
|
63
|
+
}
|
|
64
|
+
},
|
|
65
|
+
"& > ol:not([data-variant='letters'])": {
|
|
66
|
+
counterReset: "level4",
|
|
67
|
+
"&[data-count='true']": {
|
|
68
|
+
counterReset: "level4 var(--start, 0)"
|
|
69
|
+
},
|
|
70
|
+
"& > li": {
|
|
71
|
+
counterIncrement: "level4",
|
|
72
|
+
_marker: {
|
|
73
|
+
content: "counter(level1, decimal) '.' counter(level2, decimal) '.' counter(level3, decimal) '.' counter(level4, decimal) '. '"
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
38
79
|
}
|
|
39
80
|
}
|
|
40
81
|
},
|
|
41
82
|
letters: {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
}
|
|
83
|
+
counterReset: "level1",
|
|
84
|
+
"&[data-count='true']": {
|
|
85
|
+
counterReset: "level1 var(--start, 0)"
|
|
46
86
|
},
|
|
47
|
-
|
|
87
|
+
paddingInlineStart: "small",
|
|
88
|
+
"& > li": {
|
|
89
|
+
counterIncrement: "level1",
|
|
48
90
|
_marker: {
|
|
49
|
-
content: "counter(
|
|
91
|
+
content: "counter(level1, upper-alpha) '. '"
|
|
50
92
|
},
|
|
51
|
-
"& > ol > li": {
|
|
93
|
+
"& > ol[data-variant='letters'] > li": {
|
|
52
94
|
_marker: {
|
|
53
|
-
content: "counter(
|
|
95
|
+
content: "counter(level1, lower-alpha) '. '"
|
|
54
96
|
},
|
|
55
|
-
"& li": {
|
|
97
|
+
"& > ol[data-variant='letters'] > li": {
|
|
56
98
|
_marker: {
|
|
57
|
-
content: "counter(
|
|
99
|
+
content: "counter(level1, lower-roman) '. '"
|
|
58
100
|
}
|
|
59
101
|
}
|
|
60
102
|
}
|
|
@@ -70,26 +112,36 @@ const OrderedList = exports.OrderedList = /*#__PURE__*/(0, _react.forwardRef)((_
|
|
|
70
112
|
let {
|
|
71
113
|
variant,
|
|
72
114
|
css: cssProp,
|
|
115
|
+
start,
|
|
73
116
|
...props
|
|
74
117
|
} = _ref;
|
|
118
|
+
const style = (0, _react.useMemo)(() => ({
|
|
119
|
+
"--start": start ? start - 1 : undefined
|
|
120
|
+
}), [start]);
|
|
75
121
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(StyledOrderedList, {
|
|
122
|
+
"data-variant": variant,
|
|
123
|
+
"data-count": start !== undefined,
|
|
76
124
|
css: _css.css.raw(orderedListRecipe.raw({
|
|
77
125
|
variant
|
|
78
126
|
}), cssProp),
|
|
79
|
-
|
|
80
|
-
ref: ref
|
|
127
|
+
style: style,
|
|
128
|
+
ref: ref,
|
|
129
|
+
...props
|
|
81
130
|
});
|
|
82
131
|
});
|
|
83
132
|
const UnOrderedList = exports.UnOrderedList = (0, _jsx2.styled)("ul", {
|
|
84
133
|
base: {
|
|
85
134
|
listStyle: "revert",
|
|
86
135
|
listStylePosition: "inside",
|
|
87
|
-
paddingInlineStart: "
|
|
136
|
+
paddingInlineStart: "medium",
|
|
88
137
|
"& li": {
|
|
89
138
|
marginBlock: "small",
|
|
90
139
|
_marker: {
|
|
91
140
|
color: "icon.strong"
|
|
92
141
|
}
|
|
142
|
+
},
|
|
143
|
+
"& li > *:not(ol, ul, li)": {
|
|
144
|
+
display: "inline"
|
|
93
145
|
}
|
|
94
146
|
}
|
|
95
147
|
});
|
package/lib/Badge.d.ts
CHANGED
|
@@ -29,6 +29,7 @@ declare const badgeRecipe: import("@ndla/styled-system/types").RecipeRuntimeFn<{
|
|
|
29
29
|
};
|
|
30
30
|
}>;
|
|
31
31
|
export type BadgeVariantProps = RecipeVariantProps<typeof badgeRecipe>;
|
|
32
|
+
export type BadgeVariant = NonNullable<BadgeVariantProps>["colorTheme"];
|
|
32
33
|
export type BadgeProps = HTMLArkProps<"div"> & JsxStyleProps & BadgeVariantProps;
|
|
33
34
|
export declare const Badge: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & import("@ark-ui/react").PolymorphicProps & {
|
|
34
35
|
consumeCss?: boolean | undefined;
|