@steroidsjs/bootstrap 3.0.0-beta.4 → 3.0.0-beta.40

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 (124) hide show
  1. package/README.md +1 -2
  2. package/content/Accordion/AccordionItemView.d.ts +2 -0
  3. package/content/{Collapse/CollapseItemView.js → Accordion/AccordionItemView.js} +46 -22
  4. package/content/Accordion/AccordionItemView.scss +209 -0
  5. package/content/Accordion/AccordionView.d.ts +2 -0
  6. package/content/{Collapse/CollapseView.js → Accordion/AccordionView.js} +3 -3
  7. package/content/{Collapse/CollapseView.scss → Accordion/AccordionView.scss} +3 -4
  8. package/content/Alert/AlertView.scss +19 -4
  9. package/content/Avatar/AvatarView.js +2 -3
  10. package/content/Avatar/AvatarView.scss +32 -39
  11. package/content/Badge/BadgeView.d.ts +3 -0
  12. package/content/Badge/BadgeView.js +25 -0
  13. package/content/Badge/BadgeView.scss +135 -0
  14. package/content/Calendar/CaptionElement.scss +5 -4
  15. package/content/Card/CardView.js +36 -14
  16. package/content/Card/CardView.scss +139 -107
  17. package/content/Detail/DetailView.scss +75 -52
  18. package/content/DropDown/DropDownView.js +6 -3
  19. package/content/DropDown/DropDownView.scss +196 -27
  20. package/content/Icon/IconView.js +2 -2
  21. package/form/Button/ButtonView.js +12 -8
  22. package/form/Button/ButtonView.scss +166 -68
  23. package/form/CheckboxField/CheckboxFieldView.js +6 -3
  24. package/form/CheckboxField/CheckboxFieldView.scss +183 -36
  25. package/form/CheckboxListField/CheckboxListFieldView.js +19 -15
  26. package/form/CheckboxListField/CheckboxListFieldView.scss +7 -41
  27. package/form/DropDownField/DropDownFieldView.js +31 -47
  28. package/form/DropDownField/DropDownFieldView.scss +390 -182
  29. package/form/DropDownField/utils.d.ts +2 -0
  30. package/form/DropDownField/utils.js +15 -0
  31. package/form/DropDownFieldItem/DropDownFieldItemView.d.ts +2 -0
  32. package/form/DropDownFieldItem/DropDownFieldItemView.js +78 -0
  33. package/form/DropDownFieldItem/DropDownFieldItemView.scss +216 -0
  34. package/form/FieldLayout/FieldLayoutView.js +13 -9
  35. package/form/FieldLayout/FieldLayoutView.scss +129 -24
  36. package/form/FieldList/FieldListView.js +1 -1
  37. package/form/FileField/FileFieldView.js +1 -1
  38. package/form/Form/FormView.js +1 -4
  39. package/form/Form/FormView.scss +1 -14
  40. package/form/InputField/InputFieldView.js +30 -13
  41. package/form/InputField/InputFieldView.scss +245 -99
  42. package/form/NumberField/NumberFieldView.js +19 -13
  43. package/form/NumberField/NumberFieldView.scss +195 -89
  44. package/form/PasswordField/PasswordFieldView.js +11 -9
  45. package/form/PasswordField/PasswordFieldView.scss +231 -63
  46. package/form/RadioField/RadioFieldView.d.ts +3 -0
  47. package/form/RadioField/RadioFieldView.js +57 -0
  48. package/form/RadioField/RadioFieldView.scss +226 -0
  49. package/form/RadioListField/RadioListFieldView.js +20 -16
  50. package/form/RadioListField/RadioListFieldView.scss +11 -1
  51. package/form/ReCaptchaField/ReCaptchaFieldView.js +2 -2
  52. package/form/SwitcherField/SwitcherFieldView.js +1 -1
  53. package/form/TextField/TextFieldView.js +10 -2
  54. package/form/TextField/TextFieldView.scss +143 -2
  55. package/icons/index.d.ts +2 -0
  56. package/{icon/fontawesome.js → icons/index.js} +40 -11
  57. package/icons/svgs/accordion-chevron.svg +4 -0
  58. package/icons/svgs/arrow-left.svg +3 -0
  59. package/icons/svgs/arrow.svg +3 -0
  60. package/icons/svgs/badge-close.svg +3 -0
  61. package/icons/svgs/close.svg +4 -0
  62. package/icons/svgs/crossed-out-eye.svg +5 -0
  63. package/icons/svgs/default.svg +11 -0
  64. package/icons/svgs/dots.svg +5 -0
  65. package/icons/svgs/double-arrow-left.svg +4 -0
  66. package/icons/svgs/error.svg +12 -0
  67. package/icons/svgs/field-close.svg +4 -0
  68. package/icons/svgs/home.svg +4 -0
  69. package/icons/svgs/info.svg +12 -0
  70. package/icons/svgs/loader.svg +3 -0
  71. package/icons/svgs/search.svg +4 -0
  72. package/icons/svgs/success.svg +4 -0
  73. package/icons/svgs/user.svg +4 -0
  74. package/icons/svgs/visible-eye.svg +4 -0
  75. package/icons/svgs/warning.svg +12 -0
  76. package/index.d.ts +11 -2
  77. package/index.js +13 -4
  78. package/index.scss +8 -3
  79. package/layout/Header/HeaderView.scss +3 -3
  80. package/layout/Tooltip/TooltipView.js +6 -6
  81. package/layout/Tooltip/TooltipView.scss +45 -37
  82. package/list/Grid/GridView.js +1 -1
  83. package/list/Grid/GridView.scss +28 -30
  84. package/list/List/ListView.d.ts +1 -0
  85. package/list/List/ListView.js +5 -5
  86. package/list/List/ListView.scss +9 -0
  87. package/list/Pagination/PaginationButtonView.js +34 -5
  88. package/list/Pagination/PaginationButtonView.scss +258 -1
  89. package/list/Pagination/PaginationMoreView.js +1 -1
  90. package/list/Pagination/PaginationMoreView.scss +4 -1
  91. package/nav/Breadcrubms/BreadcrumbsView.js +9 -1
  92. package/nav/Breadcrubms/BreadcrumbsView.scss +51 -0
  93. package/nav/Nav/NavIconView.js +1 -1
  94. package/nav/Nav/NavListView.js +1 -1
  95. package/nav/Nav/NavTabsView.js +1 -1
  96. package/nav/Tree/TreeView.scss +14 -11
  97. package/package.json +56 -56
  98. package/scss/fonts.scss +6 -0
  99. package/scss/mixins/button.scss +61 -24
  100. package/scss/mixins/index.scss +2 -1
  101. package/scss/mixins/scroll.scss +31 -0
  102. package/scss/mixins/typography.scss +26 -0
  103. package/scss/variables/common/colors.scss +95 -70
  104. package/scss/variables/common/media.scss +2 -0
  105. package/scss/variables/common/typography.scss +96 -28
  106. package/scss/variables/components/input.scss +7 -6
  107. package/scss/variables/index.scss +2 -2
  108. package/scss/variables/normalize.scss +25 -0
  109. package/typography/Text/TextView.d.ts +3 -0
  110. package/typography/Text/TextView.js +46 -0
  111. package/typography/Text/TextView.scss +16 -0
  112. package/typography/Title/TitleView.d.ts +3 -0
  113. package/typography/Title/TitleView.js +50 -0
  114. package/typography/Title/TitleView.scss +16 -0
  115. package/utils/renderIcon.d.ts +9 -0
  116. package/utils/renderIcon.js +27 -0
  117. package/content/Collapse/CollapseItemView.d.ts +0 -2
  118. package/content/Collapse/CollapseItemView.scss +0 -88
  119. package/content/Collapse/CollapseView.d.ts +0 -2
  120. package/content/Icon/IconView.scss +0 -25
  121. package/icon/fontawesome.d.ts +0 -2
  122. package/list/List/ListItemView.scss +0 -3
  123. package/scss/mixins/card.scss +0 -26
  124. package/scss/variables/components/card.scss +0 -20
@@ -0,0 +1,12 @@
1
+ <svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <g clip-path="url(#clip0_126_1063)">
3
+ <circle cx="12.7461" cy="12" r="12" fill="#A7EFFF"/>
4
+ <circle cx="12.7461" cy="7.25" r="0.75" transform="rotate(-180 12.7461 7.25)" fill="white"/>
5
+ <line x1="12.7461" y1="16.75" x2="12.7461" y2="10.25" stroke="white" stroke-width="1.5" stroke-linecap="round"/>
6
+ </g>
7
+ <defs>
8
+ <clipPath id="clip0_126_1063">
9
+ <rect width="24" height="24" fill="white" transform="translate(0.746094)"/>
10
+ </clipPath>
11
+ </defs>
12
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M7.07051 1.00041C5.8839 0.986525 4.71983 1.32482 3.72548 1.97252C2.73114 2.62022 1.9512 3.54823 1.48427 4.63919C1.01735 5.73016 0.884422 6.93509 1.1023 8.1016C1.32018 9.26812 1.87907 10.3438 2.70831 11.1927C3.53755 12.0416 4.59989 12.6255 5.76098 12.8706C6.92208 13.1157 8.12979 13.011 9.23139 12.5698C10.333 12.1285 11.279 11.3705 11.9498 10.3916C12.6206 9.41265 12.986 8.25681 12.9999 7.07021" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
3
+ </svg>
@@ -0,0 +1,4 @@
1
+ <svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <circle cx="11.3535" cy="11.7225" r="6" stroke="#323232" stroke-width="1.5"/>
3
+ <path d="M20.3535 20.7225L17.3535 17.7225" stroke="#323232" stroke-width="1.5" stroke-linecap="round"/>
4
+ </svg>
@@ -0,0 +1,4 @@
1
+ <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <rect width="24" height="24" rx="12" fill="#2BC945"/>
3
+ <path d="M16.5 9L10.3125 15L7.5 12.2727" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
4
+ </svg>
@@ -0,0 +1,4 @@
1
+ <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <circle cx="12" cy="8" r="3.25" stroke="#323232" stroke-width="1.5" stroke-linecap="round"/>
3
+ <path d="M6.24684 15.9465C7.45154 14.1154 9.25931 13.5 11.4511 13.5H12.4823C14.6828 13.5 16.5143 14.1468 17.7295 15.9814V15.9814C18.8016 17.6 17.9261 19.5 15.9847 19.5H8.00741C6.07032 19.5 5.18216 17.5648 6.24684 15.9465V15.9465Z" stroke="#323232" stroke-width="1.5" stroke-linecap="round"/>
4
+ </svg>
@@ -0,0 +1,4 @@
1
+ <svg width="24" height="25" viewBox="0 0 24 25" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <circle cx="12" cy="12.4879" r="3.25" stroke="#323232" stroke-width="1.5"/>
3
+ <path d="M20.188 11.4222C20.5762 11.8935 20.7703 12.1291 20.7703 12.4879C20.7703 12.8467 20.5762 13.0824 20.188 13.5536C18.7679 15.2778 15.6357 18.4879 12 18.4879C8.36427 18.4879 5.23206 15.2778 3.81197 13.5536C3.42381 13.0824 3.22973 12.8467 3.22973 12.4879C3.22973 12.1291 3.42381 11.8935 3.81197 11.4222C5.23206 9.69805 8.36427 6.48792 12 6.48792C15.6357 6.48792 18.7679 9.69805 20.188 11.4222Z" stroke="#323232" stroke-width="1.5"/>
4
+ </svg>
@@ -0,0 +1,12 @@
1
+ <svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <g clip-path="url(#clip0_126_1068)">
3
+ <path d="M10.148 3C11.3027 0.999997 14.1895 1 15.3442 3L24.0044 18C25.1591 20 23.7157 22.5 21.4063 22.5H4.08584C1.77644 22.5 0.333063 20 1.48776 18L10.148 3Z" fill="#FFE457"/>
4
+ <circle cx="12.7461" cy="16.75" r="0.75" fill="white"/>
5
+ <line x1="12.7461" y1="7.25" x2="12.7461" y2="13.75" stroke="white" stroke-width="1.5" stroke-linecap="round"/>
6
+ </g>
7
+ <defs>
8
+ <clipPath id="clip0_126_1068">
9
+ <rect width="24" height="24" fill="white" transform="translate(0.746094)"/>
10
+ </clipPath>
11
+ </defs>
12
+ </svg>
package/index.d.ts CHANGED
@@ -23,6 +23,9 @@ declare const _default: {
23
23
  'content.IconView': {
24
24
  lazy: () => any;
25
25
  };
26
+ 'content.BadgeView': {
27
+ lazy: () => any;
28
+ };
26
29
  'form.AutoCompleteFieldView': {
27
30
  lazy: () => any;
28
31
  };
@@ -32,10 +35,10 @@ declare const _default: {
32
35
  'content.CardView': {
33
36
  lazy: () => any;
34
37
  };
35
- 'content.CollapseView': {
38
+ 'content.AccordionView': {
36
39
  lazy: () => any;
37
40
  };
38
- 'content.CollapseItemView': {
41
+ 'content.AccordionItemView': {
39
42
  lazy: () => any;
40
43
  };
41
44
  'form.CheckboxFieldView': {
@@ -215,5 +218,11 @@ declare const _default: {
215
218
  'nav.TreeView': {
216
219
  lazy: () => any;
217
220
  };
221
+ 'typography.TextView': {
222
+ lazy: () => any;
223
+ };
224
+ 'typography.TitleView': {
225
+ lazy: () => any;
226
+ };
218
227
  };
219
228
  export default _default;
package/index.js CHANGED
@@ -26,6 +26,9 @@ exports["default"] = {
26
26
  'content.IconView': {
27
27
  lazy: function () { return require('./content/Icon/IconView')["default"]; }
28
28
  },
29
+ 'content.BadgeView': {
30
+ lazy: function () { return require('./content/Badge/BadgeView')["default"]; }
31
+ },
29
32
  'form.AutoCompleteFieldView': {
30
33
  lazy: function () { return require('./form/AutoCompleteField/AutoCompleteFieldView')["default"]; }
31
34
  },
@@ -35,11 +38,11 @@ exports["default"] = {
35
38
  'content.CardView': {
36
39
  lazy: function () { return require('./content/Card/CardView')["default"]; }
37
40
  },
38
- 'content.CollapseView': {
39
- lazy: function () { return require('./content/Collapse/CollapseView')["default"]; }
41
+ 'content.AccordionView': {
42
+ lazy: function () { return require('./content/Accordion/AccordionView')["default"]; }
40
43
  },
41
- 'content.CollapseItemView': {
42
- lazy: function () { return require('./content/Collapse/CollapseItemView')["default"]; }
44
+ 'content.AccordionItemView': {
45
+ lazy: function () { return require('./content/Accordion/AccordionItemView')["default"]; }
43
46
  },
44
47
  'form.CheckboxFieldView': {
45
48
  lazy: function () { return require('./form/CheckboxField/CheckboxFieldView')["default"]; }
@@ -217,5 +220,11 @@ exports["default"] = {
217
220
  },
218
221
  'nav.TreeView': {
219
222
  lazy: function () { return require('./nav/Tree/TreeView')["default"]; }
223
+ },
224
+ 'typography.TextView': {
225
+ lazy: function () { return require('./typography/Text/TextView')["default"]; }
226
+ },
227
+ 'typography.TitleView': {
228
+ lazy: function () { return require('./typography/Title/TitleView')["default"]; }
220
229
  }
221
230
  };
package/index.scss CHANGED
@@ -1,15 +1,17 @@
1
1
  @import './scss/mixins';
2
2
  @import './scss/variables';
3
+ @import './scss/fonts';
3
4
 
4
5
  @import './crud/Crud/CrudView';
5
6
  @import './content/Alert/AlertView';
6
7
  @import './content/Avatar/AvatarView';
7
8
  @import './content/Avatar/AvatarGroupView';
9
+ @import './content/Badge/BadgeView';
8
10
  @import './content/Calendar/CalendarView';
9
11
  @import './content/Calendar/CaptionElement';
10
12
  @import './content/Card/CardView';
11
- @import './content/Collapse/CollapseView';
12
- @import './content/Collapse/CollapseItemView';
13
+ @import './content/Accordion/AccordionView';
14
+ @import './content/Accordion/AccordionItemView';
13
15
  @import './content/Detail/DetailView';
14
16
  @import './form/AutoCompleteField/AutoCompleteFieldView';
15
17
  @import './form/Button/ButtonView';
@@ -19,6 +21,7 @@
19
21
  @import './form/DateRangeField/DateRangeFieldView';
20
22
  @import './form/DateTimeField/DateTimeFieldView';
21
23
  @import './form/DateTimeRangeField/DateTimeRangeFieldView';
24
+ @import './form/DropDownFieldItem/DropDownFieldItemView';
22
25
  @import './form/DropDownField/DropDownFieldView';
23
26
  @import './form/FieldLayout/FieldLayoutView';
24
27
  @import './form/FieldList/FieldListView';
@@ -31,6 +34,7 @@
31
34
  @import './form/NumberField/NumberFieldView';
32
35
  @import './form/PasswordField/PasswordFieldView';
33
36
  @import './form/RateField/RateFieldView';
37
+ @import './form/RadioField/RadioFieldView';
34
38
  @import './form/RadioListField/RadioListFieldView';
35
39
  @import './form/ReCaptchaField/ReCaptchaFieldView';
36
40
  @import './form/SliderField/SliderFieldView';
@@ -38,7 +42,6 @@
38
42
  @import './form/TextField/TextFieldView';
39
43
  @import './form/TimeField/TimeFieldView';
40
44
  @import './form/TimeField/TimePanelView';
41
- @import './content/Icon/IconView';
42
45
  @import './layout/Header/HeaderView';
43
46
  @import './layout/Tooltip/TooltipView';
44
47
  @import './layout/Notifications/NotificationsView';
@@ -67,3 +70,5 @@
67
70
  @import './nav/Nav/NavListView';
68
71
  @import './nav/Nav/NavTabsView';
69
72
  @import './nav/Tree/TreeView';
73
+ @import './typography/Text/TextView';
74
+ @import './typography/Title/TitleView';
@@ -1,9 +1,9 @@
1
+ $body-bg: transparent;
2
+
1
3
  .HeaderView {
2
4
  box-shadow: 0 .125rem .25rem rgba(0,0,0,.075);
3
5
  background-color: $body-bg;
4
- &, a {
5
- color: $body-color;
6
- }
6
+
7
7
  a:hover {
8
8
  opacity: .7;
9
9
  }
@@ -27,18 +27,18 @@ var React = __importStar(require("react"));
27
27
  var react_1 = require("react");
28
28
  var hooks_1 = require("@steroidsjs/core/hooks");
29
29
  function TooltipView(props) {
30
- var _a;
31
30
  var tooltipRef = (0, react_1.useRef)(null);
32
31
  var arrowRef = (0, react_1.useRef)(null);
33
32
  (0, react_1.useEffect)(function () {
34
33
  props.calculatePosition(tooltipRef.current.getBoundingClientRect(), arrowRef.current.getBoundingClientRect());
35
34
  }, [props.calculatePosition]);
36
35
  var bem = (0, hooks_1.useBem)('TooltipView');
37
- return (React.createElement("div", { ref: tooltipRef, className: bem(bem.block({
38
- show: props.isTooltipVisible
39
- }), 'tooltip', 'tooltip-position-' + props.position), style: props.style },
40
- React.createElement("div", { ref: arrowRef, className: bem.element('arrow', (_a = {}, _a['position-' + props.position] = true, _a)), style: props.arrowPosition }),
41
- React.createElement("div", { className: bem(bem.element('content'), 'tooltip-inner') },
36
+ return (React.createElement("div", { ref: tooltipRef, className: bem.block({
37
+ show: props.isTooltipVisible,
38
+ position: props.position
39
+ }), style: props.style },
40
+ React.createElement("div", { ref: arrowRef, className: bem.element('arrow', { position: props.position }), style: props.arrowPosition }),
41
+ React.createElement("div", { className: bem.element('content') },
42
42
  React.createElement("span", null, props.content))));
43
43
  }
44
44
  exports["default"] = TooltipView;
@@ -1,8 +1,7 @@
1
1
  @use 'sass:math';
2
2
 
3
- $tooltip-arrow-color: #000;
4
- $tooltip-arrow-width: 8px;
5
- $tooltip-arrow-height: 8px;
3
+ $tooltip-arrow-width: 10px;
4
+ $tooltip-arrow-height: 10px;
6
5
  $tooltip-arrow-border: math.div($tooltip-arrow-width, 2);
7
6
  $tooltip-gap: 12px;
8
7
 
@@ -10,10 +9,18 @@ $tooltip-arrow-offset-horizontal: 20px;
10
9
  $tooltip-arrow-offset-vertical-top: 15px;
11
10
  $tooltip-arrow-offset-vertical-bottom: 7px;
12
11
 
12
+ $tooltip-background-color: rgba(65, 65, 65, 0.95);
13
+
13
14
  .TooltipView {
14
15
  position: absolute;
15
16
  top: 0;
16
17
  left: 0;
18
+ max-width: 300px;
19
+ word-break: break-all;
20
+ padding: 8px 12px;
21
+ border-radius: 6px;
22
+ background: $tooltip-background-color;
23
+
17
24
  transform: translate(0,0);
18
25
  opacity: 0;
19
26
  transition: opacity .15s ease-in, transform .15s ease-in;
@@ -22,99 +29,100 @@ $tooltip-arrow-offset-vertical-bottom: 7px;
22
29
  &_show {
23
30
  opacity: 1;
24
31
  }
25
- &_show.tooltip-position-top, &_show.tooltip-position-topLeft, &_show.tooltip-position-topRight{
32
+
33
+ &_position{
34
+ &_top, &_topLeft, &_topRight {
26
35
  transform: translateY(-$tooltip-gap);
27
- }
28
- &_show.tooltip-position-bottom, &_show.tooltip-position-bottomLeft, &_show.tooltip-position-bottomRight{
29
- transform: translateY($tooltip-gap);
30
- }
31
- &_show.tooltip-position-left, &_show.tooltip-position-leftTop, &_show.tooltip-position-leftBottom{
32
- transform: translateX(-$tooltip-gap);
33
- }
34
- &_show.tooltip-position-right, &_show.tooltip-position-rightTop, &_show.tooltip-position-rightBottom{
35
- transform: translateX($tooltip-gap);
36
- }
36
+ }
37
+
38
+ &_bottom, &_bottomLeft, &_bottomRight {
39
+ transform: translateY($tooltip-gap);
40
+ }
41
+
42
+ &_left, &_leftTop, &_leftBottom {
43
+ transform: translateX(-$tooltip-gap);
44
+ }
37
45
 
46
+ &_right, &_rightTop, &_rightBottom {
47
+ transform: translateX($tooltip-gap);
48
+ }
49
+ }
38
50
 
39
51
  &__arrow{
40
52
  position: absolute;
41
-
53
+
42
54
  width: $tooltip-arrow-width;
43
55
  height: $tooltip-arrow-height;
44
56
 
45
57
  border-style: solid;
46
58
  border-width: math.div($tooltip-arrow-height, 2);
59
+ border-color: $tooltip-background-color;
47
60
  box-shadow: 3px 3px 7px rgba(0, 0, 0, 0.07);
48
61
 
49
-
50
- &_position-top, &_position-topLeft, &_position-topRight{
62
+ &_position_top, &_position_topLeft, &_position_topRight{
51
63
  bottom: -$tooltip-arrow-border;
52
64
  left: 50%;
53
-
54
65
  border-top-color: transparent;
55
66
  border-left-color: transparent;
56
- border-right-color: $tooltip-arrow-color;
57
- border-bottom-color: $tooltip-arrow-color;
58
67
  transform: translateX(-50%) rotate(45deg);
59
68
  }
60
- &_position-topLeft{
69
+ &_position_topLeft{
61
70
  left: $tooltip-arrow-offset-horizontal;
62
71
  }
63
- &_position-topRight{
72
+ &_position_topRight{
64
73
  left: unset;
65
74
  right: $tooltip-arrow-offset-horizontal;
66
75
  }
67
76
 
68
- &_position-bottom, &_position-bottomLeft, &_position-bottomRight{
77
+ &_position_bottom, &_position_bottomLeft, &_position_bottomRight{
69
78
  top: -$tooltip-arrow-border;
70
79
  left: 50%;
71
- border-top-color: $tooltip-arrow-color;
72
- border-left-color: $tooltip-arrow-color;
73
80
  border-right-color: transparent;
74
81
  border-bottom-color: transparent;
75
82
  transform: translateX(-50%) rotate(45deg);
76
83
  }
77
- &_position-bottomLeft{
84
+ &_position_bottomLeft{
78
85
  left: $tooltip-arrow-offset-horizontal;
79
86
  }
80
- &_position-bottomRight{
87
+ &_position_bottomRight{
81
88
  left: unset;
82
89
  right: $tooltip-arrow-offset-horizontal;
83
90
  }
84
91
 
85
- &_position-left, &_position-leftTop, &_position-leftBottom{
92
+ &_position_left, &_position_leftTop, &_position_leftBottom{
86
93
  right: -$tooltip-arrow-border;
87
94
  top: 50%;
88
- border-top-color: $tooltip-arrow-color;
89
95
  border-left-color: transparent;
90
- border-right-color: $tooltip-arrow-color;
91
96
  border-bottom-color: transparent;
92
97
  transform: translateY(-50%) rotate(45deg);
93
98
  }
94
- &_position-leftTop{
99
+ &_position_leftTop{
95
100
  top: $tooltip-arrow-offset-vertical-top;
96
101
  }
97
- &_position-leftBottom{
102
+ &_position_leftBottom{
98
103
  top: unset;
99
104
  bottom: $tooltip-arrow-offset-vertical-bottom;
100
105
  }
101
106
 
102
- &_position-right, &_position-rightTop, &_position-rightBottom{
107
+ &_position_right, &_position_rightTop, &_position_rightBottom{
103
108
  left: -$tooltip-arrow-border;
104
109
  top: 50%;
105
110
  border-top-color: transparent;
106
- border-left-color: $tooltip-arrow-color;
107
111
  border-right-color: transparent;
108
- border-bottom-color: $tooltip-arrow-color;
109
112
  transform: translateY(-50%) rotate(45deg);
110
113
  }
111
- &_position-rightTop{
114
+ &_position_rightTop{
112
115
  top: $tooltip-arrow-offset-vertical-top;
113
116
  }
114
- &_position-rightBottom{
117
+ &_position_rightBottom{
115
118
  top: unset;
116
119
  bottom: $tooltip-arrow-offset-vertical-bottom;
117
120
  }
118
121
  }
119
122
 
123
+ &__content{
124
+ color: $white;
125
+ font-size: 14px;
126
+ line-height: 24px;
127
+ }
120
128
  }
@@ -58,7 +58,7 @@ function GridView(props) {
58
58
  var fields = (0, keyBy_1["default"])(props.searchForm.fields.map(function (column) { return (0, isString_1["default"])(column) ? { attribute: column } : column; }), 'attribute');
59
59
  return (React.createElement("tr", null, props.columns.map(function (column, columnIndex) {
60
60
  var _a;
61
- return (React.createElement("td", { key: columnIndex, className: column.headerClassName }, column.attribute && fields[column.attribute] && (React.createElement(Field_1["default"], __assign({ layout: 'inline', size: (_a = props.searchForm) === null || _a === void 0 ? void 0 : _a.size }, fields[column.attribute])))));
61
+ return (React.createElement("td", { key: columnIndex, className: column.headerClassName }, column.attribute && fields[column.attribute] && (React.createElement(Field_1["default"], __assign({ size: (_a = props.searchForm) === null || _a === void 0 ? void 0 : _a.size }, fields[column.attribute])))));
62
62
  })));
63
63
  }, [props.searchForm, props.columns]);
64
64
  var renderSortButton = (0, react_1.useCallback)(function (attribute, direction) {
@@ -1,5 +1,3 @@
1
- @import '~bootstrap/scss/mixins/_breakpoints.scss';
2
-
3
1
  .GridView {
4
2
  opacity: 1;
5
3
  transition: opacity .2s;
@@ -9,34 +7,34 @@
9
7
  }
10
8
 
11
9
  //adaptive styles
12
- @include media-breakpoint-down(sm) {
13
- thead, tbody, th, tr {
14
- display: block;
15
- }
16
-
17
- thead tr {
18
- position: absolute;
19
- top: -9999px;
20
- left: -9999px;
21
- }
22
-
23
- td {
24
- position: relative;
25
- width: 100% !important;
26
- text-align: left !important;
27
-
28
- display: flex;
29
- align-items: center;
30
- white-space: pre-wrap;
31
- }
32
-
33
- td:before {
34
- padding-right: 1rem;
35
- width: 50%;
36
- flex-shrink: 0;
37
- content: attr(data-label);
38
- }
39
- }
10
+ // @include media-breakpoint-down(sm) {
11
+ // thead, tbody, th, tr {
12
+ // display: block;
13
+ // }
14
+
15
+ // thead tr {
16
+ // position: absolute;
17
+ // top: -9999px;
18
+ // left: -9999px;
19
+ // }
20
+
21
+ // td {
22
+ // position: relative;
23
+ // width: 100% !important;
24
+ // text-align: left !important;
25
+
26
+ // display: flex;
27
+ // align-items: center;
28
+ // white-space: pre-wrap;
29
+ // }
30
+
31
+ // td:before {
32
+ // padding-right: 1rem;
33
+ // width: 50%;
34
+ // flex-shrink: 0;
35
+ // content: attr(data-label);
36
+ // }
37
+ // }
40
38
 
41
39
  &__sort-button {
42
40
  opacity: 0.5;
@@ -1,2 +1,3 @@
1
1
  import { IListViewProps } from '@steroidsjs/core/ui/list/List/List';
2
+ import './ListView.scss';
2
3
  export default function ListView(props: IListViewProps): any;
@@ -25,6 +25,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
25
25
  exports.__esModule = true;
26
26
  var React = __importStar(require("react"));
27
27
  var hooks_1 = require("@steroidsjs/core/hooks");
28
+ require("./ListView.scss");
28
29
  function ListView(props) {
29
30
  var bem = (0, hooks_1.useBem)('ListView');
30
31
  if (!props.list) {
@@ -34,17 +35,16 @@ function ListView(props) {
34
35
  if (!pagination && !paginationSize && !layout) {
35
36
  return null;
36
37
  }
37
- return (React.createElement("div", { className: bem('row mb-3', bem.element('pagination')) },
38
- React.createElement("div", { className: 'col-4' }, "\u00A0"),
39
- React.createElement("div", { className: 'col-4' }, pagination),
40
- React.createElement("div", { className: 'col-4 d-flex justify-content-end' },
38
+ return (React.createElement("div", { className: bem.element('pagination') },
39
+ React.createElement("div", null, pagination),
40
+ React.createElement("div", null,
41
41
  layout,
42
42
  paginationSize)));
43
43
  };
44
44
  return props.renderList(React.createElement("div", { className: bem(bem.block({ loading: props.isLoading || props.list.isLoading }), props.className) },
45
45
  props.renderSearchForm(),
46
46
  renderPagination(['top', 'both'].includes(props.paginationPosition) && props.renderPagination(), ['top', 'both'].includes(props.paginationSizePosition) && props.renderPaginationSize(), ['top', 'both'].includes(props.layoutNamesPosition) && props.renderLayoutNames()),
47
- React.createElement("div", { className: bem('mb-3', bem.element('content'), props.contentClassName) }, props.content),
47
+ React.createElement("div", { className: bem(bem.element('content'), props.contentClassName) }, props.content),
48
48
  renderPagination(['bottom', 'both'].includes(props.paginationPosition) && props.renderPagination(), ['bottom', 'both'].includes(props.paginationSizePosition) && props.renderPaginationSize(), ['bottom', 'both'].includes(props.layoutNamesPosition) && props.renderLayoutNames()),
49
49
  props.renderEmpty()));
50
50
  }
@@ -1,3 +1,12 @@
1
1
  .ListView {
2
2
 
3
+ &__pagination {
4
+ display: flex;
5
+ flex-flow: row nowrap;
6
+ margin-bottom: 3px;
7
+ background: red;
8
+ }
9
+
10
+
11
+
3
12
  }
@@ -25,12 +25,41 @@ var __importStar = (this && this.__importStar) || function (mod) {
25
25
  exports.__esModule = true;
26
26
  var React = __importStar(require("react"));
27
27
  var hooks_1 = require("@steroidsjs/core/hooks");
28
+ var content_1 = require("@steroidsjs/core/ui/content");
29
+ var renderArrowStep = function (bem, onClick, iconName, rotate, rounding, disabled) {
30
+ if (rotate === void 0) { rotate = false; }
31
+ return (React.createElement("li", { className: bem.element('page', {
32
+ 'rounding-left': rounding.left,
33
+ 'rounding-right': rounding.right,
34
+ hasIcon: true,
35
+ disabled: disabled
36
+ }) },
37
+ React.createElement("button", { className: bem.element('page-button', {
38
+ hasIcon: true
39
+ }), onClick: function () { return onClick(); }, disabled: disabled },
40
+ React.createElement(content_1.Icon, { tabIndex: -1, className: bem.element('page-icon', {
41
+ rotate: rotate
42
+ }), name: iconName }))));
43
+ };
28
44
  function PaginationButtonView(props) {
29
45
  var bem = (0, hooks_1.useBem)('PaginationButtonView');
30
- return (React.createElement("ul", { className: bem(props.className, bem.block(), 'flex-row', 'pagination', "pagination-".concat(props.size)) }, props.pages.map(function (item, index) { return (React.createElement("li", { key: index, className: bem(bem.element('page', { hidden: !item.page }), 'page-item', item.isActive ? 'active' : '') },
31
- React.createElement("button", { className: bem(bem.element('page-link', { hidden: !item.page }), 'page-link'), onClick: function (e) {
32
- e.preventDefault();
33
- props.onSelect(item.page);
34
- } }, item.label))); })));
46
+ return (React.createElement("ul", { className: bem(bem.block({
47
+ size: props.size
48
+ }), props.className) },
49
+ props.showEdgeSteps
50
+ && renderArrowStep(bem, props.onSelectFirst, 'double-arrow-left', false, { left: true }, props.isFirstPage),
51
+ props.showSteps
52
+ && renderArrowStep(bem, props.onSelectPrev, 'arrow-left', false, {}, props.isFirstPage),
53
+ props.pages.map(function (item, index) { return (React.createElement("li", { key: index, className: bem.element('page', {
54
+ hidden: !item.page,
55
+ active: item.isActive
56
+ }) },
57
+ React.createElement("button", { className: bem.element('page-button', {
58
+ hidden: !item.page
59
+ }), onClick: function () { return props.onSelect(item.page); } }, item.label))); }),
60
+ props.showSteps
61
+ && renderArrowStep(bem, props.onSelectNext, 'arrow-left', true, {}, props.isLastPage),
62
+ props.showEdgeSteps
63
+ && renderArrowStep(bem, props.onSelectLast, 'double-arrow-left', true, { right: true }, props.isLastPage)));
35
64
  }
36
65
  exports["default"] = PaginationButtonView;