react-ui-basics 0.0.173 → 0.0.176

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 (141) hide show
  1. package/Animated.js.map +1 -0
  2. package/AutocompleteSelect.js.map +1 -0
  3. package/Button.js.map +1 -0
  4. package/Checkbox.js.map +1 -0
  5. package/CircleProgress.js.map +1 -0
  6. package/CommonFields.js.map +1 -0
  7. package/DNDContainer.js.map +1 -0
  8. package/DNDDraggable.js.map +1 -0
  9. package/DNDDroppable.js.map +1 -0
  10. package/Dialog.js.map +1 -0
  11. package/DropFileInput.js.map +1 -0
  12. package/DroppableHorizontalList.js.map +1 -0
  13. package/DroppableList.js.map +1 -0
  14. package/Dropzone.js.map +1 -0
  15. package/FilteredList.js.map +1 -0
  16. package/FloatingActionButton.js.map +1 -0
  17. package/FormUploadProgress.js.map +1 -0
  18. package/ImageGallery.js.map +1 -0
  19. package/MaterialIcon.js.map +1 -0
  20. package/Modal.js.map +1 -0
  21. package/ModalMenu.js.map +1 -0
  22. package/ReactConstants.js.map +1 -0
  23. package/ReactCreateElement.js.map +1 -0
  24. package/ReadyListener.js.map +1 -0
  25. package/Scrollable.js.map +1 -0
  26. package/ScrollableTable.js.map +1 -0
  27. package/Size.js.map +1 -0
  28. package/Snackbar.js.map +1 -0
  29. package/SpinningProgress.js.map +1 -0
  30. package/Switch.js.map +1 -0
  31. package/Table.d.ts +17 -2
  32. package/Table.js +27 -14
  33. package/Table.js.map +1 -0
  34. package/TextField.js +4 -2
  35. package/TextField.js.map +1 -0
  36. package/Tools.d.ts +2 -2
  37. package/Tools.js.map +1 -0
  38. package/bundle.css +505 -505
  39. package/index.js.map +1 -0
  40. package/package.json +4 -4
  41. package/router/HistoryTools.js.map +1 -1
  42. package/router/Link.js.map +1 -1
  43. package/router/NavLink.js.map +1 -1
  44. package/router/Route.js.map +1 -1
  45. package/router/index.js.map +1 -1
  46. package/src/Animated.css +7 -0
  47. package/src/Animated.js +219 -0
  48. package/src/Animated.scss +8 -0
  49. package/src/AutocompleteSelect.css +256 -0
  50. package/src/AutocompleteSelect.js +473 -0
  51. package/src/AutocompleteSelect.scss +322 -0
  52. package/src/Button.css +138 -0
  53. package/src/Button.js +104 -0
  54. package/src/Button.scss +177 -0
  55. package/src/Checkbox.css +56 -0
  56. package/src/Checkbox.js +52 -0
  57. package/src/Checkbox.scss +87 -0
  58. package/src/CircleProgress.css +11 -0
  59. package/src/CircleProgress.js +38 -0
  60. package/src/CircleProgress.scss +13 -0
  61. package/src/CommonFields.js +21 -0
  62. package/src/DNDContainer.css +26 -0
  63. package/src/DNDContainer.js +263 -0
  64. package/src/DNDContainer.scss +33 -0
  65. package/src/DNDDraggable.js +55 -0
  66. package/src/DNDDroppable.js +58 -0
  67. package/src/Dialog.css +36 -0
  68. package/src/Dialog.js +160 -0
  69. package/src/Dialog.scss +42 -0
  70. package/src/DropFileInput.css +24 -0
  71. package/src/DropFileInput.js +45 -0
  72. package/src/DropFileInput.scss +28 -0
  73. package/src/DroppableHorizontalList.js +190 -0
  74. package/src/DroppableList.css +14 -0
  75. package/src/DroppableList.js +201 -0
  76. package/src/DroppableList.scss +27 -0
  77. package/src/Dropzone.css +54 -0
  78. package/src/Dropzone.js +140 -0
  79. package/src/Dropzone.scss +66 -0
  80. package/src/FilteredList.css +68 -0
  81. package/src/FilteredList.js +196 -0
  82. package/src/FilteredList.scss +86 -0
  83. package/src/FloatingActionButton.css +20 -0
  84. package/src/FloatingActionButton.js +35 -0
  85. package/src/FloatingActionButton.scss +25 -0
  86. package/src/FormUploadProgress.css +61 -0
  87. package/src/FormUploadProgress.js +87 -0
  88. package/src/FormUploadProgress.scss +78 -0
  89. package/src/ImageGallery.css +196 -0
  90. package/src/ImageGallery.js +935 -0
  91. package/src/ImageGallery.scss +256 -0
  92. package/src/MaterialIcon.js +1837 -0
  93. package/src/Modal.css +61 -0
  94. package/src/Modal.js +160 -0
  95. package/src/Modal.scss +73 -0
  96. package/src/ModalMenu.css +30 -0
  97. package/src/ModalMenu.js +59 -0
  98. package/src/ModalMenu.scss +36 -0
  99. package/src/ReactConstants.ts +42 -0
  100. package/src/ReactCreateElement.js +5 -0
  101. package/src/ReadyListener.js +53 -0
  102. package/src/ResizeObserver.ts +50 -0
  103. package/src/Scrollable.css +80 -0
  104. package/src/Scrollable.js +388 -0
  105. package/src/Scrollable.scss +100 -0
  106. package/src/ScrollableTable.css +6 -0
  107. package/src/ScrollableTable.scss +12 -0
  108. package/src/ScrollableTable.tsx +39 -0
  109. package/src/Size.js +56 -0
  110. package/src/Snackbar.css +40 -0
  111. package/src/Snackbar.js +71 -0
  112. package/src/Snackbar.scss +47 -0
  113. package/src/SpinningProgress.css +49 -0
  114. package/src/SpinningProgress.js +19 -0
  115. package/src/SpinningProgress.scss +57 -0
  116. package/src/Switch.css +69 -0
  117. package/src/Switch.js +54 -0
  118. package/src/Switch.scss +73 -0
  119. package/src/Table.css +94 -0
  120. package/src/Table.scss +121 -0
  121. package/src/Table.tsx +360 -0
  122. package/src/TextField.css +122 -0
  123. package/src/TextField.js +162 -0
  124. package/src/TextField.scss +160 -0
  125. package/src/Tools.test.js +105 -0
  126. package/src/Tools.ts +231 -0
  127. package/src/global.css +1 -0
  128. package/src/global.scss +6 -0
  129. package/src/index.js +78 -0
  130. package/src/router/HistoryTools.js +32 -0
  131. package/src/router/Link.js +27 -0
  132. package/src/router/NavLink.js +25 -0
  133. package/src/router/README.md +55 -0
  134. package/src/router/Route.js +209 -0
  135. package/src/router/Route.test.js +139 -0
  136. package/src/router/index.js +14 -0
  137. package/src/store/ProxyTools.js +91 -0
  138. package/src/store/ProxyTools.test.js +97 -0
  139. package/src/store/Store.ts +91 -0
  140. package/store/ProxyTools.js.map +1 -1
  141. package/store/Store.js.map +1 -1
@@ -0,0 +1,177 @@
1
+ @import "./global.scss";
2
+
3
+ .Button {
4
+ position: relative;
5
+ min-width: 64px;
6
+ min-height: 36px;
7
+ height: 24px;
8
+ margin: 0px;
9
+ padding: 0px 16px;
10
+ border: none;
11
+ outline: none;
12
+ font-size: 14px;
13
+ font-weight: 500;
14
+ letter-spacing: 1.25px;
15
+ background: #dfdfdf;
16
+ text-transform: uppercase;
17
+ font-family: $font;
18
+ -webkit-tap-highlight-color: transparent;
19
+
20
+ display: inline-flex;
21
+ justify-content: center;
22
+ align-items: center;
23
+
24
+ cursor: pointer;
25
+ overflow: hidden;
26
+ user-select: none;
27
+ border-radius: 3px;
28
+
29
+ transition: all 0.2s ease;
30
+
31
+ &.flat {
32
+ background-color: transparent;
33
+
34
+ &:hover {
35
+ background-color: rgba(0, 0, 0, .05);
36
+ }
37
+ }
38
+
39
+ &.green {
40
+ background-color: #43a047;
41
+ color: white;
42
+
43
+ &:hover {
44
+ background-color: darken(#43a047, 5%);
45
+ }
46
+ }
47
+
48
+ &.blue {
49
+ background-color: #039be5;
50
+ color: white;
51
+
52
+ &:hover {
53
+ background-color: darken(#039be5, 5%);
54
+ }
55
+ }
56
+
57
+ &.red {
58
+ background-color: #e53935;
59
+ color: white;
60
+
61
+ &:hover {
62
+ background-color: darken(#e53935, 5%);
63
+ }
64
+ }
65
+
66
+ &.black {
67
+ background-color: #1e252d;
68
+ color: white;
69
+
70
+ &:hover {
71
+ background-color: darken(#1e252d, 5%);
72
+ }
73
+ }
74
+
75
+ &.gray {
76
+ background: #D9D9D9;
77
+ color: #999999;
78
+
79
+ &:hover {
80
+ background-color: darken(#D9D9D9, 5%);
81
+ }
82
+ }
83
+
84
+ &.small {
85
+ padding: 0px 8px;
86
+ min-height: 16px;
87
+ min-width: 16px;
88
+ }
89
+
90
+ > .material-icons {
91
+ margin-right: 10px;
92
+ }
93
+
94
+ &.round {
95
+ padding: 0px;
96
+ min-width: 36px;
97
+ border-radius: 50%;
98
+
99
+ > .material-icons {
100
+ margin: 0px;
101
+ }
102
+ }
103
+
104
+ .ripple {
105
+ position: absolute;
106
+ background: rgba(0, 0, 0, .1);
107
+ border-radius: 100%;
108
+ transform: scale(0);
109
+ pointer-events: none;
110
+ transition: opacity 0.2s ease-out;
111
+ }
112
+
113
+ .ripple.show {
114
+ animation: ripple .35s ease-out;
115
+ }
116
+
117
+ &:active .ripple.showed {
118
+ opacity: 1;
119
+ }
120
+
121
+ &:focus .ripple.focused {
122
+ opacity: 1;
123
+ transition: opacity 0.2s ease-out, transform 0.2s ease-out;
124
+ transform: scale(1);
125
+ animation: resize 1.25s ease-out infinite;
126
+ animation-delay: 0.2s;
127
+ animation-direction: alternate;
128
+ }
129
+
130
+ .ripple.showed {
131
+ transform: scale(2);
132
+ opacity: 0;
133
+ }
134
+
135
+ @keyframes ripple {
136
+ to {
137
+ transform: scale(2);
138
+ }
139
+ }
140
+
141
+ @keyframes resize {
142
+ to {
143
+ transform: scale(0.9);
144
+ }
145
+ }
146
+
147
+ &.raised {
148
+ //box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
149
+ transition: color 0.2s ease-out, background-color 0.2s ease-out, box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
150
+
151
+ &:hover {
152
+ box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.25);
153
+ }
154
+
155
+ &:active {
156
+ box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.35);
157
+ }
158
+
159
+ //&:focus, &:hover {
160
+ // box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
161
+ //}
162
+ }
163
+
164
+ &.disabled {
165
+ box-shadow: none;
166
+ background: #D9D9D9;
167
+ color: #999999;
168
+
169
+ &:hover {
170
+ background-color: darken(#D9D9D9, 5%);
171
+ }
172
+ }
173
+
174
+ &::-moz-focus-inner {
175
+ border: 0;
176
+ }
177
+ }
@@ -0,0 +1,56 @@
1
+ .Checkbox {
2
+ position: relative;
3
+ white-space: pre;
4
+ }
5
+ .Checkbox *, .Checkbox *:before, .Checkbox *:after {
6
+ box-sizing: border-box;
7
+ }
8
+ .Checkbox label {
9
+ font-family: Roboto, sans-serif;
10
+ font-size: 14px;
11
+ color: #1e252d;
12
+ cursor: pointer;
13
+ }
14
+ .Checkbox label:before, .Checkbox label:after {
15
+ content: "";
16
+ position: absolute;
17
+ left: 0;
18
+ top: 0;
19
+ }
20
+ .Checkbox label:before {
21
+ width: 20px;
22
+ height: 20px;
23
+ background: #fff;
24
+ border: 2px solid #252525;
25
+ border-radius: 2px;
26
+ cursor: pointer;
27
+ transition: background 0.3s;
28
+ }
29
+ .Checkbox input[type=checkbox] {
30
+ outline: 0;
31
+ margin-right: 10px;
32
+ visibility: hidden;
33
+ }
34
+ .Checkbox input[type=checkbox]:checked + label:before {
35
+ background: #4AC263;
36
+ border: none;
37
+ }
38
+ .Checkbox input[type=checkbox]:checked + label:after {
39
+ transform: rotate(-45deg);
40
+ top: 6px;
41
+ left: 4px;
42
+ width: 12px;
43
+ height: 6px;
44
+ border: 2px solid #fff;
45
+ border-top-style: none;
46
+ border-right-style: none;
47
+ }
48
+ .Checkbox input[type=checkbox]:disabled + label {
49
+ color: gray;
50
+ }
51
+ .Checkbox input[type=checkbox]:disabled + label:before {
52
+ border-color: rgba(0, 0, 0, 0.26);
53
+ }
54
+ .Checkbox input[type=checkbox]:disabled:checked + label:before {
55
+ background: rgba(0, 0, 0, 0.26);
56
+ }
@@ -0,0 +1,52 @@
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
+ import React from 'react';
4
+ import {toConsumableArray as __toConsumableArray} from "./../_virtual/_rollupPluginBabelHelpers";
5
+ import {extends as __extends} from "./../_virtual/_rollupPluginBabelHelpers";
6
+ import {inherits as __inherits} from "./../_virtual/_rollupPluginBabelHelpers";
7
+ import './Checkbox.css';
8
+ import ReactCreateElement from './ReactCreateElement';
9
+ import './Checkbox.css'
10
+ import {classNames, getRandomId} from "./Tools";
11
+ import {PureComponent, render, propsGetter} from "./ReactConstants";
12
+ import PropTypes from "prop-types";
13
+
14
+ class Checkbox extends PureComponent {
15
+
16
+ constructor(properties) {
17
+ super(properties);
18
+ const randomId = getRandomId('cb-');
19
+ const props = propsGetter(this);
20
+
21
+ this[ReactConstants[3]] = () => {
22
+ const {label, name, onChange, value, className, disabled} = props();
23
+ const id = props().id || randomId;
24
+ return (
25
+ <div className={classNames("Checkbox", className)}>
26
+ <input name={name} id={id} type="checkbox" onChange={onChange} checked={value} disabled={disabled}/>
27
+ <label htmlFor={id}>{label}</label>
28
+ </div>
29
+ )
30
+ }
31
+ }
32
+ }
33
+
34
+ if (process.env.NODE_ENV !== 'production') {
35
+ Checkbox.propTypes = {
36
+ [ReactConstants[7]]: PropTypes.func.isRequired,
37
+ value: PropTypes.bool,
38
+ disabled: PropTypes.bool,
39
+ [ReactConstants[5]]: PropTypes.string,
40
+ label: PropTypes.oneOfType([
41
+ PropTypes.string,
42
+ PropTypes.element
43
+ ]),
44
+ name: PropTypes.string,
45
+ id: PropTypes.oneOfType([
46
+ PropTypes.string,
47
+ PropTypes.number
48
+ ]),
49
+ };
50
+ }
51
+
52
+ export default Checkbox
@@ -0,0 +1,87 @@
1
+ @use "sass:math";
2
+ @import "./global.scss";
3
+
4
+ $checkedColor: #4AC263;
5
+ $borderColor: #252525;
6
+
7
+ $size: 20px;
8
+ $padding: 4px;
9
+
10
+ $checkMarkWidth: 2px;
11
+ $checkMarkColor: #fff;
12
+ $checkMarkSize: $size - 2*$padding;
13
+
14
+ .Checkbox {
15
+ position: relative;
16
+ white-space: pre;
17
+
18
+ *, *:before, *:after {
19
+ box-sizing: border-box;
20
+ }
21
+
22
+ label {
23
+ font-family: $font;
24
+ font-size: $fontSizeInput;
25
+ color: $colorInput;
26
+ cursor: pointer;
27
+
28
+ &:before, &:after {
29
+ content: "";
30
+ position: absolute;
31
+ left: 0;
32
+ top: 0;
33
+ }
34
+
35
+ &:before {
36
+ width: $size;
37
+ height: $size;
38
+ background: #fff;
39
+ border: 2px solid $borderColor;
40
+ border-radius: 2px;
41
+ cursor: pointer;
42
+ transition: background .3s;
43
+ }
44
+ }
45
+
46
+ input[type="checkbox"] {
47
+ outline: 0;
48
+ margin-right: $size - 10px;
49
+ visibility: hidden;
50
+
51
+ &:checked {
52
+ + label:before {
53
+ background: $checkedColor;
54
+ border: none;
55
+ }
56
+
57
+ + label:after {
58
+ transform: rotate(-45deg);
59
+
60
+ top: math.div($size, 2) - math.div($checkMarkSize, 4) - math.div($size, 10) + 1;
61
+ left: $padding;
62
+ width: $checkMarkSize;
63
+ height: math.div($checkMarkSize, 2);
64
+
65
+ border: $checkMarkWidth solid $checkMarkColor;
66
+ border-top-style: none;
67
+ border-right-style: none;
68
+ }
69
+ }
70
+
71
+ &:disabled {
72
+ + label {
73
+ color: gray;
74
+
75
+ &:before {
76
+ border-color: rgba(0, 0, 0, .26);
77
+ }
78
+ }
79
+
80
+ &:checked {
81
+ + label:before {
82
+ background: rgba(0, 0, 0, .26);
83
+ }
84
+ }
85
+ }
86
+ }
87
+ }
@@ -0,0 +1,11 @@
1
+ .CircleProgress {
2
+ width: 48px;
3
+ height: 48px;
4
+ }
5
+ .CircleProgress .line {
6
+ stroke-width: 2px;
7
+ stroke: black;
8
+ stroke-linecap: square;
9
+ fill: none;
10
+ transition: stroke-dashoffset 0.2s ease;
11
+ }
@@ -0,0 +1,38 @@
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
+ import React from 'react';
4
+ import {toConsumableArray as __toConsumableArray} from "./../_virtual/_rollupPluginBabelHelpers";
5
+ import {extends as __extends} from "./../_virtual/_rollupPluginBabelHelpers";
6
+ import {inherits as __inherits} from "./../_virtual/_rollupPluginBabelHelpers";
7
+ import './CircleProgress.css';
8
+ import ReactCreateElement from './ReactCreateElement';
9
+ import PropTypes from "prop-types";
10
+ import './CircleProgress.css'
11
+
12
+ const radius = 8.75;
13
+ const length = 2 * Math.PI * radius;
14
+
15
+ const dashoffset = (percent) => length * (100 - percent) / 100;
16
+
17
+ const CircleProgress = ({value}) => {
18
+ value = Number.parseFloat(value);
19
+ return (
20
+ <div className="CircleProgress">
21
+ <svg viewBox="0 0 24 24">
22
+ <path className="line" style={{strokeDashoffset: dashoffset(Number.isFinite(value) ? value : 0), strokeDasharray: length}}
23
+ d="M12 3.25A8.75 8.75 0 1 1 3.25 12 A 8.75,8.75 0 0 1 12,3.25"/>
24
+ </svg>
25
+ </div>
26
+ );
27
+ };
28
+
29
+ CircleProgress.defaultProps = {
30
+ value: 0,
31
+ };
32
+ if (process.env.NODE_ENV !== 'production') {
33
+ CircleProgress.propTypes = {
34
+ value: PropTypes.number,
35
+ };
36
+ }
37
+
38
+ export default CircleProgress;
@@ -0,0 +1,13 @@
1
+ .CircleProgress {
2
+ width: 48px;
3
+ height: 48px;
4
+
5
+ .line {
6
+ stroke-width: 2px;
7
+ stroke: black;
8
+ stroke-linecap: square;
9
+ fill: none;
10
+
11
+ transition: stroke-dashoffset 0.2s ease;
12
+ }
13
+ }
@@ -0,0 +1,21 @@
1
+ export const createAccessor = (field) => (o) => {
2
+ return o[field];
3
+ }
4
+
5
+ export const width = createAccessor('width')
6
+ export const height = createAccessor('height')
7
+ export const top = createAccessor('top')
8
+ export const left = createAccessor('left')
9
+ export const style = createAccessor('style')
10
+ export const length = createAccessor('length')
11
+ export const pageX = createAccessor('pageX')
12
+ export const pageY = createAccessor('pageY')
13
+ export const value = createAccessor('value')
14
+ export const clientHeight = createAccessor('clientHeight')
15
+ export const clientWidth = createAccessor('clientWidth')
16
+ export const scrollTop = createAccessor('scrollTop')
17
+ export const scrollLeft = createAccessor('scrollLeft')
18
+ export const target = createAccessor('target')
19
+ export const data = createAccessor('data')
20
+ export const state = createAccessor('state')
21
+ export const props = createAccessor('props')
@@ -0,0 +1,26 @@
1
+ .DNDContainer {
2
+ position: relative;
3
+ }
4
+ .DNDContainer .Draggable[draggable=true], .DNDContainer .Draggable [draggable=true] {
5
+ cursor: pointer;
6
+ }
7
+ .DNDContainer .Draggable.placeholder {
8
+ opacity: 0.2;
9
+ }
10
+ .DNDContainer .Draggable.copy {
11
+ position: absolute;
12
+ box-sizing: border-box;
13
+ will-change: transform;
14
+ opacity: 0;
15
+ }
16
+ .DNDContainer .Draggable.dragged {
17
+ z-index: 10;
18
+ }
19
+ .DNDContainer .overlay {
20
+ position: absolute;
21
+ top: 0;
22
+ left: 0;
23
+ right: 0;
24
+ bottom: 0;
25
+ pointer-events: none;
26
+ }