@longline/aqua-ui 1.0.178 → 1.0.180

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.
@@ -40,14 +40,18 @@ interface IProps {
40
40
  * @default false
41
41
  */
42
42
  ghost?: boolean;
43
+ /**
44
+ * If set, allow fullscreen mode (adding a toolbar button).
45
+ */
46
+ allowFullscreen?: boolean;
43
47
  /**
44
48
  * If set, speech recognition will be available (if the browser supports it).
45
49
  */
46
- speechRecognition?: boolean;
50
+ allowSpeechRecognition?: boolean;
47
51
  /**
48
52
  * Listeners are notified whenever the user interacts with the Editor.
49
53
  */
50
54
  onChange?: (value: any) => void;
51
55
  }
52
- declare const Editor: ({ fluid, error, disabled, transparent, ghost, ...props }: IProps) => React.JSX.Element;
56
+ declare const Editor: ({ fluid, error, disabled, transparent, ghost, allowFullscreen, ...props }: IProps) => React.JSX.Element;
53
57
  export { Editor };
@@ -34,7 +34,10 @@ import { SpeechRecognizer } from './SpeechRecognizer';
34
34
  // define your extension array
35
35
  var extensions = [StarterKit];
36
36
  var EditorBase = function (props) {
37
- var _a = React.useState(false), recording = _a[0], setRecording = _a[1];
37
+ // Ref to wrapper; used for fullscreen mode.
38
+ var wrapperRef = React.useRef(null);
39
+ var _a = React.useState(false), fullscreen = _a[0], setFullscreen = _a[1];
40
+ var _b = React.useState(false), recording = _b[0], setRecording = _b[1];
38
41
  // Clicking anywhere will cancel recording.
39
42
  var handleMousedown = function (e) {
40
43
  e.stopPropagation();
@@ -51,6 +54,21 @@ var EditorBase = function (props) {
51
54
  var handleTranscript = function (transcript) {
52
55
  editor.commands.insertContent(transcript);
53
56
  };
57
+ var handleFullscreenChange = function () {
58
+ setFullscreen(document.fullscreenElement != null);
59
+ };
60
+ React.useEffect(function () {
61
+ document.addEventListener('fullscreenchange', handleFullscreenChange);
62
+ return function () { return document.removeEventListener('fullscreenchange', handleFullscreenChange); };
63
+ }, []);
64
+ var handleToggleFullscreen = function () {
65
+ if (document.fullscreenElement) {
66
+ document.exitFullscreen();
67
+ }
68
+ else {
69
+ wrapperRef.current.requestFullscreen();
70
+ }
71
+ };
54
72
  var editor = useEditor({
55
73
  extensions: extensions,
56
74
  content: props.value,
@@ -61,17 +79,18 @@ var EditorBase = function (props) {
61
79
  editor.commands.setContent(props.value, true, { preserveWhitespace: "full" });
62
80
  }, [props.value]);
63
81
  return (React.createElement(InputWrapper, { fluid: props.fluid, ghost: props.ghost, error: props.error, disabled: props.disabled, transparent: props.transparent, flex: props.flex },
64
- !props.disabled && !props.ghost && React.createElement(MenuBar, { editor: editor, speechRecognition: props.speechRecognition, recording: recording, onRecord: function () { return setRecording(!recording); } }),
65
- React.createElement("div", { className: props.className },
66
- React.createElement(Wrapper, null,
82
+ React.createElement("div", { className: props.className, ref: wrapperRef },
83
+ !props.disabled && !props.ghost &&
84
+ React.createElement(MenuBar, { allowFullscreen: props.allowFullscreen, fullscreen: fullscreen, editor: editor, onToggleFullscreen: handleToggleFullscreen, allowSpeechRecognition: props.allowSpeechRecognition, recording: recording, onRecord: function () { return setRecording(!recording); } }),
85
+ React.createElement(Wrapper, { className: fullscreen ? 'fullscreen' : '' },
67
86
  React.createElement(EditorContent, { editor: editor }),
68
87
  recording && React.createElement(SpeechRecognizer, { onTranscript: handleTranscript })))));
69
88
  };
70
- var Wrapper = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n position: absolute;\n left: 0;\n top: 0;\n right: 0;\n bottom: 0;\n\n .tiptap {\n border: none;\n outline: none;\n // Define colors for placeholder text.\n ::placeholder {\n color: rgb(from ", " r g b / 50%);\n opacity: 1 !important; /* Firefox applies opacity */\n }\n // Define colors for selected text.\n ::selection {\n background-color: ", ";\n color: ", ";\n } \n }\n\n // Content styles:\n .tiptap {\n code {\n background-color: ", ";\n color: ", ";\n outline: solid 1px ", ";\n border-radius: 4px;\n padding: 0 4px 0px 4px;\n }\n\n pre {\n background-color: ", ";\n border-radius: 4px;\n color: ", ";\n outline: solid 1px ", ";\n padding: 8px 12px 8px 12px;\n code {\n background-color: transparent;\n outline: none;\n border-radius: none;\n padding: 0 0 0 0;\n }\n }\n }\n"], ["\n position: absolute;\n left: 0;\n top: 0;\n right: 0;\n bottom: 0;\n\n .tiptap {\n border: none;\n outline: none;\n // Define colors for placeholder text.\n ::placeholder {\n color: rgb(from ", " r g b / 50%);\n opacity: 1 !important; /* Firefox applies opacity */\n }\n // Define colors for selected text.\n ::selection {\n background-color: ", ";\n color: ", ";\n } \n }\n\n // Content styles:\n .tiptap {\n code {\n background-color: ", ";\n color: ", ";\n outline: solid 1px ", ";\n border-radius: 4px;\n padding: 0 4px 0px 4px;\n }\n\n pre {\n background-color: ", ";\n border-radius: 4px;\n color: ", ";\n outline: solid 1px ", ";\n padding: 8px 12px 8px 12px;\n code {\n background-color: transparent;\n outline: none;\n border-radius: none;\n padding: 0 0 0 0;\n }\n }\n }\n"])), function (p) { return p.theme.colors.primary[3]; }, function (p) { return p.theme.colors.primary[2]; }, function (p) { return p.theme.colors.neutral[100]; }, function (p) { return p.theme.colors.primary[3]; }, function (p) { return p.theme.colors.neutral[100]; }, function (p) { return p.theme.colors.primary[1]; }, function (p) { return p.theme.colors.primary[3]; }, function (p) { return p.theme.colors.neutral[100]; }, function (p) { return p.theme.colors.primary[1]; });
71
- var EditorStyled = styled(EditorBase)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n position: relative;\n box-sizing: border-box;\n width: 100%;\n \n // Editor has a fixed height, unless it flexes; then it will fill its \n // container vertically.\n height: 120px;\n ", "\n overflow-y: scroll;\n\n // When a menu bar is displayed, allow space for it.\n ", "\n"], ["\n position: relative;\n box-sizing: border-box;\n width: 100%;\n \n // Editor has a fixed height, unless it flexes; then it will fill its \n // container vertically.\n height: 120px;\n ", "\n overflow-y: scroll;\n\n // When a menu bar is displayed, allow space for it.\n ", "\n"])), function (p) { return p.flex && css(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n height: 100%; \n "], ["\n height: 100%; \n "]))); }, function (p) { return !p.disabled && !p.ghost && css(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n ", " {\n top: 36px;\n }\n "], ["\n ", " {\n top: 36px;\n }\n "])), Wrapper); });
89
+ var Wrapper = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n position: absolute;\n left: 0;\n top: 0;\n right: 0;\n bottom: 0;\n\n &.fullscreen {\n padding: 32px 32px 32px 32px;\n }\n\n .tiptap {\n border: none;\n outline: none;\n // Define colors for placeholder text.\n ::placeholder {\n color: rgb(from ", " r g b / 50%);\n opacity: 1 !important; /* Firefox applies opacity */\n }\n // Define colors for selected text.\n ::selection {\n background-color: ", ";\n color: ", ";\n } \n }\n\n // Content styles:\n .tiptap {\n code {\n background-color: ", ";\n color: ", ";\n outline: solid 1px ", ";\n border-radius: 4px;\n padding: 0 4px 0px 4px;\n }\n\n pre {\n background-color: ", ";\n border-radius: 4px;\n color: ", ";\n outline: solid 1px ", ";\n padding: 8px 12px 8px 12px;\n code {\n background-color: transparent;\n outline: none;\n border-radius: none;\n padding: 0 0 0 0;\n }\n }\n }\n"], ["\n position: absolute;\n left: 0;\n top: 0;\n right: 0;\n bottom: 0;\n\n &.fullscreen {\n padding: 32px 32px 32px 32px;\n }\n\n .tiptap {\n border: none;\n outline: none;\n // Define colors for placeholder text.\n ::placeholder {\n color: rgb(from ", " r g b / 50%);\n opacity: 1 !important; /* Firefox applies opacity */\n }\n // Define colors for selected text.\n ::selection {\n background-color: ", ";\n color: ", ";\n } \n }\n\n // Content styles:\n .tiptap {\n code {\n background-color: ", ";\n color: ", ";\n outline: solid 1px ", ";\n border-radius: 4px;\n padding: 0 4px 0px 4px;\n }\n\n pre {\n background-color: ", ";\n border-radius: 4px;\n color: ", ";\n outline: solid 1px ", ";\n padding: 8px 12px 8px 12px;\n code {\n background-color: transparent;\n outline: none;\n border-radius: none;\n padding: 0 0 0 0;\n }\n }\n }\n"])), function (p) { return p.theme.colors.primary[3]; }, function (p) { return p.theme.colors.primary[2]; }, function (p) { return p.theme.colors.neutral[100]; }, function (p) { return p.theme.colors.primary[3]; }, function (p) { return p.theme.colors.neutral[100]; }, function (p) { return p.theme.colors.primary[1]; }, function (p) { return p.theme.colors.primary[3]; }, function (p) { return p.theme.colors.neutral[100]; }, function (p) { return p.theme.colors.primary[1]; });
90
+ var EditorStyled = styled(EditorBase)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n position: relative;\n box-sizing: border-box;\n width: 100%;\n background-color: ", ";\n\n // Editor has a fixed height, unless it flexes; then it will fill its \n // container vertically.\n height: 120px;\n ", "\n overflow-y: scroll;\n\n // When a menu bar is displayed, allow space for it.\n ", "\n"], ["\n position: relative;\n box-sizing: border-box;\n width: 100%;\n background-color: ", ";\n\n // Editor has a fixed height, unless it flexes; then it will fill its \n // container vertically.\n height: 120px;\n ", "\n overflow-y: scroll;\n\n // When a menu bar is displayed, allow space for it.\n ", "\n"])), function (p) { return p.theme.colors.neutral[100]; }, function (p) { return p.flex && css(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n height: 100%; \n "], ["\n height: 100%; \n "]))); }, function (p) { return !p.disabled && !p.ghost && css(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n ", " {\n margin-top: 30px;\n }\n "], ["\n ", " {\n margin-top: 30px;\n }\n "])), Wrapper); });
72
91
  var Editor = function (_a) {
73
- var _b = _a.fluid, fluid = _b === void 0 ? false : _b, _c = _a.error, error = _c === void 0 ? false : _c, _d = _a.disabled, disabled = _d === void 0 ? false : _d, _e = _a.transparent, transparent = _e === void 0 ? false : _e, _f = _a.ghost, ghost = _f === void 0 ? false : _f, props = __rest(_a, ["fluid", "error", "disabled", "transparent", "ghost"]);
74
- return React.createElement(EditorStyled, __assign({ fluid: fluid, error: error, disabled: disabled, transparent: transparent, ghost: ghost }, props));
92
+ var _b = _a.fluid, fluid = _b === void 0 ? false : _b, _c = _a.error, error = _c === void 0 ? false : _c, _d = _a.disabled, disabled = _d === void 0 ? false : _d, _e = _a.transparent, transparent = _e === void 0 ? false : _e, _f = _a.ghost, ghost = _f === void 0 ? false : _f, _g = _a.allowFullscreen, allowFullscreen = _g === void 0 ? false : _g, props = __rest(_a, ["fluid", "error", "disabled", "transparent", "ghost", "allowFullscreen"]);
93
+ return React.createElement(EditorStyled, __assign({ fluid: fluid, error: error, disabled: disabled, transparent: transparent, ghost: ghost, allowFullscreen: allowFullscreen }, props));
75
94
  };
76
95
  export { Editor };
77
96
  var templateObject_1, templateObject_2, templateObject_3, templateObject_4;
@@ -0,0 +1,9 @@
1
+ import * as React from 'react';
2
+ import { Editor } from '@tiptap/react';
3
+ interface IProps {
4
+ editor: Editor;
5
+ onClick: () => void;
6
+ fullscreen?: boolean;
7
+ }
8
+ declare const FullscreenButton: (props: IProps) => React.JSX.Element;
9
+ export { FullscreenButton };
@@ -0,0 +1,7 @@
1
+ import * as React from 'react';
2
+ import { MenuButton } from '../menu/MenuButton';
3
+ import { SVG } from '../../../svg';
4
+ var FullscreenButton = function (props) {
5
+ return (React.createElement(MenuButton, { editor: props.editor, hint: "Fullscreen mode", active: props.fullscreen, onClick: props.onClick, icon: SVG.Icons.Fullscreen }));
6
+ };
7
+ export { FullscreenButton };
@@ -1,10 +1,21 @@
1
1
  import * as React from 'react';
2
2
  import { Editor } from '@tiptap/react';
3
3
  interface IProps {
4
+ /** @ignore */
5
+ className?: string;
6
+ /** @ignore */
7
+ children?: React.ReactNode;
8
+ /** Editor instance */
4
9
  editor: Editor;
5
- speechRecognition: boolean;
10
+ /** Allow fullscreen mode? This will add a toolbar button. */
11
+ allowFullscreen?: boolean;
12
+ /** Is editor currently fullscreen? This will affect toolbar positioning. */
13
+ fullscreen?: boolean;
14
+ /** Fired when fullscreen mode must be toggled. */
15
+ onToggleFullscreen: () => void;
16
+ allowSpeechRecognition: boolean;
6
17
  recording: boolean;
7
18
  onRecord: () => void;
8
19
  }
9
- declare const MenuBar: (props: IProps) => React.JSX.Element;
20
+ declare const MenuBar: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<IProps, never>> & string & Omit<(props: IProps) => React.JSX.Element, keyof React.Component<any, {}, any>>;
10
21
  export { MenuBar };
@@ -12,14 +12,15 @@ import { CodeButton } from '../buttons/CodeButton';
12
12
  import { OrderedListButton } from '../buttons/OrderedListButton';
13
13
  import { BulletListButton } from '../buttons/BulletListButton';
14
14
  import { CodeBlockButton } from '../buttons/CodeBlockButton';
15
+ import { FullscreenButton } from '../buttons/FullscreenButton';
15
16
  import { RecordButton } from '../buttons/RecordButton';
16
17
  import { SpeechRecognizer } from '../SpeechRecognizer';
17
18
  import { AudioVisualizer } from '../AudioVisualizer';
18
- var MenuBar = function (props) {
19
+ var MenuBarBase = function (props) {
19
20
  if (!props.editor) {
20
21
  return null;
21
22
  }
22
- return (React.createElement(Bar, null,
23
+ return (React.createElement("div", { className: props.className },
23
24
  React.createElement(Buttons, null,
24
25
  React.createElement(BoldButton, { editor: props.editor }),
25
26
  React.createElement(ItalicButton, { editor: props.editor }),
@@ -30,13 +31,16 @@ var MenuBar = function (props) {
30
31
  React.createElement(MenuSeparator, null),
31
32
  React.createElement(CodeButton, { editor: props.editor }),
32
33
  React.createElement(CodeBlockButton, { editor: props.editor }),
33
- props.speechRecognition && SpeechRecognizer.isAvailable() && React.createElement(React.Fragment, null,
34
+ props.allowFullscreen && React.createElement(React.Fragment, null,
35
+ React.createElement(MenuSeparator, null),
36
+ React.createElement(FullscreenButton, { fullscreen: props.fullscreen, editor: props.editor, onClick: props.onToggleFullscreen })),
37
+ props.allowSpeechRecognition && SpeechRecognizer.isAvailable() && React.createElement(React.Fragment, null,
34
38
  React.createElement(MenuSeparator, null),
35
39
  React.createElement(RecordButton, { editor: props.editor, recording: props.recording, onRecord: props.onRecord })),
36
40
  props.recording && React.createElement("div", null,
37
41
  React.createElement(AudioVisualizer, null)))));
38
42
  };
39
- var Bar = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n // Keep MenuBar at top of editor; it must not scroll when the editor\n // content scrolls.\n position: absolute;\n left: 0;\n top: 0;\n z-index: 1;\n background-color: #fff;\n"], ["\n // Keep MenuBar at top of editor; it must not scroll when the editor\n // content scrolls.\n position: absolute;\n left: 0;\n top: 0;\n z-index: 1;\n background-color: #fff;\n"])));
40
- var Buttons = styled.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n background-color: #f0f0f0;\n border-radius: 4px;\n padding: 8px;\n\n // Flex-align buttons and separators:\n display: flex;\n flex-direction: row;\n gap: 4px;\n"], ["\n background-color: #f0f0f0;\n border-radius: 4px;\n padding: 8px;\n\n // Flex-align buttons and separators:\n display: flex;\n flex-direction: row;\n gap: 4px;\n"])));
43
+ var MenuBar = styled(MenuBarBase)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n // Keep MenuBar at top of editor; it must not scroll when the editor\n // content scrolls.\n position: absolute;\n left: ", "px;\n top: ", "px;\n z-index: 1;\n"], ["\n // Keep MenuBar at top of editor; it must not scroll when the editor\n // content scrolls.\n position: absolute;\n left: ", "px;\n top: ", "px;\n z-index: 1;\n"])), function (p) { return p.fullscreen ? 32 : 0; }, function (p) { return p.fullscreen ? 32 : 0; });
44
+ var Buttons = styled.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n border-radius: 4px;\n padding: 2px;\n\n // Flex-align buttons and separators:\n display: flex;\n flex-direction: row;\n gap: 4px;\n"], ["\n border-radius: 4px;\n padding: 2px;\n\n // Flex-align buttons and separators:\n display: flex;\n flex-direction: row;\n gap: 4px;\n"])));
41
45
  export { MenuBar };
42
46
  var templateObject_1, templateObject_2;
@@ -16,34 +16,42 @@ var __assign = (this && this.__assign) || function () {
16
16
  import * as React from 'react';
17
17
  import styled, { css, useTheme } from 'styled-components';
18
18
  import { usePopper } from 'react-popper';
19
+ import { createPortal } from 'react-dom';
19
20
  import { Icon } from '../../../controls/Icon';
21
+ import { MenuButtonHint } from './MenuButtonHint';
20
22
  var MenuButtonBase = function (props) {
21
23
  var theme = useTheme();
22
24
  var buttonRef = React.useRef(null);
23
25
  var hintRef = React.useRef(null);
24
26
  var handleMouseEnter = function () {
25
- if (hintRef.current && props.editor.isFocused && props.hint && !props.disabled)
26
- hintRef.current.style.visibility = "visible";
27
+ if (hintRef.current && props.hint && !props.disabled)
28
+ hintRef.current.classList.add('visible');
27
29
  };
28
30
  var handleMouseLeave = function () {
29
31
  if (hintRef.current)
30
- hintRef.current.style.visibility = "hidden";
32
+ hintRef.current.classList.remove('visible');
31
33
  };
32
34
  var _a = usePopper(buttonRef.current, hintRef.current, {
33
- placement: 'top',
35
+ placement: document.fullscreenElement ? 'bottom' : 'top',
34
36
  modifiers: [
35
37
  {
36
38
  name: 'offset',
37
39
  options: {
38
40
  offset: [0, 4]
39
41
  },
42
+ }, {
43
+ name: 'flip',
44
+ options: {
45
+ fallbackPlacements: ['bottom']
46
+ }
40
47
  }
41
48
  ]
42
49
  }), styles = _a.styles, attributes = _a.attributes, update = _a.update;
43
50
  return (React.createElement("button", { className: props.className, disabled: props.disabled, onClick: props.onClick, ref: buttonRef, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave },
44
- React.createElement(Icon, { color: props.disabled ? theme.colors.neutral[80] : theme.colors.neutral[50], url: props.icon })));
51
+ React.createElement(Icon, { url: props.icon }),
52
+ buttonRef.current && createPortal(React.createElement(MenuButtonHint, { keys: props.keys, ref: hintRef, styles: styles, attributes: attributes }, props.hint), buttonRef.current)));
45
53
  };
46
- var MenuButtonStyled = styled(MenuButtonBase)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n // Size:\n position: relative;\n width: 26px;\n height: 26px;\n\n // Appearance:\n border: none;\n background-color: transparent;\n border-radius: 4px;\n cursor: pointer;\n outline: none;\n user-select: none;\n ", "\n &:active {\n background-color: ", ";\n }\n &:focus {\n outline: solid 2px ", ";\n }\n\n // Content:\n display: flex;\n justify-content: center;\n align-items: center;\n"], ["\n // Size:\n position: relative;\n width: 26px;\n height: 26px;\n\n // Appearance:\n border: none;\n background-color: transparent;\n border-radius: 4px;\n cursor: pointer;\n outline: none;\n user-select: none;\n ", "\n &:active {\n background-color: ", ";\n }\n &:focus {\n outline: solid 2px ", ";\n }\n\n // Content:\n display: flex;\n justify-content: center;\n align-items: center;\n"])), function (p) { return p.active && css(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n background-color: ", ";\n "], ["\n background-color: ", ";\n "])), function (p) { return p.theme.colors.neutral[80]; }); }, function (p) { return p.theme.colors.neutral[80]; }, function (p) { return p.theme.colors.primary[1]; });
54
+ var MenuButtonStyled = styled(MenuButtonBase)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n // Size:\n position: relative;\n width: 26px;\n height: 26px;\n\n // Appearance:\n border: none;\n background-color: transparent;\n border-radius: 4px;\n cursor: pointer;\n outline: none;\n user-select: none;\n ", "\n &:active {\n background-color: ", ";\n }\n &:focus {\n outline: solid 2px ", ";\n }\n\n svg {\n fill: ", ";\n }\n ", "\n\n // Content:\n display: flex;\n justify-content: center;\n align-items: center;\n"], ["\n // Size:\n position: relative;\n width: 26px;\n height: 26px;\n\n // Appearance:\n border: none;\n background-color: transparent;\n border-radius: 4px;\n cursor: pointer;\n outline: none;\n user-select: none;\n ", "\n &:active {\n background-color: ", ";\n }\n &:focus {\n outline: solid 2px ", ";\n }\n\n svg {\n fill: ", ";\n }\n ", "\n\n // Content:\n display: flex;\n justify-content: center;\n align-items: center;\n"])), function (p) { return p.active && css(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n background-color: ", ";\n "], ["\n background-color: ", ";\n "])), function (p) { return p.theme.colors.neutral[80]; }); }, function (p) { return p.theme.colors.neutral[80]; }, function (p) { return p.theme.colors.primary[1]; }, function (p) { return p.disabled ? p.theme.colors.neutral[80] : p.theme.colors.neutral[50]; }, function (p) { return !p.disabled && css(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n svg:hover {\n fill: ", ";\n }\n "], ["\n svg:hover {\n fill: ", ";\n }\n "])), p.theme.colors.neutral[30]); });
47
55
  var MenuButton = function (props) { return React.createElement(MenuButtonStyled, __assign({}, props)); };
48
56
  export { MenuButton };
49
- var templateObject_1, templateObject_2;
57
+ var templateObject_1, templateObject_2, templateObject_3;
@@ -23,6 +23,6 @@ var MenuButtonHint = React.forwardRef(function (props, ref) {
23
23
  });
24
24
  var HintBody = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n"], ["\n"])));
25
25
  var HintKeys = styled.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n white-space: nowrap;\n display: flex;\n gap: 4px;\n"], ["\n white-space: nowrap;\n display: flex;\n gap: 4px;\n"])));
26
- var Hint = styled.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n position: absolute;\n z-index: 100;\n background-color: ", ";\n color: ", ";\n padding: 8px 8px 8px 8px;\n border-radius: 4px;\n visibility: hidden;\n font: ", ";\n\n // Content:\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 4px;\n"], ["\n position: absolute;\n z-index: 100;\n background-color: ", ";\n color: ", ";\n padding: 8px 8px 8px 8px;\n border-radius: 4px;\n visibility: hidden;\n font: ", ";\n\n // Content:\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 4px;\n"])), function (p) { return p.theme.colors.neutral[10]; }, function (p) { return p.theme.colors.neutral[100]; }, function (p) { return p.theme.font.labelSmall; });
26
+ var Hint = styled.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n position: absolute;\n z-index: 100;\n background-color: ", ";\n color: ", ";\n padding: 8px 8px 8px 8px;\n border-radius: 4px;\n visibility: hidden;\n opacity: 0;\n font: ", ";\n\n // Content:\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 4px;\n\n transition: opacity 1ms linear;\n\n &.visible {\n visibility: visible;\n opacity: 1;\n transition: opacity 100ms ease-in-out 1000ms; \n \n }\n"], ["\n position: absolute;\n z-index: 100;\n background-color: ", ";\n color: ", ";\n padding: 8px 8px 8px 8px;\n border-radius: 4px;\n visibility: hidden;\n opacity: 0;\n font: ", ";\n\n // Content:\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 4px;\n\n transition: opacity 1ms linear;\n\n &.visible {\n visibility: visible;\n opacity: 1;\n transition: opacity 100ms ease-in-out 1000ms; \n \n }\n"])), function (p) { return p.theme.colors.neutral[10]; }, function (p) { return p.theme.colors.neutral[100]; }, function (p) { return p.theme.font.labelSmall; });
27
27
  export { MenuButtonHint };
28
28
  var templateObject_1, templateObject_2, templateObject_3;
@@ -16,9 +16,9 @@ var __assign = (this && this.__assign) || function () {
16
16
  import * as React from 'react';
17
17
  import styled from 'styled-components';
18
18
  var MenuSeparatorBase = function (props) {
19
- return (React.createElement("div", { className: props.className }));
19
+ return React.createElement("div", { className: props.className });
20
20
  };
21
- var MenuSeparatorStyled = styled(MenuSeparatorBase)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n width: 1px;\n border-left: solid 1px ", ";\n margin-left: 2px;\n margin-right: 2px; \n"], ["\n width: 1px;\n border-left: solid 1px ", ";\n margin-left: 2px;\n margin-right: 2px; \n"])), function (p) { return p.theme.colors.neutral[80]; });
21
+ var MenuSeparatorStyled = styled(MenuSeparatorBase)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n position: relative;\n width: 1px;\n margin-left: 2px;\n margin-right: 2px; \n &:before {\n content: '';\n position: absolute;\n top: 2px;\n left: 0;\n bottom: 2px;\n border-left: solid 1px ", ";\n }\n"], ["\n position: relative;\n width: 1px;\n margin-left: 2px;\n margin-right: 2px; \n &:before {\n content: '';\n position: absolute;\n top: 2px;\n left: 0;\n bottom: 2px;\n border-left: solid 1px ", ";\n }\n"])), function (p) { return p.theme.colors.neutral[80]; });
22
22
  var MenuSeparator = function (props) { return React.createElement(MenuSeparatorStyled, __assign({}, props)); };
23
23
  export { MenuSeparator };
24
24
  var templateObject_1;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@longline/aqua-ui",
3
- "version": "1.0.178",
3
+ "version": "1.0.180",
4
4
  "description": "AquaUI",
5
5
  "author": "Alexander van Oostenrijk / Longline Environment",
6
6
  "license": "Commercial",