@preply/ds-web-root 0.4.3-beta.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 ADDED
@@ -0,0 +1,50 @@
1
+ # `@preply/ds-web-root`
2
+
3
+ > Root provider (+ themes) for web applications.
4
+
5
+ ## Using the Design System in your application or library?
6
+
7
+ Follow the instructions in [@preply/ds-workspace](../../README.md).
8
+
9
+ **tl;dr:**
10
+
11
+ ```tsx
12
+ import { RootProvider } from `@preply/ds-web-root`;
13
+ import { Heading } from `@preply/ds-web-lib`;
14
+
15
+ export const App: FC = () => (
16
+ <RootProvider>
17
+ <Heading level="h1">Hello!</Heading>
18
+ </RootProvider>
19
+ );
20
+ ```
21
+
22
+ ## Contributing
23
+
24
+ Reach out to [#design-system-public](https://preply.slack.com/archives/C024EAEHP6V) if you think you can help and keep an eye on [DS Confluence](https://preply.atlassian.net/wiki/spaces/DS/overview) for more docs, guides, work in progress, decisions, the works.
25
+
26
+ ## Development
27
+
28
+ You probably want to execute `yarn dev` and/or `yarn docs` in the root, as per instructions in [@preply/ds-workspace](../../README.md).
29
+
30
+ For quicker - and more focused - feedback, you can also directly use the scripts in this package directory, but make sure you have first executed `yarn build` in root, or that you have the root `yarn dev` script running in the background.
31
+
32
+ ## Tooling
33
+
34
+ Details about tools and configurations in [@preply/ds-workspace](../../README.md).
35
+
36
+ ## Dependencies
37
+
38
+ **Note:** `@preply/ds-***` are declared both as direct and peer dependencies:
39
+
40
+ - to ensure `rollup` excludes them from the bundle.
41
+ - to ensure Lerna honours build sequence (does not do so for peer dependencies).
42
+
43
+ ### Dev dependencies
44
+
45
+ We only list the dependencies used directly in stories, MDX docs and tests (`@storybook/react`, `@testing-library/react`, ...).
46
+
47
+ **Do NOT add dependencies on** linting, testing, building tools unless:
48
+
49
+ - you need to require some resource in a doc file or a test.
50
+ - you need to add a very specific plugin to this package only and you want to signal the dependency loudly.
@@ -0,0 +1,29 @@
1
+ function styleInject(css, ref) {
2
+ if ( ref === void 0 ) ref = {};
3
+ var insertAt = ref.insertAt;
4
+
5
+ if (!css || typeof document === 'undefined') { return; }
6
+
7
+ var head = document.head || document.getElementsByTagName('head')[0];
8
+ var style = document.createElement('style');
9
+ style.type = 'text/css';
10
+
11
+ if (insertAt === 'top') {
12
+ if (head.firstChild) {
13
+ head.insertBefore(style, head.firstChild);
14
+ } else {
15
+ head.appendChild(style);
16
+ }
17
+ } else {
18
+ head.appendChild(style);
19
+ }
20
+
21
+ if (style.styleSheet) {
22
+ style.styleSheet.cssText = css;
23
+ } else {
24
+ style.appendChild(document.createTextNode(css));
25
+ }
26
+ }
27
+
28
+ export { styleInject as default };
29
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUtaW5qZWN0LmVzLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3R5bGUtaW5qZWN0L2Rpc3Qvc3R5bGUtaW5qZWN0LmVzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImZ1bmN0aW9uIHN0eWxlSW5qZWN0KGNzcywgcmVmKSB7XG4gIGlmICggcmVmID09PSB2b2lkIDAgKSByZWYgPSB7fTtcbiAgdmFyIGluc2VydEF0ID0gcmVmLmluc2VydEF0O1xuXG4gIGlmICghY3NzIHx8IHR5cGVvZiBkb2N1bWVudCA9PT0gJ3VuZGVmaW5lZCcpIHsgcmV0dXJuOyB9XG5cbiAgdmFyIGhlYWQgPSBkb2N1bWVudC5oZWFkIHx8IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdoZWFkJylbMF07XG4gIHZhciBzdHlsZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3N0eWxlJyk7XG4gIHN0eWxlLnR5cGUgPSAndGV4dC9jc3MnO1xuXG4gIGlmIChpbnNlcnRBdCA9PT0gJ3RvcCcpIHtcbiAgICBpZiAoaGVhZC5maXJzdENoaWxkKSB7XG4gICAgICBoZWFkLmluc2VydEJlZm9yZShzdHlsZSwgaGVhZC5maXJzdENoaWxkKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaGVhZC5hcHBlbmRDaGlsZChzdHlsZSk7XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIGhlYWQuYXBwZW5kQ2hpbGQoc3R5bGUpO1xuICB9XG5cbiAgaWYgKHN0eWxlLnN0eWxlU2hlZXQpIHtcbiAgICBzdHlsZS5zdHlsZVNoZWV0LmNzc1RleHQgPSBjc3M7XG4gIH0gZWxzZSB7XG4gICAgc3R5bGUuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoY3NzKSk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgc3R5bGVJbmplY3Q7XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsU0FBUyxXQUFXLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRTtBQUMvQixFQUFFLEtBQUssR0FBRyxLQUFLLEtBQUssQ0FBQyxHQUFHLEdBQUcsR0FBRyxFQUFFLENBQUM7QUFDakMsRUFBRSxJQUFJLFFBQVEsR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDO0FBQzlCO0FBQ0EsRUFBRSxJQUFJLENBQUMsR0FBRyxJQUFJLE9BQU8sUUFBUSxLQUFLLFdBQVcsRUFBRSxFQUFFLE9BQU8sRUFBRTtBQUMxRDtBQUNBLEVBQUUsSUFBSSxJQUFJLEdBQUcsUUFBUSxDQUFDLElBQUksSUFBSSxRQUFRLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDdkUsRUFBRSxJQUFJLEtBQUssR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBQzlDLEVBQUUsS0FBSyxDQUFDLElBQUksR0FBRyxVQUFVLENBQUM7QUFDMUI7QUFDQSxFQUFFLElBQUksUUFBUSxLQUFLLEtBQUssRUFBRTtBQUMxQixJQUFJLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtBQUN6QixNQUFNLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztBQUNoRCxLQUFLLE1BQU07QUFDWCxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDOUIsS0FBSztBQUNMLEdBQUcsTUFBTTtBQUNULElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUM1QixHQUFHO0FBQ0g7QUFDQSxFQUFFLElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRTtBQUN4QixJQUFJLEtBQUssQ0FBQyxVQUFVLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQztBQUNuQyxHQUFHLE1BQU07QUFDVCxJQUFJLEtBQUssQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0FBQ3BELEdBQUc7QUFDSDs7OzsifQ==
@@ -0,0 +1,3 @@
1
+ export * from './options';
2
+ export * from './root';
3
+ export * from './themes';
package/dist/index.js ADDED
@@ -0,0 +1,5 @@
1
+ export { options } from './options/index.js';
2
+ export { themes } from './themes/index.js';
3
+ export { RootProvider } from './root/providers/RootProvider.js';
4
+ export { Root } from './root/components/Root.js';
5
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbXSwic291cmNlc0NvbnRlbnQiOltdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7In0=
@@ -0,0 +1,3 @@
1
+ export declare const options: {
2
+ THEME: Record<import("@preply/ds-core").ThemeName, string>;
3
+ };
@@ -0,0 +1,8 @@
1
+ import { THEME } from './theme.options.js';
2
+
3
+ const options = {
4
+ THEME,
5
+ };
6
+
7
+ export { options };
8
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcHRpb25zL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRIRU1FIH0gZnJvbSAnLi90aGVtZS5vcHRpb25zJztcblxuZXhwb3J0IGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgVEhFTUUsXG59O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O01BRWEsT0FBTyxHQUFHO0lBQ25CLEtBQUs7Ozs7OyJ9
@@ -0,0 +1,2 @@
1
+ import { ThemeName } from '@preply/ds-core';
2
+ export declare const THEME: Record<ThemeName, string>;
@@ -0,0 +1,7 @@
1
+ const THEME = {
2
+ 'preply-ui': 'preply-ui',
3
+ 'base-ui': 'base-ui',
4
+ };
5
+
6
+ export { THEME };
7
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUub3B0aW9ucy5qcyIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL29wdGlvbnMvdGhlbWUub3B0aW9ucy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUaGVtZU5hbWUgfSBmcm9tICdAcHJlcGx5L2RzLWNvcmUnO1xuXG5leHBvcnQgY29uc3QgVEhFTUU6IFJlY29yZDxUaGVtZU5hbWUsIHN0cmluZz4gPSB7XG4gICAgJ3ByZXBseS11aSc6ICdwcmVwbHktdWknLFxuICAgICdiYXNlLXVpJzogJ2Jhc2UtdWknLFxufTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiTUFFYSxLQUFLLEdBQThCO0lBQzVDLFdBQVcsRUFBRSxXQUFXO0lBQ3hCLFNBQVMsRUFBRSxTQUFTOzs7OzsifQ==
@@ -0,0 +1,6 @@
1
+ import { FC } from 'react';
2
+ export interface RootProps {
3
+ tag?: keyof JSX.IntrinsicElements;
4
+ target?: string;
5
+ }
6
+ export declare const Root: FC<RootProps>;
@@ -0,0 +1,34 @@
1
+ import { useTheme, useColorScheme } from '@preply/ds-web-core';
2
+ import React, { useState, useMemo, useEffect } from 'react';
3
+ import styles from '../../styles/index.module.less.js';
4
+
5
+ const ROOT_CLASS_NAME = styles['ds-root'];
6
+ const Root = ({ tag, target, children }) => {
7
+ const { theme } = useTheme();
8
+ const { colorScheme } = useColorScheme();
9
+ const [previousClassNames, setPreviousClassNames] = useState([]);
10
+ const Tag = tag || 'div';
11
+ const classNames = useMemo(() => [
12
+ ROOT_CLASS_NAME,
13
+ ...theme.getClassName().split(' '),
14
+ ...colorScheme.getClassName().split(' '),
15
+ ], [colorScheme, theme]);
16
+ useEffect(() => {
17
+ if (target) {
18
+ const el = document.getElementById(target);
19
+ if (!el) {
20
+ throw new Error(`Target element not found: "${target}"`);
21
+ }
22
+ el.classList.remove(...previousClassNames);
23
+ el.classList.add(...classNames);
24
+ }
25
+ setPreviousClassNames(classNames);
26
+ }, [classNames, previousClassNames, target]);
27
+ if (target) {
28
+ return React.createElement(React.Fragment, null, children);
29
+ }
30
+ return React.createElement(Tag, { className: classNames.join(' ') }, children);
31
+ };
32
+
33
+ export { Root };
34
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUm9vdC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Jvb3QvY29tcG9uZW50cy9Sb290LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VDb2xvclNjaGVtZSwgdXNlVGhlbWUgfSBmcm9tICdAcHJlcGx5L2RzLXdlYi1jb3JlJztcbmltcG9ydCBSZWFjdCwgeyBGQywgdXNlRWZmZWN0LCB1c2VNZW1vLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcblxuaW1wb3J0IHN0eWxlcyBmcm9tICcuLi8uLi9zdHlsZXMvaW5kZXgubW9kdWxlLmxlc3MnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFJvb3RQcm9wcyB7XG4gICAgdGFnPzoga2V5b2YgSlNYLkludHJpbnNpY0VsZW1lbnRzO1xuICAgIHRhcmdldD86IHN0cmluZztcbn1cblxuY29uc3QgUk9PVF9DTEFTU19OQU1FID0gc3R5bGVzWydkcy1yb290J107XG5cbmV4cG9ydCBjb25zdCBSb290OiBGQzxSb290UHJvcHM+ID0gKHsgdGFnLCB0YXJnZXQsIGNoaWxkcmVuIH0pID0+IHtcbiAgICBjb25zdCB7IHRoZW1lIH0gPSB1c2VUaGVtZSgpO1xuICAgIGNvbnN0IHsgY29sb3JTY2hlbWUgfSA9IHVzZUNvbG9yU2NoZW1lKCk7XG4gICAgY29uc3QgW3ByZXZpb3VzQ2xhc3NOYW1lcywgc2V0UHJldmlvdXNDbGFzc05hbWVzXSA9IHVzZVN0YXRlPHN0cmluZ1tdPihbXSk7XG5cbiAgICBjb25zdCBUYWcgPSB0YWcgfHwgJ2Rpdic7XG4gICAgY29uc3QgY2xhc3NOYW1lcyA9IHVzZU1lbW8oXG4gICAgICAgICgpID0+IFtcbiAgICAgICAgICAgIFJPT1RfQ0xBU1NfTkFNRSxcbiAgICAgICAgICAgIC4uLnRoZW1lLmdldENsYXNzTmFtZSgpLnNwbGl0KCcgJyksXG4gICAgICAgICAgICAuLi5jb2xvclNjaGVtZS5nZXRDbGFzc05hbWUoKS5zcGxpdCgnICcpLFxuICAgICAgICBdLFxuICAgICAgICBbY29sb3JTY2hlbWUsIHRoZW1lXSxcbiAgICApO1xuXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgaWYgKHRhcmdldCkge1xuICAgICAgICAgICAgY29uc3QgZWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0YXJnZXQpO1xuICAgICAgICAgICAgaWYgKCFlbCkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVGFyZ2V0IGVsZW1lbnQgbm90IGZvdW5kOiBcIiR7dGFyZ2V0fVwiYCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbC5jbGFzc0xpc3QucmVtb3ZlKC4uLnByZXZpb3VzQ2xhc3NOYW1lcyk7XG4gICAgICAgICAgICBlbC5jbGFzc0xpc3QuYWRkKC4uLmNsYXNzTmFtZXMpO1xuICAgICAgICB9XG4gICAgICAgIHNldFByZXZpb3VzQ2xhc3NOYW1lcyhjbGFzc05hbWVzKTtcbiAgICB9LCBbY2xhc3NOYW1lcywgcHJldmlvdXNDbGFzc05hbWVzLCB0YXJnZXRdKTtcblxuICAgIGlmICh0YXJnZXQpIHtcbiAgICAgICAgcmV0dXJuIDw+e2NoaWxkcmVufTwvPjtcbiAgICB9XG5cbiAgICByZXR1cm4gPFRhZyBjbGFzc05hbWU9e2NsYXNzTmFtZXMuam9pbignICcpfT57Y2hpbGRyZW59PC9UYWc+O1xufTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBVUEsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO01BRTdCLElBQUksR0FBa0IsQ0FBQyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFO0lBQ3pELE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxRQUFRLEVBQUUsQ0FBQztJQUM3QixNQUFNLEVBQUUsV0FBVyxFQUFFLEdBQUcsY0FBYyxFQUFFLENBQUM7SUFDekMsTUFBTSxDQUFDLGtCQUFrQixFQUFFLHFCQUFxQixDQUFDLEdBQUcsUUFBUSxDQUFXLEVBQUUsQ0FBQyxDQUFDO0lBRTNFLE1BQU0sR0FBRyxHQUFHLEdBQUcsSUFBSSxLQUFLLENBQUM7SUFDekIsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUN0QixNQUFNO1FBQ0YsZUFBZTtRQUNmLEdBQUcsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7UUFDbEMsR0FBRyxXQUFXLENBQUMsWUFBWSxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQztLQUMzQyxFQUNELENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUN2QixDQUFDO0lBRUYsU0FBUyxDQUFDO1FBQ04sSUFBSSxNQUFNLEVBQUU7WUFDUixNQUFNLEVBQUUsR0FBRyxRQUFRLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzNDLElBQUksQ0FBQyxFQUFFLEVBQUU7Z0JBQ0wsTUFBTSxJQUFJLEtBQUssQ0FBQyw4QkFBOEIsTUFBTSxHQUFHLENBQUMsQ0FBQzthQUM1RDtZQUNELEVBQUUsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsa0JBQWtCLENBQUMsQ0FBQztZQUMzQyxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxDQUFDO1NBQ25DO1FBQ0QscUJBQXFCLENBQUMsVUFBVSxDQUFDLENBQUM7S0FDckMsRUFBRSxDQUFDLFVBQVUsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBRTdDLElBQUksTUFBTSxFQUFFO1FBQ1IsT0FBTywwQ0FBRyxRQUFRLENBQUksQ0FBQztLQUMxQjtJQUVELE9BQU8sb0JBQUMsR0FBRyxJQUFDLFNBQVMsRUFBRSxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFHLFFBQVEsQ0FBTyxDQUFDO0FBQ2xFOzs7OyJ9
@@ -0,0 +1,3 @@
1
+ export type { RootProviderProps } from './providers/RootProvider';
2
+ export { RootProvider } from './providers/RootProvider';
3
+ export { Root } from './components/Root';
@@ -0,0 +1,3 @@
1
+ export { RootProvider } from './providers/RootProvider.js';
2
+ export { Root } from './components/Root.js';
3
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbXSwic291cmNlc0NvbnRlbnQiOltdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOyJ9
@@ -0,0 +1,9 @@
1
+ import type { ColorSchemeName, ThemeName } from '@preply/ds-core';
2
+ import { FC } from 'react';
3
+ export interface RootProviderProps {
4
+ theme?: ThemeName;
5
+ colorScheme?: ColorSchemeName;
6
+ tag?: keyof JSX.IntrinsicElements;
7
+ target?: string;
8
+ }
9
+ export declare const RootProvider: FC<RootProviderProps>;
@@ -0,0 +1,13 @@
1
+ import { THEME_DEFAULT, COLOR_SCHEME_DEFAULT } from '@preply/ds-core';
2
+ import { ThemesProvider, colorSchemes, ThemeProvider, ColorSchemeProvider } from '@preply/ds-web-core';
3
+ import React from 'react';
4
+ import { themes } from '../../themes/index.js';
5
+ import { Root } from '../components/Root.js';
6
+
7
+ const RootProvider = ({ theme = THEME_DEFAULT, colorScheme = COLOR_SCHEME_DEFAULT, tag, target, children, }) => (React.createElement(ThemesProvider, { themes: Object.values(themes), colorSchemes: colorSchemes },
8
+ React.createElement(ThemeProvider, { theme: theme },
9
+ React.createElement(ColorSchemeProvider, { colorScheme: colorScheme },
10
+ React.createElement(Root, { tag: tag, target: target }, children)))));
11
+
12
+ export { RootProvider };
13
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUm9vdFByb3ZpZGVyLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcm9vdC9wcm92aWRlcnMvUm9vdFByb3ZpZGVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENvbG9yU2NoZW1lTmFtZSwgVGhlbWVOYW1lIH0gZnJvbSAnQHByZXBseS9kcy1jb3JlJztcbmltcG9ydCB7IENPTE9SX1NDSEVNRV9ERUZBVUxULCBUSEVNRV9ERUZBVUxUIH0gZnJvbSAnQHByZXBseS9kcy1jb3JlJztcbmltcG9ydCB7XG4gICAgQ29sb3JTY2hlbWVQcm92aWRlcixcbiAgICBUaGVtZVByb3ZpZGVyLFxuICAgIFRoZW1lc1Byb3ZpZGVyLFxuICAgIGNvbG9yU2NoZW1lcyxcbn0gZnJvbSAnQHByZXBseS9kcy13ZWItY29yZSc7XG5pbXBvcnQgUmVhY3QsIHsgRkMgfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB7IHRoZW1lcyB9IGZyb20gJy4uLy4uL3RoZW1lcyc7XG5pbXBvcnQgeyBSb290IH0gZnJvbSAnLi4vY29tcG9uZW50cy9Sb290JztcblxuZXhwb3J0IGludGVyZmFjZSBSb290UHJvdmlkZXJQcm9wcyB7XG4gICAgdGhlbWU/OiBUaGVtZU5hbWU7XG4gICAgY29sb3JTY2hlbWU/OiBDb2xvclNjaGVtZU5hbWU7XG4gICAgdGFnPzoga2V5b2YgSlNYLkludHJpbnNpY0VsZW1lbnRzO1xuICAgIHRhcmdldD86IHN0cmluZztcbn1cblxuZXhwb3J0IGNvbnN0IFJvb3RQcm92aWRlcjogRkM8Um9vdFByb3ZpZGVyUHJvcHM+ID0gKHtcbiAgICB0aGVtZSA9IFRIRU1FX0RFRkFVTFQsXG4gICAgY29sb3JTY2hlbWUgPSBDT0xPUl9TQ0hFTUVfREVGQVVMVCxcbiAgICB0YWcsXG4gICAgdGFyZ2V0LFxuICAgIGNoaWxkcmVuLFxufSkgPT4gKFxuICAgIDxUaGVtZXNQcm92aWRlciB0aGVtZXM9e09iamVjdC52YWx1ZXModGhlbWVzKX0gY29sb3JTY2hlbWVzPXtjb2xvclNjaGVtZXN9PlxuICAgICAgICA8VGhlbWVQcm92aWRlciB0aGVtZT17dGhlbWV9PlxuICAgICAgICAgICAgPENvbG9yU2NoZW1lUHJvdmlkZXIgY29sb3JTY2hlbWU9e2NvbG9yU2NoZW1lfT5cbiAgICAgICAgICAgICAgICA8Um9vdCB0YWc9e3RhZ30gdGFyZ2V0PXt0YXJnZXR9PlxuICAgICAgICAgICAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgICAgICAgICAgPC9Sb290PlxuICAgICAgICAgICAgPC9Db2xvclNjaGVtZVByb3ZpZGVyPlxuICAgICAgICA8L1RoZW1lUHJvdmlkZXI+XG4gICAgPC9UaGVtZXNQcm92aWRlcj5cbik7XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O01Bb0JhLFlBQVksR0FBMEIsQ0FBQyxFQUNoRCxLQUFLLEdBQUcsYUFBYSxFQUNyQixXQUFXLEdBQUcsb0JBQW9CLEVBQ2xDLEdBQUcsRUFDSCxNQUFNLEVBQ04sUUFBUSxHQUNYLE1BQ0csb0JBQUMsY0FBYyxJQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFlBQVksRUFBRSxZQUFZO0lBQ3JFLG9CQUFDLGFBQWEsSUFBQyxLQUFLLEVBQUUsS0FBSztRQUN2QixvQkFBQyxtQkFBbUIsSUFBQyxXQUFXLEVBQUUsV0FBVztZQUN6QyxvQkFBQyxJQUFJLElBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsTUFBTSxJQUN6QixRQUFRLENBQ04sQ0FDVyxDQUNWLENBQ0g7Ozs7In0=
@@ -0,0 +1 @@
1
+ @import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap');
@@ -0,0 +1,8 @@
1
+ import styleInject from '../../external/style-inject/dist/style-inject.es.js';
2
+
3
+ var css_248z = "@font-face {\n font-family: 'Roboto';\n font-style: normal;\n font-weight: 300;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/roboto/v29/KFOlCnqEu92Fr1MmSU5vAw.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Roboto';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/roboto/v29/KFOmCnqEu92Fr1Me5Q.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Roboto';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/roboto/v29/KFOlCnqEu92Fr1MmEU9vAw.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Roboto';\n font-style: normal;\n font-weight: 700;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/roboto/v29/KFOlCnqEu92Fr1MmWUlvAw.ttf) format('truetype');\n}\n";
4
+ var stylesheet="@font-face {\n font-family: 'Roboto';\n font-style: normal;\n font-weight: 300;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/roboto/v29/KFOlCnqEu92Fr1MmSU5vAw.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Roboto';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/roboto/v29/KFOmCnqEu92Fr1Me5Q.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Roboto';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/roboto/v29/KFOlCnqEu92Fr1MmEU9vAw.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Roboto';\n font-style: normal;\n font-weight: 700;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/roboto/v29/KFOlCnqEu92Fr1MmWUlvAw.ttf) format('truetype');\n}\n";
5
+ styleInject(css_248z);
6
+
7
+ export { css_248z as default, stylesheet };
8
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjpudWxsLCJzb3VyY2VzIjpbbnVsbF0sInNvdXJjZXNDb250ZW50IjpbbnVsbF0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHdCQUF3QixxREFBeUQ7QUFDakY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyJ9
@@ -0,0 +1,15 @@
1
+ @import 'reset/mixins.less';
2
+
3
+ .type-base() {
4
+ font-family: var(--text--type-base--font-family);
5
+ font-size: var(--text--size-base--font-size);
6
+ line-height: var(--text--size-base--line-height);
7
+ color: var(--text--scheme-base-normal--color);
8
+ -webkit-font-smoothing: antialiased;
9
+ text-rendering: optimizeLegibility;
10
+ }
11
+
12
+ .ds-root {
13
+ .reset();
14
+ .type-base();
15
+ }
@@ -0,0 +1,9 @@
1
+ import styleInject from '../external/style-inject/dist/style-inject.es.js';
2
+
3
+ var css_248z = ".keW0m5 {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n font-family: var(--text--type-base--font-family);\n font-size: var(--text--size-base--font-size);\n line-height: var(--text--size-base--line-height);\n color: var(--text--scheme-base-normal--color);\n -webkit-font-smoothing: antialiased;\n text-rendering: optimizeLegibility;\n}\n.keW0m5 * {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n.keW0m5 *:before,\n.keW0m5 *:after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n";
4
+ var styles = {"ds-root":"keW0m5"};
5
+ var stylesheet=".keW0m5 {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n font-family: var(--text--type-base--font-family);\n font-size: var(--text--size-base--font-size);\n line-height: var(--text--size-base--line-height);\n color: var(--text--scheme-base-normal--color);\n -webkit-font-smoothing: antialiased;\n text-rendering: optimizeLegibility;\n}\n.keW0m5 * {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n.keW0m5 *:before,\n.keW0m5 *:after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n";
6
+ styleInject(css_248z);
7
+
8
+ export { styles as default, stylesheet };
9
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjpudWxsLCJzb3VyY2VzIjpbbnVsbF0sInNvdXJjZXNDb250ZW50IjpbbnVsbF0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHdCQUF3QixrREFBc0Q7QUFDOUU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7In0=
@@ -0,0 +1,11 @@
1
+ .reset() {
2
+ box-sizing: border-box;
3
+
4
+ * {
5
+ box-sizing: border-box;
6
+ }
7
+ *:before,
8
+ *:after {
9
+ box-sizing: border-box;
10
+ }
11
+ }
@@ -0,0 +1,8 @@
1
+ import styleInject from '../../external/style-inject/dist/style-inject.es.js';
2
+
3
+ var css_248z = "";
4
+ var stylesheet="";
5
+ styleInject(css_248z);
6
+
7
+ export { css_248z as default, stylesheet };
8
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjpudWxsLCJzb3VyY2VzIjpbbnVsbF0sInNvdXJjZXNDb250ZW50IjpbbnVsbF0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHdCQUF3QixxREFBeUQ7QUFDakY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyJ9
@@ -0,0 +1,3 @@
1
+ import type { ThemeName } from '@preply/ds-core';
2
+ import type { ThemeInterface } from '@preply/ds-web-core';
3
+ export declare const themes: Record<ThemeName, ThemeInterface>;
@@ -0,0 +1,10 @@
1
+ import { theme } from '@preply/ds-theme-base-ui';
2
+ import { theme as theme$1 } from '@preply/ds-theme-preply-ui';
3
+
4
+ const themes = {
5
+ 'base-ui': theme,
6
+ 'preply-ui': theme$1,
7
+ };
8
+
9
+ export { themes };
10
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90aGVtZXMvaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBUaGVtZU5hbWUgfSBmcm9tICdAcHJlcGx5L2RzLWNvcmUnO1xuaW1wb3J0IHsgdGhlbWUgYXMgYmFzZVVJIH0gZnJvbSAnQHByZXBseS9kcy10aGVtZS1iYXNlLXVpJztcbmltcG9ydCB7IHRoZW1lIGFzIHByZXBseVVJIH0gZnJvbSAnQHByZXBseS9kcy10aGVtZS1wcmVwbHktdWknO1xuaW1wb3J0IHR5cGUgeyBUaGVtZUludGVyZmFjZSB9IGZyb20gJ0BwcmVwbHkvZHMtd2ViLWNvcmUnO1xuXG5leHBvcnQgY29uc3QgdGhlbWVzOiBSZWNvcmQ8VGhlbWVOYW1lLCBUaGVtZUludGVyZmFjZT4gPSB7XG4gICAgJ2Jhc2UtdWknOiBiYXNlVUksXG4gICAgJ3ByZXBseS11aSc6IHByZXBseVVJLFxufTtcbiJdLCJuYW1lcyI6WyJiYXNlVUkiLCJwcmVwbHlVSSJdLCJtYXBwaW5ncyI6Ijs7O01BS2EsTUFBTSxHQUFzQztJQUNyRCxTQUFTLEVBQUVBLEtBQU07SUFDakIsV0FBVyxFQUFFQyxPQUFROzs7OzsifQ==
package/package.json ADDED
@@ -0,0 +1,35 @@
1
+ {
2
+ "name": "@preply/ds-web-root",
3
+ "version": "0.4.3-beta.33+a69fa3c",
4
+ "publishConfig": {
5
+ "access": "public"
6
+ },
7
+ "main": "dist/index.js",
8
+ "files": [
9
+ "dist/"
10
+ ],
11
+ "sideEffects": false,
12
+ "browserslist": "last 2 versions",
13
+ "scripts": {
14
+ "clean": "rm -rf dist",
15
+ "lint": "run --top-level eslint --ext .js,.ts,.tsx,.mdx *.config.js src/",
16
+ "build": "NODE_ENV=production && run build:rollup",
17
+ "build:rollup": "run --top-level rollup -c rollup.config.js",
18
+ "dev": "run build && run build:rollup -w"
19
+ },
20
+ "dependencies": {
21
+ "@preply/ds-core": "^0.4.3-beta.33+a69fa3c",
22
+ "@preply/ds-theme-base-ui": "^0.4.3-beta.33+a69fa3c",
23
+ "@preply/ds-theme-preply-ui": "^0.4.3-beta.33+a69fa3c",
24
+ "@preply/ds-web-core": "^0.4.3-beta.33+a69fa3c"
25
+ },
26
+ "peerDependencies": {
27
+ "@preply/ds-core": "0.0.0",
28
+ "@preply/ds-theme-base-ui": "0.0.0",
29
+ "@preply/ds-theme-preply-ui": "0.0.0",
30
+ "@preply/ds-web-core": "0.0.0",
31
+ "react": "^16.8.3",
32
+ "react-dom": "^16.8.3"
33
+ },
34
+ "gitHead": "a69fa3c6173e20ebac8bedcb407596605ae8f00d"
35
+ }