@kwiz/fluentui 1.0.3 → 1.0.5
Sign up to get free protection for your applications and to get access to all the features.
- package/README.md +8 -1
- package/dist/controls/button.js +5 -2
- package/dist/controls/button.js.map +1 -1
- package/dist/controls/date.js +3 -1
- package/dist/controls/date.js.map +1 -1
- package/dist/controls/dropdown.js +13 -2
- package/dist/controls/dropdown.js.map +1 -1
- package/dist/controls/error-boundary.d.ts +1 -1
- package/dist/controls/field-editor.js +1 -1
- package/dist/controls/field-editor.js.map +1 -1
- package/dist/controls/input.js +3 -1
- package/dist/controls/input.js.map +1 -1
- package/dist/helpers/context.d.ts +26 -0
- package/dist/helpers/context.js +17 -0
- package/dist/helpers/context.js.map +1 -0
- package/dist/index.d.ts +3 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/controls/button.tsx +5 -2
- package/src/controls/date.tsx +3 -1
- package/src/controls/dropdown.tsx +15 -3
- package/src/controls/field-editor.tsx +0 -1
- package/src/controls/input.tsx +3 -1
- package/src/helpers/context.ts +42 -0
- package/src/index.ts +5 -2
package/README.md
CHANGED
@@ -1 +1,8 @@
|
|
1
|
-
|
1
|
+
# fluentui
|
2
|
+
|
3
|
+
For local debugging, if you plan to use `npm link` - there is a known issue with react that will potentially break your application.
|
4
|
+
|
5
|
+
To fix that, during dev, you'll have to link the react package in this project to load the react from node_modules in your caller application. For example:
|
6
|
+
```
|
7
|
+
npm link ..\\test-project\\node_modules\\react\\ ..\\..test-project\\node_modules\\@types\\react\\
|
8
|
+
```
|
package/dist/controls/button.js
CHANGED
@@ -2,6 +2,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { Button, CompoundButton, compoundButtonClassNames, makeStyles, mergeClasses, tokens, Tooltip } from '@fluentui/react-components';
|
3
3
|
import { capitalizeFirstLetter, isFunction, isNullOrEmptyString, isNullOrUndefined, isString, PushNoDuplicate } from '@kwiz/common';
|
4
4
|
import React from 'react';
|
5
|
+
import { useKWIZFluentContextContext } from '../helpers/context';
|
5
6
|
import { useCommonStyles, widthMedium } from '../styles/styles';
|
6
7
|
const useStyles = makeStyles({
|
7
8
|
buttonNoCenter: {
|
@@ -64,7 +65,8 @@ export const ButtonEX = React.forwardRef((props, ref) => {
|
|
64
65
|
return (props.dontStretch ? _jsx("div", { children: btn }) : btn);
|
65
66
|
});
|
66
67
|
export const ButtonEXSecondary = React.forwardRef((props, ref) => {
|
67
|
-
|
68
|
+
const ctx = useKWIZFluentContextContext();
|
69
|
+
return (_jsx(ButtonEX, Object.assign({ ref: ref, appearance: 'secondary', shape: ctx.buttonShape }, props)));
|
68
70
|
});
|
69
71
|
export const ButtonEXPrimary = React.forwardRef((props, ref) => {
|
70
72
|
return (_jsx(ButtonEXSecondary, Object.assign({ ref: ref, appearance: 'primary' }, props, { children: props.children })));
|
@@ -88,7 +90,8 @@ export const CompoundButtonEX = React.forwardRef((props, ref) => {
|
|
88
90
|
return (_jsx(Tooltip, { showDelay: 1000, relationship: 'label', withArrow: true, appearance: 'inverted', content: tooltip, children: _jsx(CompoundButton, Object.assign({ ref: ref, appearance: 'subtle', style: { justifyContent: "flex-start", maxWidth: max } }, props, { "aria-label": tooltip, title: undefined, children: props.children || capitalizeFirstLetter(title) })) }));
|
89
91
|
});
|
90
92
|
export const CompoundButtonEXSecondary = React.forwardRef((props, ref) => {
|
91
|
-
|
93
|
+
const ctx = useKWIZFluentContextContext();
|
94
|
+
return (_jsx(CompoundButtonEX, Object.assign({ ref: ref, appearance: 'secondary', shape: ctx.buttonShape }, props)));
|
92
95
|
});
|
93
96
|
export const CompoundButtonEXPrimary = React.forwardRef((props, ref) => {
|
94
97
|
return (_jsx(CompoundButtonEXSecondary, Object.assign({ ref: ref, appearance: 'primary' }, props, { children: props.children })));
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"button.js","sourceRoot":"","sources":["../../src/controls/button.tsx"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"button.js","sourceRoot":"","sources":["../../src/controls/button.tsx"],"names":[],"mappings":"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"}
|
package/dist/controls/date.js
CHANGED
@@ -3,7 +3,9 @@ import { DatePicker } from '@fluentui/react-datepicker-compat';
|
|
3
3
|
import { CalendarCancelRegular } from '@fluentui/react-icons';
|
4
4
|
import { isDate, isFunction, isNullOrEmptyString } from '@kwiz/common';
|
5
5
|
import * as React from 'react';
|
6
|
+
import { useKWIZFluentContextContext } from '../helpers/context';
|
6
7
|
export const DatePickerEx = (props) => {
|
8
|
+
const ctx = useKWIZFluentContextContext();
|
7
9
|
const [showClear, setShowClear] = React.useState(isDate(props.value));
|
8
10
|
const [v, setV] = React.useState(0);
|
9
11
|
const reset = React.useCallback(() => {
|
@@ -12,7 +14,7 @@ export const DatePickerEx = (props) => {
|
|
12
14
|
if (isFunction(props.onSelectDate))
|
13
15
|
props.onSelectDate(undefined);
|
14
16
|
}, [v]);
|
15
|
-
return (_jsx(DatePicker, Object.assign({ appearance:
|
17
|
+
return (_jsx(DatePicker, Object.assign({ appearance: ctx.inputAppearance, mountNode: ctx.mountNode }, props, { onSelectDate: (date) => {
|
16
18
|
setShowClear(isDate(date));
|
17
19
|
if (isFunction(props.onSelectDate))
|
18
20
|
props.onSelectDate(date);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"date.js","sourceRoot":"","sources":["../../src/controls/date.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAmB,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACvE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;
|
1
|
+
{"version":3,"file":"date.js","sourceRoot":"","sources":["../../src/controls/date.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAmB,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACvE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAOjE,MAAM,CAAC,MAAM,YAAY,GAA6D,CAAC,KAAK,EAAE,EAAE;IAC5F,MAAM,GAAG,GAAG,2BAA2B,EAAE,CAAC;IAC1C,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACtE,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IACpC,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACjC,YAAY,CAAC,KAAK,CAAC,CAAC;QACpB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACZ,IAAI,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC;YAAE,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IACtE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAER,OAAO,CACH,KAAC,UAAU,kBAAe,UAAU,EAAE,GAAG,CAAC,eAAe,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,IAAM,KAAK,IAC1F,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE;YACnB,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;YAC3B,IAAI,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC;gBAAE,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACjE,CAAC,EACD,QAAQ,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE;YAClB,YAAY,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/C,IAAI,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC;gBAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAC5D,CAAC,EACD,SAAS,EAAE,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC;YAC3D,CAAC,CAAC,CAAC,CAAC,EAAE;gBACF,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO;oBAAE,KAAK,CAAC,IAAI,EAAE,CAAC;qBACzD,IAAI,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,QAAQ;oBAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;YAChF,CAAC;YACD,CAAC,CAAC,SAAS,EAEf,aAAa,EAAE,SAAS,IAAI,KAAC,qBAAqB,IAAC,KAAK,EAAC,OAAO,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,GAAI,KAhB9E,IAAI,CAAC,EAAE,CAiBtB,CACL,CAAC;AACN,CAAC,CAAA"}
|
@@ -1,10 +1,21 @@
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
2
2
|
import { Dropdown, Option } from '@fluentui/react-components';
|
3
|
-
import { firstOrNull, isNullOrUndefined } from '@kwiz/common';
|
3
|
+
import { filterEmptyEntries, firstOrNull, isNullOrUndefined } from '@kwiz/common';
|
4
4
|
import React from 'react';
|
5
|
+
import { useKWIZFluentContextContext } from '../helpers/context';
|
5
6
|
function $DropdownEX(props, ref) {
|
7
|
+
const ctx = useKWIZFluentContextContext();
|
6
8
|
const selected = Array.isArray(props.selected) ? props.selected : isNullOrUndefined(props.selected) ? [] : [props.selected];
|
7
|
-
|
9
|
+
//sometimes control will lose value when re-rendered
|
10
|
+
//use case: public forms when editing other fields after the dropdown was set
|
11
|
+
//re-set the text value manually to fix
|
12
|
+
let text = Array.isArray(props.selected)
|
13
|
+
? filterEmptyEntries(props.selected.map(s => {
|
14
|
+
let v = firstOrNull(props.items, i => i.key === s);
|
15
|
+
return v ? v.value : '';
|
16
|
+
})).join(', ')
|
17
|
+
: props.selected || "";
|
18
|
+
return (_jsx(Dropdown, Object.assign({}, props, { onSelect: undefined, ref: ref, clearable: !props.required && !props.multiselect, appearance: ctx.inputAppearance, mountNode: ctx.mountNode, selectedOptions: selected, value: text, onOptionSelect: (e, data) => {
|
8
19
|
let o = firstOrNull(props.items, i => i.key === data.optionValue);
|
9
20
|
if (props.multiselect) {
|
10
21
|
let current = data.selectedOptions.map(s => firstOrNull(props.items, i => i.key === s));
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"dropdown.js","sourceRoot":"","sources":["../../src/controls/dropdown.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAiB,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;
|
1
|
+
{"version":3,"file":"dropdown.js","sourceRoot":"","sources":["../../src/controls/dropdown.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAiB,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAClF,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAmBjE,SAAS,WAAW,CAAoD,KAAgC,EAAE,GAA0C;IAChJ,MAAM,GAAG,GAAG,2BAA2B,EAAE,CAAC;IAC1C,MAAM,QAAQ,GAAc,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAEvI,oDAAoD;IACpD,6EAA6E;IAC7E,uCAAuC;IACvC,IAAI,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;QACpC,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YACxC,IAAI,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;YACnD,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;QAC3B,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QACd,CAAC,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC;IAE3B,OAAO,CACH,KAAC,QAAQ,oBAAU,KAAK,IAAE,QAAQ,EAAE,SAAS,EAAI,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,WAAW,EACvG,UAAU,EAAE,GAAG,CAAC,eAAe,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EACzD,eAAe,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE;YAChE,IAAI,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC,WAAW,CAAC,CAAC;YAClE,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;gBACpB,IAAI,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACxF,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YAC/B,CAAC;;gBACI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC,YACA,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAC,MAAM,IAAa,KAAK,EAAE,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,YAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,IAAlE,CAAC,CAAC,GAAG,CAAuE,CAAC,IACzG,CAEd,CAAC;AACN,CAAC;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC"}
|
@@ -18,6 +18,6 @@ export declare class ErrorBoundary extends React.Component<React.PropsWithChildr
|
|
18
18
|
marker: string | number;
|
19
19
|
};
|
20
20
|
componentDidCatch(error: any, errorInfo: any): void;
|
21
|
-
render(): string | number | boolean |
|
21
|
+
render(): string | number | boolean | Iterable<React.ReactNode> | JSX.Element;
|
22
22
|
}
|
23
23
|
export {};
|
@@ -10,6 +10,6 @@ export const FieldEditor = (props) => {
|
|
10
10
|
}
|
11
11
|
return (_jsx(Field, { required: props.required, validationMessage: props.error || props.description, validationState: props.error ? "error" : "none", children: props.type === "multiline"
|
12
12
|
? _jsx(Textarea, { className: props.css && mergeClasses(...props.css), required: props.required, placeholder: props.label, value: props.value || "", onChange: (e, data) => props.onChange(data.value) })
|
13
|
-
: _jsx(InputEx, { className: props.css && mergeClasses(...props.css), required: props.required,
|
13
|
+
: _jsx(InputEx, { className: props.css && mergeClasses(...props.css), required: props.required, placeholder: props.label, value: props.value || "", onChange: (e, data) => props.onChange(data.value) }) }));
|
14
14
|
};
|
15
15
|
//# sourceMappingURL=field-editor.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"field-editor.js","sourceRoot":"","sources":["../../src/controls/field-editor.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,MAAM,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC,CAAC;AAYxC,MAAM,CAAC,MAAM,WAAW,GAAoC,CAAC,KAAK,EAAE,EAAE;IAClE,IAAI,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QACjC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,KAAK,4BAA4B,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,CACH,KAAC,KAAK,IAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAC3B,iBAAiB,EAAE,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,WAAW,EACnD,eAAe,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,YAC9C,KAAK,CAAC,IAAI,KAAK,WAAW;YACvB,CAAC,CAAC,KAAC,QAAQ,IAAC,SAAS,EAAE,KAAK,CAAC,GAAG,IAAI,YAAY,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,EAC1D,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,WAAW,EAAE,KAAK,CAAC,KAAK,EACxB,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,EAAE,EACxB,QAAQ,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GACnD;YACF,CAAC,CAAC,KAAC,OAAO,IAAC,SAAS,EAAE,KAAK,CAAC,GAAG,IAAI,YAAY,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,EACzD,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,
|
1
|
+
{"version":3,"file":"field-editor.js","sourceRoot":"","sources":["../../src/controls/field-editor.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,MAAM,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC,CAAC;AAYxC,MAAM,CAAC,MAAM,WAAW,GAAoC,CAAC,KAAK,EAAE,EAAE;IAClE,IAAI,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QACjC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,KAAK,4BAA4B,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,CACH,KAAC,KAAK,IAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAC3B,iBAAiB,EAAE,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,WAAW,EACnD,eAAe,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,YAC9C,KAAK,CAAC,IAAI,KAAK,WAAW;YACvB,CAAC,CAAC,KAAC,QAAQ,IAAC,SAAS,EAAE,KAAK,CAAC,GAAG,IAAI,YAAY,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,EAC1D,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,WAAW,EAAE,KAAK,CAAC,KAAK,EACxB,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,EAAE,EACxB,QAAQ,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GACnD;YACF,CAAC,CAAC,KAAC,OAAO,IAAC,SAAS,EAAE,KAAK,CAAC,GAAG,IAAI,YAAY,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,EACzD,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,WAAW,EAAE,KAAK,CAAC,KAAK,EACxB,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,EAAE,EACxB,QAAQ,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAI,GACzD,CACX,CAAC;AACN,CAAC,CAAA"}
|
package/dist/controls/input.js
CHANGED
@@ -2,8 +2,10 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { Input, makeStyles, mergeClasses, Textarea } from '@fluentui/react-components';
|
3
3
|
import { isFunction } from '@kwiz/common';
|
4
4
|
import React from 'react';
|
5
|
+
import { useKWIZFluentContextContext } from '../helpers/context';
|
5
6
|
export const InputEx = (props) => {
|
6
|
-
|
7
|
+
const ctx = useKWIZFluentContextContext();
|
8
|
+
return (_jsx(Input, Object.assign({ appearance: ctx.inputAppearance }, props, { onKeyDown: isFunction(props.onOK) || isFunction(props.onCancel)
|
7
9
|
? e => {
|
8
10
|
if (isFunction(props.onOK) && e.key === "Enter")
|
9
11
|
props.onOK();
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"input.js","sourceRoot":"","sources":["../../src/controls/input.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAgB,KAAK,EAAc,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAiB,MAAM,4BAA4B,CAAC;AAChI,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,MAAM,OAAO,CAAC;
|
1
|
+
{"version":3,"file":"input.js","sourceRoot":"","sources":["../../src/controls/input.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAgB,KAAK,EAAc,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAiB,MAAM,4BAA4B,CAAC;AAChI,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAOjE,MAAM,CAAC,MAAM,OAAO,GAA6D,CAAC,KAAK,EAAE,EAAE;IACvF,MAAM,GAAG,GAAG,2BAA2B,EAAE,CAAC;IAC1C,OAAO,CACH,KAAC,KAAK,kBAAC,UAAU,EAAE,GAAG,CAAC,eAAe,IAAM,KAAK,IAC7C,SAAS,EAAE,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC;YAC3D,CAAC,CAAC,CAAC,CAAC,EAAE;gBACF,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO;oBAAE,KAAK,CAAC,IAAI,EAAE,CAAC;qBACzD,IAAI,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,QAAQ;oBAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;YAChF,CAAC;YACD,CAAC,CAAC,SAAS,IAEjB,CACL,CAAC;AACN,CAAC,CAAA;AAED,MAAM,QAAQ,GAAiB;IAC3B,KAAK,EAAE,iBAAiB;IACxB,SAAS,EAAE,iBAAiB;CAC/B,CAAC;AACF,MAAM,SAAS,GAAG,UAAU,CAAC;IACzB,gBAAgB,kCACT,QAAQ,KACX,CAAC,cAAc,CAAC,EAAE,QAAQ,GAC7B;CACJ,CAAC,CAAA;AAMF,MAAM,CAAC,MAAM,UAAU,GAAqE,CAAC,KAAK,EAAE,EAAE;IAClG,MAAM,QAAQ,GAAG,SAAS,EAAE,CAAC;IAC7B,IAAI,GAAG,GAAa,EAAE,CAAC;IAEvB,IAAI,KAAK,CAAC,QAAQ;QAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IACxD,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAsB,IAAI,CAAC,CAAC;IAC5D,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACxC,IAAI,WAAW,CAAC,OAAO,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;YAC5C,IAAI,WAAW,CAAC,OAAO,CAAC,YAAY,GAAG,WAAW,CAAC,OAAO,CAAC,YAAY;gBACnE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,GAAG,WAAW,CAAC,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;QACtF,CAAC;IACL,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,IAAI,KAAK,mBAA0B,MAAM,EAAE,MAAM,IAAK,KAAK,CAAC,KAAK,CAAE,CAAC;IACpE,OAAO,CACH,KAAC,QAAQ,kBAAC,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,CAAC,GAAG,GAAG,CAAC,IAAM,KAAK,IAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACrG,IAAI,KAAK,CAAC,QAAQ;gBAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACzC,YAAY,EAAE,CAAC;QACnB,CAAC,IAAI,CACR,CAAC;AACN,CAAC,CAAA"}
|
@@ -0,0 +1,26 @@
|
|
1
|
+
import React from "react";
|
2
|
+
export interface iKWIZFluentContext {
|
3
|
+
/**
|
4
|
+
* Where the portal children are mounted on DOM
|
5
|
+
*
|
6
|
+
* @default a new element on document.body without any styling
|
7
|
+
*/
|
8
|
+
mountNode?: HTMLElement | null | {
|
9
|
+
element?: HTMLElement | null;
|
10
|
+
className?: string;
|
11
|
+
};
|
12
|
+
/**
|
13
|
+
* Controls the colors and borders of the input.
|
14
|
+
*
|
15
|
+
* @default 'underline'
|
16
|
+
*/
|
17
|
+
inputAppearance?: 'outline' | 'underline' | 'filled-darker' | 'filled-lighter';
|
18
|
+
/**
|
19
|
+
* A button can be rounded, circular, or square.
|
20
|
+
*
|
21
|
+
* @default 'rounded'
|
22
|
+
*/
|
23
|
+
buttonShape?: 'rounded' | 'circular' | 'square';
|
24
|
+
}
|
25
|
+
export declare const KWIZFluentContext: React.Context<iKWIZFluentContext>;
|
26
|
+
export declare function useKWIZFluentContextContext(): iKWIZFluentContext;
|
@@ -0,0 +1,17 @@
|
|
1
|
+
import { isNullOrUndefined } from "@kwiz/common";
|
2
|
+
import React from "react";
|
3
|
+
//create context
|
4
|
+
export const KWIZFluentContext = React.createContext(null);
|
5
|
+
//use context from within controls
|
6
|
+
export function useKWIZFluentContextContext() {
|
7
|
+
let ctx = React.useContext(KWIZFluentContext) || {};
|
8
|
+
//set defaults
|
9
|
+
if (isNullOrUndefined(ctx.inputAppearance))
|
10
|
+
ctx.inputAppearance = "underline";
|
11
|
+
if (isNullOrUndefined(ctx.mountNode))
|
12
|
+
ctx.mountNode = document.querySelector(".fui-FluentProvider");
|
13
|
+
if (isNullOrUndefined(ctx.buttonShape))
|
14
|
+
ctx.buttonShape = "circular";
|
15
|
+
return ctx;
|
16
|
+
}
|
17
|
+
//# sourceMappingURL=context.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/helpers/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,MAAM,OAAO,CAAC;AA2B1B,gBAAgB;AAChB,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,CAAC,aAAa,CAAqB,IAAI,CAAC,CAAC;AAC/E,kCAAkC;AAClC,MAAM,UAAU,2BAA2B;IACvC,IAAI,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;IACpD,cAAc;IACd,IAAI,iBAAiB,CAAC,GAAG,CAAC,eAAe,CAAC;QACtC,GAAG,CAAC,eAAe,GAAG,WAAW,CAAC;IACtC,IAAI,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC;QAChC,GAAG,CAAC,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;IAClE,IAAI,iBAAiB,CAAC,GAAG,CAAC,WAAW,CAAC;QAClC,GAAG,CAAC,WAAW,GAAG,UAAU,CAAC;IACjC,OAAO,GAAG,CAAC;AACf,CAAC"}
|
package/dist/index.d.ts
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
export * from './controls/button';
|
2
2
|
export * from './controls/centered';
|
3
|
+
export * from './controls/date';
|
3
4
|
export * from './controls/dropdown';
|
4
5
|
export * from './controls/error-boundary';
|
5
6
|
export * from './controls/field-editor';
|
6
7
|
export * from './controls/file-upload';
|
7
8
|
export * from './controls/horizontal';
|
8
9
|
export * from './controls/input';
|
9
|
-
export * from './controls/date';
|
10
10
|
export * from './controls/list';
|
11
11
|
export * from './controls/loading';
|
12
12
|
export * from './controls/please-wait';
|
@@ -16,5 +16,7 @@ export * from './controls/section';
|
|
16
16
|
export * from './controls/svg';
|
17
17
|
export * from './controls/vertical';
|
18
18
|
export * from './controls/vertical-content';
|
19
|
+
export { KWIZFluentContext } from './helpers/context';
|
20
|
+
export type { iKWIZFluentContext } from './helpers/context';
|
19
21
|
export * from './helpers/hooks';
|
20
22
|
export { KnownClassNames } from './styles/styles';
|
package/dist/index.js
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
export * from './controls/button';
|
2
2
|
export * from './controls/centered';
|
3
|
+
export * from './controls/date';
|
3
4
|
export * from './controls/dropdown';
|
4
5
|
export * from './controls/error-boundary';
|
5
6
|
export * from './controls/field-editor';
|
6
7
|
export * from './controls/file-upload';
|
7
8
|
export * from './controls/horizontal';
|
8
9
|
export * from './controls/input';
|
9
|
-
export * from './controls/date';
|
10
10
|
export * from './controls/list';
|
11
11
|
export * from './controls/loading';
|
12
12
|
export * from './controls/please-wait';
|
@@ -16,6 +16,7 @@ export * from './controls/section';
|
|
16
16
|
export * from './controls/svg';
|
17
17
|
export * from './controls/vertical';
|
18
18
|
export * from './controls/vertical-content';
|
19
|
+
export { KWIZFluentContext } from './helpers/context';
|
19
20
|
export * from './helpers/hooks';
|
20
21
|
export { KnownClassNames } from './styles/styles';
|
21
22
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC"}
|
package/package.json
CHANGED
package/src/controls/button.tsx
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
import { Button, ButtonProps, CompoundButton, compoundButtonClassNames, CompoundButtonProps, makeStyles, mergeClasses, tokens, Tooltip } from '@fluentui/react-components';
|
2
2
|
import { capitalizeFirstLetter, isFunction, isNullOrEmptyString, isNullOrUndefined, isString, PushNoDuplicate } from '@kwiz/common';
|
3
3
|
import React from 'react';
|
4
|
+
import { useKWIZFluentContextContext } from '../helpers/context';
|
4
5
|
import { useCommonStyles, widthMedium } from '../styles/styles';
|
5
6
|
|
6
7
|
interface IProps {
|
@@ -97,8 +98,9 @@ export const ButtonEX = React.forwardRef<HTMLButtonElement, (ButtonEXProps)>((pr
|
|
97
98
|
);
|
98
99
|
});
|
99
100
|
export const ButtonEXSecondary = React.forwardRef<HTMLButtonElement, (ButtonEXProps)>((props, ref) => {
|
101
|
+
const ctx = useKWIZFluentContextContext();
|
100
102
|
return (
|
101
|
-
<ButtonEX ref={ref} appearance='secondary' shape=
|
103
|
+
<ButtonEX ref={ref} appearance='secondary' shape={ctx.buttonShape} {...props}></ButtonEX>
|
102
104
|
);
|
103
105
|
});
|
104
106
|
export const ButtonEXPrimary = React.forwardRef<HTMLButtonElement, (ButtonEXProps)>((props, ref) => {
|
@@ -137,8 +139,9 @@ export const CompoundButtonEX = React.forwardRef<HTMLButtonElement, (CompoundBut
|
|
137
139
|
);
|
138
140
|
});
|
139
141
|
export const CompoundButtonEXSecondary = React.forwardRef<HTMLButtonElement, (CompoundButtonEXProps)>((props, ref) => {
|
142
|
+
const ctx = useKWIZFluentContextContext();
|
140
143
|
return (
|
141
|
-
<CompoundButtonEX ref={ref} appearance='secondary' shape=
|
144
|
+
<CompoundButtonEX ref={ref} appearance='secondary' shape={ctx.buttonShape} {...props}></CompoundButtonEX>
|
142
145
|
);
|
143
146
|
});
|
144
147
|
export const CompoundButtonEXPrimary = React.forwardRef<HTMLButtonElement, (CompoundButtonEXProps)>((props, ref) => {
|
package/src/controls/date.tsx
CHANGED
@@ -2,6 +2,7 @@ import { DatePicker, DatePickerProps } from '@fluentui/react-datepicker-compat';
|
|
2
2
|
import { CalendarCancelRegular } from '@fluentui/react-icons';
|
3
3
|
import { isDate, isFunction, isNullOrEmptyString } from '@kwiz/common';
|
4
4
|
import * as React from 'react';
|
5
|
+
import { useKWIZFluentContextContext } from '../helpers/context';
|
5
6
|
|
6
7
|
|
7
8
|
interface IProps extends DatePickerProps {
|
@@ -9,6 +10,7 @@ interface IProps extends DatePickerProps {
|
|
9
10
|
onCancel?: () => void;
|
10
11
|
}
|
11
12
|
export const DatePickerEx: React.FunctionComponent<React.PropsWithChildren<IProps>> = (props) => {
|
13
|
+
const ctx = useKWIZFluentContextContext();
|
12
14
|
const [showClear, setShowClear] = React.useState(isDate(props.value));
|
13
15
|
const [v, setV] = React.useState(0);
|
14
16
|
const reset = React.useCallback(() => {
|
@@ -18,7 +20,7 @@ export const DatePickerEx: React.FunctionComponent<React.PropsWithChildren<IProp
|
|
18
20
|
}, [v]);
|
19
21
|
|
20
22
|
return (
|
21
|
-
<DatePicker key={`v${v}`} appearance=
|
23
|
+
<DatePicker key={`v${v}`} appearance={ctx.inputAppearance} mountNode={ctx.mountNode} {...props}
|
22
24
|
onSelectDate={(date) => {
|
23
25
|
setShowClear(isDate(date));
|
24
26
|
if (isFunction(props.onSelectDate)) props.onSelectDate(date);
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import { Dropdown, DropdownProps, Option } from '@fluentui/react-components';
|
2
|
-
import { firstOrNull, isNullOrUndefined } from '@kwiz/common';
|
2
|
+
import { filterEmptyEntries, firstOrNull, isNullOrUndefined } from '@kwiz/common';
|
3
3
|
import React from 'react';
|
4
|
+
import { useKWIZFluentContextContext } from '../helpers/context';
|
4
5
|
|
5
6
|
type ForwardProps = Omit<DropdownProps, "onSelect" | "selectedOptions" | "clearable">;
|
6
7
|
|
@@ -20,12 +21,23 @@ interface IProps<dataType, keyType extends string = string> extends ForwardProps
|
|
20
21
|
}
|
21
22
|
|
22
23
|
function $DropdownEX<keyType extends string = string, dataType = never>(props: IProps<dataType, keyType>, ref: React.ForwardedRef<HTMLButtonElement>) {
|
23
|
-
|
24
|
+
const ctx = useKWIZFluentContextContext();
|
24
25
|
const selected: keyType[] = Array.isArray(props.selected) ? props.selected : isNullOrUndefined(props.selected) ? [] : [props.selected];
|
25
26
|
|
27
|
+
//sometimes control will lose value when re-rendered
|
28
|
+
//use case: public forms when editing other fields after the dropdown was set
|
29
|
+
//re-set the text value manually to fix
|
30
|
+
let text = Array.isArray(props.selected)
|
31
|
+
? filterEmptyEntries(props.selected.map(s => {
|
32
|
+
let v = firstOrNull(props.items, i => i.key === s);
|
33
|
+
return v ? v.value : ''
|
34
|
+
})).join(', ')
|
35
|
+
: props.selected || "";
|
36
|
+
|
26
37
|
return (
|
27
38
|
<Dropdown {...{ ...props, onSelect: undefined }} ref={ref} clearable={!props.required && !props.multiselect}
|
28
|
-
appearance=
|
39
|
+
appearance={ctx.inputAppearance} mountNode={ctx.mountNode}
|
40
|
+
selectedOptions={selected} value={text} onOptionSelect={(e, data) => {
|
29
41
|
let o = firstOrNull(props.items, i => i.key === data.optionValue);
|
30
42
|
if (props.multiselect) {
|
31
43
|
let current = data.selectedOptions.map(s => firstOrNull(props.items, i => i.key === s));
|
@@ -33,7 +33,6 @@ export const FieldEditor: React.FunctionComponent<IProps> = (props) => {
|
|
33
33
|
/>
|
34
34
|
: <InputEx className={props.css && mergeClasses(...props.css)}
|
35
35
|
required={props.required}
|
36
|
-
appearance='underline'
|
37
36
|
placeholder={props.label}
|
38
37
|
value={props.value || ""}
|
39
38
|
onChange={(e, data) => props.onChange(data.value)} />}
|
package/src/controls/input.tsx
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
import { GriffelStyle, Input, InputProps, makeStyles, mergeClasses, Textarea, TextareaProps } from '@fluentui/react-components';
|
2
2
|
import { isFunction } from '@kwiz/common';
|
3
3
|
import React from 'react';
|
4
|
+
import { useKWIZFluentContextContext } from '../helpers/context';
|
4
5
|
|
5
6
|
|
6
7
|
interface IProps extends InputProps {
|
@@ -8,8 +9,9 @@ interface IProps extends InputProps {
|
|
8
9
|
onCancel?: () => void;
|
9
10
|
}
|
10
11
|
export const InputEx: React.FunctionComponent<React.PropsWithChildren<IProps>> = (props) => {
|
12
|
+
const ctx = useKWIZFluentContextContext();
|
11
13
|
return (
|
12
|
-
<Input appearance=
|
14
|
+
<Input appearance={ctx.inputAppearance} {...props}
|
13
15
|
onKeyDown={isFunction(props.onOK) || isFunction(props.onCancel)
|
14
16
|
? e => {
|
15
17
|
if (isFunction(props.onOK) && e.key === "Enter") props.onOK();
|
@@ -0,0 +1,42 @@
|
|
1
|
+
import { isNullOrUndefined } from "@kwiz/common";
|
2
|
+
import React from "react";
|
3
|
+
|
4
|
+
export interface iKWIZFluentContext {
|
5
|
+
/**
|
6
|
+
* Where the portal children are mounted on DOM
|
7
|
+
*
|
8
|
+
* @default a new element on document.body without any styling
|
9
|
+
*/
|
10
|
+
mountNode?: HTMLElement | null | {
|
11
|
+
element?: HTMLElement | null;
|
12
|
+
className?: string;
|
13
|
+
}
|
14
|
+
/**
|
15
|
+
* Controls the colors and borders of the input.
|
16
|
+
*
|
17
|
+
* @default 'underline'
|
18
|
+
*/
|
19
|
+
inputAppearance?: 'outline' | 'underline' | 'filled-darker' | 'filled-lighter';
|
20
|
+
|
21
|
+
/**
|
22
|
+
* A button can be rounded, circular, or square.
|
23
|
+
*
|
24
|
+
* @default 'rounded'
|
25
|
+
*/
|
26
|
+
buttonShape?: 'rounded' | 'circular' | 'square';
|
27
|
+
}
|
28
|
+
|
29
|
+
//create context
|
30
|
+
export const KWIZFluentContext = React.createContext<iKWIZFluentContext>(null);
|
31
|
+
//use context from within controls
|
32
|
+
export function useKWIZFluentContextContext() {
|
33
|
+
let ctx = React.useContext(KWIZFluentContext) || {};
|
34
|
+
//set defaults
|
35
|
+
if (isNullOrUndefined(ctx.inputAppearance))
|
36
|
+
ctx.inputAppearance = "underline";
|
37
|
+
if (isNullOrUndefined(ctx.mountNode))
|
38
|
+
ctx.mountNode = document.querySelector(".fui-FluentProvider");
|
39
|
+
if (isNullOrUndefined(ctx.buttonShape))
|
40
|
+
ctx.buttonShape = "circular";
|
41
|
+
return ctx;
|
42
|
+
}
|
package/src/index.ts
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
export * from './controls/button';
|
2
2
|
export * from './controls/centered';
|
3
|
+
export * from './controls/date';
|
3
4
|
export * from './controls/dropdown';
|
4
5
|
export * from './controls/error-boundary';
|
5
6
|
export * from './controls/field-editor';
|
6
7
|
export * from './controls/file-upload';
|
7
8
|
export * from './controls/horizontal';
|
8
9
|
export * from './controls/input';
|
9
|
-
export * from './controls/date';
|
10
10
|
export * from './controls/list';
|
11
11
|
export * from './controls/loading';
|
12
12
|
export * from './controls/please-wait';
|
@@ -16,5 +16,8 @@ export * from './controls/section';
|
|
16
16
|
export * from './controls/svg';
|
17
17
|
export * from './controls/vertical';
|
18
18
|
export * from './controls/vertical-content';
|
19
|
+
export { KWIZFluentContext } from './helpers/context';
|
20
|
+
export type { iKWIZFluentContext } from './helpers/context';
|
19
21
|
export * from './helpers/hooks';
|
20
|
-
export { KnownClassNames } from './styles/styles';
|
22
|
+
export { KnownClassNames } from './styles/styles';
|
23
|
+
|