@unoff/ui 1.21.2 → 1.21.3
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
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
    
|
|
2
|
+

|
|
3
3
|
|
|
4
4
|
# Unoff UI
|
|
5
5
|
|
package/dist/assets/Bar.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@charset "UTF-8";:root[data-theme=penpot]{--bar-background-color: transparent;--bar-border-color: transparent;--bar-border-width: var(--size-null);--bar-gap: var(--size-pos-xxsmall);--bar-height-compact: var(--size-pos-medium);--bar-min-height: var(--size-pos-large);--bar-padding-default-bottom: var(--size-null);--bar-padding-default-left: var(--size-pos-xsmall);--bar-padding-default-right: var(--size-pos-xsmall);--bar-padding-default-top: var(--size-null);--bar-padding-mobile-bottom: var(--size-pos-xxxsmall);--bar-padding-mobile-left: var(--size-pos-xsmall);--bar-padding-mobile-right: var(--size-pos-xsmall);--bar-padding-mobile-top: var(--size-pos-xxxsmall)}:root[data-theme=sketch]{--bar-background-color: transparent;--bar-border-color: var(--sketch-color-border-primary);--bar-border-width: var(--size-pos-unit);--bar-gap: var(--size-pos-xxsmall);--bar-height-compact: var(--size-pos-medium);--bar-min-height: var(--size-pos-large);--bar-padding-default-bottom: var(--size-null);--bar-padding-default-left: var(--size-pos-xsmall);--bar-padding-default-right: var(--size-pos-xsmall);--bar-padding-default-top: var(--size-null);--bar-padding-mobile-bottom: var(--size-pos-xxxsmall);--bar-padding-mobile-left: var(--size-pos-xsmall);--bar-padding-mobile-right: var(--size-pos-xsmall);--bar-padding-mobile-top: var(--size-pos-xxxsmall)}:root[data-theme=figma]{--bar-background-color: transparent;--bar-border-color: var(--figma-color-border);--bar-border-width: var(--size-pos-unit);--bar-gap: var(--size-pos-xxsmall);--bar-height-compact: var(--size-pos-medium);--bar-min-height: var(--size-pos-large);--bar-padding-default-bottom: var(--size-null);--bar-padding-default-left: var(--size-pos-xsmall);--bar-padding-default-right: var(--size-pos-xsmall);--bar-padding-default-top: var(--size-null);--bar-padding-mobile-bottom: var(--size-pos-xxxsmall);--bar-padding-mobile-left: var(--size-pos-xsmall);--bar-padding-mobile-right: var(--size-pos-xsmall);--bar-padding-mobile-top: var(--size-pos-xxxsmall)}:root[data-theme=framer]{--bar-background-color: transparent;--bar-border-color: var(--framer-color-divider);--bar-border-width: var(--size-pos-unit);--bar-gap: var(--size-pos-xxsmall);--bar-height-compact: var(--size-pos-medium);--bar-min-height: var(--size-pos-xlarge);--bar-padding-default-bottom: var(--size-null);--bar-padding-default-left: var(--size-pos-xsmall);--bar-padding-default-right: var(--size-pos-xsmall);--bar-padding-default-top: var(--size-null);--bar-padding-mobile-bottom: var(--size-pos-xxxsmall);--bar-padding-mobile-left: var(--size-pos-xsmall);--bar-padding-mobile-right: var(--size-pos-xsmall);--bar-padding-mobile-top: var(--size-pos-xxxsmall)}.bar{display:flex;position:relative;justify-content:space-between;align-items:center;gap:var(--bar-gap);box-sizing:border-box;background-color:var(--bar-background-color);padding:var(--bar-padding);min-height:var(--bar-min-height)}.bar{--bar-padding: var(--bar-padding-default-top) var(--bar-padding-default-right) var(--bar-padding-default-bottom) var(--bar-padding-default-left)}.bar.bar--compact{height:var(--bar-height-compact)}.bar.bar--text-only{align-items:baseline}.bar.bar--centered .bar__left,.bar.bar--centered .bar__solo,.bar.bar--centered.bar--inverted .bar__right,.bar.bar--centered.bar--inverted .bar__solo{display:flex;justify-content:center}.bar__left{flex:1}.bar__right{flex:none}.bar__solo{flex:1}.bar.bar--inverted .bar__left{flex:none}.bar.bar--inverted .bar__right{flex:1}.bar.bar--clip-left .bar__left,.bar.bar--clip-right .bar__right,.bar.bar--clip-solo .bar__solo{overflow:hidden}@media(max-width:460px){.bar--reflow{flex-direction:column;--bar-padding: var(--bar-padding-mobile-top) var(--bar-padding-mobile-right) var(--bar-padding-mobile-bottom) var(--bar-padding-mobile-left)}}
|
|
1
|
+
@charset "UTF-8";:root[data-theme=penpot]{--bar-background-color: transparent;--bar-border-color: transparent;--bar-border-width: var(--size-null);--bar-gap: var(--size-pos-xxsmall);--bar-height-compact: var(--size-pos-medium);--bar-min-height: var(--size-pos-large);--bar-padding-default-bottom: var(--size-null);--bar-padding-default-left: var(--size-pos-xsmall);--bar-padding-default-right: var(--size-pos-xsmall);--bar-padding-default-top: var(--size-null);--bar-padding-mobile-bottom: var(--size-pos-xxxsmall);--bar-padding-mobile-left: var(--size-pos-xsmall);--bar-padding-mobile-right: var(--size-pos-xsmall);--bar-padding-mobile-top: var(--size-pos-xxxsmall)}:root[data-theme=sketch]{--bar-background-color: transparent;--bar-border-color: var(--sketch-color-border-primary);--bar-border-width: var(--size-pos-unit);--bar-gap: var(--size-pos-xxsmall);--bar-height-compact: var(--size-pos-medium);--bar-min-height: var(--size-pos-large);--bar-padding-default-bottom: var(--size-null);--bar-padding-default-left: var(--size-pos-xsmall);--bar-padding-default-right: var(--size-pos-xsmall);--bar-padding-default-top: var(--size-null);--bar-padding-mobile-bottom: var(--size-pos-xxxsmall);--bar-padding-mobile-left: var(--size-pos-xsmall);--bar-padding-mobile-right: var(--size-pos-xsmall);--bar-padding-mobile-top: var(--size-pos-xxxsmall)}:root[data-theme=figma]{--bar-background-color: transparent;--bar-border-color: var(--figma-color-border);--bar-border-width: var(--size-pos-unit);--bar-gap: var(--size-pos-xxsmall);--bar-height-compact: var(--size-pos-medium);--bar-min-height: var(--size-pos-large);--bar-padding-default-bottom: var(--size-null);--bar-padding-default-left: var(--size-pos-xsmall);--bar-padding-default-right: var(--size-pos-xsmall);--bar-padding-default-top: var(--size-null);--bar-padding-mobile-bottom: var(--size-pos-xxxsmall);--bar-padding-mobile-left: var(--size-pos-xsmall);--bar-padding-mobile-right: var(--size-pos-xsmall);--bar-padding-mobile-top: var(--size-pos-xxxsmall)}:root[data-theme=framer]{--bar-background-color: transparent;--bar-border-color: var(--framer-color-divider);--bar-border-width: var(--size-pos-unit);--bar-gap: var(--size-pos-xxsmall);--bar-height-compact: var(--size-pos-medium);--bar-min-height: var(--size-pos-xlarge);--bar-padding-default-bottom: var(--size-null);--bar-padding-default-left: var(--size-pos-xsmall);--bar-padding-default-right: var(--size-pos-xsmall);--bar-padding-default-top: var(--size-null);--bar-padding-mobile-bottom: var(--size-pos-xxxsmall);--bar-padding-mobile-left: var(--size-pos-xsmall);--bar-padding-mobile-right: var(--size-pos-xsmall);--bar-padding-mobile-top: var(--size-pos-xxxsmall)}.bar{display:flex;position:relative;justify-content:space-between;align-items:center;gap:var(--bar-gap);box-sizing:border-box;background-color:var(--bar-background-color);padding:var(--bar-padding);min-height:var(--bar-min-height)}.bar{--bar-padding: var(--bar-padding-default-top) var(--bar-padding-default-right) var(--bar-padding-default-bottom) var(--bar-padding-default-left)}.bar.bar--compact{height:var(--bar-height-compact)}.bar.bar--text-only{align-items:baseline}.bar.bar--centered .bar__left,.bar.bar--centered .bar__solo,.bar.bar--centered.bar--inverted .bar__right,.bar.bar--centered.bar--inverted .bar__solo{display:flex;justify-content:center}.bar__left{flex:1}.bar__right{flex:none}.bar__solo{flex:1}.bar.bar--inverted .bar__left{flex:none}.bar.bar--inverted .bar__right{flex:1}.bar.bar--clip-left .bar__left,.bar.bar--clip-right .bar__right,.bar.bar--clip-solo .bar__solo{overflow:hidden}.bar.bar--vertical{flex-direction:column;align-items:stretch;min-height:unset;min-width:var(--bar-min-height)}.bar.bar--vertical{--bar-padding: var(--bar-padding-default-left) var(--bar-padding-default-top) var(--bar-padding-default-right) var(--bar-padding-default-bottom)}.bar.bar--vertical .bar__left{flex:1}.bar.bar--vertical .bar__right{flex:none}.bar.bar--vertical .bar__solo{flex:1}.bar.bar--vertical.bar--inverted .bar__left{flex:none}.bar.bar--vertical.bar--inverted .bar__right{flex:1}.bar.bar--vertical.bar--centered .bar__left,.bar.bar--vertical.bar--centered .bar__solo,.bar.bar--vertical.bar--centered.bar--inverted .bar__right,.bar.bar--vertical.bar--centered.bar--inverted .bar__solo{display:flex;align-items:center}@media(max-width:460px){.bar--reflow{flex-direction:column;--bar-padding: var(--bar-padding-mobile-top) var(--bar-padding-mobile-right) var(--bar-padding-mobile-bottom) var(--bar-padding-mobile-left)}.bar--reflow.bar--vertical{--bar-padding: var(--bar-padding-mobile-left) var(--bar-padding-mobile-top) var(--bar-padding-mobile-right) var(--bar-padding-mobile-bottom)}}
|
|
@@ -53,6 +53,11 @@ export interface BarProps {
|
|
|
53
53
|
* @default false
|
|
54
54
|
*/
|
|
55
55
|
shouldReflow?: boolean;
|
|
56
|
+
/**
|
|
57
|
+
* Whether to use a vertical (column) layout
|
|
58
|
+
* @default false
|
|
59
|
+
*/
|
|
60
|
+
isVertical?: boolean;
|
|
56
61
|
}
|
|
57
62
|
export default class Bar extends React.Component<BarProps> {
|
|
58
63
|
static defaultProps: Partial<BarProps>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Bar.d.ts","sourceRoot":"","sources":["../../../../src/components/slots/bar/Bar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,YAAY,CAAA;AAEnB,MAAM,WAAW,QAAQ;IACvB;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAA;IACX;;OAEG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,IAAI,CAAA;IACxC;;OAEG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,IAAI,CAAA;IACxC;;OAEG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,IAAI,CAAA;IACzC;;OAEG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC,KAAK,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC,CAAA;IACnD;;OAEG;IACH,IAAI,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,CAAA;IACvC;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"Bar.d.ts","sourceRoot":"","sources":["../../../../src/components/slots/bar/Bar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,YAAY,CAAA;AAEnB,MAAM,WAAW,QAAQ;IACvB;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAA;IACX;;OAEG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,IAAI,CAAA;IACxC;;OAEG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,IAAI,CAAA;IACxC;;OAEG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,IAAI,CAAA;IACzC;;OAEG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC,KAAK,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC,CAAA;IACnD;;OAEG;IACH,IAAI,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,CAAA;IACvC;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB;AAED,MAAM,CAAC,OAAO,OAAO,GAAI,SAAQ,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC;IACxD,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,CAOrC;IAED,SAAS,GACP,aAAa,KAAK,CAAC,KAAK,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC,GAAG,SAAS;;MAcpE;IAED,MAAM;CAiFP"}
|
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
import '../../../assets/Bar.css';
|
|
2
|
-
import { jsx as t, jsxs as
|
|
3
|
-
import
|
|
4
|
-
import { t as
|
|
5
|
-
class
|
|
2
|
+
import { jsx as t, jsxs as T } from "react/jsx-runtime";
|
|
3
|
+
import g from "react";
|
|
4
|
+
import { t as x } from "../../../do-classnames-DSDFCvzy.js";
|
|
5
|
+
class N extends g.Component {
|
|
6
6
|
static defaultProps = {
|
|
7
7
|
isCompact: !1,
|
|
8
8
|
isOnlyText: !1,
|
|
9
9
|
isInverted: !1,
|
|
10
10
|
isCentered: !1,
|
|
11
|
-
shouldReflow: !1
|
|
11
|
+
shouldReflow: !1,
|
|
12
|
+
isVertical: !1
|
|
12
13
|
};
|
|
13
14
|
setBorder = (s) => {
|
|
14
15
|
const e = "var(--bar-border-width) solid var(--bar-border-color)", r = {};
|
|
15
|
-
return s && s.forEach((
|
|
16
|
-
|
|
16
|
+
return s && s.forEach((l) => {
|
|
17
|
+
l === "TOP" && (r.borderTop = e), l === "LEFT" && (r.borderLeft = e), l === "BOTTOM" && (r.borderBottom = e), l === "RIGHT" && (r.borderRight = e);
|
|
17
18
|
}), r;
|
|
18
19
|
};
|
|
19
20
|
render() {
|
|
@@ -21,27 +22,29 @@ class C extends T.Component {
|
|
|
21
22
|
id: s,
|
|
22
23
|
isCompact: e,
|
|
23
24
|
isOnlyText: r,
|
|
24
|
-
isInverted:
|
|
25
|
+
isInverted: l,
|
|
25
26
|
isCentered: p,
|
|
26
27
|
shouldReflow: h,
|
|
28
|
+
isVertical: u,
|
|
27
29
|
border: c,
|
|
28
30
|
padding: n,
|
|
29
|
-
clip:
|
|
31
|
+
clip: o,
|
|
30
32
|
leftPartSlot: a,
|
|
31
33
|
soloPartSlot: i,
|
|
32
34
|
rightPartSlot: d
|
|
33
|
-
} = this.props, f = i != null,
|
|
34
|
-
if (!f && !
|
|
35
|
-
const b =
|
|
35
|
+
} = this.props, f = i != null, m = a != null, v = d != null;
|
|
36
|
+
if (!f && !m && !v) return null;
|
|
37
|
+
const b = x([
|
|
36
38
|
"bar",
|
|
37
39
|
e && "bar--compact",
|
|
38
40
|
r && "bar--text-only",
|
|
39
|
-
|
|
41
|
+
l && "bar--inverted",
|
|
40
42
|
p && "bar--centered",
|
|
41
43
|
h && "bar--reflow",
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
44
|
+
u && "bar--vertical",
|
|
45
|
+
o && o.includes("LEFT") && "bar--clip-left",
|
|
46
|
+
o && o.includes("RIGHT") && "bar--clip-right",
|
|
47
|
+
o && o.includes("SOLO") && "bar--clip-solo"
|
|
45
48
|
]);
|
|
46
49
|
return f ? /* @__PURE__ */ t(
|
|
47
50
|
"div",
|
|
@@ -62,7 +65,7 @@ class C extends T.Component {
|
|
|
62
65
|
}
|
|
63
66
|
)
|
|
64
67
|
}
|
|
65
|
-
) : /* @__PURE__ */
|
|
68
|
+
) : /* @__PURE__ */ T(
|
|
66
69
|
"div",
|
|
67
70
|
{
|
|
68
71
|
id: s,
|
|
@@ -95,6 +98,6 @@ class C extends T.Component {
|
|
|
95
98
|
}
|
|
96
99
|
}
|
|
97
100
|
export {
|
|
98
|
-
|
|
101
|
+
N as default
|
|
99
102
|
};
|
|
100
103
|
//# sourceMappingURL=Bar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Bar.js","sources":["../../../../src/components/slots/bar/Bar.tsx"],"sourcesContent":["import React from 'react'\nimport { doClassnames } from '@unoff/utils'\nimport './bar.scss'\n\nexport interface BarProps {\n /**\n * HTML id attribute\n */\n id?: string\n /**\n * Content for the left section\n */\n leftPartSlot?: React.ReactElement | null\n /**\n * Content for the center section (when used alone)\n */\n soloPartSlot?: React.ReactElement | null\n /**\n * Content for the right section\n */\n rightPartSlot?: React.ReactElement | null\n /**\n * Array of border positions\n */\n border?: Array<'TOP' | 'LEFT' | 'BOTTOM' | 'RIGHT'>\n /**\n * Array of clip positions (for visual effects)\n */\n clip?: Array<'LEFT' | 'RIGHT' | 'SOLO'>\n /**\n * Custom padding value\n */\n padding?: string\n /**\n * Whether to use compact spacing\n * @default false\n */\n isCompact?: boolean\n /**\n * Whether the bar contains only text\n * @default false\n */\n isOnlyText?: boolean\n /**\n * Whether to use inverted color scheme\n * @default false\n */\n isInverted?: boolean\n /**\n * Whether to center the content\n * @default false\n */\n isCentered?: boolean\n /**\n * Whether to reflow on small screens\n * @default false\n */\n shouldReflow?: boolean\n}\n\nexport default class Bar extends React.Component<BarProps> {\n static defaultProps: Partial<BarProps> = {\n isCompact: false,\n isOnlyText: false,\n isInverted: false,\n isCentered: false,\n shouldReflow: false,\n }\n\n setBorder = (\n orientation: Array<'TOP' | 'LEFT' | 'BOTTOM' | 'RIGHT'> | undefined\n ) => {\n const property =\n 'var(--bar-border-width) solid var(--bar-border-color)' as React.CSSProperties\n const styles: { [key: string]: React.CSSProperties } = {}\n\n if (!orientation) return styles\n orientation.forEach((entry) => {\n if (entry === 'TOP') styles.borderTop = property\n if (entry === 'LEFT') styles.borderLeft = property\n if (entry === 'BOTTOM') styles.borderBottom = property\n if (entry === 'RIGHT') styles.borderRight = property\n })\n return styles\n }\n\n render() {\n const {\n id,\n isCompact,\n isOnlyText,\n isInverted,\n isCentered,\n shouldReflow,\n border,\n padding,\n clip,\n leftPartSlot,\n soloPartSlot,\n rightPartSlot,\n } = this.props\n\n const hasValidSolo = soloPartSlot !== undefined && soloPartSlot !== null\n const hasValidLeft = leftPartSlot !== undefined && leftPartSlot !== null\n const hasValidRight = rightPartSlot !== undefined && rightPartSlot !== null\n\n if (!hasValidSolo && !hasValidLeft && !hasValidRight) return null\n\n const barClassName = doClassnames([\n 'bar',\n isCompact && 'bar--compact',\n isOnlyText && 'bar--text-only',\n isInverted && 'bar--inverted',\n isCentered && 'bar--centered',\n shouldReflow && 'bar--reflow',\n clip && clip.includes('LEFT') && 'bar--clip-left',\n clip && clip.includes('RIGHT') && 'bar--clip-right',\n clip && clip.includes('SOLO') && 'bar--clip-solo',\n ])\n\n if (hasValidSolo)\n return (\n <div\n id={id}\n className={barClassName}\n style={{\n ...this.setBorder(border),\n padding: padding,\n }}\n role=\"toolbar\"\n >\n <div\n className=\"bar__solo\"\n role=\"group\"\n >\n {soloPartSlot}\n </div>\n </div>\n )\n\n return (\n <div\n id={id}\n className={barClassName}\n style={{\n ...this.setBorder(border),\n padding: padding,\n }}\n role=\"toolbar\"\n >\n <div\n className=\"bar__left\"\n role=\"group\"\n >\n {leftPartSlot}\n </div>\n <div\n className=\"bar__right\"\n role=\"group\"\n >\n {rightPartSlot}\n </div>\n </div>\n )\n }\n}\n"],"names":["Bar","React","orientation","property","styles","entry","id","isCompact","isOnlyText","isInverted","isCentered","shouldReflow","border","padding","clip","leftPartSlot","soloPartSlot","rightPartSlot","hasValidSolo","hasValidLeft","hasValidRight","barClassName","doClassnames","jsx","jsxs"],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"Bar.js","sources":["../../../../src/components/slots/bar/Bar.tsx"],"sourcesContent":["import React from 'react'\nimport { doClassnames } from '@unoff/utils'\nimport './bar.scss'\n\nexport interface BarProps {\n /**\n * HTML id attribute\n */\n id?: string\n /**\n * Content for the left section\n */\n leftPartSlot?: React.ReactElement | null\n /**\n * Content for the center section (when used alone)\n */\n soloPartSlot?: React.ReactElement | null\n /**\n * Content for the right section\n */\n rightPartSlot?: React.ReactElement | null\n /**\n * Array of border positions\n */\n border?: Array<'TOP' | 'LEFT' | 'BOTTOM' | 'RIGHT'>\n /**\n * Array of clip positions (for visual effects)\n */\n clip?: Array<'LEFT' | 'RIGHT' | 'SOLO'>\n /**\n * Custom padding value\n */\n padding?: string\n /**\n * Whether to use compact spacing\n * @default false\n */\n isCompact?: boolean\n /**\n * Whether the bar contains only text\n * @default false\n */\n isOnlyText?: boolean\n /**\n * Whether to use inverted color scheme\n * @default false\n */\n isInverted?: boolean\n /**\n * Whether to center the content\n * @default false\n */\n isCentered?: boolean\n /**\n * Whether to reflow on small screens\n * @default false\n */\n shouldReflow?: boolean\n /**\n * Whether to use a vertical (column) layout\n * @default false\n */\n isVertical?: boolean\n}\n\nexport default class Bar extends React.Component<BarProps> {\n static defaultProps: Partial<BarProps> = {\n isCompact: false,\n isOnlyText: false,\n isInverted: false,\n isCentered: false,\n shouldReflow: false,\n isVertical: false,\n }\n\n setBorder = (\n orientation: Array<'TOP' | 'LEFT' | 'BOTTOM' | 'RIGHT'> | undefined\n ) => {\n const property =\n 'var(--bar-border-width) solid var(--bar-border-color)' as React.CSSProperties\n const styles: { [key: string]: React.CSSProperties } = {}\n\n if (!orientation) return styles\n orientation.forEach((entry) => {\n if (entry === 'TOP') styles.borderTop = property\n if (entry === 'LEFT') styles.borderLeft = property\n if (entry === 'BOTTOM') styles.borderBottom = property\n if (entry === 'RIGHT') styles.borderRight = property\n })\n return styles\n }\n\n render() {\n const {\n id,\n isCompact,\n isOnlyText,\n isInverted,\n isCentered,\n shouldReflow,\n isVertical,\n border,\n padding,\n clip,\n leftPartSlot,\n soloPartSlot,\n rightPartSlot,\n } = this.props\n\n const hasValidSolo = soloPartSlot !== undefined && soloPartSlot !== null\n const hasValidLeft = leftPartSlot !== undefined && leftPartSlot !== null\n const hasValidRight = rightPartSlot !== undefined && rightPartSlot !== null\n\n if (!hasValidSolo && !hasValidLeft && !hasValidRight) return null\n\n const barClassName = doClassnames([\n 'bar',\n isCompact && 'bar--compact',\n isOnlyText && 'bar--text-only',\n isInverted && 'bar--inverted',\n isCentered && 'bar--centered',\n shouldReflow && 'bar--reflow',\n isVertical && 'bar--vertical',\n clip && clip.includes('LEFT') && 'bar--clip-left',\n clip && clip.includes('RIGHT') && 'bar--clip-right',\n clip && clip.includes('SOLO') && 'bar--clip-solo',\n ])\n\n if (hasValidSolo)\n return (\n <div\n id={id}\n className={barClassName}\n style={{\n ...this.setBorder(border),\n padding: padding,\n }}\n role=\"toolbar\"\n >\n <div\n className=\"bar__solo\"\n role=\"group\"\n >\n {soloPartSlot}\n </div>\n </div>\n )\n\n return (\n <div\n id={id}\n className={barClassName}\n style={{\n ...this.setBorder(border),\n padding: padding,\n }}\n role=\"toolbar\"\n >\n <div\n className=\"bar__left\"\n role=\"group\"\n >\n {leftPartSlot}\n </div>\n <div\n className=\"bar__right\"\n role=\"group\"\n >\n {rightPartSlot}\n </div>\n </div>\n )\n }\n}\n"],"names":["Bar","React","orientation","property","styles","entry","id","isCompact","isOnlyText","isInverted","isCentered","shouldReflow","isVertical","border","padding","clip","leftPartSlot","soloPartSlot","rightPartSlot","hasValidSolo","hasValidLeft","hasValidRight","barClassName","doClassnames","jsx","jsxs"],"mappings":";;;AAiEA,MAAqBA,UAAYC,EAAM,UAAoB;AAAA,EACzD,OAAO,eAAkC;AAAA,IACvC,WAAW;AAAA,IACX,YAAY;AAAA,IACZ,YAAY;AAAA,IACZ,YAAY;AAAA,IACZ,cAAc;AAAA,IACd,YAAY;AAAA,EAAA;AAAA,EAGd,YAAY,CACVC,MACG;AACH,UAAMC,IACJ,yDACIC,IAAiD,CAAA;AAEvD,WAAKF,KACLA,EAAY,QAAQ,CAACG,MAAU;AAC7B,MAAIA,MAAU,UAAOD,EAAO,YAAYD,IACpCE,MAAU,WAAQD,EAAO,aAAaD,IACtCE,MAAU,aAAUD,EAAO,eAAeD,IAC1CE,MAAU,YAASD,EAAO,cAAcD;AAAA,IAC9C,CAAC,GACMC;AAAA,EACT;AAAA,EAEA,SAAS;AACP,UAAM;AAAA,MACJ,IAAAE;AAAA,MACA,WAAAC;AAAA,MACA,YAAAC;AAAA,MACA,YAAAC;AAAA,MACA,YAAAC;AAAA,MACA,cAAAC;AAAA,MACA,YAAAC;AAAA,MACA,QAAAC;AAAA,MACA,SAAAC;AAAA,MACA,MAAAC;AAAA,MACA,cAAAC;AAAA,MACA,cAAAC;AAAA,MACA,eAAAC;AAAA,IAAA,IACE,KAAK,OAEHC,IAA6CF,KAAiB,MAC9DG,IAA6CJ,KAAiB,MAC9DK,IAA+CH,KAAkB;AAEvE,QAAI,CAACC,KAAgB,CAACC,KAAgB,CAACC,EAAe,QAAO;AAE7D,UAAMC,IAAeC,EAAa;AAAA,MAChC;AAAA,MACAhB,KAAa;AAAA,MACbC,KAAc;AAAA,MACdC,KAAc;AAAA,MACdC,KAAc;AAAA,MACdC,KAAgB;AAAA,MAChBC,KAAc;AAAA,MACdG,KAAQA,EAAK,SAAS,MAAM,KAAK;AAAA,MACjCA,KAAQA,EAAK,SAAS,OAAO,KAAK;AAAA,MAClCA,KAAQA,EAAK,SAAS,MAAM,KAAK;AAAA,IAAA,CAClC;AAED,WAAII,IAEA,gBAAAK;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,IAAAlB;AAAA,QACA,WAAWgB;AAAA,QACX,OAAO;AAAA,UACL,GAAG,KAAK,UAAUT,CAAM;AAAA,UACxB,SAAAC;AAAA,QAAA;AAAA,QAEF,MAAK;AAAA,QAEL,UAAA,gBAAAU;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,WAAU;AAAA,YACV,MAAK;AAAA,YAEJ,UAAAP;AAAA,UAAA;AAAA,QAAA;AAAA,MACH;AAAA,IAAA,IAKJ,gBAAAQ;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,IAAAnB;AAAA,QACA,WAAWgB;AAAA,QACX,OAAO;AAAA,UACL,GAAG,KAAK,UAAUT,CAAM;AAAA,UACxB,SAAAC;AAAA,QAAA;AAAA,QAEF,MAAK;AAAA,QAEL,UAAA;AAAA,UAAA,gBAAAU;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,WAAU;AAAA,cACV,MAAK;AAAA,cAEJ,UAAAR;AAAA,YAAA;AAAA,UAAA;AAAA,UAEH,gBAAAQ;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,WAAU;AAAA,cACV,MAAK;AAAA,cAEJ,UAAAN;AAAA,YAAA;AAAA,UAAA;AAAA,QACH;AAAA,MAAA;AAAA,IAAA;AAAA,EAGN;AACF;"}
|
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@unoff/ui",
|
|
3
|
-
"version": "1.21.
|
|
3
|
+
"version": "1.21.3",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Unoff UI is a comprehensive library of UI components designed specifically for building Figma and Penpot plugins. It leverages modern tools and frameworks to ensure a seamless development experience.",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
|
-
"url": "git+https://github.com/
|
|
8
|
+
"url": "git+https://github.com/yelbolt/unoff-ui.git"
|
|
9
9
|
},
|
|
10
10
|
"keywords": [
|
|
11
11
|
"library",
|
|
@@ -15,9 +15,9 @@
|
|
|
15
15
|
"author": "Aurélien Grimaud",
|
|
16
16
|
"license": "MIT",
|
|
17
17
|
"bugs": {
|
|
18
|
-
"url": "https://github.com/
|
|
18
|
+
"url": "https://github.com/yelbolt/unoff-ui/issues"
|
|
19
19
|
},
|
|
20
|
-
"homepage": "https://github.com/
|
|
20
|
+
"homepage": "https://github.com/yelbolt/unoff-ui#readme",
|
|
21
21
|
"overrides": {
|
|
22
22
|
"storybook": "$storybook",
|
|
23
23
|
"vite": "$vite",
|