superdesk-ui-framework 3.0.1-beta.3 → 3.0.1-beta.30
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/app/fonts/sd_icons.eot +0 -0
- package/app/fonts/sd_icons.svg +14 -7
- package/app/fonts/sd_icons.ttf +0 -0
- package/app/fonts/sd_icons.woff +0 -0
- package/app/scripts/toggleBoxNext.js +1 -1
- package/app/styles/_big-icon-font.scss +1 -1
- package/app/styles/_buttons.scss +11 -6
- package/app/styles/_content-divider.scss +63 -8
- package/app/styles/_helpers.scss +24 -1
- package/app/styles/_icon-font.scss +17 -10
- package/app/styles/_labels.scss +0 -1
- package/app/styles/_master-desk.scss +3 -2
- package/app/styles/_modals.scss +6 -3
- package/app/styles/_normalize.scss +4 -0
- package/app/styles/_sd-tag-input.scss +256 -296
- package/app/styles/_simple-list.scss +0 -2
- package/app/styles/_table-list.scss +116 -12
- package/app/styles/app.scss +1 -0
- package/app/styles/components/_list-item.scss +36 -17
- package/app/styles/components/_sd-collapse-box.scss +6 -6
- package/app/styles/components/_sd-comment-box.scss +8 -4
- package/app/styles/components/_sd-editor-popup.scss +4 -4
- package/app/styles/components/_sd-grid-item.scss +30 -16
- package/app/styles/components/_sd-media-carousel.scss +37 -2
- package/app/styles/components/_sd-photo-preview.scss +3 -3
- package/app/styles/components/_sd-searchbar.scss +7 -0
- package/app/styles/components/_subnav.scss +470 -470
- package/app/styles/design-tokens/_design-tokens-general.scss +1 -1
- package/app/styles/design-tokens/_new-colors.scss +30 -13
- package/app/styles/dropdowns/_basic-dropdown.scss +6 -0
- package/app/styles/form-elements/_forms-general.scss +81 -7
- package/app/styles/form-elements/_input-wrap.scss +138 -0
- package/app/styles/form-elements/_inputs.scss +368 -110
- package/app/styles/grids/_grid-layout.scss +34 -1
- package/app/styles/interface-elements/_side-panel.scss +1 -1
- package/app/styles/layout/_basic-layout.scss +2 -2
- package/app/styles/layout/_editor.scss +10 -4
- package/app/styles/primereact/_pr-datepicker.scss +4 -2
- package/app/styles/primereact/_pr-dialog.scss +5 -0
- package/app/styles/primereact/_pr-dropdown.scss +17 -1
- package/app/styles/primereact/_pr-menu.scss +6 -5
- package/app/styles/variables/_colors.scss +21 -21
- package/app-typescript/components/Badge.tsx +3 -2
- package/app-typescript/components/ContentDivider.tsx +3 -0
- package/app-typescript/components/DatePicker.tsx +40 -52
- package/app-typescript/components/Dropdown.tsx +127 -82
- package/app-typescript/components/DurationInput.tsx +400 -0
- package/app-typescript/components/EmptyState.tsx +2 -1
- package/app-typescript/components/Form/FormLabel.tsx +8 -1
- package/app-typescript/components/Form/FormRowNew.tsx +41 -0
- package/app-typescript/components/Form/InputBase.tsx +95 -0
- package/app-typescript/components/Form/InputNew.tsx +107 -0
- package/app-typescript/components/Form/InputWrapper.tsx +79 -0
- package/app-typescript/components/Form/index.tsx +4 -0
- package/app-typescript/components/Input.tsx +28 -45
- package/app-typescript/components/Label.tsx +65 -10
- package/app-typescript/components/Layouts/AuthoringContainer.tsx +2 -1
- package/app-typescript/components/Layouts/AuthoringFrame.tsx +2 -1
- package/app-typescript/components/Layouts/AuthoringFrameRightBar.tsx +21 -2
- package/app-typescript/components/Layouts/AuthoringInnerHeader.tsx +1 -1
- package/app-typescript/components/Layouts/AuthoringMain.tsx +4 -2
- package/app-typescript/components/Layouts/CoreLayout.tsx +2 -1
- package/app-typescript/components/Layouts/CoreLayoutMain.tsx +7 -1
- package/app-typescript/components/Layouts/Layout.tsx +1 -1
- package/app-typescript/components/LeftMenu.tsx +127 -122
- package/app-typescript/components/Lists/ContentList.tsx +66 -33
- package/app-typescript/components/Lists/TableList.tsx +348 -151
- package/app-typescript/components/Menu.tsx +2 -2
- package/app-typescript/components/MultiSelect.tsx +37 -50
- package/app-typescript/components/NavButton.tsx +2 -1
- package/app-typescript/components/Navigation/BottomNav.tsx +3 -2
- package/app-typescript/components/SearchBar.tsx +39 -12
- package/app-typescript/components/Select.tsx +23 -41
- package/app-typescript/components/SelectWithTemplate.tsx +32 -7
- package/app-typescript/components/Spacer.tsx +87 -0
- package/app-typescript/components/TimePicker.tsx +38 -15
- package/app-typescript/components/TreeSelect.tsx +546 -212
- package/app-typescript/index.ts +6 -1
- package/dist/examples.bundle.css +344 -71
- package/dist/examples.bundle.js +48203 -45174
- package/dist/playgrounds/react-playgrounds/CoreLayout.tsx +65 -54
- package/dist/playgrounds/react-playgrounds/Index.tsx +1 -0
- package/dist/playgrounds/react-playgrounds/Multiedit.tsx +321 -0
- package/dist/playgrounds/react-playgrounds/RundownEditor.tsx +26 -23
- package/dist/playgrounds/react-playgrounds/Rundowns.tsx +20 -21
- package/dist/playgrounds/react-playgrounds/SamsPlayground.tsx +12 -3
- package/dist/playgrounds/react-playgrounds/TestGround.tsx +379 -25
- package/dist/playgrounds/react-playgrounds/components/Layout.tsx +1 -1
- package/dist/react/Badges.tsx +18 -0
- package/dist/react/ContentDivider.tsx +22 -18
- package/dist/react/ContentList.tsx +200 -18
- package/dist/react/DatePicker.tsx +21 -1
- package/dist/react/Dropdowns.tsx +580 -48
- package/dist/react/DurationInput.tsx +108 -0
- package/dist/react/Index.tsx +5 -0
- package/dist/react/Inputs.tsx +147 -2
- package/dist/react/Labels.tsx +51 -1
- package/dist/react/LeftNavigations.tsx +71 -44
- package/dist/react/MultiSelect.tsx +10 -7
- package/dist/react/NavButtons.tsx +31 -1
- package/dist/react/SelectWithTemplate.tsx +6 -1
- package/dist/react/TableList.tsx +79 -186
- package/dist/react/TimePicker.tsx +22 -12
- package/dist/react/Togglebox.tsx +1 -1
- package/dist/react/TreeSelect.tsx +295 -51
- package/dist/react/tree-select/TreeSelect.tsx +273 -0
- package/dist/react/tree-select/example-1.tsx +71 -0
- package/dist/react/tree-select/example-2.tsx +59 -0
- package/dist/sd_icons.eot +0 -0
- package/dist/sd_icons.svg +14 -7
- package/dist/sd_icons.ttf +0 -0
- package/dist/sd_icons.woff +0 -0
- package/dist/superdesk-ui.bundle.css +2282 -782
- package/dist/superdesk-ui.bundle.js +37312 -21800
- package/dist/vendor.bundle.js +27 -27
- package/examples/css/docs-page.css +4 -4
- package/examples/index.js +4 -0
- package/examples/pages/playgrounds/react-playgrounds/CoreLayout.tsx +65 -54
- package/examples/pages/playgrounds/react-playgrounds/Index.tsx +1 -0
- package/examples/pages/playgrounds/react-playgrounds/Multiedit.tsx +321 -0
- package/examples/pages/playgrounds/react-playgrounds/RundownEditor.tsx +26 -23
- package/examples/pages/playgrounds/react-playgrounds/Rundowns.tsx +20 -21
- package/examples/pages/playgrounds/react-playgrounds/SamsPlayground.tsx +12 -3
- package/examples/pages/playgrounds/react-playgrounds/TestGround.tsx +379 -25
- package/examples/pages/playgrounds/react-playgrounds/components/Layout.tsx +1 -1
- package/examples/pages/react/Badges.tsx +18 -0
- package/examples/pages/react/ContentDivider.tsx +22 -18
- package/examples/pages/react/ContentList.tsx +200 -18
- package/examples/pages/react/DatePicker.tsx +21 -1
- package/examples/pages/react/Dropdowns.tsx +580 -48
- package/examples/pages/react/DurationInput.tsx +108 -0
- package/examples/pages/react/Index.tsx +5 -0
- package/examples/pages/react/Inputs.tsx +147 -2
- package/examples/pages/react/Labels.tsx +51 -1
- package/examples/pages/react/LeftNavigations.tsx +71 -44
- package/examples/pages/react/MultiSelect.tsx +10 -7
- package/examples/pages/react/NavButtons.tsx +31 -1
- package/examples/pages/react/SelectWithTemplate.tsx +6 -1
- package/examples/pages/react/TableList.tsx +79 -186
- package/examples/pages/react/TimePicker.tsx +22 -12
- package/examples/pages/react/Togglebox.tsx +1 -1
- package/examples/pages/react/TreeSelect.tsx +295 -51
- package/examples/pages/react/tree-select/TreeSelect.tsx +273 -0
- package/examples/pages/react/tree-select/example-1.tsx +71 -0
- package/examples/pages/react/tree-select/example-2.tsx +59 -0
- package/package.json +5 -5
- package/react/components/Badge.d.ts +1 -0
- package/react/components/Badge.js +2 -2
- package/react/components/ContentDivider.d.ts +1 -0
- package/react/components/ContentDivider.js +2 -0
- package/react/components/DatePicker.d.ts +1 -0
- package/react/components/DatePicker.js +6 -22
- package/react/components/Dropdown.d.ts +6 -5
- package/react/components/Dropdown.js +57 -30
- package/react/components/DurationInput.d.ts +42 -0
- package/react/components/DurationInput.js +364 -0
- package/react/components/EmptyState.d.ts +1 -0
- package/react/components/EmptyState.js +1 -1
- package/react/components/Form/FormLabel.d.ts +4 -1
- package/react/components/Form/FormLabel.js +9 -3
- package/react/components/Form/FormRowNew.d.ts +12 -0
- package/react/components/Form/FormRowNew.js +67 -0
- package/react/components/Form/InputBase.d.ts +41 -0
- package/react/components/Form/InputBase.js +86 -0
- package/react/components/Form/InputNew.d.ts +45 -0
- package/react/components/Form/InputNew.js +75 -0
- package/react/components/Form/InputWrapper.d.ts +28 -0
- package/react/components/Form/InputWrapper.js +91 -0
- package/react/components/Form/index.d.ts +4 -0
- package/react/components/Form/index.js +9 -1
- package/react/components/Input.js +5 -34
- package/react/components/Label.d.ts +2 -0
- package/react/components/Label.js +34 -3
- package/react/components/Layouts/AuthoringContainer.d.ts +1 -0
- package/react/components/Layouts/AuthoringContainer.js +1 -1
- package/react/components/Layouts/AuthoringFrame.d.ts +1 -0
- package/react/components/Layouts/AuthoringFrame.js +1 -1
- package/react/components/Layouts/AuthoringFrameRightBar.d.ts +9 -2
- package/react/components/Layouts/AuthoringFrameRightBar.js +14 -3
- package/react/components/Layouts/AuthoringInnerHeader.js +1 -1
- package/react/components/Layouts/AuthoringMain.js +1 -1
- package/react/components/Layouts/CoreLayout.d.ts +1 -0
- package/react/components/Layouts/CoreLayout.js +1 -1
- package/react/components/Layouts/CoreLayoutMain.d.ts +1 -0
- package/react/components/Layouts/CoreLayoutMain.js +8 -1
- package/react/components/Layouts/Layout.js +1 -1
- package/react/components/LeftMenu.d.ts +3 -1
- package/react/components/LeftMenu.js +8 -1
- package/react/components/Lists/ContentList.d.ts +51 -0
- package/react/components/Lists/ContentList.js +110 -0
- package/react/components/Lists/TableList.d.ts +64 -0
- package/react/components/Lists/TableList.js +240 -0
- package/react/components/Menu.js +1 -1
- package/react/components/MultiSelect.d.ts +40 -0
- package/react/components/MultiSelect.js +70 -0
- package/react/components/NavButton.d.ts +1 -1
- package/react/components/Navigation/BottomNav.d.ts +1 -0
- package/react/components/Navigation/BottomNav.js +2 -2
- package/react/components/SearchBar.d.ts +3 -2
- package/react/components/SearchBar.js +28 -4
- package/react/components/Select.d.ts +1 -1
- package/react/components/Select.js +4 -26
- package/react/components/SelectWithTemplate.d.ts +11 -1
- package/react/components/SelectWithTemplate.js +19 -10
- package/react/components/TimePicker.d.ts +11 -1
- package/react/components/TimePicker.js +10 -3
- package/react/components/TreeSelect.d.ts +82 -0
- package/react/components/TreeSelect.js +521 -0
- package/react/index.d.ts +6 -0
- package/react/index.js +16 -3
- package/.vscode/settings.json +0 -5
- package/app-typescript/dist/components/Alert.d.ts +0 -16
- package/app-typescript/dist/components/Autocomplete.d.ts +0 -48
- package/app-typescript/dist/components/Avatar.d.ts +0 -33
- package/app-typescript/dist/components/Badge.d.ts +0 -13
- package/app-typescript/dist/components/Button.d.ts +0 -23
- package/app-typescript/dist/components/ButtonGroup.d.ts +0 -12
- package/app-typescript/dist/components/CheckButtonGroup.d.ts +0 -11
- package/app-typescript/dist/components/CheckGroup.d.ts +0 -9
- package/app-typescript/dist/components/Checkbox.d.ts +0 -19
- package/app-typescript/dist/components/CheckboxButton.d.ts +0 -19
- package/app-typescript/dist/components/DatePicker.d.ts +0 -37
- package/app-typescript/dist/components/Divider.d.ts +0 -9
- package/app-typescript/dist/components/DonutChart.d.ts +0 -12
- package/app-typescript/dist/components/Dropdown.d.ts +0 -28
- package/app-typescript/dist/components/DropdownFirst.d.ts +0 -42
- package/app-typescript/dist/components/EmptyState.d.ts +0 -11
- package/app-typescript/dist/components/FormLabel.d.ts +0 -9
- package/app-typescript/dist/components/Genie.d.ts +0 -13
- package/app-typescript/dist/components/GridItem.d.ts +0 -69
- package/app-typescript/dist/components/GridList.d.ts +0 -14
- package/app-typescript/dist/components/HeadingText.d.ts +0 -10
- package/app-typescript/dist/components/HelloWorld.d.ts +0 -8
- package/app-typescript/dist/components/Icon.d.ts +0 -12
- package/app-typescript/dist/components/IconButton.d.ts +0 -12
- package/app-typescript/dist/components/IconLabel.d.ts +0 -11
- package/app-typescript/dist/components/Input.d.ts +0 -24
- package/app-typescript/dist/components/Label.d.ts +0 -15
- package/app-typescript/dist/components/LeftMenu.d.ts +0 -26
- package/app-typescript/dist/components/Loader.d.ts +0 -8
- package/app-typescript/dist/components/NavButton.d.ts +0 -15
- package/app-typescript/dist/components/Popover.d.ts +0 -13
- package/app-typescript/dist/components/PropsList.d.ts +0 -15
- package/app-typescript/dist/components/Radio.d.ts +0 -19
- package/app-typescript/dist/components/RadioButton.d.ts +0 -20
- package/app-typescript/dist/components/Select.d.ts +0 -29
- package/app-typescript/dist/components/SelectWithTemplate.d.ts +0 -32
- package/app-typescript/dist/components/SlidingToolbar.d.ts +0 -8
- package/app-typescript/dist/components/StrechBar.d.ts +0 -4
- package/app-typescript/dist/components/SubNav.d.ts +0 -10
- package/app-typescript/dist/components/Switch.d.ts +0 -12
- package/app-typescript/dist/components/TabCustom.d.ts +0 -25
- package/app-typescript/dist/components/TabList.d.ts +0 -22
- package/app-typescript/dist/components/Tag.d.ts +0 -9
- package/app-typescript/dist/components/TagInput.d.ts +0 -7
- package/app-typescript/dist/components/TagInputTest.d.ts +0 -18
- package/app-typescript/dist/components/TimePicker.d.ts +0 -11
- package/app-typescript/dist/components/Tooltip.d.ts +0 -11
- package/app-typescript/dist/components/_Positioner.d.ts +0 -27
- package/app-typescript/dist/index.d.ts +0 -56
- package/patches/@superdesk+primereact+5.0.2-4.patch +0 -57
- package/yarn-error.log +0 -111
@@ -24,16 +24,14 @@ var React = __importStar(require("react"));
|
|
24
24
|
var ReactDOM = __importStar(require("react-dom"));
|
25
25
|
var core_1 = require("@popperjs/core");
|
26
26
|
var react_id_generator_1 = require("react-id-generator");
|
27
|
+
var DROPDOWN_ID_CONTAINER = "sd-dropdown-constainer";
|
27
28
|
var Dropdown = function (_a) {
|
28
|
-
var items = _a.items, header = _a.header, footer = _a.footer, children = _a.children, append = _a.append, align = _a.align;
|
29
|
+
var items = _a.items, header = _a.header, footer = _a.footer, children = _a.children, append = _a.append, align = _a.align, onChange = _a.onChange;
|
29
30
|
var _b = React.useState(false), open = _b[0], setOpen = _b[1];
|
30
31
|
var _c = React.useState(false), change = _c[0], setChange = _c[1];
|
31
32
|
var menuID = (0, react_id_generator_1.useId)()[0];
|
32
|
-
var DROPDOWN_ID = "react-placeholder";
|
33
33
|
var ref = React.useRef(null);
|
34
|
-
var refSubMenu = React.useRef(null);
|
35
34
|
var buttonRef = React.useRef(null);
|
36
|
-
var refButtonSubMenu = React.useRef(null);
|
37
35
|
var headerElements = header === null || header === void 0 ? void 0 : header.map(function (el, index) {
|
38
36
|
return each(el, index);
|
39
37
|
});
|
@@ -44,11 +42,10 @@ var Dropdown = function (_a) {
|
|
44
42
|
return each(el, index);
|
45
43
|
});
|
46
44
|
React.useEffect(function () {
|
47
|
-
var existingElement = document.getElementById(
|
45
|
+
var existingElement = document.getElementById(DROPDOWN_ID_CONTAINER);
|
48
46
|
if (!existingElement) {
|
49
47
|
var el = document.createElement("div");
|
50
|
-
el.id =
|
51
|
-
// style placeholder
|
48
|
+
el.id = DROPDOWN_ID_CONTAINER;
|
52
49
|
el.style.position = 'absolute';
|
53
50
|
el.style.top = '0';
|
54
51
|
el.style.left = '0';
|
@@ -63,7 +60,6 @@ var Dropdown = function (_a) {
|
|
63
60
|
}
|
64
61
|
setChange(true);
|
65
62
|
}, [open]);
|
66
|
-
// structure for append menu
|
67
63
|
function createAppendMenu() {
|
68
64
|
if (header && footer) {
|
69
65
|
return (React.createElement("div", { className: 'dropdown__menu dropdown__menu--has-head-foot', id: menuID, role: 'menu', ref: ref },
|
@@ -85,7 +81,6 @@ var Dropdown = function (_a) {
|
|
85
81
|
return (React.createElement("ul", { className: 'dropdown__menu ', id: menuID, role: 'menu', ref: ref }, dropdownElements));
|
86
82
|
}
|
87
83
|
}
|
88
|
-
// toggle menu
|
89
84
|
function toggleDisplay() {
|
90
85
|
if (!open) {
|
91
86
|
var menuRef_1;
|
@@ -134,15 +129,14 @@ var Dropdown = function (_a) {
|
|
134
129
|
}
|
135
130
|
}
|
136
131
|
function addInPlaceholder() {
|
137
|
-
var placeholder = document.getElementById(
|
132
|
+
var placeholder = document.getElementById(DROPDOWN_ID_CONTAINER);
|
138
133
|
var menu = createAppendMenu();
|
139
134
|
if (open) {
|
140
135
|
return ReactDOM.render(menu, placeholder);
|
141
136
|
}
|
142
137
|
else {
|
143
|
-
|
144
|
-
|
145
|
-
menuDOM.style.display = 'none';
|
138
|
+
if (placeholder) {
|
139
|
+
ReactDOM.unmountComponentAtNode(placeholder);
|
146
140
|
}
|
147
141
|
}
|
148
142
|
}
|
@@ -152,20 +146,7 @@ var Dropdown = function (_a) {
|
|
152
146
|
item['items'].forEach(function (el, key) {
|
153
147
|
submenuItems_1.push(each(el, key));
|
154
148
|
});
|
155
|
-
return (React.createElement(
|
156
|
-
React.createElement("div", { className: 'dropdown' },
|
157
|
-
React.createElement("button", { ref: refButtonSubMenu, className: 'dropdown__toggle dropdown-toggle', "aria-haspopup": "menu", tabIndex: 0, onMouseOver: function () {
|
158
|
-
var subMenuRef = refSubMenu.current;
|
159
|
-
var subToggleRef = refButtonSubMenu.current;
|
160
|
-
if (subMenuRef && subToggleRef) {
|
161
|
-
(0, core_1.createPopper)(subToggleRef, subMenuRef, {
|
162
|
-
placement: 'right-start',
|
163
|
-
});
|
164
|
-
}
|
165
|
-
}, onClick: item['onSelect'] },
|
166
|
-
item['icon'] ? React.createElement("i", { className: 'icon-' + item['icon'] }) : null,
|
167
|
-
item['label']),
|
168
|
-
React.createElement("ul", { ref: refSubMenu, role: 'menu', className: 'dropdown__menu' }, submenuItems_1))));
|
149
|
+
return (React.createElement(DropdownItemWithSubmenu, { key: index, index: index, item: item, menuID: menuID, subMenuItems: submenuItems_1, onChange: onChange }));
|
169
150
|
}
|
170
151
|
else if (item['type'] === 'group') {
|
171
152
|
var groupItems_1 = [];
|
@@ -181,7 +162,7 @@ var Dropdown = function (_a) {
|
|
181
162
|
return (React.createElement("li", { className: "dropdown__menu-divider", key: index }));
|
182
163
|
}
|
183
164
|
else {
|
184
|
-
return (React.createElement(DropdownItem, { key: index, label: item['label'], icon: item['icon'], active: item['active'], onSelect: item['onSelect'] }));
|
165
|
+
return (React.createElement(DropdownItem, { key: index, label: item['label'], icon: item['icon'], active: item['active'], onSelect: item['onSelect'], onChange: onChange }));
|
185
166
|
}
|
186
167
|
}
|
187
168
|
return (React.createElement("div", { className: 'dropdown ' + (open ? 'open' : '') },
|
@@ -223,9 +204,55 @@ var Dropdown = function (_a) {
|
|
223
204
|
};
|
224
205
|
exports.Dropdown = Dropdown;
|
225
206
|
var DropdownItem = function (_a) {
|
226
|
-
var label = _a.label, icon = _a.icon, active = _a.active, onSelect = _a.onSelect;
|
207
|
+
var label = _a.label, icon = _a.icon, active = _a.active, onSelect = _a.onSelect, onChange = _a.onChange;
|
227
208
|
return (React.createElement("li", { role: 'none', className: active ? 'dropdown__menu-item--active' : '' },
|
228
|
-
React.createElement("button", { tabIndex: 0, role: 'menuitem', onClick:
|
209
|
+
React.createElement("button", { tabIndex: 0, role: 'menuitem', onClick: function () {
|
210
|
+
setTimeout(function () {
|
211
|
+
onSelect();
|
212
|
+
});
|
213
|
+
if (onChange) {
|
214
|
+
onChange();
|
215
|
+
}
|
216
|
+
} },
|
229
217
|
React.createElement("i", { className: icon ? ('icon-' + icon) : '' }),
|
230
218
|
label)));
|
231
219
|
};
|
220
|
+
var DropdownItemWithSubmenu = function (_a) {
|
221
|
+
var index = _a.index, item = _a.item, menuID = _a.menuID, subMenuItems = _a.subMenuItems, onChange = _a.onChange;
|
222
|
+
var _b = React.useState(undefined), open = _b[0], setOpen = _b[1];
|
223
|
+
var refButtonSubMenu = React.useRef(null);
|
224
|
+
var refSubMenu = React.useRef(null);
|
225
|
+
var placeholder = document.getElementById(menuID);
|
226
|
+
React.useEffect(function () {
|
227
|
+
var subMenuRef = refSubMenu.current;
|
228
|
+
var subToggleRef = refButtonSubMenu.current;
|
229
|
+
if (open === true) {
|
230
|
+
placeholder === null || placeholder === void 0 ? void 0 : placeholder.appendChild(subMenuRef);
|
231
|
+
subMenuRef.style.display = 'block';
|
232
|
+
}
|
233
|
+
else if (open === false) {
|
234
|
+
placeholder === null || placeholder === void 0 ? void 0 : placeholder.removeChild(subMenuRef);
|
235
|
+
subMenuRef.style.display = 'none';
|
236
|
+
}
|
237
|
+
if (subMenuRef && subToggleRef) {
|
238
|
+
(0, core_1.createPopper)(subToggleRef, subMenuRef, {
|
239
|
+
placement: 'right-start',
|
240
|
+
});
|
241
|
+
}
|
242
|
+
}, [open]);
|
243
|
+
return (React.createElement("li", { key: index, ref: refButtonSubMenu },
|
244
|
+
React.createElement("div", { className: 'dropdown', onMouseLeave: function () { return setOpen(false); } },
|
245
|
+
React.createElement("button", { className: 'dropdown__toggle dropdown-toggle', "aria-haspopup": "menu", tabIndex: 0, onClick: function () {
|
246
|
+
if (item.onSelect) {
|
247
|
+
setTimeout(function () {
|
248
|
+
item.onSelect();
|
249
|
+
});
|
250
|
+
}
|
251
|
+
if (onChange) {
|
252
|
+
onChange();
|
253
|
+
}
|
254
|
+
}, onMouseOver: function () { return setOpen(true); } },
|
255
|
+
item['icon'] ? React.createElement("i", { className: 'icon-' + item['icon'] }) : null,
|
256
|
+
item['label']),
|
257
|
+
React.createElement("ul", { role: 'menu', ref: refSubMenu, style: { display: 'none' }, className: 'dropdown__menu' }, subMenuItems))));
|
258
|
+
};
|
@@ -0,0 +1,42 @@
|
|
1
|
+
import * as React from 'react';
|
2
|
+
interface IProps {
|
3
|
+
hours?: number;
|
4
|
+
minutes?: number;
|
5
|
+
seconds?: number;
|
6
|
+
disabled?: boolean;
|
7
|
+
inlineLabel?: boolean;
|
8
|
+
required?: boolean;
|
9
|
+
fullWidth?: boolean;
|
10
|
+
invalid?: boolean;
|
11
|
+
labelHidden?: boolean;
|
12
|
+
tabindex?: number;
|
13
|
+
label?: string;
|
14
|
+
info?: string;
|
15
|
+
error?: string;
|
16
|
+
onChange(e: number): void;
|
17
|
+
}
|
18
|
+
interface IState {
|
19
|
+
hours?: any;
|
20
|
+
minutes?: any;
|
21
|
+
seconds?: any;
|
22
|
+
blink?: string;
|
23
|
+
}
|
24
|
+
export declare class DurationInput extends React.PureComponent<IProps, IState> {
|
25
|
+
hourRef: React.RefObject<HTMLInputElement>;
|
26
|
+
minuteRef: React.RefObject<HTMLInputElement>;
|
27
|
+
secondRef: React.RefObject<HTMLInputElement>;
|
28
|
+
private htmlId;
|
29
|
+
constructor(props: IProps);
|
30
|
+
stateUpdate(state: string, parametar1?: number, parametar2?: number, parametar3?: number): string | number;
|
31
|
+
componentDidUpdate(prevProps: any, prevState: IState): void;
|
32
|
+
valueUpdate(): void;
|
33
|
+
handleKeyDown(event: React.KeyboardEvent<HTMLInputElement>): void;
|
34
|
+
handleKeyValue(event: React.KeyboardEvent<HTMLInputElement>, state: 'hours' | 'minutes' | 'seconds'): void;
|
35
|
+
zeroPad(value: number | string): string | number;
|
36
|
+
handleChange(event: React.ChangeEvent<HTMLInputElement>, state: 'hours' | 'minutes' | 'seconds'): void;
|
37
|
+
handleFocus(ref: HTMLInputElement | null, state: 'hours' | 'minutes' | 'seconds'): void;
|
38
|
+
handleFocusOnKeyUp(event: React.KeyboardEvent<HTMLInputElement>, ref: HTMLInputElement | null): void;
|
39
|
+
render(): JSX.Element;
|
40
|
+
}
|
41
|
+
export declare function getDurationString(seconds: number, minSections?: 1 | 2 | 3): string;
|
42
|
+
export {};
|
@@ -0,0 +1,364 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
3
|
+
var extendStatics = function (d, b) {
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
7
|
+
return extendStatics(d, b);
|
8
|
+
};
|
9
|
+
return function (d, b) {
|
10
|
+
if (typeof b !== "function" && b !== null)
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
12
|
+
extendStatics(d, b);
|
13
|
+
function __() { this.constructor = d; }
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
15
|
+
};
|
16
|
+
})();
|
17
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
18
|
+
if (k2 === undefined) k2 = k;
|
19
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
20
|
+
}) : (function(o, m, k, k2) {
|
21
|
+
if (k2 === undefined) k2 = k;
|
22
|
+
o[k2] = m[k];
|
23
|
+
}));
|
24
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
25
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
26
|
+
}) : function(o, v) {
|
27
|
+
o["default"] = v;
|
28
|
+
});
|
29
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
30
|
+
if (mod && mod.__esModule) return mod;
|
31
|
+
var result = {};
|
32
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
33
|
+
__setModuleDefault(result, mod);
|
34
|
+
return result;
|
35
|
+
};
|
36
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
37
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
38
|
+
};
|
39
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
40
|
+
exports.getDurationString = exports.DurationInput = void 0;
|
41
|
+
var React = __importStar(require("react"));
|
42
|
+
var classnames_1 = __importDefault(require("classnames"));
|
43
|
+
var moment_1 = __importDefault(require("moment"));
|
44
|
+
var react_id_generator_1 = __importDefault(require("react-id-generator"));
|
45
|
+
var Form_1 = require("./Form");
|
46
|
+
var DurationInput = /** @class */ (function (_super) {
|
47
|
+
__extends(DurationInput, _super);
|
48
|
+
function DurationInput(props) {
|
49
|
+
var _this = _super.call(this, props) || this;
|
50
|
+
_this.htmlId = (0, react_id_generator_1.default)();
|
51
|
+
_this.state = {
|
52
|
+
hours: _this.stateUpdate('hours', _this.props.hours, _this.props.minutes, _this.props.seconds),
|
53
|
+
minutes: _this.stateUpdate('minutes', _this.props.minutes, _this.props.seconds),
|
54
|
+
seconds: _this.stateUpdate('seconds', _this.props.seconds),
|
55
|
+
blink: '',
|
56
|
+
};
|
57
|
+
_this.hourRef = React.createRef();
|
58
|
+
_this.minuteRef = React.createRef();
|
59
|
+
_this.secondRef = React.createRef();
|
60
|
+
_this.handleKeyDown = _this.handleKeyDown.bind(_this);
|
61
|
+
_this.zeroPad = _this.zeroPad.bind(_this);
|
62
|
+
_this.handleChange = _this.handleChange.bind(_this);
|
63
|
+
_this.handleFocusOnKeyUp = _this.handleFocusOnKeyUp.bind(_this);
|
64
|
+
_this.handleKeyValue = _this.handleKeyValue.bind(_this);
|
65
|
+
_this.valueUpdate = _this.valueUpdate.bind(_this);
|
66
|
+
_this.stateUpdate = _this.stateUpdate.bind(_this);
|
67
|
+
return _this;
|
68
|
+
}
|
69
|
+
DurationInput.prototype.stateUpdate = function (state, parametar1, parametar2, parametar3) {
|
70
|
+
var value;
|
71
|
+
if (state === 'hours') {
|
72
|
+
value = parametar1
|
73
|
+
? parametar1 + Math.floor((parametar2 || 0) / 60) + Math.floor((parametar3 || 0) / 3600)
|
74
|
+
: Math.floor((parametar2 || 0) / 60) + Math.floor((parametar3 || 0) / 3600);
|
75
|
+
}
|
76
|
+
else if (state === 'minutes') {
|
77
|
+
value = parametar1
|
78
|
+
? (parametar1 % 60) + Math.floor((parametar2 || 0) % 3600 / 60)
|
79
|
+
: Math.floor((parametar2 || 0) % 3600 / 60);
|
80
|
+
}
|
81
|
+
else {
|
82
|
+
value = parametar1 ? parametar1 % 60 : 0;
|
83
|
+
}
|
84
|
+
return this.zeroPad(value);
|
85
|
+
};
|
86
|
+
DurationInput.prototype.componentDidUpdate = function (prevProps, prevState) {
|
87
|
+
var _this = this;
|
88
|
+
if (!this.hourRef.current || !this.minuteRef.current || !this.secondRef.current) {
|
89
|
+
return;
|
90
|
+
}
|
91
|
+
if (this.state.hours !== prevState.hours) {
|
92
|
+
if (Number(this.hourRef.current.value) > 99) {
|
93
|
+
this.setState({
|
94
|
+
hours: this.zeroPad(99),
|
95
|
+
});
|
96
|
+
}
|
97
|
+
}
|
98
|
+
if (this.state.minutes !== prevState.minutes) {
|
99
|
+
if (Number(this.minuteRef.current.value) > 59) {
|
100
|
+
this.setState({
|
101
|
+
hours: this.zeroPad(Number(this.state.hours) + 1),
|
102
|
+
minutes: this.zeroPad(this.state.minutes % 60),
|
103
|
+
});
|
104
|
+
this.setState({ blink: 'hour' });
|
105
|
+
setTimeout(function () {
|
106
|
+
_this.setState({ blink: '' });
|
107
|
+
}, 500);
|
108
|
+
}
|
109
|
+
if (Number(this.minuteRef.current.value) < 0) {
|
110
|
+
this.setState({
|
111
|
+
hours: this.zeroPad(Number(this.state.hours)) > 0
|
112
|
+
? this.zeroPad(Number(this.state.hours) - 1)
|
113
|
+
: this.zeroPad(Number(this.state.hours)),
|
114
|
+
minutes: 59,
|
115
|
+
});
|
116
|
+
this.setState({ blink: 'hour' });
|
117
|
+
setTimeout(function () {
|
118
|
+
_this.setState({ blink: '' });
|
119
|
+
}, 500);
|
120
|
+
}
|
121
|
+
}
|
122
|
+
if (this.state.seconds !== prevState.seconds) {
|
123
|
+
if (Number(this.secondRef.current.value) > 59) {
|
124
|
+
this.setState({
|
125
|
+
minutes: this.zeroPad(Number(this.state.minutes) + 1),
|
126
|
+
seconds: this.zeroPad(this.state.seconds % 60),
|
127
|
+
});
|
128
|
+
this.setState({ blink: 'minute' });
|
129
|
+
setTimeout(function () {
|
130
|
+
_this.setState({ blink: '' });
|
131
|
+
}, 500);
|
132
|
+
}
|
133
|
+
if (Number(this.secondRef.current.value) < 0) {
|
134
|
+
this.setState({
|
135
|
+
minutes: this.zeroPad(Number(this.state.minutes) - 1),
|
136
|
+
seconds: 59,
|
137
|
+
});
|
138
|
+
this.setState({ blink: 'minute' });
|
139
|
+
setTimeout(function () {
|
140
|
+
_this.setState({ blink: '' });
|
141
|
+
}, 500);
|
142
|
+
}
|
143
|
+
}
|
144
|
+
if (this.hourRef.current.value.length === 2
|
145
|
+
&& this.minuteRef.current.value.length === 2
|
146
|
+
&& this.secondRef.current.value.length === 2) {
|
147
|
+
if ((this.props.hours !== prevProps.hours)
|
148
|
+
|| (this.props.minutes !== prevProps.minutes)
|
149
|
+
|| (this.props.seconds !== prevProps.seconds)) {
|
150
|
+
this.setState({
|
151
|
+
hours: this.stateUpdate('hours', this.props.hours, this.props.minutes, this.props.seconds),
|
152
|
+
minutes: this.stateUpdate('minutes', this.props.minutes, this.props.seconds),
|
153
|
+
seconds: this.stateUpdate('seconds', this.props.seconds),
|
154
|
+
});
|
155
|
+
}
|
156
|
+
}
|
157
|
+
};
|
158
|
+
DurationInput.prototype.valueUpdate = function () {
|
159
|
+
if (this.props.onChange) {
|
160
|
+
this.props.onChange(moment_1.default.duration("".concat(this.state.hours, ":").concat(this.state.minutes, ":").concat(this.state.seconds))
|
161
|
+
.asSeconds());
|
162
|
+
}
|
163
|
+
};
|
164
|
+
DurationInput.prototype.handleKeyDown = function (event) {
|
165
|
+
if (!(event.target instanceof HTMLInputElement)) {
|
166
|
+
return;
|
167
|
+
}
|
168
|
+
if (event.target.id === 'hours') {
|
169
|
+
if (event.key === 'ArrowRight') {
|
170
|
+
if (event.target.selectionEnd === event.target.value.length) {
|
171
|
+
this.handleFocus(this.minuteRef.current, event.target.id);
|
172
|
+
}
|
173
|
+
}
|
174
|
+
if (event.key === 'ArrowLeft') {
|
175
|
+
if (event.target.selectionStart === 0) {
|
176
|
+
this.handleFocus(this.secondRef.current, event.target.id);
|
177
|
+
}
|
178
|
+
}
|
179
|
+
}
|
180
|
+
if (event.target.id === 'minutes') {
|
181
|
+
if (event.key === 'ArrowRight') {
|
182
|
+
if (event.target.selectionEnd === event.target.value.length) {
|
183
|
+
this.handleFocus(this.secondRef.current, event.target.id);
|
184
|
+
}
|
185
|
+
}
|
186
|
+
if (event.key === 'ArrowLeft') {
|
187
|
+
if (event.target.selectionStart === 0) {
|
188
|
+
this.handleFocus(this.hourRef.current, event.target.id);
|
189
|
+
}
|
190
|
+
}
|
191
|
+
}
|
192
|
+
if (event.target.id === 'seconds') {
|
193
|
+
if (event.key === 'ArrowRight') {
|
194
|
+
if (event.target.selectionEnd === event.target.value.length) {
|
195
|
+
this.handleFocus(this.hourRef.current, event.target.id);
|
196
|
+
}
|
197
|
+
}
|
198
|
+
if (event.key === 'ArrowLeft') {
|
199
|
+
if (event.target.selectionStart === 0) {
|
200
|
+
this.handleFocus(this.minuteRef.current, event.target.id);
|
201
|
+
}
|
202
|
+
}
|
203
|
+
}
|
204
|
+
if (event.key === 'ArrowUp' || event.key === 'ArrowDown') {
|
205
|
+
this.handleKeyValue(event, event.target.id);
|
206
|
+
setTimeout(this.valueUpdate);
|
207
|
+
}
|
208
|
+
if (event.key === 'ArrowRight' || event.key === 'ArrowLeft') {
|
209
|
+
if (!this.state.hours || !this.state.minutes || !this.state.seconds) {
|
210
|
+
setTimeout(this.valueUpdate);
|
211
|
+
}
|
212
|
+
}
|
213
|
+
};
|
214
|
+
DurationInput.prototype.handleKeyValue = function (event, state) {
|
215
|
+
if (!(event.target instanceof HTMLInputElement)) {
|
216
|
+
return;
|
217
|
+
}
|
218
|
+
if (!this.state[state]) {
|
219
|
+
return;
|
220
|
+
}
|
221
|
+
event.preventDefault();
|
222
|
+
event.stopPropagation();
|
223
|
+
var stateClone = {};
|
224
|
+
if (event.key === 'ArrowUp') {
|
225
|
+
if (event.target.id === 'hours') {
|
226
|
+
stateClone[state] = this.state[state] < 99
|
227
|
+
? this.zeroPad(Number(this.state[state]) + 1)
|
228
|
+
: this.zeroPad(99);
|
229
|
+
}
|
230
|
+
else {
|
231
|
+
stateClone[state] = this.zeroPad(Number(this.state[state]) + 1);
|
232
|
+
}
|
233
|
+
}
|
234
|
+
else if (event.key === 'ArrowDown') {
|
235
|
+
if (event.target.id === 'hours') {
|
236
|
+
stateClone[state] = this.state[state] > 0
|
237
|
+
? this.zeroPad(Number(this.state[state]) - 1)
|
238
|
+
: this.zeroPad(0);
|
239
|
+
}
|
240
|
+
else {
|
241
|
+
stateClone[state] = this.zeroPad(Number(this.state[state]) - 1);
|
242
|
+
}
|
243
|
+
}
|
244
|
+
this.setState(stateClone);
|
245
|
+
};
|
246
|
+
DurationInput.prototype.zeroPad = function (value) {
|
247
|
+
if (value.toString().length === 1 || value === 0) {
|
248
|
+
return "0".concat(value);
|
249
|
+
}
|
250
|
+
else if (!value) {
|
251
|
+
return '00';
|
252
|
+
}
|
253
|
+
else {
|
254
|
+
return value;
|
255
|
+
}
|
256
|
+
};
|
257
|
+
DurationInput.prototype.handleChange = function (event, state) {
|
258
|
+
var stateClone = {};
|
259
|
+
if (event.target.value.length > 2) {
|
260
|
+
if (event.target.selectionStart === 1) {
|
261
|
+
stateClone[state] = event.target.value.slice(0, 1);
|
262
|
+
}
|
263
|
+
else if (event.target.selectionStart === 2) {
|
264
|
+
stateClone[state] = event.target.value.slice(1, 2);
|
265
|
+
}
|
266
|
+
else {
|
267
|
+
stateClone[state] = event.target.value.slice(2, 3);
|
268
|
+
}
|
269
|
+
}
|
270
|
+
else {
|
271
|
+
stateClone[state] = event.target.value;
|
272
|
+
}
|
273
|
+
this.setState(stateClone);
|
274
|
+
setTimeout(this.valueUpdate);
|
275
|
+
};
|
276
|
+
DurationInput.prototype.handleFocus = function (ref, state) {
|
277
|
+
ref === null || ref === void 0 ? void 0 : ref.focus();
|
278
|
+
setTimeout(function () {
|
279
|
+
ref === null || ref === void 0 ? void 0 : ref.setSelectionRange(0, 2);
|
280
|
+
});
|
281
|
+
var stateClone = {};
|
282
|
+
stateClone[state] = this.zeroPad(this.state[state]);
|
283
|
+
this.setState(stateClone);
|
284
|
+
};
|
285
|
+
DurationInput.prototype.handleFocusOnKeyUp = function (event, ref) {
|
286
|
+
if (event.key !== 'ArrowRight' && event.key !== 'ArrowLeft' && event.key !== 'ArrowUp' && event.key !== 'ArrowDown' && event.key !== 'Backspace') {
|
287
|
+
if ((event.keyCode > 46 && event.keyCode < 58) || (event.keyCode > 95 && event.keyCode < 106)) {
|
288
|
+
var target = event.target;
|
289
|
+
if (target.value.length >= 2) {
|
290
|
+
ref === null || ref === void 0 ? void 0 : ref.focus();
|
291
|
+
setTimeout(function () {
|
292
|
+
ref === null || ref === void 0 ? void 0 : ref.setSelectionRange(0, 2);
|
293
|
+
});
|
294
|
+
}
|
295
|
+
}
|
296
|
+
}
|
297
|
+
};
|
298
|
+
DurationInput.prototype.render = function () {
|
299
|
+
var _this = this;
|
300
|
+
var InputClasses = (0, classnames_1.default)('sd-input__duration-input');
|
301
|
+
return (React.createElement(Form_1.InputWrapper, { label: this.props.label, error: this.props.error, required: this.props.required, disabled: this.props.disabled, invalid: this.props.invalid, info: this.props.info, inlineLabel: this.props.inlineLabel, labelHidden: this.props.labelHidden, fullWidth: this.props.fullWidth, htmlId: this.htmlId, tabindex: this.props.tabindex },
|
302
|
+
React.createElement("div", { className: InputClasses },
|
303
|
+
React.createElement("input", { className: "duration-input ".concat(this.state.blink === 'hour' ? 'blink_me' : ''), type: 'text', id: 'hours', autoComplete: "off", max: 99, min: 0, ref: this.hourRef, value: this.state.hours, disabled: this.props.disabled, onKeyDown: function (event) { return _this.handleKeyDown(event); }, onKeyUp: function (event) { return _this.handleFocusOnKeyUp(event, _this.minuteRef.current); }, onChange: function (event) { _this.handleChange(event, 'hours'); }, onBlur: function (event) { return _this.setState({ hours: _this.zeroPad(event.target.value) }); }, onKeyPress: function (event) {
|
304
|
+
if (!/[0-9]/.test(event.key)) {
|
305
|
+
event.preventDefault();
|
306
|
+
}
|
307
|
+
} }),
|
308
|
+
React.createElement("span", { className: 'sd-input__suffix' }, "h"),
|
309
|
+
React.createElement("input", { className: "duration-input ".concat(this.state.blink === 'minute' ? 'blink_me' : ''), type: 'text', id: 'minutes', autoComplete: "off", ref: this.minuteRef, value: this.state.minutes, disabled: this.props.disabled, onKeyDown: function (event) { return _this.handleKeyDown(event); }, onKeyUp: function (event) { return _this.handleFocusOnKeyUp(event, _this.secondRef.current); }, onChange: function (event) { _this.handleChange(event, 'minutes'); }, onBlur: function (event) { return _this.setState({ minutes: _this.zeroPad(event.target.value) }); }, onKeyPress: function (event) {
|
310
|
+
if (!/[0-9]/.test(event.key)) {
|
311
|
+
event.preventDefault();
|
312
|
+
}
|
313
|
+
} }),
|
314
|
+
React.createElement("span", { className: 'sd-input__suffix' }, "m"),
|
315
|
+
React.createElement("input", { className: 'duration-input', type: 'text', id: 'seconds', autoComplete: "off", ref: this.secondRef, value: this.state.seconds, disabled: this.props.disabled, onKeyDown: function (event) { return _this.handleKeyDown(event); }, onKeyUp: function (event) { return _this.handleFocusOnKeyUp(event, _this.hourRef.current); }, onChange: function (event) { _this.handleChange(event, 'seconds'); }, onBlur: function (event) { return _this.setState({ seconds: _this.zeroPad(event.target.value) }); }, onKeyPress: function (event) {
|
316
|
+
if (!/[0-9]/.test(event.key)) {
|
317
|
+
event.preventDefault();
|
318
|
+
}
|
319
|
+
} }),
|
320
|
+
React.createElement("span", { className: 'sd-input__suffix' }, "s"))));
|
321
|
+
};
|
322
|
+
return DurationInput;
|
323
|
+
}(React.PureComponent));
|
324
|
+
exports.DurationInput = DurationInput;
|
325
|
+
function getDurationString(seconds, minSections) {
|
326
|
+
if (minSections === void 0) { minSections = 1; }
|
327
|
+
function zeroPad(value) {
|
328
|
+
if (value.toString().length === 1 || value === 0) {
|
329
|
+
return "0".concat(value);
|
330
|
+
}
|
331
|
+
else if (!value) {
|
332
|
+
return '00';
|
333
|
+
}
|
334
|
+
else {
|
335
|
+
return value;
|
336
|
+
}
|
337
|
+
}
|
338
|
+
var hour = zeroPad(Math.floor(seconds / 3600));
|
339
|
+
var minute = zeroPad(Math.floor((seconds % 3600) / 60));
|
340
|
+
var second = zeroPad(Math.floor(seconds % 60));
|
341
|
+
if (minSections === 3) {
|
342
|
+
return "".concat(hour, "h ").concat(minute, "m ").concat(second, "s");
|
343
|
+
}
|
344
|
+
else if (minSections === 2) {
|
345
|
+
if (Number(hour) > 0) {
|
346
|
+
return "".concat(hour, "h ").concat(minute, "m ").concat(second, "s");
|
347
|
+
}
|
348
|
+
else {
|
349
|
+
return "".concat(minute, "m ").concat(second, "s");
|
350
|
+
}
|
351
|
+
}
|
352
|
+
else {
|
353
|
+
if (Number(hour) === 0 && Number(minute) === 0) {
|
354
|
+
return "".concat(second, "s");
|
355
|
+
}
|
356
|
+
else if (Number(hour) === 0 && Number(minute) > 0) {
|
357
|
+
return "".concat(minute, "m ").concat(second, "s");
|
358
|
+
}
|
359
|
+
else {
|
360
|
+
return "".concat(hour, "h ").concat(minute, "m ").concat(second, "s");
|
361
|
+
}
|
362
|
+
}
|
363
|
+
}
|
364
|
+
exports.getDurationString = getDurationString;
|
@@ -53,7 +53,7 @@ var EmptyState = /** @class */ (function (_super) {
|
|
53
53
|
_a["content-state__image--".concat(this.props.size)] = this.props.size || this.props.size !== undefined,
|
54
54
|
_a));
|
55
55
|
var image = require("../../app/img/empty_states/empty-state--".concat(this.props.size ? this.props.size : 'small', "-").concat(this.props.illustration ? this.props.illustration : '1', ".svg"));
|
56
|
-
return (React.createElement("div", { className: 'content-state--empty-container' },
|
56
|
+
return (React.createElement("div", { className: 'content-state--empty-container' + (this.props.absolutePositioned ? ' content-state__empty-container--absolute' : '') },
|
57
57
|
React.createElement("div", { className: 'content-state__empty-info' },
|
58
58
|
React.createElement("figure", { className: classes },
|
59
59
|
React.createElement("img", { src: image, alt: this.props.illustration })),
|
@@ -1,8 +1,11 @@
|
|
1
1
|
import * as React from 'react';
|
2
2
|
interface IProps {
|
3
|
-
style?: 'normal' | 'light';
|
3
|
+
style?: 'normal' | 'light' | 'boxed';
|
4
|
+
state?: 'default' | 'focused' | 'warning';
|
4
5
|
text: string;
|
5
6
|
forId?: string;
|
7
|
+
required?: boolean;
|
8
|
+
invalid?: boolean;
|
6
9
|
}
|
7
10
|
export declare class FormLabel extends React.PureComponent<IProps> {
|
8
11
|
render(): JSX.Element;
|
@@ -46,9 +46,15 @@ var FormLabel = /** @class */ (function (_super) {
|
|
46
46
|
return _super !== null && _super.apply(this, arguments) || this;
|
47
47
|
}
|
48
48
|
FormLabel.prototype.render = function () {
|
49
|
-
var
|
50
|
-
|
51
|
-
|
49
|
+
var _a;
|
50
|
+
var classes = (0, classnames_1.default)('form-label', (_a = {
|
51
|
+
'form-label--light': this.props.style === 'light',
|
52
|
+
'form-label--boxed': this.props.style === 'boxed',
|
53
|
+
'form-label--required': this.props.required,
|
54
|
+
'form-label--invalid': this.props.invalid
|
55
|
+
},
|
56
|
+
_a["form-label--".concat(this.props.state)] = this.props.state !== 'default' && this.props.state !== undefined,
|
57
|
+
_a));
|
52
58
|
return (React.createElement("label", { htmlFor: this.props.forId, className: classes }, this.props.text));
|
53
59
|
};
|
54
60
|
return FormLabel;
|
@@ -0,0 +1,12 @@
|
|
1
|
+
import * as React from 'react';
|
2
|
+
interface IProps {
|
3
|
+
children: React.ReactNode;
|
4
|
+
spaces?: 'default' | 'condensed' | 'relaxed';
|
5
|
+
marginBottom?: '0' | '1' | '2' | '3' | '4';
|
6
|
+
inlineLabels?: boolean;
|
7
|
+
rowLabel?: string;
|
8
|
+
}
|
9
|
+
export declare class FormRowNew extends React.PureComponent<IProps> {
|
10
|
+
render(): JSX.Element;
|
11
|
+
}
|
12
|
+
export {};
|