@mittwald/flow-react-components 0.2.0-alpha.77 → 0.2.0-alpha.79
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/CHANGELOG.md +10 -0
- package/dist/assets/doc-properties.json +8992 -8973
- package/dist/css/all.css +1 -1
- package/dist/js/components/Align/Align.module.scss.mjs +2 -2
- package/dist/js/components/ComboBox/ComboBox.mjs +2 -1
- package/dist/js/components/ComboBox/ComboBox.mjs.map +1 -1
- package/dist/types/components/ComboBox/ComboBox.d.ts +1 -1
- package/dist/types/components/ComboBox/ComboBox.d.ts.map +1 -1
- package/dist/types/components/ComboBox/stories/Default.stories.d.ts +1 -0
- package/dist/types/components/ComboBox/stories/Default.stories.d.ts.map +1 -1
- package/package.json +4 -4
|
@@ -4,16 +4,16 @@ const align = "flow--align";
|
|
|
4
4
|
const avatar = "flow--align--avatar";
|
|
5
5
|
const text = "flow--align--text";
|
|
6
6
|
const button = "flow--align--button";
|
|
7
|
-
const copyButton = "flow--align--copy-button";
|
|
8
7
|
const contextualHelpTriggerButton = "flow--align--contextual-help-trigger-button";
|
|
8
|
+
const copyButton = "flow--align--copy-button";
|
|
9
9
|
const icon = "flow--align--icon";
|
|
10
10
|
const styles = {
|
|
11
11
|
align: align,
|
|
12
12
|
avatar: avatar,
|
|
13
13
|
text: text,
|
|
14
14
|
button: button,
|
|
15
|
-
copyButton: copyButton,
|
|
16
15
|
contextualHelpTriggerButton: contextualHelpTriggerButton,
|
|
16
|
+
copyButton: copyButton,
|
|
17
17
|
icon: icon
|
|
18
18
|
};
|
|
19
19
|
|
|
@@ -30,6 +30,7 @@ const ComboBox = flowComponent("ComboBox", (props) => {
|
|
|
30
30
|
onSelectionChange = () => {
|
|
31
31
|
},
|
|
32
32
|
controller: controllerFromProps,
|
|
33
|
+
placeholder,
|
|
33
34
|
...rest
|
|
34
35
|
} = props;
|
|
35
36
|
const stringFormatter = useLocalizedStringFormatter(locales);
|
|
@@ -71,7 +72,7 @@ const ComboBox = flowComponent("ComboBox", (props) => {
|
|
|
71
72
|
onOpenChange: (isOpen) => controller.setOpen(isOpen),
|
|
72
73
|
children: /* @__PURE__ */ jsx(PropsContextProvider, { props: propsContext, children: /* @__PURE__ */ jsxs(TunnelProvider, { children: [
|
|
73
74
|
/* @__PURE__ */ jsxs("div", { className: styles.input, children: [
|
|
74
|
-
/* @__PURE__ */ jsx(Aria.Input, {}),
|
|
75
|
+
/* @__PURE__ */ jsx(Aria.Input, { placeholder }),
|
|
75
76
|
/* @__PURE__ */ jsx(
|
|
76
77
|
Button,
|
|
77
78
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComboBox.mjs","sources":["../../../../src/components/ComboBox/ComboBox.tsx"],"sourcesContent":["import type { PropsWithChildren } from \"react\";\nimport React from \"react\";\nimport type { Key } from \"react-aria-components\";\nimport * as Aria from \"react-aria-components\";\nimport { TunnelExit, TunnelProvider } from \"@mittwald/react-tunnel\";\nimport { Button } from \"@/components/Button\";\nimport { IconChevronDown } from \"@/components/Icon/components/icons\";\nimport { Options } from \"@/components/Options\";\nimport type { PropsContext } from \"@/lib/propsContext\";\nimport { PropsContextProvider } from \"@/lib/propsContext\";\nimport clsx from \"clsx\";\nimport styles from \"./ComboBox.module.scss\";\nimport formFieldStyles from \"@/components/FormField/FormField.module.scss\";\nimport locales from \"./locales/*.locale.json\";\nimport { useLocalizedStringFormatter } from \"react-aria\";\nimport type { FlowComponentProps } from \"@/lib/componentFactory/flowComponent\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\nimport { type OverlayController, useOverlayController } from \"@/lib/controller\";\n\nexport interface ComboBoxProps\n extends Omit<Aria.ComboBoxProps<never>, \"children\">,\n PropsWithChildren,\n FlowComponentProps {\n onChange?: (value: string) => void;\n controller?: OverlayController;\n}\n\nexport const ComboBox = flowComponent(\"ComboBox\", (props) => {\n const {\n children,\n className,\n menuTrigger = \"focus\",\n onChange = () => {\n // default: do nothing\n },\n onSelectionChange = () => {\n // default: do nothing\n },\n controller: controllerFromProps,\n ...rest\n } = props;\n\n const stringFormatter = useLocalizedStringFormatter(locales);\n\n const rootClassName = clsx(\n styles.comboBox,\n formFieldStyles.formField,\n className,\n );\n\n const propsContext: PropsContext = {\n Label: {\n className: formFieldStyles.label,\n optional: !props.isRequired,\n },\n FieldDescription: {\n className: formFieldStyles.fieldDescription,\n },\n FieldError: {\n className: formFieldStyles.customFieldError,\n },\n Option: {\n tunnelId: \"options\",\n },\n };\n\n const handleOnSelectionChange = (key: Key | null) => {\n onChange(String(key));\n onSelectionChange(key);\n };\n\n const controllerFromContext = useOverlayController(\"ComboBox\", {\n reuseControllerFromContext: true,\n });\n\n const controller = controllerFromProps ?? controllerFromContext;\n\n return (\n <Aria.ComboBox\n menuTrigger={menuTrigger}\n className={rootClassName}\n {...rest}\n onSelectionChange={handleOnSelectionChange}\n onOpenChange={(isOpen) => controller.setOpen(isOpen)}\n >\n <PropsContextProvider props={propsContext}>\n <TunnelProvider>\n <div className={styles.input}>\n <Aria.Input />\n <Button\n className={styles.toggle}\n aria-label={stringFormatter.format(\"comboBox.showOptions\")}\n variant=\"plain\"\n color=\"secondary\"\n >\n <IconChevronDown />\n </Button>\n </div>\n\n {children}\n\n <Options controller={controller}>\n <TunnelExit id=\"options\" />\n </Options>\n </TunnelProvider>\n </PropsContextProvider>\n </Aria.ComboBox>\n );\n});\n\nexport default ComboBox;\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"ComboBox.mjs","sources":["../../../../src/components/ComboBox/ComboBox.tsx"],"sourcesContent":["import type { PropsWithChildren } from \"react\";\nimport React from \"react\";\nimport type { Key } from \"react-aria-components\";\nimport * as Aria from \"react-aria-components\";\nimport { TunnelExit, TunnelProvider } from \"@mittwald/react-tunnel\";\nimport { Button } from \"@/components/Button\";\nimport { IconChevronDown } from \"@/components/Icon/components/icons\";\nimport { Options } from \"@/components/Options\";\nimport type { PropsContext } from \"@/lib/propsContext\";\nimport { PropsContextProvider } from \"@/lib/propsContext\";\nimport clsx from \"clsx\";\nimport styles from \"./ComboBox.module.scss\";\nimport formFieldStyles from \"@/components/FormField/FormField.module.scss\";\nimport locales from \"./locales/*.locale.json\";\nimport { useLocalizedStringFormatter } from \"react-aria\";\nimport type { FlowComponentProps } from \"@/lib/componentFactory/flowComponent\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\nimport { type OverlayController, useOverlayController } from \"@/lib/controller\";\n\nexport interface ComboBoxProps\n extends Omit<Aria.ComboBoxProps<never>, \"children\">,\n Pick<Aria.InputProps, \"placeholder\">,\n PropsWithChildren,\n FlowComponentProps {\n onChange?: (value: string) => void;\n controller?: OverlayController;\n}\n\nexport const ComboBox = flowComponent(\"ComboBox\", (props) => {\n const {\n children,\n className,\n menuTrigger = \"focus\",\n onChange = () => {\n // default: do nothing\n },\n onSelectionChange = () => {\n // default: do nothing\n },\n controller: controllerFromProps,\n placeholder,\n ...rest\n } = props;\n\n const stringFormatter = useLocalizedStringFormatter(locales);\n\n const rootClassName = clsx(\n styles.comboBox,\n formFieldStyles.formField,\n className,\n );\n\n const propsContext: PropsContext = {\n Label: {\n className: formFieldStyles.label,\n optional: !props.isRequired,\n },\n FieldDescription: {\n className: formFieldStyles.fieldDescription,\n },\n FieldError: {\n className: formFieldStyles.customFieldError,\n },\n Option: {\n tunnelId: \"options\",\n },\n };\n\n const handleOnSelectionChange = (key: Key | null) => {\n onChange(String(key));\n onSelectionChange(key);\n };\n\n const controllerFromContext = useOverlayController(\"ComboBox\", {\n reuseControllerFromContext: true,\n });\n\n const controller = controllerFromProps ?? controllerFromContext;\n\n return (\n <Aria.ComboBox\n menuTrigger={menuTrigger}\n className={rootClassName}\n {...rest}\n onSelectionChange={handleOnSelectionChange}\n onOpenChange={(isOpen) => controller.setOpen(isOpen)}\n >\n <PropsContextProvider props={propsContext}>\n <TunnelProvider>\n <div className={styles.input}>\n <Aria.Input placeholder={placeholder} />\n <Button\n className={styles.toggle}\n aria-label={stringFormatter.format(\"comboBox.showOptions\")}\n variant=\"plain\"\n color=\"secondary\"\n >\n <IconChevronDown />\n </Button>\n </div>\n\n {children}\n\n <Options controller={controller}>\n <TunnelExit id=\"options\" />\n </Options>\n </TunnelProvider>\n </PropsContextProvider>\n </Aria.ComboBox>\n );\n});\n\nexport default ComboBox;\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AA4BO,MAAM,QAAW,GAAA,aAAA,CAAc,UAAY,EAAA,CAAC,KAAU,KAAA;AAC3D,EAAM,MAAA;AAAA,IACJ,QAAA;AAAA,IACA,SAAA;AAAA,IACA,WAAc,GAAA,OAAA;AAAA,IACd,WAAW,MAAM;AAAA,KAEjB;AAAA,IACA,oBAAoB,MAAM;AAAA,KAE1B;AAAA,IACA,UAAY,EAAA,mBAAA;AAAA,IACZ,WAAA;AAAA,IACA,GAAG;AAAA,GACD,GAAA,KAAA;AAEJ,EAAM,MAAA,eAAA,GAAkB,4BAA4B,OAAO,CAAA;AAE3D,EAAA,MAAM,aAAgB,GAAA,IAAA;AAAA,IACpB,MAAO,CAAA,QAAA;AAAA,IACP,eAAgB,CAAA,SAAA;AAAA,IAChB;AAAA,GACF;AAEA,EAAA,MAAM,YAA6B,GAAA;AAAA,IACjC,KAAO,EAAA;AAAA,MACL,WAAW,eAAgB,CAAA,KAAA;AAAA,MAC3B,QAAA,EAAU,CAAC,KAAM,CAAA;AAAA,KACnB;AAAA,IACA,gBAAkB,EAAA;AAAA,MAChB,WAAW,eAAgB,CAAA;AAAA,KAC7B;AAAA,IACA,UAAY,EAAA;AAAA,MACV,WAAW,eAAgB,CAAA;AAAA,KAC7B;AAAA,IACA,MAAQ,EAAA;AAAA,MACN,QAAU,EAAA;AAAA;AACZ,GACF;AAEA,EAAM,MAAA,uBAAA,GAA0B,CAAC,GAAoB,KAAA;AACnD,IAAS,QAAA,CAAA,MAAA,CAAO,GAAG,CAAC,CAAA;AACpB,IAAA,iBAAA,CAAkB,GAAG,CAAA;AAAA,GACvB;AAEA,EAAM,MAAA,qBAAA,GAAwB,qBAAqB,UAAY,EAAA;AAAA,IAC7D,0BAA4B,EAAA;AAAA,GAC7B,CAAA;AAED,EAAA,MAAM,aAAa,mBAAuB,IAAA,qBAAA;AAE1C,EACE,uBAAA,GAAA;AAAA,IAAC,IAAK,CAAA,QAAA;AAAA,IAAL;AAAA,MACC,WAAA;AAAA,MACA,SAAW,EAAA,aAAA;AAAA,MACV,GAAG,IAAA;AAAA,MACJ,iBAAmB,EAAA,uBAAA;AAAA,MACnB,YAAc,EAAA,CAAC,MAAW,KAAA,UAAA,CAAW,QAAQ,MAAM,CAAA;AAAA,MAEnD,QAAC,kBAAA,GAAA,CAAA,oBAAA,EAAA,EAAqB,KAAO,EAAA,YAAA,EAC3B,+BAAC,cACC,EAAA,EAAA,QAAA,EAAA;AAAA,wBAAC,IAAA,CAAA,KAAA,EAAA,EAAI,SAAW,EAAA,MAAA,CAAO,KACrB,EAAA,QAAA,EAAA;AAAA,0BAAC,GAAA,CAAA,IAAA,CAAK,KAAL,EAAA,EAAW,WAA0B,EAAA,CAAA;AAAA,0BACtC,GAAA;AAAA,YAAC,MAAA;AAAA,YAAA;AAAA,cACC,WAAW,MAAO,CAAA,MAAA;AAAA,cAClB,YAAA,EAAY,eAAgB,CAAA,MAAA,CAAO,sBAAsB,CAAA;AAAA,cACzD,OAAQ,EAAA,OAAA;AAAA,cACR,KAAM,EAAA,WAAA;AAAA,cAEN,8BAAC,eAAgB,EAAA,EAAA;AAAA;AAAA;AACnB,SACF,EAAA,CAAA;AAAA,QAEC,QAAA;AAAA,4BAEA,OAAQ,EAAA,EAAA,UAAA,EACP,8BAAC,UAAW,EAAA,EAAA,EAAA,EAAG,WAAU,CAC3B,EAAA;AAAA,OAAA,EACF,CACF,EAAA;AAAA;AAAA,GACF;AAEJ,CAAC;;;;"}
|
|
@@ -2,7 +2,7 @@ import { PropsWithChildren, default as React } from 'react';
|
|
|
2
2
|
import { FlowComponentProps } from '../../lib/componentFactory/flowComponent';
|
|
3
3
|
import { OverlayController } from '../../lib/controller';
|
|
4
4
|
import * as Aria from "react-aria-components";
|
|
5
|
-
export interface ComboBoxProps extends Omit<Aria.ComboBoxProps<never>, "children">, PropsWithChildren, FlowComponentProps {
|
|
5
|
+
export interface ComboBoxProps extends Omit<Aria.ComboBoxProps<never>, "children">, Pick<Aria.InputProps, "placeholder">, PropsWithChildren, FlowComponentProps {
|
|
6
6
|
onChange?: (value: string) => void;
|
|
7
7
|
controller?: OverlayController;
|
|
8
8
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComboBox.d.ts","sourceRoot":"","sources":["../../../../src/components/ComboBox/ComboBox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAC/C,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAY9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE/E,OAAO,EAAE,KAAK,iBAAiB,EAAwB,MAAM,kBAAkB,CAAC;AAEhF,MAAM,WAAW,aACf,SAAQ,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,EACjD,iBAAiB,EACjB,kBAAkB;IACpB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC;AAED,eAAO,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"ComboBox.d.ts","sourceRoot":"","sources":["../../../../src/components/ComboBox/ComboBox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAC/C,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAY9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE/E,OAAO,EAAE,KAAK,iBAAiB,EAAwB,MAAM,kBAAkB,CAAC;AAEhF,MAAM,WAAW,aACf,SAAQ,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,EACjD,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,EACpC,iBAAiB,EACjB,kBAAkB;IACpB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC;AAED,eAAO,MAAM,QAAQ,8EAkFnB,CAAC;AAEH,eAAe,QAAQ,CAAC"}
|
|
@@ -10,4 +10,5 @@ export declare const WithFieldDescription: Story;
|
|
|
10
10
|
export declare const WithDefaultValue: Story;
|
|
11
11
|
export declare const WithFieldError: Story;
|
|
12
12
|
export declare const Emails: Story;
|
|
13
|
+
export declare const WithPlaceholder: Story;
|
|
13
14
|
//# sourceMappingURL=Default.stories.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Default.stories.d.ts","sourceRoot":"","sources":["../../../../../src/components/ComboBox/stories/Default.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAMvD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGjD,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,QAAQ,CAgB/B,CAAC;AACF,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,QAAQ,CAAC,CAAC;AAEvC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC;AAEjC,eAAO,MAAM,QAAQ,EAAE,KAAsC,CAAC;AAE9D,eAAO,MAAM,QAAQ,EAAE,KAEtB,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,KAelC,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,KAc9B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,KAe5B,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,KA4BpB,CAAC"}
|
|
1
|
+
{"version":3,"file":"Default.stories.d.ts","sourceRoot":"","sources":["../../../../../src/components/ComboBox/stories/Default.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAMvD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGjD,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,QAAQ,CAgB/B,CAAC;AACF,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,QAAQ,CAAC,CAAC;AAEvC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC;AAEjC,eAAO,MAAM,QAAQ,EAAE,KAAsC,CAAC;AAE9D,eAAO,MAAM,QAAQ,EAAE,KAEtB,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,KAelC,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,KAc9B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,KAe5B,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,KA4BpB,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,KAe7B,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mittwald/flow-react-components",
|
|
3
|
-
"version": "0.2.0-alpha.
|
|
3
|
+
"version": "0.2.0-alpha.79",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "A React implementation of Flow, mittwald’s design system",
|
|
6
6
|
"homepage": "https://mittwald.github.io/flow",
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"dependencies": {
|
|
53
53
|
"@chakra-ui/live-region": "^2.1.0",
|
|
54
54
|
"@internationalized/string-compiler": "^3.2.6",
|
|
55
|
-
"@mittwald/react-tunnel": "0.2.0-alpha.
|
|
55
|
+
"@mittwald/react-tunnel": "0.2.0-alpha.79",
|
|
56
56
|
"@mittwald/react-use-promise": "^2.6.0",
|
|
57
57
|
"@react-aria/form": "^3.0.12",
|
|
58
58
|
"@react-aria/utils": "^3.27.0",
|
|
@@ -91,7 +91,7 @@
|
|
|
91
91
|
"@faker-js/faker": "^9.5.0",
|
|
92
92
|
"@internationalized/date": "^3.7.0",
|
|
93
93
|
"@mfalkenberg/remote-dom-react": "^1.2.2",
|
|
94
|
-
"@mittwald/flow-design-tokens": "0.2.0-alpha.
|
|
94
|
+
"@mittwald/flow-design-tokens": "0.2.0-alpha.79",
|
|
95
95
|
"@mittwald/react-use-promise": "^2.6.0",
|
|
96
96
|
"@mittwald/typescript-config": "",
|
|
97
97
|
"@nx/storybook": "^20.4.5",
|
|
@@ -168,5 +168,5 @@
|
|
|
168
168
|
"optional": true
|
|
169
169
|
}
|
|
170
170
|
},
|
|
171
|
-
"gitHead": "
|
|
171
|
+
"gitHead": "982432ec35d7e0ec630d905786576a685e3a3d22"
|
|
172
172
|
}
|