@openfin/ui-library 0.0.33
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/README.md +260 -0
- package/dist/components/elements/Button/button.d.ts +37 -0
- package/dist/components/elements/Button/button.js +91 -0
- package/dist/components/elements/Button/button.variants.d.ts +64 -0
- package/dist/components/elements/Button/button.variants.js +105 -0
- package/dist/components/elements/Button/index.d.ts +2 -0
- package/dist/components/elements/Button/index.js +14 -0
- package/dist/components/elements/Icon/icon.d.ts +15 -0
- package/dist/components/elements/Icon/icon.js +56 -0
- package/dist/components/elements/Icon/icon.variants.d.ts +28 -0
- package/dist/components/elements/Icon/icon.variants.js +60 -0
- package/dist/components/elements/Icon/index.d.ts +1 -0
- package/dist/components/elements/Icon/index.js +13 -0
- package/dist/components/elements/Input/index.d.ts +1 -0
- package/dist/components/elements/Input/index.js +13 -0
- package/dist/components/elements/Input/input.d.ts +8 -0
- package/dist/components/elements/Input/input.js +26 -0
- package/dist/components/elements/Toggle/index.d.ts +1 -0
- package/dist/components/elements/Toggle/index.js +13 -0
- package/dist/components/elements/Toggle/toggle.d.ts +10 -0
- package/dist/components/elements/Toggle/toggle.js +111 -0
- package/dist/components/elements/Toggle/toggle.variants.d.ts +26 -0
- package/dist/components/elements/Toggle/toggle.variants.js +62 -0
- package/dist/components/layout/Box/box.d.ts +27 -0
- package/dist/components/layout/Box/box.js +42 -0
- package/dist/components/layout/Box/index.d.ts +1 -0
- package/dist/components/layout/Box/index.js +13 -0
- package/dist/components/layout/Box/types.d.ts +7 -0
- package/dist/components/layout/Box/types.js +2 -0
- package/dist/components/system/GlobalStyles/globalStyles.d.ts +1 -0
- package/dist/components/system/GlobalStyles/globalStyles.js +54 -0
- package/dist/components/system/GlobalStyles/index.d.ts +1 -0
- package/dist/components/system/GlobalStyles/index.js +13 -0
- package/dist/components/system/ThemeProvider/index.d.ts +6 -0
- package/dist/components/system/ThemeProvider/index.js +18 -0
- package/dist/components/system/ThemeProvider/lib/config.d.ts +7 -0
- package/dist/components/system/ThemeProvider/lib/config.js +9 -0
- package/dist/components/system/ThemeProvider/lib/constants.d.ts +526 -0
- package/dist/components/system/ThemeProvider/lib/constants.js +269 -0
- package/dist/components/system/ThemeProvider/lib/font-face-base64.d.ts +2 -0
- package/dist/components/system/ThemeProvider/lib/font-face-base64.js +71 -0
- package/dist/components/system/ThemeProvider/lib/font-face-cdn.d.ts +2 -0
- package/dist/components/system/ThemeProvider/lib/font-face-cdn.js +48 -0
- package/dist/components/system/ThemeProvider/lib/helpers.d.ts +19 -0
- package/dist/components/system/ThemeProvider/lib/helpers.js +31 -0
- package/dist/components/system/ThemeProvider/lib/interface.d.ts +25 -0
- package/dist/components/system/ThemeProvider/lib/interface.js +2 -0
- package/dist/components/system/ThemeProvider/lib/palette.d.ts +28 -0
- package/dist/components/system/ThemeProvider/lib/palette.js +31 -0
- package/dist/components/system/ThemeProvider/lib/types.d.ts +49 -0
- package/dist/components/system/ThemeProvider/lib/types.js +2 -0
- package/dist/components/system/ThemeProvider/themeProvider.d.ts +20 -0
- package/dist/components/system/ThemeProvider/themeProvider.js +20 -0
- package/dist/components/system/ThemeProvider/themes/index.d.ts +1 -0
- package/dist/components/system/ThemeProvider/themes/index.js +13 -0
- package/dist/components/system/ThemeProvider/themes/openfin.d.ts +9 -0
- package/dist/components/system/ThemeProvider/themes/openfin.js +28 -0
- package/dist/components/typography/Heading/heading.d.ts +1608 -0
- package/dist/components/typography/Heading/heading.js +64 -0
- package/dist/components/typography/Heading/index.d.ts +1 -0
- package/dist/components/typography/Heading/index.js +13 -0
- package/dist/components/typography/Text/index.d.ts +1 -0
- package/dist/components/typography/Text/index.js +13 -0
- package/dist/components/typography/Text/text.d.ts +15 -0
- package/dist/components/typography/Text/text.js +20 -0
- package/dist/hooks/useColorScheme.d.ts +12 -0
- package/dist/hooks/useColorScheme.js +28 -0
- package/dist/hooks/useMediaQuery.d.ts +12 -0
- package/dist/hooks/useMediaQuery.js +39 -0
- package/dist/hooks/useTheme.d.ts +9 -0
- package/dist/hooks/useTheme.js +32 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.js +37 -0
- package/dist/storybookHelpers.d.ts +84 -0
- package/dist/storybookHelpers.js +55 -0
- package/package.json +133 -0
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
|
+
var t = {};
|
|
4
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
5
|
+
t[p] = s[p];
|
|
6
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
7
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
8
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
9
|
+
t[p[i]] = s[p[i]];
|
|
10
|
+
}
|
|
11
|
+
return t;
|
|
12
|
+
};
|
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.H6 = exports.H5 = exports.H4 = exports.H3 = exports.H2 = exports.H1 = exports.Heading = exports.defaultSize = void 0;
|
|
18
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
19
|
+
const styled_components_1 = __importDefault(require("styled-components"));
|
|
20
|
+
const constants_1 = require("../../system/ThemeProvider/lib/constants");
|
|
21
|
+
const Text_1 = require("../Text");
|
|
22
|
+
exports.defaultSize = {
|
|
23
|
+
h1: constants_1.Size.xxxlarge,
|
|
24
|
+
h2: constants_1.Size.xxlarge,
|
|
25
|
+
h3: constants_1.Size.xlarge,
|
|
26
|
+
h4: constants_1.Size.large,
|
|
27
|
+
h5: constants_1.Size.base,
|
|
28
|
+
h6: constants_1.Size.small,
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* ## Heading
|
|
32
|
+
*
|
|
33
|
+
* @example <Heading level={1}>Pizza</Heading>
|
|
34
|
+
* <Heading level={2}>Pizza</Heading>
|
|
35
|
+
* <Heading level={3}>Pizza</Heading>
|
|
36
|
+
* <Heading level={4}>Pizza</Heading>
|
|
37
|
+
* <Heading level={5}>Pizza</Heading>
|
|
38
|
+
* <Heading level={6}>Pizza</Heading>
|
|
39
|
+
*
|
|
40
|
+
* @example <H1>Pizza</H1>
|
|
41
|
+
* <H2>Pizza</H2>
|
|
42
|
+
* <H3>Pizza</H3>
|
|
43
|
+
* <H4>Pizza</H4>
|
|
44
|
+
* <H5>Pizza</H5>
|
|
45
|
+
* <H6>Pizza</H6>
|
|
46
|
+
*/
|
|
47
|
+
const Heading = (_a) => {
|
|
48
|
+
var { level = 1, className } = _a, props = __rest(_a, ["level", "className"]);
|
|
49
|
+
const htag = `h${level}`;
|
|
50
|
+
return (jsx_runtime_1.jsx(StyledHeading, Object.assign({ className: className, as: htag, size: exports.defaultSize[htag], weight: "bold" }, props), void 0));
|
|
51
|
+
};
|
|
52
|
+
exports.Heading = Heading;
|
|
53
|
+
const StyledHeading = styled_components_1.default(Text_1.Text) `
|
|
54
|
+
line-height: ${({ theme }) => theme.lineHeight.heading};
|
|
55
|
+
`;
|
|
56
|
+
/**
|
|
57
|
+
* ## Heading Variants
|
|
58
|
+
*/
|
|
59
|
+
exports.H1 = styled_components_1.default(exports.Heading).attrs((props) => (Object.assign(Object.assign({}, props), { level: 1 }))) ``;
|
|
60
|
+
exports.H2 = styled_components_1.default(exports.Heading).attrs((props) => (Object.assign(Object.assign({}, props), { level: 2 }))) ``;
|
|
61
|
+
exports.H3 = styled_components_1.default(exports.Heading).attrs((props) => (Object.assign(Object.assign({}, props), { level: 3 }))) ``;
|
|
62
|
+
exports.H4 = styled_components_1.default(exports.Heading).attrs((props) => (Object.assign(Object.assign({}, props), { level: 4 }))) ``;
|
|
63
|
+
exports.H5 = styled_components_1.default(exports.Heading).attrs((props) => (Object.assign(Object.assign({}, props), { level: 5 }))) ``;
|
|
64
|
+
exports.H6 = styled_components_1.default(exports.Heading).attrs((props) => (Object.assign(Object.assign({}, props), { level: 6 }))) ``;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './heading';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
10
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
|
+
};
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
__exportStar(require("./heading"), exports);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './text';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
10
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
|
+
};
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
__exportStar(require("./text"), exports);
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { HTMLAttributes, ReactNode } from 'react';
|
|
2
|
+
import { FontSizeType, FontWeightType } from '../../system/ThemeProvider/lib/types';
|
|
3
|
+
export declare type TextProps = HTMLAttributes<HTMLElement> & {
|
|
4
|
+
children: ReactNode;
|
|
5
|
+
size?: FontSizeType;
|
|
6
|
+
weight?: FontWeightType;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* ## Text
|
|
10
|
+
*
|
|
11
|
+
* @example <Text>Okay Cool</Text>
|
|
12
|
+
* <Text size="small">Okay Cool</Text>
|
|
13
|
+
* <Text weight="bold">Okay Cool</Text>
|
|
14
|
+
*/
|
|
15
|
+
export declare const Text: import("styled-components").StyledComponent<"span", import("styled-components").DefaultTheme, TextProps, never>;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.Text = void 0;
|
|
7
|
+
const styled_components_1 = __importDefault(require("styled-components"));
|
|
8
|
+
/**
|
|
9
|
+
* ## Text
|
|
10
|
+
*
|
|
11
|
+
* @example <Text>Okay Cool</Text>
|
|
12
|
+
* <Text size="small">Okay Cool</Text>
|
|
13
|
+
* <Text weight="bold">Okay Cool</Text>
|
|
14
|
+
*/
|
|
15
|
+
exports.Text = styled_components_1.default.span `
|
|
16
|
+
color: ${({ theme }) => theme.palette.textDefault};
|
|
17
|
+
font-size: ${({ theme, size = 'base' }) => theme.fontSize[size]};
|
|
18
|
+
font-weight: ${({ theme, weight = 'normal' }) => theme.fontWeight[weight]};
|
|
19
|
+
line-height: ${({ theme }) => theme.lineHeight.text};
|
|
20
|
+
`;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare const ColorScheme: {
|
|
2
|
+
readonly dark: "dark";
|
|
3
|
+
readonly light: "light";
|
|
4
|
+
};
|
|
5
|
+
export declare type ColorSchemeType = keyof typeof ColorScheme;
|
|
6
|
+
/**
|
|
7
|
+
* ## useColorScheme
|
|
8
|
+
* Returns system preference for Color Scheme
|
|
9
|
+
*/
|
|
10
|
+
export declare const useColorScheme: ({ defaultScheme, }: {
|
|
11
|
+
defaultScheme?: "dark" | "light" | undefined;
|
|
12
|
+
}) => ColorSchemeType;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useColorScheme = exports.ColorScheme = void 0;
|
|
4
|
+
const useMediaQuery_1 = require("./useMediaQuery");
|
|
5
|
+
exports.ColorScheme = {
|
|
6
|
+
dark: 'dark',
|
|
7
|
+
light: 'light',
|
|
8
|
+
};
|
|
9
|
+
const buildQuery = (scheme) => `(prefers-color-scheme: ${scheme})`;
|
|
10
|
+
/**
|
|
11
|
+
* ## useColorScheme
|
|
12
|
+
* Returns system preference for Color Scheme
|
|
13
|
+
*/
|
|
14
|
+
const useColorScheme = ({ defaultScheme = exports.ColorScheme.light, }) => {
|
|
15
|
+
const isDark = useMediaQuery_1.useMediaQuery(buildQuery(exports.ColorScheme.dark));
|
|
16
|
+
const isLight = useMediaQuery_1.useMediaQuery(buildQuery(exports.ColorScheme.light));
|
|
17
|
+
const isNone = !isDark && !isLight;
|
|
18
|
+
switch (true) {
|
|
19
|
+
case isDark:
|
|
20
|
+
return exports.ColorScheme.dark;
|
|
21
|
+
case isLight:
|
|
22
|
+
return exports.ColorScheme.light;
|
|
23
|
+
case isNone:
|
|
24
|
+
default:
|
|
25
|
+
return defaultScheme;
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
exports.useColorScheme = useColorScheme;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ## useMediaQuery
|
|
3
|
+
* @example const isPageWide = useMediaQuery('(min-width: 800px)')
|
|
4
|
+
* @example const reduceMotion = useMediaQuery('(prefers-reduced-motion: reduce)');
|
|
5
|
+
*/
|
|
6
|
+
export declare const useMediaQuery: (query: string) => boolean;
|
|
7
|
+
/**
|
|
8
|
+
* ## useLayoutMediaQuery
|
|
9
|
+
* @example const isPageWide = useLayoutMediaQuery('(min-width: 800px)')
|
|
10
|
+
* @example const reduceMotion = useLayoutMediaQuery('(prefers-reduced-motion: reduce)');
|
|
11
|
+
*/
|
|
12
|
+
export declare const useLayoutMediaQuery: (query: string) => boolean;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useLayoutMediaQuery = exports.useMediaQuery = void 0;
|
|
4
|
+
const react_1 = require("react");
|
|
5
|
+
/**
|
|
6
|
+
* ## MediaQuery Hooks
|
|
7
|
+
*
|
|
8
|
+
* Inspired by:
|
|
9
|
+
* @link https://github.com/streamich/use-media
|
|
10
|
+
*/
|
|
11
|
+
const useMq = (effect) => (query) => {
|
|
12
|
+
const [matches, setMatches] = react_1.useState(false);
|
|
13
|
+
effect(() => {
|
|
14
|
+
const media = window.matchMedia(query);
|
|
15
|
+
if (media) {
|
|
16
|
+
if (media.matches !== matches) {
|
|
17
|
+
setMatches(media.matches);
|
|
18
|
+
}
|
|
19
|
+
const listener = () => setMatches(media.matches);
|
|
20
|
+
const cleanup = () => media.removeEventListener('change', listener);
|
|
21
|
+
media.addEventListener('change', listener);
|
|
22
|
+
return cleanup;
|
|
23
|
+
}
|
|
24
|
+
return;
|
|
25
|
+
}, [matches, query]);
|
|
26
|
+
return matches;
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* ## useMediaQuery
|
|
30
|
+
* @example const isPageWide = useMediaQuery('(min-width: 800px)')
|
|
31
|
+
* @example const reduceMotion = useMediaQuery('(prefers-reduced-motion: reduce)');
|
|
32
|
+
*/
|
|
33
|
+
exports.useMediaQuery = useMq(react_1.useEffect);
|
|
34
|
+
/**
|
|
35
|
+
* ## useLayoutMediaQuery
|
|
36
|
+
* @example const isPageWide = useLayoutMediaQuery('(min-width: 800px)')
|
|
37
|
+
* @example const reduceMotion = useLayoutMediaQuery('(prefers-reduced-motion: reduce)');
|
|
38
|
+
*/
|
|
39
|
+
exports.useLayoutMediaQuery = useMq(react_1.useLayoutEffect);
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ConfigurationType } from './../components/system/ThemeProvider/lib/config';
|
|
2
|
+
import { DefaultTheme } from 'styled-components';
|
|
3
|
+
import { ColorScheme } from '../hooks/useColorScheme';
|
|
4
|
+
import { ThemePaletteSet } from '../components/system/ThemeProvider';
|
|
5
|
+
export declare const useTheme: ({ themes, scheme, config, }: {
|
|
6
|
+
themes?: ThemePaletteSet | undefined;
|
|
7
|
+
scheme?: "dark" | "light" | undefined;
|
|
8
|
+
config?: ConfigurationType | undefined;
|
|
9
|
+
}) => DefaultTheme;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useTheme = void 0;
|
|
4
|
+
const themes_1 = require("../components/system/ThemeProvider/themes");
|
|
5
|
+
const useColorScheme_1 = require("../hooks/useColorScheme");
|
|
6
|
+
const Themes = {
|
|
7
|
+
[useColorScheme_1.ColorScheme.dark]: themes_1.OpenFinDarkTheme,
|
|
8
|
+
[useColorScheme_1.ColorScheme.light]: themes_1.OpenFinLightTheme,
|
|
9
|
+
};
|
|
10
|
+
const useTheme = ({ themes, scheme, config, }) => {
|
|
11
|
+
// 1. Get Current Scheme
|
|
12
|
+
// Use user - provided color scheme
|
|
13
|
+
// OR fallback to System Preference Color Scheme (if available)
|
|
14
|
+
// OR default to "light"
|
|
15
|
+
const currentScheme = scheme
|
|
16
|
+
? useColorScheme_1.ColorScheme[scheme]
|
|
17
|
+
: useColorScheme_1.useColorScheme({
|
|
18
|
+
defaultScheme: useColorScheme_1.ColorScheme.light,
|
|
19
|
+
});
|
|
20
|
+
// 2. Get Current Theme
|
|
21
|
+
const currentTheme = themes === undefined
|
|
22
|
+
? // Built-in Theme
|
|
23
|
+
Themes[currentScheme]
|
|
24
|
+
: // Built-in Theme with User-provided Palette
|
|
25
|
+
Object.assign(Object.assign({}, Themes[currentScheme]), { palette: Object.assign(Object.assign({}, Themes[currentScheme].palette), themes[currentScheme].palette) });
|
|
26
|
+
// 3. Merge any User-provided Config
|
|
27
|
+
if (config) {
|
|
28
|
+
currentTheme._config = Object.assign(Object.assign({}, currentTheme._config), config);
|
|
29
|
+
}
|
|
30
|
+
return currentTheme;
|
|
31
|
+
};
|
|
32
|
+
exports.useTheme = useTheme;
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export * from './components/elements/Button';
|
|
2
|
+
export * from './components/elements/Icon';
|
|
3
|
+
export * from './components/elements/Input';
|
|
4
|
+
export * from './components/elements/Toggle';
|
|
5
|
+
export * from './components/layout/Box';
|
|
6
|
+
export * from './components/system/GlobalStyles';
|
|
7
|
+
export * from './components/system/ThemeProvider';
|
|
8
|
+
export * from './components/typography/Heading';
|
|
9
|
+
export * from './components/typography/Text';
|
|
10
|
+
export * from './hooks/useColorScheme';
|
|
11
|
+
export * from './hooks/useMediaQuery';
|
|
12
|
+
export * as StoryHelpers from './storybookHelpers';
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
13
|
+
});
|
|
14
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
15
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
16
|
+
};
|
|
17
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
18
|
+
if (mod && mod.__esModule) return mod;
|
|
19
|
+
var result = {};
|
|
20
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
21
|
+
__setModuleDefault(result, mod);
|
|
22
|
+
return result;
|
|
23
|
+
};
|
|
24
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
+
exports.StoryHelpers = void 0;
|
|
26
|
+
__exportStar(require("./components/elements/Button"), exports);
|
|
27
|
+
__exportStar(require("./components/elements/Icon"), exports);
|
|
28
|
+
__exportStar(require("./components/elements/Input"), exports);
|
|
29
|
+
__exportStar(require("./components/elements/Toggle"), exports);
|
|
30
|
+
__exportStar(require("./components/layout/Box"), exports);
|
|
31
|
+
__exportStar(require("./components/system/GlobalStyles"), exports);
|
|
32
|
+
__exportStar(require("./components/system/ThemeProvider"), exports);
|
|
33
|
+
__exportStar(require("./components/typography/Heading"), exports);
|
|
34
|
+
__exportStar(require("./components/typography/Text"), exports);
|
|
35
|
+
__exportStar(require("./hooks/useColorScheme"), exports);
|
|
36
|
+
__exportStar(require("./hooks/useMediaQuery"), exports);
|
|
37
|
+
exports.StoryHelpers = __importStar(require("./storybookHelpers"));
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
export declare const StoryRow: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, import("react").HTMLAttributes<HTMLDivElement> & {
|
|
3
|
+
alignItems?: "stretch" | "flex-start" | "flex-end" | "center" | "baseline" | "first baseline" | "last baseline" | "start" | "end" | "self-start" | "self-end" | undefined;
|
|
4
|
+
display?: "flex" | "inline-flex" | undefined;
|
|
5
|
+
flexDirection?: "row" | "row-reverse" | "column" | "column-reverse" | undefined;
|
|
6
|
+
flexWrap?: "nowrap" | "wrap" | "wrap-reverse" | undefined;
|
|
7
|
+
justifyContent?: "stretch" | "flex-start" | "flex-end" | "center" | "start" | "end" | "space-between" | "space-around" | "space-evenly" | "left" | "right" | undefined;
|
|
8
|
+
gap?: "xsmall" | "small" | "base" | "large" | "xlarge" | "xxlarge" | "xxxlarge" | "xxxxlarge" | undefined;
|
|
9
|
+
alignSelf?: "stretch" | "flex-start" | "center" | "baseline" | "auto" | " flex-end" | undefined;
|
|
10
|
+
flexBasis?: string | undefined;
|
|
11
|
+
flexGrow?: 0 | 1 | undefined;
|
|
12
|
+
flexShrink?: 0 | 1 | undefined;
|
|
13
|
+
order?: number | undefined;
|
|
14
|
+
surfaceLevel?: 3 | 2 | 1 | undefined;
|
|
15
|
+
padding?: "xsmall" | "small" | "base" | "large" | "xlarge" | "xxlarge" | "xxxlarge" | "xxxxlarge" | undefined;
|
|
16
|
+
} & {
|
|
17
|
+
gap: string;
|
|
18
|
+
alignItems: string;
|
|
19
|
+
}, "alignItems" | "gap">;
|
|
20
|
+
export declare const StoryColumn: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, import("react").HTMLAttributes<HTMLDivElement> & {
|
|
21
|
+
alignItems?: "stretch" | "flex-start" | "flex-end" | "center" | "baseline" | "first baseline" | "last baseline" | "start" | "end" | "self-start" | "self-end" | undefined;
|
|
22
|
+
display?: "flex" | "inline-flex" | undefined;
|
|
23
|
+
flexDirection?: "row" | "row-reverse" | "column" | "column-reverse" | undefined;
|
|
24
|
+
flexWrap?: "nowrap" | "wrap" | "wrap-reverse" | undefined;
|
|
25
|
+
justifyContent?: "stretch" | "flex-start" | "flex-end" | "center" | "start" | "end" | "space-between" | "space-around" | "space-evenly" | "left" | "right" | undefined;
|
|
26
|
+
gap?: "xsmall" | "small" | "base" | "large" | "xlarge" | "xxlarge" | "xxxlarge" | "xxxxlarge" | undefined;
|
|
27
|
+
alignSelf?: "stretch" | "flex-start" | "center" | "baseline" | "auto" | " flex-end" | undefined;
|
|
28
|
+
flexBasis?: string | undefined;
|
|
29
|
+
flexGrow?: 0 | 1 | undefined;
|
|
30
|
+
flexShrink?: 0 | 1 | undefined;
|
|
31
|
+
order?: number | undefined;
|
|
32
|
+
surfaceLevel?: 3 | 2 | 1 | undefined;
|
|
33
|
+
padding?: "xsmall" | "small" | "base" | "large" | "xlarge" | "xxlarge" | "xxxlarge" | "xxxxlarge" | undefined;
|
|
34
|
+
} & {
|
|
35
|
+
flexDirection: string;
|
|
36
|
+
gap: string;
|
|
37
|
+
alignItems: string;
|
|
38
|
+
}, "flexDirection" | "alignItems" | "gap">;
|
|
39
|
+
export declare const StoryGrid: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, import("react").HTMLAttributes<HTMLDivElement> & {
|
|
40
|
+
alignItems?: "stretch" | "flex-start" | "flex-end" | "center" | "baseline" | "first baseline" | "last baseline" | "start" | "end" | "self-start" | "self-end" | undefined;
|
|
41
|
+
display?: "flex" | "inline-flex" | undefined;
|
|
42
|
+
flexDirection?: "row" | "row-reverse" | "column" | "column-reverse" | undefined;
|
|
43
|
+
flexWrap?: "nowrap" | "wrap" | "wrap-reverse" | undefined;
|
|
44
|
+
justifyContent?: "stretch" | "flex-start" | "flex-end" | "center" | "start" | "end" | "space-between" | "space-around" | "space-evenly" | "left" | "right" | undefined;
|
|
45
|
+
gap?: "xsmall" | "small" | "base" | "large" | "xlarge" | "xxlarge" | "xxxlarge" | "xxxxlarge" | undefined;
|
|
46
|
+
alignSelf?: "stretch" | "flex-start" | "center" | "baseline" | "auto" | " flex-end" | undefined;
|
|
47
|
+
flexBasis?: string | undefined;
|
|
48
|
+
flexGrow?: 0 | 1 | undefined;
|
|
49
|
+
flexShrink?: 0 | 1 | undefined;
|
|
50
|
+
order?: number | undefined;
|
|
51
|
+
surfaceLevel?: 3 | 2 | 1 | undefined;
|
|
52
|
+
padding?: "xsmall" | "small" | "base" | "large" | "xlarge" | "xxlarge" | "xxxlarge" | "xxxxlarge" | undefined;
|
|
53
|
+
} & {
|
|
54
|
+
gap: string;
|
|
55
|
+
}, "gap">;
|
|
56
|
+
export declare const PlaceholderContent: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, import("react").HTMLAttributes<HTMLDivElement> & {
|
|
57
|
+
alignItems?: "stretch" | "flex-start" | "flex-end" | "center" | "baseline" | "first baseline" | "last baseline" | "start" | "end" | "self-start" | "self-end" | undefined;
|
|
58
|
+
display?: "flex" | "inline-flex" | undefined;
|
|
59
|
+
flexDirection?: "row" | "row-reverse" | "column" | "column-reverse" | undefined;
|
|
60
|
+
flexWrap?: "nowrap" | "wrap" | "wrap-reverse" | undefined;
|
|
61
|
+
justifyContent?: "stretch" | "flex-start" | "flex-end" | "center" | "start" | "end" | "space-between" | "space-around" | "space-evenly" | "left" | "right" | undefined;
|
|
62
|
+
gap?: "xsmall" | "small" | "base" | "large" | "xlarge" | "xxlarge" | "xxxlarge" | "xxxxlarge" | undefined;
|
|
63
|
+
alignSelf?: "stretch" | "flex-start" | "center" | "baseline" | "auto" | " flex-end" | undefined;
|
|
64
|
+
flexBasis?: string | undefined;
|
|
65
|
+
flexGrow?: 0 | 1 | undefined;
|
|
66
|
+
flexShrink?: 0 | 1 | undefined;
|
|
67
|
+
order?: number | undefined;
|
|
68
|
+
surfaceLevel?: 3 | 2 | 1 | undefined;
|
|
69
|
+
padding?: "xsmall" | "small" | "base" | "large" | "xlarge" | "xxlarge" | "xxxlarge" | "xxxxlarge" | undefined;
|
|
70
|
+
} & {
|
|
71
|
+
flexDirection: string;
|
|
72
|
+
gap: string;
|
|
73
|
+
alignItems: string;
|
|
74
|
+
}, "flexDirection" | "alignItems" | "gap">;
|
|
75
|
+
export declare const Pre: import("styled-components").StyledComponent<"pre", import("styled-components").DefaultTheme, {}, never>;
|
|
76
|
+
export declare const JSONData: ({ data }: {
|
|
77
|
+
data: unknown;
|
|
78
|
+
}) => JSX.Element;
|
|
79
|
+
export declare const SpatialLink: import("styled-components").StyledComponent<"a", import("styled-components").DefaultTheme, {
|
|
80
|
+
href: "https://docs.google.com/spreadsheets/d/10fcDXFdGJ8-cQxJ5X1EPSKP-aMrxgqnM8YIlYmcOPoQ";
|
|
81
|
+
target: "_blank";
|
|
82
|
+
rel: "noreferrer";
|
|
83
|
+
title: "Spatial";
|
|
84
|
+
}, "title" | "href" | "target" | "rel">;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.SpatialLink = exports.JSONData = exports.Pre = exports.PlaceholderContent = exports.StoryGrid = exports.StoryColumn = exports.StoryRow = void 0;
|
|
7
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
8
|
+
const styled_components_1 = __importDefault(require("styled-components"));
|
|
9
|
+
const Box_1 = require("./components/layout/Box");
|
|
10
|
+
exports.StoryRow = styled_components_1.default(Box_1.Box).attrs({
|
|
11
|
+
gap: 'large',
|
|
12
|
+
alignItems: 'flex-start',
|
|
13
|
+
}) ``;
|
|
14
|
+
exports.StoryColumn = styled_components_1.default(Box_1.Box).attrs({
|
|
15
|
+
flexDirection: 'column',
|
|
16
|
+
gap: 'large',
|
|
17
|
+
alignItems: 'flex-start',
|
|
18
|
+
}) `
|
|
19
|
+
max-width: 500px;
|
|
20
|
+
`;
|
|
21
|
+
exports.StoryGrid = styled_components_1.default(Box_1.Box).attrs({
|
|
22
|
+
gap: 'large',
|
|
23
|
+
}) `
|
|
24
|
+
display: grid;
|
|
25
|
+
`;
|
|
26
|
+
exports.PlaceholderContent = styled_components_1.default(exports.StoryColumn) `
|
|
27
|
+
background: ${({ theme }) => theme.palette.surfaceMiddle};
|
|
28
|
+
box-shadow: ${({ theme }) => `0 0 0 1px ${theme.palette.surfaceTop}`};
|
|
29
|
+
padding: ${({ theme }) => theme.px.small};
|
|
30
|
+
border-radius: ${({ theme }) => theme.radius.small};
|
|
31
|
+
user-select: none;
|
|
32
|
+
`;
|
|
33
|
+
exports.Pre = styled_components_1.default.pre `
|
|
34
|
+
margin: ${({ theme }) => theme.px.base} 0;
|
|
35
|
+
padding: ${({ theme }) => theme.px.base};
|
|
36
|
+
border-radius: ${({ theme }) => theme.radius.base};
|
|
37
|
+
`;
|
|
38
|
+
const JSONData = ({ data }) => {
|
|
39
|
+
return jsx_runtime_1.jsx(exports.Pre, { children: JSON.stringify(data, undefined, 2) }, void 0);
|
|
40
|
+
};
|
|
41
|
+
exports.JSONData = JSONData;
|
|
42
|
+
exports.SpatialLink = styled_components_1.default.a.attrs({
|
|
43
|
+
href: 'https://docs.google.com/spreadsheets/d/10fcDXFdGJ8-cQxJ5X1EPSKP-aMrxgqnM8YIlYmcOPoQ',
|
|
44
|
+
target: '_blank',
|
|
45
|
+
rel: 'noreferrer',
|
|
46
|
+
title: 'Spatial',
|
|
47
|
+
}) `
|
|
48
|
+
display: block;
|
|
49
|
+
color: ${({ theme }) => theme.palette.textDefault};
|
|
50
|
+
text-decoration: none;
|
|
51
|
+
&:after {
|
|
52
|
+
display: block;
|
|
53
|
+
content: 'Source: Spatial';
|
|
54
|
+
}
|
|
55
|
+
`;
|
package/package.json
ADDED
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@openfin/ui-library",
|
|
3
|
+
"description": "OpenFin UI Component Library",
|
|
4
|
+
"version": "0.0.33",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"module": "dist/index.es.js",
|
|
7
|
+
"types": "dist/index.d.ts",
|
|
8
|
+
"files": [
|
|
9
|
+
"dist/**/*"
|
|
10
|
+
],
|
|
11
|
+
"license": "MIT",
|
|
12
|
+
"dependencies": {
|
|
13
|
+
"@modulz/radix-icons": "^4.0.0",
|
|
14
|
+
"styled-components": "^5.1.1"
|
|
15
|
+
},
|
|
16
|
+
"devDependencies": {
|
|
17
|
+
"@storybook/addon-actions": "^6.1.20",
|
|
18
|
+
"@storybook/addon-essentials": "^6.1.20",
|
|
19
|
+
"@storybook/addon-links": "^6.1.20",
|
|
20
|
+
"@storybook/node-logger": "^6.1.20",
|
|
21
|
+
"@storybook/preset-create-react-app": "^3.1.6",
|
|
22
|
+
"@storybook/react": "^6.1.20",
|
|
23
|
+
"@testing-library/jest-dom": "^5.11.9",
|
|
24
|
+
"@testing-library/react": "^11.2.3",
|
|
25
|
+
"@testing-library/user-event": "^12.6.2",
|
|
26
|
+
"@tsconfig/recommended": "^1.0.1",
|
|
27
|
+
"@types/faker": "^5.1.7",
|
|
28
|
+
"@types/jest": "^26.0.20",
|
|
29
|
+
"@types/lodash.defaultsdeep": "^4.6.6",
|
|
30
|
+
"@types/node": "^14.14.22",
|
|
31
|
+
"@types/react": "^17.0.0",
|
|
32
|
+
"@types/react-dom": "^17.0.0",
|
|
33
|
+
"@types/styled-components": "^5.1.7",
|
|
34
|
+
"@typescript-eslint/eslint-plugin": "^4.14.1",
|
|
35
|
+
"@typescript-eslint/parser": "^4.14.1",
|
|
36
|
+
"eslint": "^7.19.0",
|
|
37
|
+
"eslint-config-prettier": "^7.2.0",
|
|
38
|
+
"eslint-plugin-jest": "^24.1.3",
|
|
39
|
+
"eslint-plugin-prettier": "^3.3.1",
|
|
40
|
+
"eslint-plugin-react": "^7.22.0",
|
|
41
|
+
"faker": "^5.4.0",
|
|
42
|
+
"prettier": "^2.2.1",
|
|
43
|
+
"react": "^17.0.1",
|
|
44
|
+
"react-dom": "^17.0.1",
|
|
45
|
+
"react-scripts": "4.0.1",
|
|
46
|
+
"rimraf": "^3.0.2",
|
|
47
|
+
"stylelint": "^13.9.0",
|
|
48
|
+
"stylelint-config-recommended": "^3.0.0",
|
|
49
|
+
"stylelint-config-styled-components": "^0.1.1",
|
|
50
|
+
"stylelint-processor-styled-components": "^1.10.0",
|
|
51
|
+
"tsconfig-paths-webpack-plugin": "^3.3.0",
|
|
52
|
+
"typescript": "^4.1.3",
|
|
53
|
+
"web-vitals": "^0.2.4"
|
|
54
|
+
},
|
|
55
|
+
"scripts": {
|
|
56
|
+
"start": "yarn storybook",
|
|
57
|
+
"build": "yarn build:clean && yarn build:bundle",
|
|
58
|
+
"build:bundle": "tsc -p tsconfig.bundle.json",
|
|
59
|
+
"build:clean": "rimraf dist",
|
|
60
|
+
"build:dev": "yarn build && yalc push",
|
|
61
|
+
"test": "react-scripts test",
|
|
62
|
+
"eject": "react-scripts eject",
|
|
63
|
+
"lint": "yarn lint:typescript && yarn lint:styles",
|
|
64
|
+
"lint:typescript": "eslint './src/**/*.{ts,tsx}'",
|
|
65
|
+
"lint:styles": "stylelint './src/**/*.{ts,tsx}'",
|
|
66
|
+
"storybook": "yarn storybook:cache-clear && start-storybook -p 6006 -s public",
|
|
67
|
+
"storybook:build": "build-storybook -s public",
|
|
68
|
+
"storybook:cache-clear": "rimraf ./node_modules/.cache/storybook",
|
|
69
|
+
"git:pre-push": "yarn lint && yarn test --watchAll=false && yarn build"
|
|
70
|
+
},
|
|
71
|
+
"env": {
|
|
72
|
+
"jest/globals": true
|
|
73
|
+
},
|
|
74
|
+
"browserslist": {
|
|
75
|
+
"production": [
|
|
76
|
+
">0.2%",
|
|
77
|
+
"not dead",
|
|
78
|
+
"not op_mini all"
|
|
79
|
+
],
|
|
80
|
+
"development": [
|
|
81
|
+
"last 1 chrome version",
|
|
82
|
+
"last 1 firefox version",
|
|
83
|
+
"last 1 safari version"
|
|
84
|
+
]
|
|
85
|
+
},
|
|
86
|
+
"eslintConfig": {
|
|
87
|
+
"extends": [
|
|
88
|
+
"eslint:recommended",
|
|
89
|
+
"plugin:react/recommended",
|
|
90
|
+
"plugin:jest/recommended"
|
|
91
|
+
],
|
|
92
|
+
"parser": "@typescript-eslint/parser",
|
|
93
|
+
"plugins": [
|
|
94
|
+
"@typescript-eslint",
|
|
95
|
+
"jest"
|
|
96
|
+
],
|
|
97
|
+
"rules": {
|
|
98
|
+
"dot-notation": "error",
|
|
99
|
+
"react/prop-types": "off",
|
|
100
|
+
"react/jsx-uses-react": "off",
|
|
101
|
+
"react/react-in-jsx-scope": "off",
|
|
102
|
+
"no-unused-vars": "off",
|
|
103
|
+
"@typescript-eslint/no-unused-vars": "error",
|
|
104
|
+
"@typescript-eslint/no-explicit-any": "error"
|
|
105
|
+
},
|
|
106
|
+
"settings": {
|
|
107
|
+
"react": {
|
|
108
|
+
"version": "detect"
|
|
109
|
+
}
|
|
110
|
+
},
|
|
111
|
+
"env": {
|
|
112
|
+
"browser": true,
|
|
113
|
+
"node": true
|
|
114
|
+
}
|
|
115
|
+
},
|
|
116
|
+
"stylelint": {
|
|
117
|
+
"processors": [
|
|
118
|
+
"stylelint-processor-styled-components"
|
|
119
|
+
],
|
|
120
|
+
"extends": [
|
|
121
|
+
"stylelint-config-recommended",
|
|
122
|
+
"stylelint-config-styled-components"
|
|
123
|
+
]
|
|
124
|
+
},
|
|
125
|
+
"prettier": {
|
|
126
|
+
"endOfLine": "lf",
|
|
127
|
+
"semi": true,
|
|
128
|
+
"singleQuote": true,
|
|
129
|
+
"tabWidth": 2,
|
|
130
|
+
"trailingComma": "es5",
|
|
131
|
+
"arrowParens": "always"
|
|
132
|
+
}
|
|
133
|
+
}
|