@ndla/primitives 0.0.8 → 0.0.10

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/lib/Dialog.d.ts CHANGED
@@ -9,7 +9,7 @@ import { Dialog } from "@ark-ui/react";
9
9
  import { RecipeVariantProps } from "@ndla/styled-system/css";
10
10
  import { JsxStyleProps } from "@ndla/styled-system/types";
11
11
  import { TextProps } from "./Text";
12
- declare const dialogRecipe: import("@ndla/styled-system/types").SlotRecipeRuntimeFn<"title" | "description" | "content" | "trigger" | "backdrop" | "positioner" | "closeTrigger", {
12
+ declare const dialogRecipe: import("@ndla/styled-system/types").SlotRecipeRuntimeFn<"title" | "description" | "content" | "positioner" | "trigger" | "backdrop" | "closeTrigger", {
13
13
  variant: {
14
14
  drawer: {
15
15
  content: {
package/lib/Dialog.js CHANGED
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.InternalDialogRoot = exports.DialogTrigger = exports.DialogTitle = exports.DialogStandaloneContent = exports.DialogRoot = exports.DialogPositioner = exports.DialogHeader = exports.DialogDescription = exports.DialogContent = exports.DialogCloseTrigger = exports.DialogBody = exports.DialogBackdrop = void 0;
7
7
  var _react = require("react");
8
- var _anatomy = require("@ark-ui/anatomy");
9
8
  var _react2 = require("@ark-ui/react");
10
9
  var _css = require("@ndla/styled-system/css");
11
10
  var _jsx2 = require("@ndla/styled-system/jsx");
@@ -21,7 +20,7 @@ var _jsxRuntime = require("react/jsx-runtime");
21
20
  */
22
21
 
23
22
  const dialogRecipe = (0, _css.sva)({
24
- slots: _anatomy.dialogAnatomy.keys(),
23
+ slots: _react2.dialogAnatomy.keys(),
25
24
  base: {
26
25
  backdrop: {
27
26
  position: "fixed",
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Copyright (c) 2024-present, NDLA.
3
+ *
4
+ * This source code is licensed under the GPLv3 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ export declare const Figure: import("@ndla/styled-system/jsx").StyledComponent<"figure", {
9
+ size?: "small" | "xsmall" | "medium" | "full" | undefined;
10
+ float?: "left" | "right" | undefined;
11
+ }>;
package/lib/Figure.js ADDED
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Figure = void 0;
7
+ var _jsx = require("@ndla/styled-system/jsx");
8
+ /**
9
+ * Copyright (c) 2024-present, NDLA.
10
+ *
11
+ * This source code is licensed under the GPLv3 license found in the
12
+ * LICENSE file in the root directory of this source tree.
13
+ *
14
+ */
15
+
16
+ const Figure = exports.Figure = (0, _jsx.styled)("figure", {
17
+ base: {
18
+ position: "relative",
19
+ transitionDuration: "normal",
20
+ transitionProperty: "transform, width, height",
21
+ transitionTimingFunction: "default"
22
+ },
23
+ variants: {
24
+ size: {
25
+ full: {
26
+ width: "100%"
27
+ },
28
+ medium: {
29
+ tablet: {
30
+ width: "50%"
31
+ },
32
+ desktop: {
33
+ width: "65%"
34
+ }
35
+ },
36
+ small: {
37
+ tablet: {
38
+ width: "35%"
39
+ },
40
+ desktop: {
41
+ width: "50%"
42
+ }
43
+ },
44
+ xsmall: {
45
+ tablet: {
46
+ width: "25%"
47
+ },
48
+ desktop: {
49
+ width: "35%"
50
+ }
51
+ }
52
+ },
53
+ float: {
54
+ left: {
55
+ tablet: {
56
+ float: "left",
57
+ clear: "left",
58
+ paddingInlineEnd: "medium"
59
+ }
60
+ },
61
+ right: {
62
+ tablet: {
63
+ float: "right",
64
+ clear: "right",
65
+ paddingInlineStart: "medium"
66
+ }
67
+ }
68
+ }
69
+ },
70
+ defaultVariants: {
71
+ size: "full"
72
+ },
73
+ compoundVariants: [{
74
+ float: ["left", "right"],
75
+ css: {
76
+ zIndex: "base",
77
+ left: "auto",
78
+ marginBlock: "xsmall"
79
+ }
80
+ }]
81
+ });
package/lib/Menu.js CHANGED
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.MenuTriggerItem = exports.MenuTrigger = exports.MenuSeparator = exports.MenuRoot = exports.MenuPositioner = exports.MenuItemGroupLabel = exports.MenuItemGroup = exports.MenuItem = exports.MenuContent = void 0;
7
7
  var _react = require("react");
8
- var _anatomy = require("@ark-ui/anatomy");
9
8
  var _react2 = require("@ark-ui/react");
10
9
  var _css = require("@ndla/styled-system/css");
11
10
  var _createStyleContext = require("./createStyleContext");
@@ -98,7 +97,7 @@ const itemCva = (0, _css.cva)({
98
97
  }
99
98
  });
100
99
  const menuRecipe = (0, _css.sva)({
101
- slots: _anatomy.menuAnatomy.keys(),
100
+ slots: _react2.menuAnatomy.keys(),
102
101
  base: {
103
102
  item: itemStyle,
104
103
  triggerItem: itemStyle,
package/lib/Pagination.js CHANGED
@@ -4,7 +4,6 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.PaginationRoot = exports.PaginationPrevTrigger = exports.PaginationNextTrigger = exports.PaginationItem = exports.PaginationEllipsis = void 0;
7
- var _anatomy = require("@ark-ui/anatomy");
8
7
  var _react = require("@ark-ui/react");
9
8
  var _css = require("@ndla/styled-system/css");
10
9
  var _createStyleContext = require("./createStyleContext");
@@ -17,7 +16,7 @@ var _createStyleContext = require("./createStyleContext");
17
16
  */
18
17
 
19
18
  const paginationRecipe = (0, _css.sva)({
20
- slots: _anatomy.paginationAnatomy.keys(),
19
+ slots: _react.paginationAnatomy.keys(),
21
20
  base: {
22
21
  root: {
23
22
  display: "flex",
package/lib/Popover.js CHANGED
@@ -4,7 +4,6 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.PopoverTrigger = exports.PopoverTitle = exports.PopoverRoot = exports.PopoverPositioner = exports.PopoverIndicator = exports.PopoverDescription = exports.PopoverContentStandalone = exports.PopoverContent = exports.PopoverCloseTrigger = exports.PopoverArrowTip = exports.PopoverArrowStandalone = exports.PopoverArrow = exports.PopoverAnchor = void 0;
7
- var _anatomy = require("@ark-ui/anatomy");
8
7
  var _react = require("@ark-ui/react");
9
8
  var _css = require("@ndla/styled-system/css");
10
9
  var _createStyleContext = require("./createStyleContext");
@@ -18,7 +17,7 @@ var _jsxRuntime = require("react/jsx-runtime");
18
17
  */
19
18
 
20
19
  const popoverRecipe = (0, _css.sva)({
21
- slots: _anatomy.popoverAnatomy.keys(),
20
+ slots: _react.popoverAnatomy.keys(),
22
21
  base: {
23
22
  positioner: {
24
23
  position: "relative"
package/lib/RadioGroup.js CHANGED
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.RadioGroupRoot = exports.RadioGroupLabel = exports.RadioGroupItemText = exports.RadioGroupItemHiddenInput = exports.RadioGroupItemControl = exports.RadioGroupItem = exports.RadioGroupIndicator = exports.InternalRadioGroupLabel = void 0;
7
7
  var _react = require("react");
8
- var _anatomy = require("@ark-ui/anatomy");
9
8
  var _react2 = require("@ark-ui/react");
10
9
  var _css = require("@ndla/styled-system/css");
11
10
  var _createStyleContext = require("./createStyleContext");
@@ -21,7 +20,7 @@ var _jsxRuntime = require("react/jsx-runtime");
21
20
  */
22
21
 
23
22
  const radioGroupRecipe = (0, _css.sva)({
24
- slots: _anatomy.radioGroupAnatomy.keys(),
23
+ slots: _react2.radioGroupAnatomy.keys(),
25
24
  base: {
26
25
  root: {
27
26
  display: "flex",
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Copyright (c) 2024-present, NDLA.
3
+ *
4
+ * This source code is licensed under the GPLv3 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ import { Select } from "@ark-ui/react";
9
+ import { JsxStyleProps } from "@ndla/styled-system/types";
10
+ import { TextProps } from "./Text";
11
+ export type SelectRootProps<T extends Select.CollectionItem> = Select.RootProps<T> & JsxStyleProps;
12
+ export declare const SelectRoot: <T extends Select.CollectionItem>({ lazyMount, unmountOnExit, ...props }: SelectRootProps<T>) => import("react/jsx-runtime").JSX.Element;
13
+ export declare const SelectClearTrigger: import("react").ForwardRefExoticComponent<Select.ClearTriggerProps & {
14
+ forwardCssProp?: boolean | undefined;
15
+ } & import("@ndla/styled-system/types").WithCss & import("react").RefAttributes<HTMLButtonElement>>;
16
+ export declare const SelectContent: import("react").ForwardRefExoticComponent<Select.ContentProps & {
17
+ forwardCssProp?: boolean | undefined;
18
+ } & import("@ndla/styled-system/types").WithCss & import("react").RefAttributes<HTMLDivElement>>;
19
+ export declare const SelectControl: import("react").ForwardRefExoticComponent<Select.ControlProps & {
20
+ forwardCssProp?: boolean | undefined;
21
+ } & import("@ndla/styled-system/types").WithCss & import("react").RefAttributes<HTMLDivElement>>;
22
+ export declare const SelectIndicator: import("react").ForwardRefExoticComponent<Select.IndicatorProps & {
23
+ forwardCssProp?: boolean | undefined;
24
+ } & import("@ndla/styled-system/types").WithCss & import("react").RefAttributes<HTMLDivElement>>;
25
+ export declare const SelectItemGroupLabel: import("react").ForwardRefExoticComponent<Select.ItemGroupLabelProps & {
26
+ forwardCssProp?: boolean | undefined;
27
+ } & import("@ndla/styled-system/types").WithCss & TextProps & import("react").RefAttributes<HTMLDivElement>>;
28
+ export declare const SelectItemGroup: import("react").ForwardRefExoticComponent<Select.ItemGroupProps & {
29
+ forwardCssProp?: boolean | undefined;
30
+ } & import("@ndla/styled-system/types").WithCss & import("react").RefAttributes<HTMLDivElement>>;
31
+ export declare const SelectItemIndicator: import("react").ForwardRefExoticComponent<Select.ItemIndicatorProps & {
32
+ forwardCssProp?: boolean | undefined;
33
+ } & import("@ndla/styled-system/types").WithCss & import("react").RefAttributes<HTMLDivElement>>;
34
+ export declare const SelectItem: import("react").ForwardRefExoticComponent<Select.ItemProps & {
35
+ forwardCssProp?: boolean | undefined;
36
+ } & import("@ndla/styled-system/types").WithCss & import("react").RefAttributes<HTMLDivElement>>;
37
+ export declare const SelectItemText: import("react").ForwardRefExoticComponent<Select.ItemTextProps & {
38
+ forwardCssProp?: boolean | undefined;
39
+ } & import("@ndla/styled-system/types").WithCss & import("react").RefAttributes<HTMLDivElement>>;
40
+ export declare const SelectLabel: import("react").ForwardRefExoticComponent<Select.LabelProps & {
41
+ forwardCssProp?: boolean | undefined;
42
+ } & import("@ndla/styled-system/types").WithCss & TextProps & import("react").RefAttributes<HTMLLabelElement>>;
43
+ export declare const SelectPositioner: import("react").ForwardRefExoticComponent<Select.PositionerProps & {
44
+ forwardCssProp?: boolean | undefined;
45
+ } & import("@ndla/styled-system/types").WithCss & import("react").RefAttributes<HTMLDivElement>>;
46
+ export declare const SelectTrigger: import("react").ForwardRefExoticComponent<Select.TriggerProps & {
47
+ forwardCssProp?: boolean | undefined;
48
+ } & import("@ndla/styled-system/types").WithCss & import("react").RefAttributes<HTMLButtonElement>>;
49
+ export declare const SelectValueText: import("react").ForwardRefExoticComponent<Select.ValueTextProps & {
50
+ forwardCssProp?: boolean | undefined;
51
+ } & import("@ndla/styled-system/types").WithCss & import("react").RefAttributes<HTMLSpanElement>>;
package/lib/Select.js ADDED
@@ -0,0 +1,204 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.SelectValueText = exports.SelectTrigger = exports.SelectRoot = exports.SelectPositioner = exports.SelectLabel = exports.SelectItemText = exports.SelectItemIndicator = exports.SelectItemGroupLabel = exports.SelectItemGroup = exports.SelectItem = exports.SelectIndicator = exports.SelectControl = exports.SelectContent = exports.SelectClearTrigger = void 0;
7
+ var _react = require("react");
8
+ var _react2 = require("@ark-ui/react");
9
+ var _css = require("@ndla/styled-system/css");
10
+ var _createStyleContext = require("./createStyleContext");
11
+ var _Label = require("./Label");
12
+ var _jsxRuntime = require("react/jsx-runtime");
13
+ /**
14
+ * Copyright (c) 2024-present, NDLA.
15
+ *
16
+ * This source code is licensed under the GPLv3 license found in the
17
+ * LICENSE file in the root directory of this source tree.
18
+ *
19
+ */
20
+
21
+ const selectRecipe = (0, _css.sva)({
22
+ slots: _react2.selectAnatomy.keys(),
23
+ base: {
24
+ root: {
25
+ display: "flex",
26
+ flexDirection: "column",
27
+ gap: "3xsmall"
28
+ },
29
+ control: {
30
+ display: "flex",
31
+ gap: "4xsmall",
32
+ alignItems: "center"
33
+ },
34
+ content: {
35
+ display: "flex",
36
+ gap: "4xsmall",
37
+ flexDirection: "column",
38
+ zIndex: "dropdown",
39
+ background: "surface.default",
40
+ borderRadius: "xsmall",
41
+ boxShadow: "large",
42
+ padding: "xsmall",
43
+ overflowY: "auto",
44
+ maxHeight: "surface.xsmall",
45
+ _focusVisible: {
46
+ outlineOffset: "-1"
47
+ },
48
+ _open: {
49
+ animation: "fade-shift-in 0.25s ease-out"
50
+ },
51
+ _closed: {
52
+ animation: "fade-shift-out 0.25s ease-out"
53
+ }
54
+ },
55
+ item: {
56
+ display: "flex",
57
+ alignItems: "center",
58
+ justifyContent: "space-between",
59
+ padding: "xsmall",
60
+ background: "surface.default",
61
+ borderRadius: "xsmall",
62
+ cursor: "pointer",
63
+ transitionDuration: "fast",
64
+ transitionProperty: "background, color",
65
+ transitionTimingFunction: "default",
66
+ _hover: {
67
+ background: "surface.hover"
68
+ },
69
+ _selected: {
70
+ background: "surface.selected",
71
+ _hover: {
72
+ background: "surface.hover"
73
+ },
74
+ _highlighted: {
75
+ background: "surface.hover"
76
+ }
77
+ },
78
+ _highlighted: {
79
+ background: "surface.hover",
80
+ _hover: {
81
+ background: "surface.hover"
82
+ }
83
+ },
84
+ _disabled: {
85
+ cursor: "not-allowed",
86
+ color: "text.disabled",
87
+ background: "surface.disabled",
88
+ _highlighted: {
89
+ color: "text.disabled",
90
+ background: "surface.disabled"
91
+ },
92
+ _selected: {
93
+ color: "text.disabled",
94
+ background: "surface.disabled"
95
+ },
96
+ _hover: {
97
+ color: "text.disabled",
98
+ background: "surface.disabled"
99
+ }
100
+ }
101
+ },
102
+ indicator: {
103
+ color: "icon.default",
104
+ transformOrigin: "center",
105
+ transitionDuration: "normal",
106
+ transitionProperty: "transform",
107
+ transitionTimingFunction: "default",
108
+ _open: {
109
+ transform: "rotate(180deg)"
110
+ }
111
+ },
112
+ itemIndicator: {
113
+ color: "stroke.default"
114
+ },
115
+ itemText: {
116
+ _checked: {
117
+ textDecoration: "underline"
118
+ },
119
+ _highlighted: {
120
+ textDecoration: "underline"
121
+ }
122
+ },
123
+ trigger: {
124
+ justifyContent: "space-between",
125
+ width: "surface.small",
126
+ _ariaInvalid: {
127
+ boxShadowColor: "stroke.error"
128
+ }
129
+ },
130
+ itemGroup: {
131
+ display: "flex",
132
+ flexDirection: "column",
133
+ gap: "4xsmall"
134
+ }
135
+ }
136
+ });
137
+ const {
138
+ withProvider,
139
+ withContext
140
+ } = (0, _createStyleContext.createStyleContext)(selectRecipe);
141
+ const InternalSelectRoot = withProvider(_react2.Select.Root, "root");
142
+ const SelectRoot = _ref => {
143
+ let {
144
+ lazyMount = true,
145
+ unmountOnExit = true,
146
+ ...props
147
+ } = _ref;
148
+ return (
149
+ /*#__PURE__*/
150
+ //@ts-expect-error -- T does not necessarily match Select.CollectionItem. However, we prefer to use T over Select.CollectionItem to get the correct type during use.
151
+ (0, _jsxRuntime.jsx)(InternalSelectRoot, {
152
+ lazyMount: lazyMount,
153
+ unmountOnExit: unmountOnExit,
154
+ ...props
155
+ })
156
+ );
157
+ };
158
+ exports.SelectRoot = SelectRoot;
159
+ const SelectClearTrigger = exports.SelectClearTrigger = withContext(_react2.Select.ClearTrigger, "clearTrigger");
160
+ const SelectContent = exports.SelectContent = withContext(_react2.Select.Content, "content");
161
+ const SelectControl = exports.SelectControl = withContext(_react2.Select.Control, "control");
162
+ const SelectIndicator = exports.SelectIndicator = withContext(_react2.Select.Indicator, "indicator");
163
+ const SelectItemGroupLabel = exports.SelectItemGroupLabel = /*#__PURE__*/(0, _react.forwardRef)((_ref2, ref) => {
164
+ let {
165
+ children,
166
+ ...props
167
+ } = _ref2;
168
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(InternalSelectItemGroupLabel, {
169
+ asChild: true,
170
+ forwardCssProp: true,
171
+ ref: ref,
172
+ ...props,
173
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Label.Label, {
174
+ asChild: true,
175
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
176
+ children: children
177
+ })
178
+ })
179
+ });
180
+ });
181
+ const InternalSelectItemGroupLabel = withContext(_react2.Select.ItemGroupLabel, "itemGroupLabel");
182
+ const SelectItemGroup = exports.SelectItemGroup = withContext(_react2.Select.ItemGroup, "itemGroup");
183
+ const SelectItemIndicator = exports.SelectItemIndicator = withContext(_react2.Select.ItemIndicator, "itemIndicator");
184
+ const SelectItem = exports.SelectItem = withContext(_react2.Select.Item, "item");
185
+ const SelectItemText = exports.SelectItemText = withContext(_react2.Select.ItemText, "itemText");
186
+ const InternalSelectLabel = withContext(_react2.Select.Label, "label");
187
+ const SelectLabel = exports.SelectLabel = /*#__PURE__*/(0, _react.forwardRef)((_ref3, ref) => {
188
+ let {
189
+ children,
190
+ ...props
191
+ } = _ref3;
192
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(InternalSelectLabel, {
193
+ asChild: true,
194
+ forwardCssProp: true,
195
+ ref: ref,
196
+ ...props,
197
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Label.Label, {
198
+ children: children
199
+ })
200
+ });
201
+ });
202
+ const SelectPositioner = exports.SelectPositioner = withContext(_react2.Select.Positioner, "positioner");
203
+ const SelectTrigger = exports.SelectTrigger = withContext(_react2.Select.Trigger, "trigger");
204
+ const SelectValueText = exports.SelectValueText = withContext(_react2.Select.ValueText, "valueText");
package/lib/Slider.js CHANGED
@@ -4,7 +4,6 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.SliderTrack = exports.SliderThumb = exports.SliderRoot = exports.SliderRange = exports.SliderLabel = exports.SliderHiddenInput = exports.SliderControl = void 0;
7
- var _anatomy = require("@ark-ui/anatomy");
8
7
  var _react = require("@ark-ui/react");
9
8
  var _css = require("@ndla/styled-system/css");
10
9
  var _createStyleContext = require("./createStyleContext");
@@ -19,7 +18,7 @@ var _jsxRuntime = require("react/jsx-runtime");
19
18
  */
20
19
 
21
20
  const sliderRecipe = (0, _css.sva)({
22
- slots: _anatomy.sliderAnatomy.keys(),
21
+ slots: _react.sliderAnatomy.keys(),
23
22
  base: {
24
23
  root: {
25
24
  display: "flex",
package/lib/Switch.js CHANGED
@@ -4,7 +4,6 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.SwitchThumb = exports.SwitchRoot = exports.SwitchLabel = exports.SwitchHiddenInput = exports.SwitchControl = void 0;
7
- var _anatomy = require("@ark-ui/anatomy");
8
7
  var _react = require("@ark-ui/react");
9
8
  var _css = require("@ndla/styled-system/css");
10
9
  var _createStyleContext = require("./createStyleContext");
@@ -19,7 +18,7 @@ var _jsxRuntime = require("react/jsx-runtime");
19
18
  */
20
19
 
21
20
  const switchRecipe = (0, _css.sva)({
22
- slots: _anatomy.switchAnatomy.keys(),
21
+ slots: _react.switchAnatomy.keys(),
23
22
  base: {
24
23
  root: {
25
24
  display: "inline-flex",
package/lib/Tabs.js CHANGED
@@ -17,8 +17,7 @@ var _jsxRuntime = require("react/jsx-runtime");
17
17
  */
18
18
 
19
19
  const tabsRecipe = (0, _css.sva)({
20
- // TODO: anatomy keys do not work here.
21
- slots: ["content", "list", "root", "indicator", "trigger"],
20
+ slots: _react.tabsAnatomy.keys(),
22
21
  base: {
23
22
  root: {
24
23
  position: "relative",
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Copyright (c) 2024-present, NDLA.
3
+ *
4
+ * This source code is licensed under the GPLv3 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ import { TagsInput } from "@ark-ui/react";
9
+ import { JsxStyleProps } from "@ndla/styled-system/types";
10
+ import { TextProps } from "./Text";
11
+ export type TagsInputRootProps = TagsInput.RootProps & JsxStyleProps;
12
+ export declare const TagsInputRoot: import("react").ForwardRefExoticComponent<TagsInput.RootProps & {
13
+ forwardCssProp?: boolean | undefined;
14
+ } & import("@ndla/styled-system/types").WithCss & import("react").RefAttributes<HTMLDivElement>>;
15
+ export declare const TagsInputClearTrigger: import("react").ForwardRefExoticComponent<TagsInput.ClearTriggerProps & {
16
+ forwardCssProp?: boolean | undefined;
17
+ } & import("@ndla/styled-system/types").WithCss & import("react").RefAttributes<HTMLButtonElement>>;
18
+ export declare const TagsInputControl: import("react").ForwardRefExoticComponent<TagsInput.ControlProps & {
19
+ forwardCssProp?: boolean | undefined;
20
+ } & import("@ndla/styled-system/types").WithCss & import("react").RefAttributes<HTMLDivElement>>;
21
+ export declare const TagsInputInput: import("react").ForwardRefExoticComponent<TagsInput.InputProps & {
22
+ forwardCssProp?: boolean | undefined;
23
+ } & import("@ndla/styled-system/types").WithCss & import("react").RefAttributes<HTMLInputElement>>;
24
+ export declare const TagsInputItemDeleteTrigger: import("react").ForwardRefExoticComponent<TagsInput.ItemDeleteTriggerProps & {
25
+ forwardCssProp?: boolean | undefined;
26
+ } & import("@ndla/styled-system/types").WithCss & import("react").RefAttributes<HTMLButtonElement>>;
27
+ export declare const TagsInputItemInput: import("react").ForwardRefExoticComponent<TagsInput.ItemInputProps & {
28
+ forwardCssProp?: boolean | undefined;
29
+ } & import("@ndla/styled-system/types").WithCss & import("react").RefAttributes<HTMLInputElement>>;
30
+ export declare const TagsInputItemPreview: import("react").ForwardRefExoticComponent<TagsInput.ItemPreviewProps & {
31
+ forwardCssProp?: boolean | undefined;
32
+ } & import("@ndla/styled-system/types").WithCss & import("react").RefAttributes<HTMLDivElement>>;
33
+ export declare const TagsInputItem: import("react").ForwardRefExoticComponent<TagsInput.ItemProps & {
34
+ forwardCssProp?: boolean | undefined;
35
+ } & import("@ndla/styled-system/types").WithCss & import("react").RefAttributes<HTMLDivElement>>;
36
+ export declare const TagsInputItemText: import("react").ForwardRefExoticComponent<TagsInput.ItemTextProps & {
37
+ forwardCssProp?: boolean | undefined;
38
+ } & import("@ndla/styled-system/types").WithCss & import("react").RefAttributes<HTMLSpanElement>>;
39
+ export declare const TagsInputLabel: import("react").ForwardRefExoticComponent<TagsInput.LabelProps & {
40
+ forwardCssProp?: boolean | undefined;
41
+ } & import("@ndla/styled-system/types").WithCss & TextProps & import("react").RefAttributes<HTMLLabelElement>>;
@@ -0,0 +1,127 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.TagsInputRoot = exports.TagsInputLabel = exports.TagsInputItemText = exports.TagsInputItemPreview = exports.TagsInputItemInput = exports.TagsInputItemDeleteTrigger = exports.TagsInputItem = exports.TagsInputInput = exports.TagsInputControl = exports.TagsInputClearTrigger = void 0;
7
+ var _react = require("react");
8
+ var _react2 = require("@ark-ui/react");
9
+ var _css = require("@ndla/styled-system/css");
10
+ var _createStyleContext = require("./createStyleContext");
11
+ var _Label = require("./Label");
12
+ var _jsxRuntime = require("react/jsx-runtime");
13
+ /**
14
+ * Copyright (c) 2024-present, NDLA.
15
+ *
16
+ * This source code is licensed under the GPLv3 license found in the
17
+ * LICENSE file in the root directory of this source tree.
18
+ *
19
+ */
20
+
21
+ const tagsInputRecipe = (0, _css.sva)({
22
+ slots: _react2.tagsInputAnatomy.keys(),
23
+ base: {
24
+ root: {
25
+ display: "flex",
26
+ flexDirection: "column",
27
+ gap: "xxsmall",
28
+ width: "full"
29
+ },
30
+ control: {
31
+ display: "inline-flex",
32
+ gap: "xxsmall",
33
+ alignItems: "center",
34
+ flexWrap: "wrap"
35
+ },
36
+ item: {
37
+ paddingBlock: "3xsmall"
38
+ },
39
+ itemPreview: {
40
+ display: "flex",
41
+ gap: "1",
42
+ paddingBlock: "4xsmall",
43
+ paddingInlineEnd: "3xsmall",
44
+ paddingInlineStart: "xsmall",
45
+ cursor: "initial",
46
+ borderRadius: "large",
47
+ outline: "1px solid",
48
+ outlineColor: "transparent",
49
+ backgroundColor: "surface.actionSubtle.selected",
50
+ color: "text.onAction",
51
+ transitionDuration: "normal",
52
+ transitionProperty: "background, outline-color, color",
53
+ transitionTimingFunction: "default",
54
+ textStyle: "label.medium",
55
+ _hover: {
56
+ backgroundColor: "surface.actionSubtle.hover",
57
+ outlineColor: "stroke.hover",
58
+ color: "text.default",
59
+ "& svg": {
60
+ color: "stroke.hover"
61
+ }
62
+ },
63
+ _highlighted: {
64
+ backgroundColor: "surface.actionSubtle.hover",
65
+ outlineWidth: "3px",
66
+ outlineOffset: "-1px",
67
+ outlineColor: "stroke.hover",
68
+ color: "text.default",
69
+ "& svg": {
70
+ color: "stroke.hover"
71
+ }
72
+ }
73
+ },
74
+ input: {
75
+ flex: "1"
76
+ },
77
+ itemDeleteTrigger: {
78
+ paddingBottom: "1",
79
+ cursor: "pointer",
80
+ "& span": {
81
+ display: "inline-block"
82
+ },
83
+ "& svg": {
84
+ marginInline: "0",
85
+ marginBlock: "0",
86
+ width: "medium",
87
+ height: "medium"
88
+ }
89
+ },
90
+ itemText: {
91
+ paddingBottom: "1"
92
+ },
93
+ itemInput: {
94
+ outline: "none",
95
+ background: "transparent"
96
+ }
97
+ }
98
+ });
99
+ const {
100
+ withProvider,
101
+ withContext
102
+ } = (0, _createStyleContext.createStyleContext)(tagsInputRecipe);
103
+ const TagsInputRoot = exports.TagsInputRoot = withProvider(_react2.TagsInput.Root, "root");
104
+ const TagsInputClearTrigger = exports.TagsInputClearTrigger = withContext(_react2.TagsInput.ClearTrigger, "clearTrigger");
105
+ const TagsInputControl = exports.TagsInputControl = withContext(_react2.TagsInput.Control, "control");
106
+ const TagsInputInput = exports.TagsInputInput = withContext(_react2.TagsInput.Input, "input");
107
+ const TagsInputItemDeleteTrigger = exports.TagsInputItemDeleteTrigger = withContext(_react2.TagsInput.ItemDeleteTrigger, "itemDeleteTrigger");
108
+ const TagsInputItemInput = exports.TagsInputItemInput = withContext(_react2.TagsInput.ItemInput, "itemInput");
109
+ const TagsInputItemPreview = exports.TagsInputItemPreview = withContext(_react2.TagsInput.ItemPreview, "itemPreview");
110
+ const TagsInputItem = exports.TagsInputItem = withContext(_react2.TagsInput.Item, "item");
111
+ const TagsInputItemText = exports.TagsInputItemText = withContext(_react2.TagsInput.ItemText, "itemText");
112
+ const InternalTagsInputLabel = withContext(_react2.TagsInput.Label, "label");
113
+ const TagsInputLabel = exports.TagsInputLabel = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
114
+ let {
115
+ children,
116
+ ...props
117
+ } = _ref;
118
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(InternalTagsInputLabel, {
119
+ asChild: true,
120
+ forwardCssProp: true,
121
+ ref: ref,
122
+ ...props,
123
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Label.Label, {
124
+ children: children
125
+ })
126
+ });
127
+ });