@preply/ds-web-root 0.9.0 → 0.9.2
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/dist/root/components/Root.js +27 -9
- package/package.json +10 -10
|
@@ -12,26 +12,44 @@ const getTargetElement = (target) => {
|
|
|
12
12
|
}
|
|
13
13
|
return target !== ROOT_TARGET_NONE ? target : undefined;
|
|
14
14
|
};
|
|
15
|
+
const removeTargetClasses = (el, className) => {
|
|
16
|
+
const classNames = className.split(' ');
|
|
17
|
+
if (className && classNames.length) {
|
|
18
|
+
el.classList.remove(...classNames);
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
const addTargetClasses = (el, className) => {
|
|
22
|
+
const classNames = className.split(' ');
|
|
23
|
+
if (className && classNames.length) {
|
|
24
|
+
el.classList.add(...classNames);
|
|
25
|
+
}
|
|
26
|
+
};
|
|
15
27
|
const Root = ({ tag, target, children }) => {
|
|
16
28
|
const { theme } = useTheme();
|
|
17
29
|
const { colorScheme } = useColorScheme();
|
|
18
|
-
const [
|
|
30
|
+
const [previousClassName, setPreviousClassName] = useState('');
|
|
19
31
|
const Tag = tag || 'div';
|
|
20
|
-
const
|
|
21
|
-
|
|
32
|
+
const className = useMemo(() => {
|
|
33
|
+
const classNames = [
|
|
34
|
+
...theme.getClassName().split(' '),
|
|
35
|
+
...colorScheme.getClassName().split(' '),
|
|
36
|
+
];
|
|
37
|
+
return classNames.join(' ');
|
|
38
|
+
}, [colorScheme, theme]);
|
|
39
|
+
useClassNameExtract(className);
|
|
22
40
|
useEffect(() => {
|
|
23
41
|
const el = getTargetElement(target);
|
|
24
42
|
if (el) {
|
|
25
|
-
el
|
|
26
|
-
el
|
|
43
|
+
removeTargetClasses(el, previousClassName);
|
|
44
|
+
addTargetClasses(el, className);
|
|
27
45
|
}
|
|
28
|
-
|
|
29
|
-
}, [
|
|
46
|
+
setPreviousClassName(className);
|
|
47
|
+
}, [className, previousClassName, target]);
|
|
30
48
|
if (target) {
|
|
31
49
|
return React.createElement(React.Fragment, null, children);
|
|
32
50
|
}
|
|
33
|
-
return React.createElement(Tag, { className:
|
|
51
|
+
return React.createElement(Tag, { className: className }, children);
|
|
34
52
|
};
|
|
35
53
|
|
|
36
54
|
export { Root };
|
|
37
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUm9vdC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Jvb3QvY29tcG9uZW50cy9Sb290LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VDbGFzc05hbWVFeHRyYWN0LCB1c2VDb2xvclNjaGVtZSwgdXNlVGhlbWUgfSBmcm9tICdAcHJlcGx5L2RzLXdlYi1jb3JlJztcbmltcG9ydCBSZWFjdCwgeyBGQywgdXNlRWZmZWN0LCB1c2VNZW1vLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcblxuY29uc3QgUk9PVF9UQVJHRVRfTk9ORSA9ICdub25lJztcblxuZXhwb3J0IHR5cGUgUm9vdFRhcmdldCA9IHN0cmluZyB8IEVsZW1lbnQ7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUm9vdFByb3BzIHtcbiAgICB0YWc/OiBrZXlvZiBKU1guSW50cmluc2ljRWxlbWVudHM7XG4gICAgdGFyZ2V0PzogUm9vdFRhcmdldDtcbn1cblxuY29uc3QgZ2V0VGFyZ2V0RWxlbWVudCA9ICh0YXJnZXQ/
|
|
55
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUm9vdC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Jvb3QvY29tcG9uZW50cy9Sb290LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VDbGFzc05hbWVFeHRyYWN0LCB1c2VDb2xvclNjaGVtZSwgdXNlVGhlbWUgfSBmcm9tICdAcHJlcGx5L2RzLXdlYi1jb3JlJztcbmltcG9ydCBSZWFjdCwgeyBGQywgdXNlRWZmZWN0LCB1c2VNZW1vLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcblxuY29uc3QgUk9PVF9UQVJHRVRfTk9ORSA9ICdub25lJztcblxuZXhwb3J0IHR5cGUgUm9vdFRhcmdldCA9IHN0cmluZyB8IEVsZW1lbnQ7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUm9vdFByb3BzIHtcbiAgICB0YWc/OiBrZXlvZiBKU1guSW50cmluc2ljRWxlbWVudHM7XG4gICAgdGFyZ2V0PzogUm9vdFRhcmdldDtcbn1cblxuY29uc3QgZ2V0VGFyZ2V0RWxlbWVudCA9ICh0YXJnZXQ/OiBzdHJpbmcgfCBFbGVtZW50KTogRWxlbWVudCB8IHVuZGVmaW5lZCA9PiB7XG4gICAgaWYgKHR5cGVvZiB0YXJnZXQgPT09ICdzdHJpbmcnICYmIHRhcmdldCAhPT0gUk9PVF9UQVJHRVRfTk9ORSkge1xuICAgICAgICBjb25zdCBlbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRhcmdldCk7XG4gICAgICAgIGlmICghZWwpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVGFyZ2V0IGVsZW1lbnQgbm90IGZvdW5kOiBcIiR7dGFyZ2V0fVwiYCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGVsO1xuICAgIH1cbiAgICByZXR1cm4gdGFyZ2V0ICE9PSBST09UX1RBUkdFVF9OT05FID8gdGFyZ2V0IDogdW5kZWZpbmVkO1xufTtcblxuY29uc3QgcmVtb3ZlVGFyZ2V0Q2xhc3NlcyA9IChlbDogRWxlbWVudCwgY2xhc3NOYW1lKSA9PiB7XG4gICAgY29uc3QgY2xhc3NOYW1lcyA9IGNsYXNzTmFtZS5zcGxpdCgnICcpO1xuICAgIGlmIChjbGFzc05hbWUgJiYgY2xhc3NOYW1lcy5sZW5ndGgpIHtcbiAgICAgICAgZWwuY2xhc3NMaXN0LnJlbW92ZSguLi5jbGFzc05hbWVzKTtcbiAgICB9XG59O1xuXG5jb25zdCBhZGRUYXJnZXRDbGFzc2VzID0gKGVsOiBFbGVtZW50LCBjbGFzc05hbWUpID0+IHtcbiAgICBjb25zdCBjbGFzc05hbWVzID0gY2xhc3NOYW1lLnNwbGl0KCcgJyk7XG4gICAgaWYgKGNsYXNzTmFtZSAmJiBjbGFzc05hbWVzLmxlbmd0aCkge1xuICAgICAgICBlbC5jbGFzc0xpc3QuYWRkKC4uLmNsYXNzTmFtZXMpO1xuICAgIH1cbn07XG5cbmV4cG9ydCBjb25zdCBSb290OiBGQzxSb290UHJvcHM+ID0gKHsgdGFnLCB0YXJnZXQsIGNoaWxkcmVuIH0pID0+IHtcbiAgICBjb25zdCB7IHRoZW1lIH0gPSB1c2VUaGVtZSgpO1xuICAgIGNvbnN0IHsgY29sb3JTY2hlbWUgfSA9IHVzZUNvbG9yU2NoZW1lKCk7XG4gICAgY29uc3QgW3ByZXZpb3VzQ2xhc3NOYW1lLCBzZXRQcmV2aW91c0NsYXNzTmFtZV0gPSB1c2VTdGF0ZTxzdHJpbmc+KCcnKTtcblxuICAgIGNvbnN0IFRhZyA9IHRhZyB8fCAnZGl2JztcbiAgICBjb25zdCBjbGFzc05hbWUgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgICAgY29uc3QgY2xhc3NOYW1lcyA9IFtcbiAgICAgICAgICAgIC4uLnRoZW1lLmdldENsYXNzTmFtZSgpLnNwbGl0KCcgJyksXG4gICAgICAgICAgICAuLi5jb2xvclNjaGVtZS5nZXRDbGFzc05hbWUoKS5zcGxpdCgnICcpLFxuICAgICAgICBdO1xuICAgICAgICByZXR1cm4gY2xhc3NOYW1lcy5qb2luKCcgJyk7XG4gICAgfSwgW2NvbG9yU2NoZW1lLCB0aGVtZV0pO1xuXG4gICAgdXNlQ2xhc3NOYW1lRXh0cmFjdChjbGFzc05hbWUpO1xuXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgY29uc3QgZWwgPSBnZXRUYXJnZXRFbGVtZW50KHRhcmdldCk7XG4gICAgICAgIGlmIChlbCkge1xuICAgICAgICAgICAgcmVtb3ZlVGFyZ2V0Q2xhc3NlcyhlbCwgcHJldmlvdXNDbGFzc05hbWUpO1xuICAgICAgICAgICAgYWRkVGFyZ2V0Q2xhc3NlcyhlbCwgY2xhc3NOYW1lKTtcbiAgICAgICAgfVxuICAgICAgICBzZXRQcmV2aW91c0NsYXNzTmFtZShjbGFzc05hbWUpO1xuICAgIH0sIFtjbGFzc05hbWUsIHByZXZpb3VzQ2xhc3NOYW1lLCB0YXJnZXRdKTtcblxuICAgIGlmICh0YXJnZXQpIHtcbiAgICAgICAgcmV0dXJuIDw+e2NoaWxkcmVufTwvPjtcbiAgICB9XG5cbiAgICByZXR1cm4gPFRhZyBjbGFzc05hbWU9e2NsYXNzTmFtZX0+e2NoaWxkcmVufTwvVGFnPjtcbn07XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBR0EsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLENBQUM7QUFTaEMsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLE1BQXlCO0lBQy9DLElBQUksT0FBTyxNQUFNLEtBQUssUUFBUSxJQUFJLE1BQU0sS0FBSyxnQkFBZ0IsRUFBRTtRQUMzRCxNQUFNLEVBQUUsR0FBRyxRQUFRLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNDLElBQUksQ0FBQyxFQUFFLEVBQUU7WUFDTCxNQUFNLElBQUksS0FBSyxDQUFDLDhCQUE4QixNQUFNLEdBQUcsQ0FBQyxDQUFDO1NBQzVEO1FBQ0QsT0FBTyxFQUFFLENBQUM7S0FDYjtJQUNELE9BQU8sTUFBTSxLQUFLLGdCQUFnQixHQUFHLE1BQU0sR0FBRyxTQUFTLENBQUM7QUFDNUQsQ0FBQyxDQUFDO0FBRUYsTUFBTSxtQkFBbUIsR0FBRyxDQUFDLEVBQVcsRUFBRSxTQUFTO0lBQy9DLE1BQU0sVUFBVSxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDeEMsSUFBSSxTQUFTLElBQUksVUFBVSxDQUFDLE1BQU0sRUFBRTtRQUNoQyxFQUFFLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxHQUFHLFVBQVUsQ0FBQyxDQUFDO0tBQ3RDO0FBQ0wsQ0FBQyxDQUFDO0FBRUYsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLEVBQVcsRUFBRSxTQUFTO0lBQzVDLE1BQU0sVUFBVSxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDeEMsSUFBSSxTQUFTLElBQUksVUFBVSxDQUFDLE1BQU0sRUFBRTtRQUNoQyxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxDQUFDO0tBQ25DO0FBQ0wsQ0FBQyxDQUFDO01BRVcsSUFBSSxHQUFrQixDQUFDLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUU7SUFDekQsTUFBTSxFQUFFLEtBQUssRUFBRSxHQUFHLFFBQVEsRUFBRSxDQUFDO0lBQzdCLE1BQU0sRUFBRSxXQUFXLEVBQUUsR0FBRyxjQUFjLEVBQUUsQ0FBQztJQUN6QyxNQUFNLENBQUMsaUJBQWlCLEVBQUUsb0JBQW9CLENBQUMsR0FBRyxRQUFRLENBQVMsRUFBRSxDQUFDLENBQUM7SUFFdkUsTUFBTSxHQUFHLEdBQUcsR0FBRyxJQUFJLEtBQUssQ0FBQztJQUN6QixNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUM7UUFDdEIsTUFBTSxVQUFVLEdBQUc7WUFDZixHQUFHLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDO1lBQ2xDLEdBQUcsV0FBVyxDQUFDLFlBQVksRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7U0FDM0MsQ0FBQztRQUNGLE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztLQUMvQixFQUFFLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFFekIsbUJBQW1CLENBQUMsU0FBUyxDQUFDLENBQUM7SUFFL0IsU0FBUyxDQUFDO1FBQ04sTUFBTSxFQUFFLEdBQUcsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDcEMsSUFBSSxFQUFFLEVBQUU7WUFDSixtQkFBbUIsQ0FBQyxFQUFFLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztZQUMzQyxnQkFBZ0IsQ0FBQyxFQUFFLEVBQUUsU0FBUyxDQUFDLENBQUM7U0FDbkM7UUFDRCxvQkFBb0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztLQUNuQyxFQUFFLENBQUMsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFFM0MsSUFBSSxNQUFNLEVBQUU7UUFDUixPQUFPLDBDQUFHLFFBQVEsQ0FBSSxDQUFDO0tBQzFCO0lBRUQsT0FBTyxvQkFBQyxHQUFHLElBQUMsU0FBUyxFQUFFLFNBQVMsSUFBRyxRQUFRLENBQU8sQ0FBQztBQUN2RDs7OzsifQ==
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@preply/ds-web-root",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.2",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
@@ -18,18 +18,18 @@
|
|
|
18
18
|
"dev": "run build:rollup -w"
|
|
19
19
|
},
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@preply/ds-core": "0.9.
|
|
22
|
-
"@preply/ds-theme-base-ui": "0.9.
|
|
23
|
-
"@preply/ds-theme-preply-ui": "0.9.
|
|
24
|
-
"@preply/ds-web-core": "0.9.
|
|
21
|
+
"@preply/ds-core": "0.9.2",
|
|
22
|
+
"@preply/ds-theme-base-ui": "0.9.2",
|
|
23
|
+
"@preply/ds-theme-preply-ui": "0.9.2",
|
|
24
|
+
"@preply/ds-web-core": "0.9.2"
|
|
25
25
|
},
|
|
26
26
|
"peerDependencies": {
|
|
27
|
-
"@preply/ds-core": "0.9.
|
|
28
|
-
"@preply/ds-theme-base-ui": "0.9.
|
|
29
|
-
"@preply/ds-theme-preply-ui": "0.9.
|
|
30
|
-
"@preply/ds-web-core": "0.9.
|
|
27
|
+
"@preply/ds-core": "0.9.2",
|
|
28
|
+
"@preply/ds-theme-base-ui": "0.9.2",
|
|
29
|
+
"@preply/ds-theme-preply-ui": "0.9.2",
|
|
30
|
+
"@preply/ds-web-core": "0.9.2",
|
|
31
31
|
"react": "^16.8.3",
|
|
32
32
|
"react-dom": "^16.8.3"
|
|
33
33
|
},
|
|
34
|
-
"gitHead": "
|
|
34
|
+
"gitHead": "164b0db2143666da9b39e1b921d8921f7f7d810e"
|
|
35
35
|
}
|