react-ui-basics 0.0.174 → 0.0.177

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.
Files changed (160) hide show
  1. package/Animated.js.map +1 -0
  2. package/AutocompleteSelect.js +9 -23
  3. package/AutocompleteSelect.js.map +1 -0
  4. package/Button.js.map +1 -0
  5. package/CalendarMonthView.css +20 -0
  6. package/CalendarMonthView.d.ts +12 -0
  7. package/CalendarMonthView.js +52 -0
  8. package/CalendarMonthView.js.map +1 -0
  9. package/Checkbox.js.map +1 -0
  10. package/CircleProgress.js.map +1 -0
  11. package/CommonFields.js.map +1 -0
  12. package/DNDContainer.js.map +1 -0
  13. package/DNDDraggable.js.map +1 -0
  14. package/DNDDroppable.js.map +1 -0
  15. package/DatePicker.css +93 -0
  16. package/DatePicker.d.ts +32 -0
  17. package/DatePicker.js +116 -0
  18. package/DatePicker.js.map +1 -0
  19. package/DateTools.d.ts +39 -0
  20. package/DateTools.js +73 -0
  21. package/DateTools.js.map +1 -0
  22. package/Dialog.js.map +1 -0
  23. package/DropFileInput.js.map +1 -0
  24. package/DroppableHorizontalList.js.map +1 -0
  25. package/DroppableList.js.map +1 -0
  26. package/Dropzone.js.map +1 -0
  27. package/FilteredList.js +234 -139
  28. package/FilteredList.js.map +1 -0
  29. package/FloatingActionButton.js.map +1 -0
  30. package/FormUploadProgress.js.map +1 -0
  31. package/ImageGallery.js.map +1 -0
  32. package/MaterialIcon.js.map +1 -0
  33. package/Modal.js.map +1 -0
  34. package/ModalMenu.js.map +1 -0
  35. package/ReactConstants.js.map +1 -0
  36. package/ReactCreateElement.js.map +1 -0
  37. package/ReadyListener.js.map +1 -0
  38. package/Scrollable.js.map +1 -0
  39. package/ScrollableTable.js.map +1 -0
  40. package/Size.js.map +1 -0
  41. package/Snackbar.js.map +1 -0
  42. package/SpinningProgress.js.map +1 -0
  43. package/Switch.js.map +1 -0
  44. package/Table.js.map +1 -0
  45. package/TextField.js.map +1 -0
  46. package/Tools.d.ts +2 -2
  47. package/Tools.js.map +1 -0
  48. package/bundle.css +816 -677
  49. package/index.js +4 -0
  50. package/index.js.map +1 -0
  51. package/package.json +1 -1
  52. package/router/HistoryTools.js.map +1 -1
  53. package/router/Link.js.map +1 -1
  54. package/router/NavLink.js.map +1 -1
  55. package/router/Route.js.map +1 -1
  56. package/router/index.js.map +1 -1
  57. package/src/Animated.css +7 -0
  58. package/src/Animated.js +219 -0
  59. package/src/Animated.scss +8 -0
  60. package/src/AutocompleteSelect.css +256 -0
  61. package/src/AutocompleteSelect.js +473 -0
  62. package/src/AutocompleteSelect.scss +322 -0
  63. package/src/Button.css +138 -0
  64. package/src/Button.js +104 -0
  65. package/src/Button.scss +177 -0
  66. package/src/CalendarMonthView.css +20 -0
  67. package/src/CalendarMonthView.scss +25 -0
  68. package/src/CalendarMonthView.tsx +80 -0
  69. package/src/Checkbox.css +56 -0
  70. package/src/Checkbox.js +52 -0
  71. package/src/Checkbox.scss +87 -0
  72. package/src/CircleProgress.css +11 -0
  73. package/src/CircleProgress.js +38 -0
  74. package/src/CircleProgress.scss +13 -0
  75. package/src/CommonFields.js +21 -0
  76. package/src/DNDContainer.css +26 -0
  77. package/src/DNDContainer.js +263 -0
  78. package/src/DNDContainer.scss +33 -0
  79. package/src/DNDDraggable.js +55 -0
  80. package/src/DNDDroppable.js +58 -0
  81. package/src/DatePicker.css +93 -0
  82. package/src/DatePicker.scss +118 -0
  83. package/src/DatePicker.tsx +179 -0
  84. package/src/DateTools.ts +85 -0
  85. package/src/Dialog.css +36 -0
  86. package/src/Dialog.js +160 -0
  87. package/src/Dialog.scss +42 -0
  88. package/src/DropFileInput.css +24 -0
  89. package/src/DropFileInput.js +45 -0
  90. package/src/DropFileInput.scss +28 -0
  91. package/src/DroppableHorizontalList.js +190 -0
  92. package/src/DroppableList.css +14 -0
  93. package/src/DroppableList.js +201 -0
  94. package/src/DroppableList.scss +27 -0
  95. package/src/Dropzone.css +54 -0
  96. package/src/Dropzone.js +140 -0
  97. package/src/Dropzone.scss +66 -0
  98. package/src/FilteredList.css +68 -0
  99. package/src/FilteredList.js +196 -0
  100. package/src/FilteredList.scss +86 -0
  101. package/src/FloatingActionButton.css +20 -0
  102. package/src/FloatingActionButton.js +35 -0
  103. package/src/FloatingActionButton.scss +25 -0
  104. package/src/FormUploadProgress.css +61 -0
  105. package/src/FormUploadProgress.js +87 -0
  106. package/src/FormUploadProgress.scss +78 -0
  107. package/src/ImageGallery.css +196 -0
  108. package/src/ImageGallery.js +935 -0
  109. package/src/ImageGallery.scss +256 -0
  110. package/src/MaterialIcon.js +1837 -0
  111. package/src/Modal.css +61 -0
  112. package/src/Modal.js +160 -0
  113. package/src/Modal.scss +73 -0
  114. package/src/ModalMenu.css +30 -0
  115. package/src/ModalMenu.js +59 -0
  116. package/src/ModalMenu.scss +36 -0
  117. package/src/ReactConstants.ts +42 -0
  118. package/src/ReactCreateElement.js +5 -0
  119. package/src/ReadyListener.js +53 -0
  120. package/src/ResizeObserver.ts +50 -0
  121. package/src/Scrollable.css +80 -0
  122. package/src/Scrollable.js +388 -0
  123. package/src/Scrollable.scss +100 -0
  124. package/src/ScrollableTable.css +6 -0
  125. package/src/ScrollableTable.scss +12 -0
  126. package/src/ScrollableTable.tsx +39 -0
  127. package/src/Size.js +56 -0
  128. package/src/Snackbar.css +40 -0
  129. package/src/Snackbar.js +71 -0
  130. package/src/Snackbar.scss +47 -0
  131. package/src/SpinningProgress.css +49 -0
  132. package/src/SpinningProgress.js +19 -0
  133. package/src/SpinningProgress.scss +57 -0
  134. package/src/Switch.css +69 -0
  135. package/src/Switch.js +54 -0
  136. package/src/Switch.scss +73 -0
  137. package/src/Table.css +94 -0
  138. package/src/Table.scss +121 -0
  139. package/src/Table.tsx +360 -0
  140. package/src/TextField.css +122 -0
  141. package/src/TextField.js +162 -0
  142. package/src/TextField.scss +160 -0
  143. package/src/Tools.test.js +105 -0
  144. package/src/Tools.ts +231 -0
  145. package/src/global.css +1 -0
  146. package/src/global.scss +6 -0
  147. package/src/index.js +84 -0
  148. package/src/router/HistoryTools.js +32 -0
  149. package/src/router/Link.js +27 -0
  150. package/src/router/NavLink.js +25 -0
  151. package/src/router/README.md +55 -0
  152. package/src/router/Route.js +209 -0
  153. package/src/router/Route.test.js +139 -0
  154. package/src/router/index.js +14 -0
  155. package/src/store/ProxyTools.js +91 -0
  156. package/src/store/ProxyTools.test.js +97 -0
  157. package/src/store/Store.ts +91 -0
  158. package/store/ProxyTools.js.map +1 -1
  159. package/store/Store.js.map +1 -1
  160. package/FilteredList.d.ts +0 -61
package/DatePicker.js ADDED
@@ -0,0 +1,116 @@
1
+ import ReactConstants from "./ReactConstants";
2
+ import {clientHeight as __clientHeight, clientWidth as __clientWidth, createAccessor as __createAccessor, data as __data, height as __height, left as __left, length as __length, pageX as __pageX, pageY as __pageY, props as __props, scrollLeft as __scrollLeft, scrollTop as __scrollTop, state as __state, style as __style, target as __target, top as __top, value as __value, width as __width} from "./CommonFields";
3
+
4
+ import { jsxs as jsxRuntime_1, jsx as jsxRuntime_2 } from 'react/jsx-runtime';
5
+ import {toConsumableArray as __toConsumableArray} from "./_virtual/_rollupPluginBabelHelpers";
6
+ import {extends as __extends} from "./_virtual/_rollupPluginBabelHelpers";
7
+ import {inherits as __inherits} from "./_virtual/_rollupPluginBabelHelpers";
8
+ import './DatePicker.css';
9
+ import React from 'react';
10
+ import TextField from './TextField.js';
11
+ import { dateOf, TimeUnit, equals, get } from './DateTools.js';
12
+ import { orNoop, classNames, preventDefault } from './Tools.js';
13
+ import Button from './Button.js';
14
+ import CalendarMonthView from './CalendarMonthView.js';
15
+ import MaterialIcon from './MaterialIcon.js';
16
+
17
+ var DayRenderer = function (_a) {
18
+ var day = _a.day, selected = _a.selected, minDate = _a.minDate, onClick = _a[ReactConstants[6]];
19
+ return jsxRuntime_2("span", __extends({ [ReactConstants[5]]: classNames('value', minDate && (day.isBefore(minDate) && !day.isSameDate(minDate)) && 'inactive', selected && day.isSameDate(selected) && 'selected'), [ReactConstants[6]]: function (e) {
20
+ preventDefault(e);
21
+ if (minDate && (day.isBefore(minDate) && !day.isSameDate(minDate)))
22
+ return;
23
+ onClick(day);
24
+ } }, { [ReactConstants[4]]: get(day, TimeUnit.DAY) }));
25
+ };
26
+ var DatePicker = /** @class */ (function (_super) {
27
+ __inherits(DatePicker, _super);
28
+ function DatePicker(props) {
29
+ var _this = _super.call(this, props) || this;
30
+ _this[ReactConstants[7]] = function (value) {
31
+ _this.setState({ value: value });
32
+ orNoop(__props(_this)[ReactConstants[7]])({
33
+ target: {
34
+ id: __props(_this).id,
35
+ name: __props(_this).name,
36
+ value: value,
37
+ }
38
+ });
39
+ };
40
+ var date = __value(props) || new Date();
41
+ _this.state = {
42
+ focused: false,
43
+ value: date,
44
+ text: props.formatter(date),
45
+ selectedMonth: dateOf(date).resetTime().set(1, TimeUnit.DAY),
46
+ };
47
+ return _this;
48
+ }
49
+ DatePicker.prototype[ReactConstants[2]] = function (prevProps, prevState, snapshot) {
50
+ if (__props(this).value !== __value(prevProps))
51
+ this.setState({
52
+ value: __props(this).value,
53
+ selectedMonth: dateOf(__props(this).value).resetTime().set(1, TimeUnit.DAY),
54
+ text: __props(this).formatter(__props(this).value)
55
+ });
56
+ };
57
+ DatePicker.prototype[ReactConstants[0]] = function () {
58
+ var _this = this;
59
+ document.addEventListener('mousedown', this.listener = function (e) {
60
+ if (__state(_this).focused && !_this.el.contains(__target(e)))
61
+ _this.setState({ focused: false });
62
+ });
63
+ };
64
+ DatePicker.prototype[ReactConstants[1]] = function () {
65
+ document.removeEventListener('mousedown', this.listener);
66
+ };
67
+ DatePicker.prototype.shouldComponentUpdate = function (nextProps, nextState, nextContext) {
68
+ if (!equals(__props(this).value, __value(nextProps)))
69
+ return true;
70
+ if (!equals(__state(this).value, __value(nextState)))
71
+ return true;
72
+ if (__state(this).text !== nextState.text)
73
+ return true;
74
+ if (__state(this).focused !== nextState.focused)
75
+ return true;
76
+ if (__state(this).selectedMonth !== nextState.selectedMonth)
77
+ return true;
78
+ if (!equals(__props(this).minDate, nextProps.minDate))
79
+ return true;
80
+ return false;
81
+ };
82
+ DatePicker.prototype[ReactConstants[3]] = function () {
83
+ var _this = this;
84
+ var _a = __props(this), minDate = _a.minDate, formatter = _a.formatter, parser = _a.parser, dayOfWeekToString = _a.dayOfWeekToString, monthToString = _a.monthToString;
85
+ var _b = __state(this), value = __value(_b), text = _b.text, focused = _b.focused, selectedMonth = _b.selectedMonth;
86
+ return jsxRuntime_1("div", __extends({ [ReactConstants[5]]: "DatePicker", ref: function (el) { return _this.el = el; } }, { [ReactConstants[4]]: [jsxRuntime_2(TextField, { id: 'value', value: text, autoComplete: "off", onFocus: function () { return _this.setState({ focused: true }); }, [ReactConstants[7]]: function (e) {
87
+ var text = __target(e).value;
88
+ try {
89
+ var date = parser(text);
90
+ if (date instanceof Date && !Number.isNaN(date.getTime())) {
91
+ if (date && value.getTime() !== date.getTime())
92
+ _this[ReactConstants[7]](date);
93
+ }
94
+ _this.setState({ text: text });
95
+ }
96
+ catch (ignored) {
97
+ }
98
+ }, onKeyDown: function (e) {
99
+ if ((e.keyCode === 27 /*esc*/ || e.keyCode === 13 /*enter*/) && focused) {
100
+ e.preventDefault();
101
+ _this.setState({ text: formatter(value), focused: false });
102
+ }
103
+ } }), jsxRuntime_1("div", __extends({ [ReactConstants[5]]: "calendar ".concat(focused && 'focused') }, { [ReactConstants[4]]: [jsxRuntime_1("div", __extends({ [ReactConstants[5]]: 'row monthSelect' }, { [ReactConstants[4]]: [jsxRuntime_1("span", { [ReactConstants[4]]: [monthToString(selectedMonth.get(TimeUnit.MONTH)), "\u00A0", selectedMonth.get(TimeUnit.YEAR)] }), jsxRuntime_2(Button, __extends({ flat: true, round: true, disabled: minDate && dateOf(selectedMonth).isBefore(minDate), [ReactConstants[6]]: function () {
104
+ _this.setState({ selectedMonth: dateOf(selectedMonth).subtract(1, TimeUnit.MONTH) });
105
+ } }, { [ReactConstants[4]]: jsxRuntime_2(MaterialIcon, { icon: 'chevron_left' }) })), jsxRuntime_2(Button, __extends({ flat: true, round: true, [ReactConstants[6]]: function () {
106
+ _this.setState({ selectedMonth: dateOf(selectedMonth).add(1, TimeUnit.MONTH) });
107
+ } }, { [ReactConstants[4]]: jsxRuntime_2(MaterialIcon, { icon: 'chevron_right' }) }))] })), jsxRuntime_2(CalendarMonthView, { monthOf: selectedMonth, dayOfWeekToString: dayOfWeekToString, dayRenderer: function (date) { return jsxRuntime_2(DayRenderer, { day: dateOf(date), selected: value, minDate: minDate, [ReactConstants[6]]: function (value) {
108
+ _this[ReactConstants[7]](value);
109
+ _this.setState({ focused: false, text: formatter(value) });
110
+ } }); } })] }))] }));
111
+ };
112
+ return DatePicker;
113
+ }(React.Component));
114
+
115
+ export { DatePicker as default };
116
+ //# sourceMappingURL=DatePicker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DatePicker.js","sources":["./src/DatePicker.tsx"],"sourcesContent":[null],"names":["_jsx","DateTools.get","DateTools.TimeUnit","DateTools.dateOf","DateTools.equals","_jsxs"],"mappings":"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"}
package/DateTools.d.ts ADDED
@@ -0,0 +1,39 @@
1
+ export declare const resetTime: (date: Date) => Date;
2
+ export declare const timeOf: (date: Date) => number;
3
+ export declare const equals: (a: Date, b: Date) => boolean;
4
+ export declare const isBefore: (a: Date, b: Date) => boolean;
5
+ export declare const isAfter: (a: Date, b: Date) => boolean;
6
+ export declare const max: (a: Date, b: Date) => Date;
7
+ export declare const min: (a: Date, b: Date) => Date;
8
+ export declare class TimeUnit {
9
+ static MILLISECOND: TimeUnit;
10
+ static SECOND: TimeUnit;
11
+ static MINUTE: TimeUnit;
12
+ static HOUR: TimeUnit;
13
+ static DAY: TimeUnit;
14
+ static MONTH: TimeUnit;
15
+ static YEAR: TimeUnit;
16
+ set: (date: Date, value: number) => void;
17
+ get: (date: Date) => number;
18
+ constructor(field: any);
19
+ }
20
+ export declare const get: (date: Date, timeUnit: TimeUnit) => number;
21
+ export declare const set: (date: Date, value: number, timeUnit: TimeUnit) => Date;
22
+ export declare const add: (date: Date, amount: number, timeUnit: TimeUnit) => Date;
23
+ export declare const subtract: (date: Date, amount: number, timeUnit: TimeUnit) => Date;
24
+ export interface DateExtended extends Date {
25
+ get: (timeUnit: TimeUnit) => number;
26
+ set: (value: number, timeUnit: TimeUnit) => DateExtended;
27
+ add: (amount: number, timeUnit: TimeUnit) => DateExtended;
28
+ subtract: (amount: number, timeUnit: TimeUnit) => DateExtended;
29
+ isBefore: (after: Date) => boolean;
30
+ isAfter: (before: Date) => boolean;
31
+ isSameDate: (another: Date) => boolean;
32
+ equals: (another: Date) => boolean;
33
+ resetTime: () => DateExtended;
34
+ }
35
+ export declare const extend: (date: Date) => DateExtended;
36
+ export declare const dateOf: (date?: string | Date) => DateExtended;
37
+ export declare const now: (date?: string | Date) => DateExtended;
38
+ export declare const copy: (date?: string | Date) => DateExtended;
39
+ export declare const isSameDay: (dateA: Date, dateB: Date) => boolean;
package/DateTools.js ADDED
@@ -0,0 +1,73 @@
1
+ import ReactConstants from "./ReactConstants";
2
+ import {clientHeight as __clientHeight, clientWidth as __clientWidth, createAccessor as __createAccessor, data as __data, height as __height, left as __left, length as __length, pageX as __pageX, pageY as __pageY, props as __props, scrollLeft as __scrollLeft, scrollTop as __scrollTop, state as __state, style as __style, target as __target, top as __top, value as __value, width as __width} from "./CommonFields";
3
+ var resetTime = function (date) {
4
+ date.setHours(0, 0, 0, 0);
5
+ return date;
6
+ };
7
+ var timeOf = function (date) { return date.getTime(); };
8
+ var equals = function (a, b) { return a && b && timeOf(a) === timeOf(b); };
9
+ var isBefore = function (a, b) { return a && b && timeOf(a) < timeOf(b); };
10
+ var isAfter = function (a, b) { return a && b && timeOf(a) > timeOf(b); };
11
+ var max = function (a, b) {
12
+ if (!b)
13
+ return a;
14
+ if (!a)
15
+ return b;
16
+ return timeOf(a) > timeOf(b) ? a : b;
17
+ };
18
+ var min = function (a, b) {
19
+ if (!b)
20
+ return a;
21
+ if (!a)
22
+ return b;
23
+ return timeOf(a) < timeOf(b) ? a : b;
24
+ };
25
+ var TimeUnit = /** @class */ (function () {
26
+ function TimeUnit(field) {
27
+ var getter = 'get' + field;
28
+ var setter = 'set' + field;
29
+ // this.getter = getter;
30
+ // this.setter = setter;
31
+ this.toString = function () { return field; };
32
+ this.get = function (date) { return date[getter](); };
33
+ this.set = function (date, value) { return date[setter](value); };
34
+ }
35
+ TimeUnit.MILLISECOND = new TimeUnit('Milliseconds');
36
+ TimeUnit.SECOND = new TimeUnit('Seconds');
37
+ TimeUnit.MINUTE = new TimeUnit('Minutes');
38
+ TimeUnit.HOUR = new TimeUnit('Hours');
39
+ TimeUnit.DAY = new TimeUnit('Date');
40
+ TimeUnit.MONTH = new TimeUnit('Month');
41
+ TimeUnit.YEAR = new TimeUnit('FullYear');
42
+ return TimeUnit;
43
+ }());
44
+ var get = function (date, timeUnit) { return timeUnit.get(date); };
45
+ var set = function (date, value, timeUnit) {
46
+ timeUnit.set(date, value);
47
+ return date;
48
+ };
49
+ var add = function (date, amount, timeUnit) {
50
+ timeUnit.set(date, timeUnit.get(date) + amount);
51
+ return date;
52
+ };
53
+ var subtract = function (date, amount, timeUnit) { return add(date, -amount, timeUnit); };
54
+ var extend = function (date) {
55
+ var d = date;
56
+ d.get = function (timeUnit) { return get(date, timeUnit); };
57
+ d.set = function (value, timeUnit) { return set(date, value, timeUnit); };
58
+ d.add = function (amount, timeUnit) { return add(date, amount, timeUnit); };
59
+ d.subtract = function (amount, timeUnit) { return subtract(date, amount, timeUnit); };
60
+ d.isBefore = function (after) { return isBefore(date, after); };
61
+ d.isAfter = function (before) { return isAfter(date, before); };
62
+ d.isSameDate = function (another) { return isSameDay(date, another); };
63
+ d.equals = function (another) { return equals(date, another); };
64
+ d.resetTime = function () { return resetTime(date); };
65
+ return d;
66
+ };
67
+ var dateOf = function (date) { return extend(date ? new Date(date) : new Date()); };
68
+ var now = dateOf;
69
+ var copy = dateOf;
70
+ var isSameDay = function (dateA, dateB) { return dateA.getDate() === dateB.getDate() && dateA.getMonth() === dateB.getMonth() && dateA.getFullYear() === dateB.getFullYear(); };
71
+
72
+ export { TimeUnit, add, copy, dateOf, equals, extend, get, isAfter, isBefore, isSameDay, max, min, now, resetTime, set, subtract, timeOf };
73
+ //# sourceMappingURL=DateTools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DateTools.js","sources":["./src/DateTools.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
package/Dialog.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dialog.js","sources":["./src/Dialog.js"],"sourcesContent":["import React, {Component} from 'react';\nimport ReactCreateElement from './ReactCreateElement';\nimport './Dialog.css'\nimport Button from \"./Button\";\nimport Modal from \"./Modal\";\nimport {isUndefined, orNoop, preventDefault, ref, UNDEFINED, classNames, createRef} from \"./Tools\";\nimport {PureComponent, render, componentDidMount, propsGetter, stateGSs} from \"./ReactConstants\";\nimport PropTypes from \"prop-types\";\n\nclass Dialog extends PureComponent {\n constructor(properties) {\n super(properties);\n\n this[render] = () => {\n const {title, description, accept, cancel, onAccept, onCancel, children} = this.props;\n return <div className=\"Dialog\">\n {title && <div className=\"title\">{title}</div>}\n {description && <div className=\"description\">{description}</div>}\n {children}\n <div className=\"row right\">\n {cancel && <Button flat={true} onClick={onCancel}>{cancel}</Button>}\n {accept && <Button flat={true} onClick={onAccept}>{accept}</Button>}\n </div>\n </div>\n }\n }\n}\n\nDialog.defaultProps = {\n accept: 'Accept',\n cancel: 'Decline',\n};\n\nconst throwIfPropExists = (key, props) => {\n if (props[key]) throw Error(key + \" was already set by props\")\n};\n\nclass DialogWrapper extends Component {\n\n constructor(properties) {\n super(properties);\n const that = this;\n that.state = {};\n\n const props = propsGetter(that);\n const openRef = createRef();\n const closeRef = createRef();\n\n const [titleState,\n descriptionState,\n onAcceptState,\n onCancelState,\n acceptState,\n cancelState\n ] = stateGSs(that, 6);\n\n const onCancel = (e) => {\n preventDefault(e);\n orNoop(props().onCancel || onCancelState())();\n closeRef()();\n };\n\n const onAccept = (e) => {\n preventDefault(e);\n orNoop(props().onAccept || onAcceptState())();\n closeRef()();\n };\n\n that[render] = () => {\n const {top, className, ...other} = props();\n return (\n <Modal\n top={top}\n className={classNames('DialogModal', className)}\n open={openRef}\n close={closeRef}\n onClose={onCancel}\n >\n <Dialog title={titleState()} description={descriptionState()} accept={acceptState()} cancel={cancelState()} {...other} onAccept={onAccept} onCancel={onCancel}/>\n </Modal>\n );\n };\n\n that.open = (onAccept, onCancel, title, description, accept, cancel) => {\n titleState(UNDEFINED);\n descriptionState(UNDEFINED);\n onAcceptState(UNDEFINED);\n onCancelState(UNDEFINED);\n acceptState(UNDEFINED);\n cancelState(UNDEFINED);\n\n const _props = props();\n if (!isUndefined(onAccept)) {\n throwIfPropExists(\"onAccept\", _props);\n onAcceptState(onAccept);\n }\n if (!isUndefined(onCancel)) {\n throwIfPropExists(\"onCancel\", _props);\n onCancelState(onCancel);\n }\n if (!isUndefined(title)) {\n throwIfPropExists(\"title\", _props);\n titleState(title);\n }\n if (!isUndefined(description)) {\n throwIfPropExists(\"description\", _props);\n descriptionState(description);\n }\n if (!isUndefined(accept)) {\n throwIfPropExists(\"accept\", _props);\n acceptState(accept);\n }\n if (!isUndefined(cancel)) {\n throwIfPropExists(\"cancel\", _props);\n cancelState(cancel);\n }\n openRef()();\n };\n\n that[componentDidMount] = () => {\n const _props = props();\n orNoop(_props.open)(that.open);\n orNoop(_props.close)(closeRef());\n _props.show && that.open();\n }\n }\n}\n\nexport default DialogWrapper;\n\nif (window.isNotProductionEnvironment) {\n DialogWrapper.propTypes = {\n title: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.element\n ]),\n description: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.element\n ]),\n accept: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.element\n ]),\n cancel: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.element\n ]),\n onAccept: PropTypes.func,\n onCancel: PropTypes.func,\n className: PropTypes.string,\n top: PropTypes.number,\n };\n}"],"names":["Dialog","properties","render","props","title","description","accept","cancel","onAccept","onCancel","children","PureComponent","defaultProps","throwIfPropExists","key","Error","DialogWrapper","that","state","propsGetter","openRef","createRef","closeRef","stateGSs","titleState","descriptionState","onAcceptState","onCancelState","acceptState","cancelState","e","preventDefault","orNoop","top","className","other","classNames","open","UNDEFINED","_props","isUndefined","componentDidMount","close","show","Component","window","isNotProductionEnvironment","propTypes","PropTypes","oneOfType","string","element","func","number"],"mappings":";;;;;;;;;;IASMA;;;AACF,EAAA,SAAA,MAAA,CAAYC,UAAZ,EAAwB;AAAA,IAAA,IAAA,KAAA,CAAA;AAAA,IAAA,eAAA,CAAA,IAAA,EAAA,MAAA,CAAA,CAAA;AACpB,IAAA,KAAA,GAAA,MAAA,CAAA,IAAA,CAAA,IAAA,EAAMA,UAAN,CAAA,CAAA;AAEA,IAAKC,KAAAA,CAAAA,MAAL,IAAe,YAAM;AACjB,MAAA,IAAA,WAAA,GAA2E,MAAKC,KAAhF;AAAA,UAAOC,KAAP,eAAOA,KAAP;AAAA,UAAcC,WAAd,eAAcA,WAAd;AAAA,UAA2BC,MAA3B,eAA2BA,MAA3B;AAAA,UAAmCC,MAAnC,eAAmCA,MAAnC;AAAA,UAA2CC,QAA3C,eAA2CA,QAA3C;AAAA,UAAqDC,QAArD,eAAqDA,QAArD;AAAA,UAA+DC,QAA/D,eAA+DA,QAA/D,CAAA;AACA,MAAO,OAAA,kBAAA,CAAA,KAAA,EAAA;AAAK,QAAA,SAAS,EAAC,QAAA;AAAf,OAAA,EACFN,KAAK,IAAI,kBAAA,CAAA,KAAA,EAAA;AAAK,QAAA,SAAS,EAAC,OAAA;AAAf,OAAA,EAAwBA,KAAxB,CADP,EAEFC,WAAW,IAAI,kBAAA,CAAA,KAAA,EAAA;AAAK,QAAA,SAAS,EAAC,aAAA;AAAf,OAAA,EAA8BA,WAA9B,CAFb,EAGFK,QAHE,EAIH,kBAAA,CAAA,KAAA,EAAA;AAAK,QAAA,SAAS,EAAC,WAAA;AAAf,OACKH,EAAAA,MAAM,IAAI,kBAAA,CAAC,MAAD,EAAA;AAAQ,QAAA,IAAI,EAAE,IAAd;AAAoB,QAAA,OAAO,EAAEE,QAAAA;AAA7B,OAAA,EAAwCF,MAAxC,CADf,EAEKD,MAAM,IAAI,mBAAC,MAAD,EAAA;AAAQ,QAAA,IAAI,EAAE,IAAd;AAAoB,QAAA,OAAO,EAAEE,QAAAA;AAA7B,OAAwCF,EAAAA,MAAxC,CAFf,CAJG,CAAP,CAAA;AASH,KAXD,CAAA;AAHoB,IAAA,OAAA,KAAA,CAAA;AAevB,GAAA;;EAhBgBK;AAmBrBX,MAAM,CAACY,YAAP,GAAsB;AAClBN,EAAAA,MAAM,EAAE,QADU;AAElBC,EAAAA,MAAM,EAAE,SAAA;AAFU,CAAtB,CAAA;AAKA,IAAMM,iBAAiB,GAAG,SAApBA,iBAAoB,CAACC,GAAD,EAAMX,KAAN,EAAgB;AACtC,EAAIA,IAAAA,KAAK,CAACW,GAAD,CAAT,EAAgB,MAAMC,KAAK,CAACD,GAAG,GAAG,2BAAP,CAAX,CAAA;AACnB,CAFD,CAAA;IAIME;;;AAEF,EAAA,SAAA,aAAA,CAAYf,UAAZ,EAAwB;AAAA,IAAA,IAAA,MAAA,CAAA;AAAA,IAAA,eAAA,CAAA,IAAA,EAAA,aAAA,CAAA,CAAA;AACpB,IAAA,MAAA,GAAA,OAAA,CAAA,IAAA,CAAA,IAAA,EAAMA,UAAN,CAAA,CAAA;AACA,IAAA,IAAMgB,IAAI,GAAV,sBAAA,CAAA,MAAA,CAAA,CAAA;AACAA,IAAAA,IAAI,CAACC,KAAL,GAAa,EAAb,CAAA;AAEA,IAAA,IAAMf,KAAK,GAAGgB,WAAW,CAACF,IAAD,CAAzB,CAAA;AACA,IAAMG,IAAAA,OAAO,GAAGC,SAAS,EAAzB,CAAA;AACA,IAAMC,IAAAA,QAAQ,GAAGD,SAAS,EAA1B,CAAA;AAEA,IAAA,IAAA,SAAA,GAMIE,QAAQ,CAACN,IAAD,EAAO,CAAP,CANZ;AAAA,QAAA,UAAA,GAAA,cAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAA,QAAOO,UAAP,GAAA,UAAA,CAAA,CAAA,CAAA;AAAA,QACIC,gBADJ,GAAA,UAAA,CAAA,CAAA,CAAA;AAAA,QAEIC,aAFJ,GAAA,UAAA,CAAA,CAAA,CAAA;AAAA,QAGIC,aAHJ,GAAA,UAAA,CAAA,CAAA,CAAA;AAAA,QAIIC,WAJJ,GAAA,UAAA,CAAA,CAAA,CAAA;AAAA,QAKIC,WALJ,GAAA,UAAA,CAAA,CAAA,CAAA,CAAA;AAQA,IAAA,IAAMpB,QAAQ,GAAG,SAAXA,QAAW,CAACqB,CAAD,EAAO;AACpBC,MAAAA,cAAc,CAACD,CAAD,CAAd,CAAA;AACAE,MAAAA,MAAM,CAAC7B,KAAK,EAAA,CAAGM,QAAR,IAAoBkB,aAAa,EAAlC,CAAN,EAAA,CAAA;AACAL,MAAAA,QAAQ,EAAA,EAAA,CAAA;AACX,KAJD,CAAA;AAMA,IAAA,IAAMd,QAAQ,GAAG,SAAXA,QAAW,CAACsB,CAAD,EAAO;AACpBC,MAAAA,cAAc,CAACD,CAAD,CAAd,CAAA;AACAE,MAAAA,MAAM,CAAC7B,KAAK,EAAA,CAAGK,QAAR,IAAoBkB,aAAa,EAAlC,CAAN,EAAA,CAAA;AACAJ,MAAAA,QAAQ,EAAA,EAAA,CAAA;AACX,KAJD,CAAA;AAMAL,IAAAA,IAAI,CAACf,MAAD,CAAJ,GAAe,YAAM;AACjB,MAAA,IAAA,OAAA,GAAmCC,KAAK,EAAxC;AAAA,UAAO8B,GAAP,WAAOA,GAAP;AAAA,UAAYC,SAAZ,WAAYA,SAAZ;AAAA,UAA0BC,KAA1B,GAAA,wBAAA,CAAA,OAAA,EAAA,SAAA,CAAA,CAAA;AACA,MAAA,OACI,mBAAC,KAAD,EAAA;AACI,QAAA,GAAG,EAAEF,GADT;AAEI,QAAA,SAAS,EAAEG,UAAU,CAAC,aAAD,EAAgBF,SAAhB,CAFzB;AAGI,QAAA,IAAI,EAAEd,OAHV;AAII,QAAA,KAAK,EAAEE,QAJX;AAKI,QAAA,OAAO,EAAEb,QAAAA;AALb,OAAA,EAOI,mBAAC,MAAD,EAAA,QAAA,CAAA;AAAQ,QAAA,KAAK,EAAEe,UAAU,EAAzB;AAA6B,QAAA,WAAW,EAAEC,gBAAgB,EAA1D;AAA8D,QAAA,MAAM,EAAEG,WAAW,EAAjF;AAAqF,QAAA,MAAM,EAAEC,WAAW,EAAA;AAAxG,OAAA,EAAgHM,KAAhH,EAAA;AAAuH,QAAA,QAAQ,EAAE3B,QAAjI;AAA2I,QAAA,QAAQ,EAAEC,QAAAA;AAArJ,OAAA,CAAA,CAPJ,CADJ,CAAA;AAWH,KAbD,CAAA;AAeAQ,IAAAA,IAAI,CAACoB,IAAL,GAAY,UAAC7B,QAAD,EAAWC,QAAX,EAAqBL,KAArB,EAA4BC,WAA5B,EAAyCC,MAAzC,EAAiDC,MAAjD,EAA4D;AACpEiB,MAAAA,UAAU,CAACc,SAAD,CAAV,CAAA;AACAb,MAAAA,gBAAgB,CAACa,SAAD,CAAhB,CAAA;AACAZ,MAAAA,aAAa,CAACY,SAAD,CAAb,CAAA;AACAX,MAAAA,aAAa,CAACW,SAAD,CAAb,CAAA;AACAV,MAAAA,WAAW,CAACU,SAAD,CAAX,CAAA;AACAT,MAAAA,WAAW,CAACS,SAAD,CAAX,CAAA;AAEA,MAAMC,IAAAA,MAAM,GAAGpC,KAAK,EAApB,CAAA;AACA,MAAA,IAAI,CAACqC,WAAW,CAAChC,QAAD,CAAhB,EAA4B;AACxBK,QAAAA,iBAAiB,CAAC,UAAD,EAAa0B,MAAb,CAAjB,CAAA;AACAb,QAAAA,aAAa,CAAClB,QAAD,CAAb,CAAA;AACH,OAAA;AACD,MAAA,IAAI,CAACgC,WAAW,CAAC/B,QAAD,CAAhB,EAA4B;AACxBI,QAAAA,iBAAiB,CAAC,UAAD,EAAa0B,MAAb,CAAjB,CAAA;AACAZ,QAAAA,aAAa,CAAClB,QAAD,CAAb,CAAA;AACH,OAAA;AACD,MAAA,IAAI,CAAC+B,WAAW,CAACpC,KAAD,CAAhB,EAAyB;AACrBS,QAAAA,iBAAiB,CAAC,OAAD,EAAU0B,MAAV,CAAjB,CAAA;AACAf,QAAAA,UAAU,CAACpB,KAAD,CAAV,CAAA;AACH,OAAA;AACD,MAAA,IAAI,CAACoC,WAAW,CAACnC,WAAD,CAAhB,EAA+B;AAC3BQ,QAAAA,iBAAiB,CAAC,aAAD,EAAgB0B,MAAhB,CAAjB,CAAA;AACAd,QAAAA,gBAAgB,CAACpB,WAAD,CAAhB,CAAA;AACH,OAAA;AACD,MAAA,IAAI,CAACmC,WAAW,CAAClC,MAAD,CAAhB,EAA0B;AACtBO,QAAAA,iBAAiB,CAAC,QAAD,EAAW0B,MAAX,CAAjB,CAAA;AACAX,QAAAA,WAAW,CAACtB,MAAD,CAAX,CAAA;AACH,OAAA;AACD,MAAA,IAAI,CAACkC,WAAW,CAACjC,MAAD,CAAhB,EAA0B;AACtBM,QAAAA,iBAAiB,CAAC,QAAD,EAAW0B,MAAX,CAAjB,CAAA;AACAV,QAAAA,WAAW,CAACtB,MAAD,CAAX,CAAA;AACH,OAAA;AACDa,MAAAA,OAAO,EAAA,EAAA,CAAA;AACV,KAlCD,CAAA;AAoCAH,IAAAA,IAAI,CAACwB,iBAAD,CAAJ,GAA0B,YAAM;AAC5B,MAAMF,IAAAA,MAAM,GAAGpC,KAAK,EAApB,CAAA;AACA6B,MAAAA,MAAM,CAACO,MAAM,CAACF,IAAR,CAAN,CAAoBpB,IAAI,CAACoB,IAAzB,CAAA,CAAA;AACAL,MAAAA,MAAM,CAACO,MAAM,CAACG,KAAR,CAAN,CAAqBpB,QAAQ,EAA7B,CAAA,CAAA;AACAiB,MAAAA,MAAM,CAACI,IAAP,IAAe1B,IAAI,CAACoB,IAAL,EAAf,CAAA;AACH,KALD,CAAA;AAhFoB,IAAA,OAAA,MAAA,CAAA;AAsFvB,GAAA;;EAxFuBO;AA2F5B,sBAAe5B,aAAf,CAAA;AAEA,IAAI6B,MAAM,CAACC,0BAAX,EAAuC;AACnC9B,EAAAA,aAAa,CAAC+B,SAAd,GAA0B;AACtB3C,IAAAA,KAAK,EAAE4C,SAAS,CAACC,SAAV,CAAoB,CACvBD,SAAS,CAACE,MADa,EAEvBF,SAAS,CAACG,OAFa,CAApB,CADe;AAKtB9C,IAAAA,WAAW,EAAE2C,SAAS,CAACC,SAAV,CAAoB,CAC7BD,SAAS,CAACE,MADmB,EAE7BF,SAAS,CAACG,OAFmB,CAApB,CALS;AAStB7C,IAAAA,MAAM,EAAE0C,SAAS,CAACC,SAAV,CAAoB,CACxBD,SAAS,CAACE,MADc,EAExBF,SAAS,CAACG,OAFc,CAApB,CATc;AAatB5C,IAAAA,MAAM,EAAEyC,SAAS,CAACC,SAAV,CAAoB,CACxBD,SAAS,CAACE,MADc,EAExBF,SAAS,CAACG,OAFc,CAApB,CAbc;AAiBtB3C,IAAAA,QAAQ,EAAEwC,SAAS,CAACI,IAjBE;AAkBtB3C,IAAAA,QAAQ,EAAEuC,SAAS,CAACI,IAlBE;AAmBtBlB,IAAAA,SAAS,EAAEc,SAAS,CAACE,MAnBC;AAoBtBjB,IAAAA,GAAG,EAAEe,SAAS,CAACK,MAAAA;AApBO,GAA1B,CAAA;AAsBH;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DropFileInput.js","sources":["./src/DropFileInput.js"],"sourcesContent":["import React from 'react';\nimport ReactCreateElement from './ReactCreateElement';\nimport './DropFileInput.css'\nimport Dropzone from \"./Dropzone\";\nimport PropTypes from \"prop-types\";\nimport {classNames} from \"./Tools\";\nimport MaterialIcon from \"./MaterialIcon\";\n\nconst DropFileInput = ({icon, label, onDrop, droppable, multiple, accept}) => (\n <section className=\"DropFileInput\">\n <Dropzone droppable={droppable} onDrop={onDrop} accept={accept} multiple={multiple}>\n <MaterialIcon className={classNames(`icon`, label && 'withText')} icon={icon}/>\n {label && <div>{label}</div>}\n </Dropzone>\n </section>\n);\n\nDropFileInput.defaultProps = {\n icon: 'cloud_upload',\n droppable: false,\n multiple: true,\n};\n\nif (window.isNotProductionEnvironment) {\n DropFileInput.propTypes = {\n icon: MaterialIcon.propTypes.icon,\n label: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.element\n ]),\n droppable: PropTypes.bool,\n onDrop: PropTypes.func,\n multiple: PropTypes.bool,\n accept: PropTypes.string,\n };\n}\n\n\nexport default DropFileInput;\n"],"names":["DropFileInput","icon","label","onDrop","droppable","multiple","accept","classNames","defaultProps","window","isNotProductionEnvironment","propTypes","MaterialIcon","PropTypes","oneOfType","string","element","bool","func"],"mappings":";;;;;;;AAQA,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,CAAA,IAAA,EAAA;AAAA,EAAEC,IAAAA,IAAF,QAAEA,IAAF;AAAA,MAAQC,KAAR,QAAQA,KAAR;AAAA,MAAeC,MAAf,QAAeA,MAAf;AAAA,MAAuBC,SAAvB,QAAuBA,SAAvB;AAAA,MAAkCC,QAAlC,QAAkCA,QAAlC;AAAA,MAA4CC,MAA5C,QAA4CA,MAA5C,CAAA;AAAA,EAClB,OAAA,kBAAA,CAAA,SAAA,EAAA;AAAS,IAAA,SAAS,EAAC,eAAA;AAAnB,GAAA,EACI,mBAAC,QAAD,EAAA;AAAU,IAAA,SAAS,EAAEF,SAArB;AAAgC,IAAA,MAAM,EAAED,MAAxC;AAAgD,IAAA,MAAM,EAAEG,MAAxD;AAAgE,IAAA,QAAQ,EAAED,QAAAA;AAA1E,GAAA,EACI,mBAAC,YAAD,EAAA;AAAc,IAAA,SAAS,EAAEE,UAAU,SAASL,KAAK,IAAI,UAAlB,CAAnC;AAAkE,IAAA,IAAI,EAAED,IAAAA;AAAxE,GAAA,CADJ,EAEKC,KAAK,IAAI,gCAAMA,KAAN,CAFd,CADJ,CADkB,CAAA;AAAA,CAAtB,CAAA;AASAF,aAAa,CAACQ,YAAd,GAA6B;AACzBP,EAAAA,IAAI,EAAE,cADmB;AAEzBG,EAAAA,SAAS,EAAE,KAFc;AAGzBC,EAAAA,QAAQ,EAAE,IAAA;AAHe,CAA7B,CAAA;AAMA,IAAII,MAAM,CAACC,0BAAX,EAAuC;AACnCV,EAAAA,aAAa,CAACW,SAAd,GAA0B;AACtBV,IAAAA,IAAI,EAAEW,YAAY,CAACD,SAAb,CAAuBV,IADP;AAEtBC,IAAAA,KAAK,EAAEW,SAAS,CAACC,SAAV,CAAoB,CACvBD,SAAS,CAACE,MADa,EAEvBF,SAAS,CAACG,OAFa,CAApB,CAFe;AAMtBZ,IAAAA,SAAS,EAAES,SAAS,CAACI,IANC;AAOtBd,IAAAA,MAAM,EAAEU,SAAS,CAACK,IAPI;AAQtBb,IAAAA,QAAQ,EAAEQ,SAAS,CAACI,IARE;AAStBX,IAAAA,MAAM,EAAEO,SAAS,CAACE,MAAAA;AATI,GAA1B,CAAA;AAWH,CAAA;AAGD,sBAAef,aAAf;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DroppableHorizontalList.js","sources":["./src/DroppableHorizontalList.js"],"sourcesContent":["import React, {Component} from 'react';\nimport ReactCreateElement from './ReactCreateElement';\nimport './DroppableList.css'\nimport DNDDroppable from \"./DNDDroppable\";\nimport {classNames, orNoop, setTimeout, NOOP} from \"./Tools\";\nimport DNDDraggable from \"./DNDDraggable\";\nimport {addListener} from \"./DNDContainer\";\nimport {stateGS, setState, propsGetter, props as getProps, render, componentDidUpdate, componentDidMount, children} from \"./ReactConstants\";\n\nclass DroppableHorizontalList extends Component {\n\n constructor(properties) {\n super(properties);\n const that = this;\n that.state = {};\n\n const props = propsGetter(that);\n const resetting = stateGS(that);\n const draggables = {};\n let list;\n\n const init = () => {\n list = [];\n React.Children.forEach(props()[children], child => {\n child && child.type === DNDDraggable && list.push(getProps(child).id);\n })\n };\n\n init();\n\n that[componentDidUpdate] = (prevProps) => {\n if (prevProps[children] !== props()[children]) {\n init();\n }\n };\n\n let dropped;\n let dragging;\n let oldIndex;\n let newIndex;\n\n that[componentDidMount] = () => {\n let inTransition = false;\n orNoop(props().provideDraggableEnhancer)(initializer => it => {\n orNoop(initializer)(it);\n it.createPositionListener = (e, style) => {\n const offset = e.pageX;\n return e => {\n e.pageX && (style.transform = 'translateX(' + (e.pageX - offset) + 'px)');\n };\n };\n it.initDraggedStyles = NOOP;\n it.onDragEnd = () => {\n const style = it.element.style;\n inTransition = true;\n setTimeout(() => {\n const droppingDuration = props().droppingDuration || 100;\n style.transition = 'transform ' + droppingDuration + 'ms linear';\n style.transform = '';\n style.zIndex = '10';\n setTimeout(() => {\n style.transition = '';\n style.zIndex = '';\n setTimeout(() => {\n inTransition = false;\n }, 50) // ignore mouseenter on the old position\n }, droppingDuration)\n }, 1);\n };\n addListener(it.element, it, 'mouseenter', (e) => {\n !(dragging || inTransition) && setState(it, {hover: true});\n });\n addListener(it.element, it, 'mouseleave', (e) => {\n !dragging && setState(it, {hover: false});\n });\n it.onUnmount = () => {\n delete draggables[getProps(it).id];\n };\n draggables[getProps(it).id] = it;\n })\n };\n\n const onHover = (e, draggable) => {\n const offset = e.pageX - that.scrollOffsetX;\n const transformLeft = 'translateX(' + draggable.width + 'px)';\n const transformRight = 'translateX(-' + draggable.width + 'px)';\n list.forEach((id, i) => {\n if (i !== oldIndex) {\n const d = draggables[id];\n const bounds = d.bounds;\n const style = d.element.style;\n if (i > oldIndex) {\n if (offset >= bounds.left)\n style.transform = transformRight;\n else\n style.transform = '';\n } else {\n if (offset <= bounds.right)\n style.transform = transformLeft;\n else\n style.transform = '';\n }\n }\n });\n\n let i = list.findIndex(id => {\n let bounds = draggables[id].bounds;\n return offset >= bounds.left && offset <= bounds.right\n });\n\n newIndex = i !== -1 ? i : list.length;\n };\n\n const onDragStart = (e, draggable) => {\n dragging = true;\n dropped = false;\n oldIndex = list.indexOf(getProps(draggable).id);\n that.scrollOffsetX = e.pageX - e.clientX;\n\n list.forEach((id) => {\n draggables[id].bounds = draggables[id].element.getBoundingClientRect();\n });\n };\n\n const reset = (ignoredIndex, transition) => {\n list.forEach((id, i) => {\n if (i !== ignoredIndex) {\n const s = draggables[id].element.style;\n s.transform = '';\n s.transition = transition;\n }\n });\n };\n\n const onDragEnd = (draggable) => {\n const index = list.indexOf(getProps(draggable).id);\n\n if (dropped) {\n reset(index, '');\n } else {\n resetting(true, () => {\n reset(index, '');\n });\n setTimeout(() => {\n resetting(false);\n }, props().droppingDuration || 100);\n }\n dragging = false;\n };\n const onDrop = (data) => {\n dropped = true;\n const draggable = draggables[list[oldIndex]];\n const style = draggable.element.style;\n\n const diff = (newIndex - oldIndex) * draggable.bounds.width;\n const transform = style.transform;\n const position = transform.substring(11, transform.length - 3);\n style.transform = 'translateX(' + (position - diff) + 'px)'; // set translateX against new position on the list to prevent long slide\n orNoop(props().onDrop)(data, oldIndex, newIndex);\n\n reset(newIndex, 'unset');\n };\n\n that[render] = () => {\n const _props = props();\n const {className, initializer} = _props;\n return <DNDDroppable className={classNames(\n 'DroppableList',\n className,\n resetting() && 'resetting',\n )}\n initializer={initializer}\n onHover={onHover}\n onDragStart={onDragStart}\n onDragEnd={onDragEnd}\n onDrop={onDrop}\n >\n {_props[children]}\n </DNDDroppable>;\n };\n }\n}\n\n\nexport default DroppableHorizontalList;"],"names":["DroppableHorizontalList","properties","that","state","props","propsGetter","resetting","stateGS","draggables","list","init","React","Children","forEach","children","child","type","DNDDraggable","push","getProps","id","componentDidUpdate","prevProps","dropped","dragging","oldIndex","newIndex","componentDidMount","inTransition","orNoop","provideDraggableEnhancer","initializer","it","createPositionListener","e","style","offset","pageX","transform","initDraggedStyles","NOOP","onDragEnd","element","setTimeout","droppingDuration","transition","zIndex","addListener","setState","hover","onUnmount","onHover","draggable","scrollOffsetX","transformLeft","width","transformRight","i","d","bounds","left","right","findIndex","length","onDragStart","indexOf","clientX","getBoundingClientRect","reset","ignoredIndex","s","index","onDrop","data","diff","position","substring","render","_props","className","classNames","Component"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DroppableList.js","sources":["./src/DroppableList.js"],"sourcesContent":["import React, {Component} from 'react';\nimport ReactCreateElement from './ReactCreateElement';\nimport './DroppableList.css'\nimport DNDDroppable from \"./DNDDroppable\";\nimport {classNames, orNoop, setTimeout, NOOP} from \"./Tools\";\nimport DNDDraggable from \"./DNDDraggable\";\nimport {addListener} from \"./DNDContainer\";\nimport {stateGS, setState, propsGetter, props as getProps, render, componentDidUpdate, componentDidMount, children} from \"./ReactConstants\";\n\nclass DroppableList extends Component {\n\n constructor(properties) {\n super(properties);\n const that = this;\n that.state = {};\n\n const props = propsGetter(that);\n const resetting = stateGS(that);\n const draggables = {};\n let list;\n\n const init = () => {\n list = [];\n React.Children.forEach(props()[children], child => {\n child && child.type === DNDDraggable && list.push(getProps(child).id);\n })\n };\n\n init();\n\n that[componentDidUpdate] = (prevProps) => {\n if (prevProps[children] !== props()[children]) {\n init();\n }\n };\n\n let dropped;\n let dragging;\n let oldIndex;\n let newIndex;\n\n that[componentDidMount] = () => {\n let inTransition = false;\n orNoop(props().provideDraggableEnhancer)(initializer => it => {\n orNoop(initializer)(it);\n it.createPositionListener = (e, style) => {\n const offsetTop = e.pageY;\n return e => {\n e.pageY && (style.transform = 'translateY(' + (e.pageY - offsetTop - that.scrollDiff) + 'px)');\n };\n };\n it.initDraggedStyles = NOOP;\n it.onDragEnd = () => {\n const style = it.element.style;\n inTransition = true;\n setTimeout(() => {\n const droppingDuration = props().droppingDuration || 100;\n style.transition = 'transform ' + droppingDuration + 'ms linear';\n style.transform = '';\n style.zIndex = '10';\n setTimeout(() => {\n style.transition = '';\n style.zIndex = '';\n setTimeout(() => {\n inTransition = false;\n }, 50) // ignore mouseenter on the old position\n }, droppingDuration)\n }, 1);\n };\n addListener(it.element, it, 'mouseenter', (e) => {\n !(dragging || inTransition) && setState(it, {hover: true});\n });\n addListener(it.element, it, 'mouseleave', (e) => {\n !dragging && setState(it, {hover: false});\n });\n it.onUnmount = () => {\n delete draggables[getProps(it).id];\n };\n draggables[getProps(it).id] = it;\n })\n\n orNoop(props().provideScrollListener)(e => {\n if (!dragging)\n return\n\n that.scrollDiff = that.scroll - orNoop(props().getScrollPosition)() || 0;\n })\n };\n\n const onHover = (e, draggable) => {\n const y = e.pageY - that.scrollOffsetY - that.scrollDiff;\n const transformUp = 'translateY(' + draggable.height + 'px)';\n const transformDown = 'translateY(-' + draggable.height + 'px)';\n list.forEach((id, i) => {\n if (i !== oldIndex) {\n const d = draggables[id];\n const bounds = d.bounds;\n const style = d.element.style;\n if (i > oldIndex) {\n if (y >= bounds.top)\n style.transform = transformDown;\n else\n style.transform = '';\n } else {\n if (y <= bounds.bottom)\n style.transform = transformUp;\n else\n style.transform = '';\n }\n }\n });\n\n let i = list.findIndex(id => {\n let bounds = draggables[id].bounds;\n return y >= bounds.top && y <= bounds.bottom\n });\n\n newIndex = i !== -1 ? i : list.length;\n };\n\n const onDragStart = (e, draggable) => {\n dragging = true;\n dropped = false;\n oldIndex = list.indexOf(getProps(draggable).id);\n that.scrollOffsetY = e.pageY - e.clientY;\n that.scroll = orNoop(props().getScrollPosition)() || 0;\n that.scrollDiff = 0;\n\n list.forEach((id) => {\n draggables[id].bounds = draggables[id].element.getBoundingClientRect();\n });\n };\n\n const reset = (ignoredIndex, transition) => {\n list.forEach((id, i) => {\n if (i !== ignoredIndex) {\n const s = draggables[id].element.style;\n s.transform = '';\n s.transition = transition;\n }\n });\n };\n\n const onDragEnd = (draggable) => {\n const index = list.indexOf(getProps(draggable).id);\n\n if (dropped) {\n reset(index, '');\n } else {\n resetting(true, () => {\n reset(index, '');\n });\n setTimeout(() => {\n resetting(false);\n }, props().droppingDuration || 100);\n }\n dragging = false;\n };\n const onDrop = (data) => {\n dropped = true;\n const draggable = draggables[list[oldIndex]];\n const style = draggable.element.style;\n\n const diff = (newIndex - oldIndex) * draggable.bounds.height;\n const transform = style.transform;\n const position = transform.substring(11, transform.length - 3);\n style.transform = 'translateY(' + (position - diff) + 'px)'; // set translateY against new position on the list to prevent long slide\n\n orNoop(props().onDrop)(data, oldIndex, newIndex);\n\n reset(newIndex, 'unset');\n };\n\n that[render] = () => {\n const _props = props();\n const {className, initializer} = _props;\n return <DNDDroppable className={classNames(\n 'DroppableList',\n className,\n resetting() && 'resetting',\n )}\n initializer={initializer}\n onHover={onHover}\n onDragStart={onDragStart}\n onDragEnd={onDragEnd}\n onDrop={onDrop}\n >\n {_props[children]}\n </DNDDroppable>;\n };\n }\n}\n\n\nexport default DroppableList;"],"names":["DroppableList","properties","that","state","props","propsGetter","resetting","stateGS","draggables","list","init","React","Children","forEach","children","child","type","DNDDraggable","push","getProps","id","componentDidUpdate","prevProps","dropped","dragging","oldIndex","newIndex","componentDidMount","inTransition","orNoop","provideDraggableEnhancer","initializer","it","createPositionListener","e","style","offsetTop","pageY","transform","scrollDiff","initDraggedStyles","NOOP","onDragEnd","element","setTimeout","droppingDuration","transition","zIndex","addListener","setState","hover","onUnmount","provideScrollListener","scroll","getScrollPosition","onHover","draggable","y","scrollOffsetY","transformUp","height","transformDown","i","d","bounds","top","bottom","findIndex","length","onDragStart","indexOf","clientY","getBoundingClientRect","reset","ignoredIndex","s","index","onDrop","data","diff","position","substring","render","_props","className","classNames","Component"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dropzone.js","sources":["./src/Dropzone.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from \"prop-types\";\nimport ReactCreateElement from './ReactCreateElement';\nimport './Dropzone.css'\nimport {classNames, setOf, preventDefault, stopPropagation, UNDEFINED, createRef} from \"./Tools\";\nimport {propsGetter, PureComponent, render, stateGS} from \"./ReactConstants\";\n\nconst toArray = (o) => {\n if (o instanceof Array)\n return o;\n\n const l = [];\n for (let i = 0; i < o.length; i++) {\n l.push(o[i])\n }\n return l;\n};\n\nconst prevent = (e) => {\n preventDefault(e);\n stopPropagation(e);\n return false;\n};\n\nconst ignoredTypes = setOf([\n 'text',\n 'Text',\n 'text/plain',\n]);\n\nconst ignore = dt => dt && (!dt.types[0] || ignoredTypes[dt.types[0]]);\n\nclass Dropzone extends PureComponent {\n\n constructor(properties) {\n super(properties);\n const that = this;\n that.state = {};\n\n let entries = [];\n\n const props = propsGetter(that);\n const isDragging = stateGS(that);\n\n const onDrop = (e) => {\n const dt = e.dataTransfer;\n const files = toArray(dt && dt.files || e.target.files);\n props().onDrop(files);\n isDragging(false);\n entries = [];\n prevent(e);\n };\n const onDragOver = (e) => {\n const dt = e.dataTransfer;\n if (ignore(dt)) return;\n\n dt && (dt.dropEffect = 'copy');\n !isDragging() && isDragging(true);\n prevent(e);\n };\n const onDragEnter = (e) => {\n const dt = e.dataTransfer;\n if (ignore(dt)) return;\n if (entries.indexOf(e.target) === -1) {\n entries.push(e.target)\n }\n\n dt && (dt.dropEffect = 'copy');\n !isDragging() && isDragging(true);\n prevent(e);\n };\n const onDragLeave = (e) => {\n entries = entries.filter(el => el !== e.target);\n\n if (entries.length === 0)\n isDragging(false);\n\n prevent(e)\n };\n\n const inputRef = createRef()\n\n that[render] = () => {\n const {children, className, disabled, clickable, multiple, droppable, overlayLabel, accept} = props();\n\n return <div className={classNames('Dropzone', className, isDragging() && 'dragging')}\n onDragLeave={!disabled && droppable && onDragLeave || UNDEFINED}\n onDragOver={!disabled && droppable && onDragOver || UNDEFINED}\n onDragEnter={!disabled && droppable && onDragEnter || UNDEFINED}\n onDrop={!disabled && droppable && onDrop || UNDEFINED}\n >\n {overlayLabel && <div className=\"overlay\">\n <div className={'drop'}>\n {overlayLabel}\n </div>\n </div>}\n {!disabled && clickable && <input className={'file'}\n ref={inputRef}\n type=\"file\"\n accept={accept}\n multiple={!!multiple}\n onClick={() => {\n inputRef().value = '';\n }}\n onChange={onDrop}/>}\n {children}\n </div>\n }\n }\n}\n\nDropzone.defaultProps = {\n clickable: true,\n multiple: true,\n droppable: true,\n};\n\nif (window.isNotProductionEnvironment) {\n Dropzone.propTypes = {\n className: PropTypes.string,\n overlayLabel: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.element\n ]),\n clickable: PropTypes.bool,\n droppable: PropTypes.bool,\n multiple: PropTypes.bool,\n disabled: PropTypes.bool,\n onDrop: PropTypes.func.isRequired,\n accept: PropTypes.string,\n };\n}\n\nexport default Dropzone;"],"names":["toArray","o","Array","l","i","length","push","prevent","e","preventDefault","stopPropagation","ignoredTypes","setOf","ignore","dt","types","Dropzone","properties","that","state","entries","props","propsGetter","isDragging","stateGS","onDrop","dataTransfer","files","target","onDragOver","dropEffect","onDragEnter","indexOf","onDragLeave","filter","el","inputRef","createRef","render","children","className","disabled","clickable","multiple","droppable","overlayLabel","accept","classNames","UNDEFINED","value","PureComponent","defaultProps","window","isNotProductionEnvironment","propTypes","PropTypes","string","oneOfType","element","bool","func","isRequired"],"mappings":"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"}