@uxf/ui 1.0.0-beta.57 → 1.0.0-beta.59

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/_private-utils/get-provider-config.js +2 -1
  2. package/avatar-file-input/avatar-file-input.d.ts +2 -2
  3. package/avatar-file-input/avatar-file-input.js +8 -8
  4. package/avatar-file-input/index.d.ts +1 -1
  5. package/avatar-file-input/index.js +14 -5
  6. package/button/button.stories.js +8 -5
  7. package/button/theme.d.ts +2 -1
  8. package/checkbox/index.d.ts +1 -1
  9. package/checkbox/index.js +15 -3
  10. package/checkbox-input/checkbox-input.d.ts +2 -3
  11. package/checkbox-input/checkbox-input.js +5 -3
  12. package/checkbox-input/checkbox-input.stories.d.ts +2 -3
  13. package/checkbox-input/index.d.ts +1 -1
  14. package/checkbox-input/index.js +14 -5
  15. package/chip/chip.d.ts +7 -0
  16. package/chip/chip.js +14 -0
  17. package/chip/chip.stories.d.ts +7 -0
  18. package/chip/chip.stories.js +22 -0
  19. package/chip/index.d.ts +1 -0
  20. package/chip/index.js +5 -0
  21. package/chip/theme.d.ts +5 -0
  22. package/chip/theme.js +2 -0
  23. package/color-radio-group/color-radio-group.d.ts +17 -0
  24. package/color-radio-group/color-radio-group.js +47 -0
  25. package/color-radio-group/color-radio-group.stories.d.ts +7 -0
  26. package/color-radio-group/color-radio-group.stories.js +79 -0
  27. package/color-radio-group/color-radio.d.ts +8 -0
  28. package/color-radio-group/color-radio.js +28 -0
  29. package/color-radio-group/index.d.ts +1 -0
  30. package/color-radio-group/index.js +5 -0
  31. package/combobox/combobox.d.ts +1 -2
  32. package/combobox/combobox.js +8 -7
  33. package/combobox/index.d.ts +1 -1
  34. package/combobox/index.js +14 -5
  35. package/config/icons-config.d.ts +2 -0
  36. package/config/icons-config.js +5 -0
  37. package/config/icons.d.ts +47 -0
  38. package/config/icons.js +14 -0
  39. package/css/button.css +171 -76
  40. package/css/chip.css +37 -0
  41. package/css/color-radio-group.css +26 -0
  42. package/css/color-radio.css +21 -0
  43. package/css/input.css +123 -68
  44. package/css/label.css +7 -0
  45. package/css/radio-group.css +41 -12
  46. package/css/radio.css +2 -2
  47. package/css/textarea.css +48 -10
  48. package/dropdown/dropdown.js +7 -7
  49. package/dropdown/index.d.ts +1 -1
  50. package/dropdown/index.js +15 -3
  51. package/error-message/error-message.d.ts +2 -2
  52. package/error-message/error-message.js +2 -1
  53. package/error-message/index.d.ts +1 -1
  54. package/error-message/index.js +14 -5
  55. package/form-control/form-control.js +2 -2
  56. package/hooks/use-dropdown.js +3 -1
  57. package/icon/icon.d.ts +2 -2
  58. package/icon/icon.js +11 -7
  59. package/icon/icon.stories.js +12 -8
  60. package/icon/index.d.ts +1 -5
  61. package/icon/index.js +14 -13
  62. package/icon/theme.d.ts +1 -2
  63. package/image-gallery/components/close-button.js +3 -3
  64. package/image-gallery/components/next-button.js +3 -3
  65. package/image-gallery/components/previous-button.js +3 -3
  66. package/input/index.d.ts +9 -10
  67. package/input/index.js +10 -13
  68. package/input/input-element.d.ts +2 -2
  69. package/input/input-element.js +5 -5
  70. package/input/input-left-addon.d.ts +3 -3
  71. package/input/input-left-addon.js +2 -1
  72. package/input/input-left-element.d.ts +3 -3
  73. package/input/input-left-element.js +2 -1
  74. package/input/input-right-addon.d.ts +2 -3
  75. package/input/input-right-addon.js +2 -1
  76. package/input/input-right-element.d.ts +3 -3
  77. package/input/input-right-element.js +2 -1
  78. package/input/input.d.ts +2 -2
  79. package/input/input.js +5 -4
  80. package/input/input.stories.d.ts +5 -5
  81. package/input/input.stories.js +13 -3
  82. package/label/index.d.ts +1 -1
  83. package/label/index.js +14 -5
  84. package/label/label.d.ts +1 -2
  85. package/label/label.js +4 -4
  86. package/package.json +4 -3
  87. package/radio/index.d.ts +1 -1
  88. package/radio/index.js +15 -3
  89. package/radio-group/index.d.ts +1 -1
  90. package/radio-group/index.js +15 -3
  91. package/radio-group/radio-group.js +2 -2
  92. package/radio-group/radio-group.stories.js +2 -2
  93. package/raster-image/index.d.ts +1 -1
  94. package/raster-image/index.js +14 -5
  95. package/raster-image/raster-image.d.ts +4 -4
  96. package/raster-image/raster-image.js +7 -5
  97. package/raster-image/raster-image.stories.d.ts +2 -3
  98. package/select/index.d.ts +1 -1
  99. package/select/index.js +14 -5
  100. package/select/select.d.ts +1 -2
  101. package/select/select.js +8 -7
  102. package/text-input/text-input.d.ts +1 -1
  103. package/text-input/text-input.js +4 -4
  104. package/text-input/text-input.stories.js +4 -1
  105. package/textarea/index.d.ts +1 -1
  106. package/textarea/index.js +14 -5
  107. package/textarea/textarea.d.ts +1 -2
  108. package/textarea/textarea.js +8 -8
  109. package/textarea/textarea.stories.js +32 -20
  110. package/toggle/index.d.ts +1 -1
  111. package/toggle/index.js +14 -5
  112. package/toggle/toggle.d.ts +2 -3
  113. package/toggle/toggle.js +7 -6
  114. package/toggle/toggle.stories.d.ts +2 -3
  115. package/utils/icons-config.js +43 -0
  116. package/utils/storybook-config.js +1 -1
  117. package/utils/tailwind-config.js +152 -0
  118. package/hooks/use-latest.d.ts +0 -2
  119. package/hooks/use-latest.js +0 -12
  120. package/icon/camera-icon.d.ts +0 -3
  121. package/icon/camera-icon.js +0 -11
  122. package/icon/chevron-down-icon.d.ts +0 -3
  123. package/icon/chevron-down-icon.js +0 -11
  124. package/icon/chevron-up-icon.d.ts +0 -3
  125. package/icon/chevron-up-icon.js +0 -11
  126. package/icon/pin-icon.d.ts +0 -3
  127. package/icon/pin-icon.js +0 -11
  128. package/image-gallery/components/icon-chevron-left.d.ts +0 -3
  129. package/image-gallery/components/icon-chevron-left.js +0 -11
  130. package/image-gallery/components/icon-chevron-right.d.ts +0 -3
  131. package/image-gallery/components/icon-chevron-right.js +0 -11
  132. package/image-gallery/components/icon-close.d.ts +0 -3
  133. package/image-gallery/components/icon-close.js +0 -11
  134. package/utils/cx.d.ts +0 -3
  135. package/utils/cx.js +0 -54
  136. package/utils/forward-ref.d.ts +0 -12
  137. package/utils/forward-ref.js +0 -10
  138. package/utils/rem.d.ts +0 -1
  139. package/utils/rem.js +0 -5
  140. package/utils/sr-only-mixin.d.ts +0 -2
  141. package/utils/sr-only-mixin.js +0 -14
@@ -23,6 +23,18 @@
23
23
  .uxf-radio-group__option {
24
24
  @apply focus-visible:ring-blue-500 focus-visible:ring-offset-white;
25
25
  }
26
+
27
+ .uxf-radio-group__option__label {
28
+ @apply text-gray-600;
29
+ }
30
+
31
+ .uxf-radio-group__option__wrapper {
32
+ &.is-selected {
33
+ .uxf-radio-group__option__label {
34
+ @apply text-gray-900;
35
+ }
36
+ }
37
+ }
26
38
  }
27
39
 
28
40
  :root .dark & {
@@ -31,14 +43,22 @@
31
43
  }
32
44
 
33
45
  .uxf-radio-group__option__label {
34
- @apply text-white;
46
+ @apply text-white/80;
47
+ }
48
+
49
+ .uxf-radio-group__option__wrapper {
50
+ &.is-selected {
51
+ .uxf-radio-group__option__label {
52
+ @apply text-white;
53
+ }
54
+ }
35
55
  }
36
56
  }
37
57
  }
38
58
 
39
59
  .uxf-radio-group--list {
40
60
  .uxf-radio-group__options-wrapper {
41
- @apply divide-y divide-gray-200;
61
+ @apply divide-y;
42
62
  }
43
63
 
44
64
  .uxf-radio-group__option__wrapper {
@@ -50,12 +70,20 @@
50
70
  }
51
71
 
52
72
  :root .light & {
73
+ .uxf-radio-group__options-wrapper {
74
+ @apply divide-gray-200;
75
+ }
76
+
53
77
  .uxf-radio-group--list__option {
54
78
  @apply focus-visible:ring-blue-500 focus-visible:ring-offset-white;
55
79
  }
56
80
  }
57
81
 
58
82
  :root .dark & {
83
+ .uxf-radio-group__options-wrapper {
84
+ @apply divide-gray-800;
85
+ }
86
+
59
87
  .uxf-radio-group--list__option {
60
88
  @apply focus-visible:ring-blue-500 focus-visible:ring-offset-gray-900;
61
89
  }
@@ -68,27 +96,32 @@
68
96
 
69
97
  .uxf-radio-group--radioButton {
70
98
  .uxf-radio-group__options-wrapper {
71
- @apply flex flex-wrap space-x-2;
99
+ @apply flex flex-wrap gap-2;
72
100
  }
73
101
 
74
102
  .uxf-radio-group__option__wrapper {
75
- @apply flex-col-reverse h-[82px] min-w-[112px] p-3 border rounded-lg;
103
+ @apply flex-col-reverse min-w-[112px] p-3 relative
104
+ before:absolute before:inset-0 before:pointer-events-none before:border before:rounded-lg;
76
105
 
77
106
  &.is-selected {
78
- @apply border-2;
107
+ @apply before:border-2;
79
108
  }
80
109
  }
81
110
 
111
+ .uxf-radio-group__option__label {
112
+ @apply pt-4 text-sm;
113
+ }
114
+
82
115
  :root .light & {
83
116
  .uxf-radio-group__option {
84
117
  @apply focus-visible:ring-blue-500;
85
118
  }
86
119
 
87
120
  .uxf-radio-group__option__wrapper {
88
- @apply border-gray-400;
121
+ @apply before:border-gray-400;
89
122
 
90
123
  &.is-selected {
91
- @apply border-blue-500;
124
+ @apply before:border-blue-500;
92
125
  }
93
126
  }
94
127
  }
@@ -102,13 +135,9 @@
102
135
  @apply border-gray-400;
103
136
 
104
137
  &.is-selected {
105
- @apply border-blue-500;
138
+ @apply before:border-blue-500;
106
139
  }
107
140
  }
108
-
109
- .uxf-radio-group__option__label {
110
- @apply text-white;
111
- }
112
141
  }
113
142
  }
114
143
 
package/css/radio.css CHANGED
@@ -1,5 +1,5 @@
1
1
  .uxf-radio {
2
- @apply flex items-center justify-center h-6 w-6 border rounded-full transition;
2
+ @apply flex items-center justify-center h-6 w-6 border rounded-full transition focus-visible:ring-2;
3
3
 
4
4
  &__label {
5
5
  @apply sr-only;
@@ -16,7 +16,7 @@
16
16
  }
17
17
 
18
18
  :root .light & {
19
- @apply border-gray-400 focus-visible:ring-blue-500 focus-visible:ring-2;
19
+ @apply border-gray-400 focus-visible:ring-blue-500;
20
20
 
21
21
  &.is-selected {
22
22
  @apply bg-blue-500 border-none;
package/css/textarea.css CHANGED
@@ -1,51 +1,89 @@
1
1
  .uxf-textarea {
2
2
  &__wrapper {
3
- @apply rounded-md shadow-sm sm:text-sm
4
- border border-gray-300 p-2;
3
+ @apply rounded-md text-base
4
+ border p-2;
5
+
6
+ :root .light & {
7
+ @apply bg-gray-100 text-gray-900 border-gray-200;
8
+ }
9
+ :root .dark & {
10
+ @apply bg-gray-800 text-gray-300 border-gray-700;
11
+ }
5
12
  }
6
13
 
7
14
  &__element {
8
15
  @apply bg-transparent outline-none resize-none;
16
+
17
+ :root .light & {
18
+ @apply placeholder:text-gray-400;
19
+ }
20
+ :root .dark & {
21
+ @apply placeholder:text-gray-400;
22
+ }
9
23
  }
10
24
 
11
25
  &.is-focused {
12
26
  .uxf-textarea__wrapper {
13
- @apply border-primary-500 ring-1 ring-inset ring-primary-500 ring-offset-0;
27
+ @apply ring-2 ring-inset ring-offset-0;
28
+
29
+ :root .light & {
30
+ @apply ring-primary-500;
31
+ }
32
+ :root .dark & {
33
+ @apply ring-primary-500;
34
+ }
14
35
  }
15
36
  }
16
37
 
17
38
  &.is-disabled {
18
39
  @apply cursor-not-allowed;
19
40
  .uxf-textarea__wrapper {
20
- @apply bg-gray-50;
41
+ :root .light & {
42
+ @apply bg-gray-300;
43
+ }
44
+ :root .dark & {
45
+ @apply bg-gray-600;
46
+ }
21
47
  }
22
48
 
23
49
  .uxf-textarea__element {
24
- @apply cursor-not-allowed text-gray-500;
50
+ @apply cursor-not-allowed;
25
51
  }
26
52
  }
27
53
 
28
54
  &.is-readonly {
29
- @apply cursor-not-allowed;
55
+ @apply cursor-text;
56
+
57
+ .uxf-textarea__element {
58
+ @apply cursor-text;
59
+ }
30
60
 
31
61
  .uxf-textarea__wrapper {
32
- @apply ring-0 border-gray-300;
62
+ @apply ring-0;
63
+
64
+ :root .light & {
65
+ @apply border-gray-300;
66
+ }
67
+
68
+ :root .dark & {
69
+ @apply border-gray-500;
70
+ }
33
71
  }
34
72
 
35
73
  .uxf-textarea__element {
36
- @apply cursor-not-allowed;
74
+ @apply cursor-not-allowed pointer-events-none;
37
75
  }
38
76
  }
39
77
 
40
78
  &.is-invalid {
41
79
  &.is-focused {
42
80
  .uxf-textarea__wrapper {
43
- @apply ring-1 ring-inset ring-error-500 border-error-500 ring-offset-0;
81
+ @apply ring-0;
44
82
  }
45
83
  }
46
84
 
47
85
  .uxf-textarea__wrapper {
48
- @apply border-error-500 placeholder-error-300;
86
+ @apply border-error-500;
49
87
 
50
88
  .uxf-textarea__element {
51
89
  @apply text-error-900 placeholder-error-300;
@@ -6,9 +6,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.Dropdown = void 0;
7
7
  const useAnchorProps_1 = require("@uxf/core/hooks/useAnchorProps");
8
8
  const cx_1 = require("@uxf/core/utils/cx");
9
+ const forwardRef_1 = require("@uxf/core/utils/forwardRef");
9
10
  const react_1 = __importDefault(require("react"));
10
- const forward_ref_1 = require("../utils/forward-ref");
11
- function Item(props, ref) {
11
+ const Item = (0, forwardRef_1.forwardRef)("Item.", (props, ref) => {
12
12
  // eslint-disable-next-line react/destructuring-assignment
13
13
  const { children, className, ...restProps } = props;
14
14
  const anchorProps = (0, useAnchorProps_1.useAnchorProps)({
@@ -17,11 +17,11 @@ function Item(props, ref) {
17
17
  ...restProps,
18
18
  });
19
19
  return (react_1.default.createElement("a", { ref: ref, ...anchorProps }, children));
20
- }
21
- function Items(props, ref) {
20
+ });
21
+ const Items = (0, forwardRef_1.forwardRef)("Items", (props, ref) => {
22
22
  return (react_1.default.createElement("div", { className: (0, cx_1.cx)("uxf-dropdown__items", props.className), ref: ref, role: props.role }, props.children));
23
- }
23
+ });
24
24
  exports.Dropdown = {
25
- Item: (0, forward_ref_1.forwardRef)("Item.", Item),
26
- Items: (0, forward_ref_1.forwardRef)("Items", Items),
25
+ Item,
26
+ Items,
27
27
  };
@@ -1 +1 @@
1
- export { Dropdown } from "./dropdown";
1
+ export * from "./dropdown";
package/dropdown/index.js CHANGED
@@ -1,5 +1,17 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
2
16
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Dropdown = void 0;
4
- var dropdown_1 = require("./dropdown");
5
- Object.defineProperty(exports, "Dropdown", { enumerable: true, get: function () { return dropdown_1.Dropdown; } });
17
+ __exportStar(require("./dropdown"), exports);
@@ -3,5 +3,5 @@ interface Props {
3
3
  id?: string | undefined;
4
4
  children?: ReactNode;
5
5
  }
6
- declare function ErrorMessage(props: Props): JSX.Element;
7
- export default ErrorMessage;
6
+ export declare function ErrorMessage(props: Props): JSX.Element;
7
+ export {};
@@ -3,8 +3,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ErrorMessage = void 0;
6
7
  const react_1 = __importDefault(require("react"));
7
8
  function ErrorMessage(props) {
8
9
  return (react_1.default.createElement("p", { id: props.id, className: "uxf-error-message" }, props.children));
9
10
  }
10
- exports.default = ErrorMessage;
11
+ exports.ErrorMessage = ErrorMessage;
@@ -1 +1 @@
1
- export { default as ErrorMessage } from "./error-message";
1
+ export * from "./error-message";
@@ -1,8 +1,17 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
4
15
  };
5
16
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.ErrorMessage = void 0;
7
- var error_message_1 = require("./error-message");
8
- Object.defineProperty(exports, "ErrorMessage", { enumerable: true, get: function () { return __importDefault(error_message_1).default; } });
17
+ __exportStar(require("./error-message"), exports);
@@ -6,11 +6,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.FormControl = void 0;
7
7
  const classes_1 = require("@uxf/core/constants/classes");
8
8
  const cx_1 = require("@uxf/core/utils/cx");
9
+ const forwardRef_1 = require("@uxf/core/utils/forwardRef");
9
10
  const react_1 = __importDefault(require("react"));
10
11
  const label_1 = require("../label");
11
- const forward_ref_1 = require("../utils/forward-ref");
12
12
  // TODO - tohle asi ještě nějak předělám (ten interface je trochu nelogickej)
13
- exports.FormControl = (0, forward_ref_1.forwardRef)("FormControl", (props, ref) => {
13
+ exports.FormControl = (0, forwardRef_1.forwardRef)("FormControl", (props, ref) => {
14
14
  const helperTextClassName = (0, cx_1.cx)("uxf-helper-text", props.errorId && classes_1.CLASSES.IS_INVALID);
15
15
  return (react_1.default.createElement("div", { className: props.className, ref: ref },
16
16
  react_1.default.createElement(label_1.Label, { isRequired: props.isRequired, htmlFor: props.inputId, form: props.form }, props.label),
@@ -20,7 +20,9 @@ function useDropdown(placement, matchWidth = false) {
20
20
  },
21
21
  }),
22
22
  ],
23
- whileElementsMounted: react_dom_1.autoUpdate,
23
+ whileElementsMounted: (reference, floating, update) => (0, react_dom_1.autoUpdate)(reference, floating, update, {
24
+ elementResize: typeof ResizeObserver !== "undefined",
25
+ }),
24
26
  });
25
27
  }
26
28
  exports.useDropdown = useDropdown;
package/icon/icon.d.ts CHANGED
@@ -13,5 +13,5 @@ export declare type IconProps = {
13
13
  size?: number;
14
14
  style?: Partial<CSSProperties>;
15
15
  } & NameOrComponentType;
16
- declare const _default: React.ForwardRefExoticComponent<IconProps & React.RefAttributes<SVGSVGElement>>;
17
- export default _default;
16
+ export declare const Icon: React.ForwardRefExoticComponent<IconProps & React.RefAttributes<SVGSVGElement>>;
17
+ export {};
package/icon/icon.js CHANGED
@@ -3,12 +3,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Icon = void 0;
7
+ const cx_1 = require("@uxf/core/utils/cx");
8
+ const forwardRef_1 = require("@uxf/core/utils/forwardRef");
9
+ const rem_1 = require("@uxf/styles/units/rem");
6
10
  const react_1 = __importDefault(require("react"));
7
11
  const context_1 = require("../context");
8
- const cx_1 = require("../utils/cx");
9
- const forward_ref_1 = require("../utils/forward-ref");
10
- const rem_1 = require("../utils/rem");
11
- function Icon(props, ref) {
12
+ exports.Icon = (0, forwardRef_1.forwardRef)("Icon", (props, ref) => {
12
13
  var _a, _b;
13
14
  const componentContext = (0, context_1.useComponentContext)("icon");
14
15
  const CustomComponent = props.Component;
@@ -21,7 +22,10 @@ function Icon(props, ref) {
21
22
  ...((_b = props.style) !== null && _b !== void 0 ? _b : {}),
22
23
  }
23
24
  : props.style;
24
- return CustomComponent ? (react_1.default.createElement(CustomComponent, { className: className, preserveAspectRatio: preserveAspectRatio, ref: ref, role: "img", style: style })) : (react_1.default.createElement("svg", { className: className, preserveAspectRatio: preserveAspectRatio, ref: ref, role: "img", style: style, viewBox: `0 0 ${componentContext.iconsConfig[props.name].w} ${componentContext.iconsConfig[props.name].h}` },
25
+ if (CustomComponent) {
26
+ return (react_1.default.createElement(CustomComponent, { className: className, preserveAspectRatio: preserveAspectRatio, ref: ref, role: "img", style: style }));
27
+ }
28
+ const icon = componentContext.iconsConfig[props.name];
29
+ return (react_1.default.createElement("svg", { className: className, preserveAspectRatio: preserveAspectRatio, ref: ref, role: "img", style: style, viewBox: `0 0 ${icon.w} ${icon.h}` },
25
30
  react_1.default.createElement("use", { xlinkHref: `${componentContext.spriteFilePath}#icon-sprite--${props.name}` })));
26
- }
27
- exports.default = (0, forward_ref_1.forwardRef)("Icon", Icon);
31
+ });
@@ -4,11 +4,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.Default = void 0;
7
- const index_1 = require("./index");
7
+ const icon_1 = require("./icon");
8
8
  const react_1 = __importDefault(require("react"));
9
+ function PinIcon(props) {
10
+ return (react_1.default.createElement("svg", { viewBox: "0 0 29.65 40", ...props },
11
+ react_1.default.createElement("path", { fill: "currentColor", fillRule: "evenodd", d: "M0 14.83C0 6.61 6.61 0 14.83 0c8.11 0 14.83 6.61 14.83 14.83 0 8.64-8.85 19.41-14.83 25.17C8.75 34.24 0 23.47 0 14.83zm9.28 0c0-3.09 2.45-5.55 5.55-5.55 2.99 0 5.44 2.45 5.44 5.55 0 2.99-2.45 5.44-5.44 5.44-3.1 0-5.55-2.46-5.55-5.44z", clipRule: "evenodd" })));
12
+ }
9
13
  exports.default = {
10
14
  title: "UI/Icon",
11
- component: index_1.Icon,
15
+ component: icon_1.Icon,
12
16
  };
13
17
  function Default() {
14
18
  return (react_1.default.createElement("div", { className: "space-y-2" },
@@ -20,7 +24,7 @@ function Default() {
20
24
  react_1.default.createElement("span", { className: "font-semibold" }, "Red"),
21
25
  ", Size: ",
22
26
  react_1.default.createElement("span", { className: "font-semibold" }, "16")),
23
- react_1.default.createElement(index_1.Icon, { Component: index_1.PinIcon, size: 16, className: "text-red-600" }),
27
+ react_1.default.createElement(icon_1.Icon, { Component: PinIcon, size: 16, className: "text-red-600" }),
24
28
  react_1.default.createElement("div", { className: "mb-2 text-sm" },
25
29
  "Type: ",
26
30
  react_1.default.createElement("span", { className: "font-semibold" }, "Custom component"),
@@ -29,7 +33,7 @@ function Default() {
29
33
  react_1.default.createElement("span", { className: "font-semibold" }, "Blue"),
30
34
  ", Size: ",
31
35
  react_1.default.createElement("span", { className: "font-semibold" }, "24")),
32
- react_1.default.createElement(index_1.Icon, { Component: index_1.PinIcon, size: 24, className: "text-blue-600" }),
36
+ react_1.default.createElement(icon_1.Icon, { Component: PinIcon, size: 24, className: "text-blue-600" }),
33
37
  react_1.default.createElement("div", { className: "mb-2 text-sm" },
34
38
  "Type: ",
35
39
  react_1.default.createElement("span", { className: "font-semibold" }, "Custom component"),
@@ -38,7 +42,7 @@ function Default() {
38
42
  react_1.default.createElement("span", { className: "font-semibold" }, "Green"),
39
43
  ", Size: ",
40
44
  react_1.default.createElement("span", { className: "font-semibold" }, "48")),
41
- react_1.default.createElement(index_1.Icon, { Component: index_1.PinIcon, size: 48, className: "text-green-600" }),
45
+ react_1.default.createElement(icon_1.Icon, { Component: PinIcon, size: 48, className: "text-green-600" }),
42
46
  react_1.default.createElement("div", { className: "mb-2 text-sm" },
43
47
  "Type: ",
44
48
  react_1.default.createElement("span", { className: "font-semibold" }, "SVG sprite"),
@@ -47,7 +51,7 @@ function Default() {
47
51
  react_1.default.createElement("span", { className: "font-semibold" }, "Red"),
48
52
  ", Size: ",
49
53
  react_1.default.createElement("span", { className: "font-semibold" }, "16")),
50
- react_1.default.createElement(index_1.Icon, { name: "test", size: 16, className: "text-red-600" }),
54
+ react_1.default.createElement(icon_1.Icon, { name: "chevronDown", size: 16, className: "text-red-600" }),
51
55
  react_1.default.createElement("div", { className: "mb-2 text-sm" },
52
56
  "Type: ",
53
57
  react_1.default.createElement("span", { className: "font-semibold" }, "SVG sprite"),
@@ -56,7 +60,7 @@ function Default() {
56
60
  react_1.default.createElement("span", { className: "font-semibold" }, "Blue"),
57
61
  ", Size: ",
58
62
  react_1.default.createElement("span", { className: "font-semibold" }, "24")),
59
- react_1.default.createElement(index_1.Icon, { name: "test", size: 24, className: "text-blue-600" }),
63
+ react_1.default.createElement(icon_1.Icon, { name: "chevronUp", size: 24, className: "text-blue-600" }),
60
64
  react_1.default.createElement("div", { className: "mb-2 text-sm" },
61
65
  "Type: ",
62
66
  react_1.default.createElement("span", { className: "font-semibold" }, "SVG sprite"),
@@ -65,6 +69,6 @@ function Default() {
65
69
  react_1.default.createElement("span", { className: "font-semibold" }, "Green"),
66
70
  ", Size: ",
67
71
  react_1.default.createElement("span", { className: "font-semibold" }, "48")),
68
- react_1.default.createElement(index_1.Icon, { name: "test", size: 48, className: "text-green-600" })));
72
+ react_1.default.createElement(icon_1.Icon, { name: "chevronDown", size: 48, className: "text-green-600" })));
69
73
  }
70
74
  exports.Default = Default;
package/icon/index.d.ts CHANGED
@@ -1,5 +1 @@
1
- export { default as Icon } from "./icon";
2
- export { default as PinIcon } from "./pin-icon";
3
- export { default as ChevronDownIcon } from "./chevron-down-icon";
4
- export { default as ChevronUpIcon } from "./chevron-up-icon";
5
- export { default as CameraIcon } from "./camera-icon";
1
+ export * from "./icon";
package/icon/index.js CHANGED
@@ -1,16 +1,17 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
4
15
  };
5
16
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.CameraIcon = exports.ChevronUpIcon = exports.ChevronDownIcon = exports.PinIcon = exports.Icon = void 0;
7
- var icon_1 = require("./icon");
8
- Object.defineProperty(exports, "Icon", { enumerable: true, get: function () { return __importDefault(icon_1).default; } });
9
- var pin_icon_1 = require("./pin-icon");
10
- Object.defineProperty(exports, "PinIcon", { enumerable: true, get: function () { return __importDefault(pin_icon_1).default; } });
11
- var chevron_down_icon_1 = require("./chevron-down-icon");
12
- Object.defineProperty(exports, "ChevronDownIcon", { enumerable: true, get: function () { return __importDefault(chevron_down_icon_1).default; } });
13
- var chevron_up_icon_1 = require("./chevron-up-icon");
14
- Object.defineProperty(exports, "ChevronUpIcon", { enumerable: true, get: function () { return __importDefault(chevron_up_icon_1).default; } });
15
- var camera_icon_1 = require("./camera-icon");
16
- Object.defineProperty(exports, "CameraIcon", { enumerable: true, get: function () { return __importDefault(camera_icon_1).default; } });
17
+ __exportStar(require("./icon"), exports);
package/icon/theme.d.ts CHANGED
@@ -1,3 +1,2 @@
1
- export interface IconsSet {
2
- test: true;
1
+ export interface IconsSet extends Record<string, boolean> {
3
2
  }
@@ -4,9 +4,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const react_1 = __importDefault(require("react"));
7
- const icon_close_1 = __importDefault(require("./icon-close"));
7
+ const icon_1 = require("../../icon");
8
8
  function CloseButton(props) {
9
- return (react_1.default.createElement("button", { className: "bg-black bg-opacity-50 p-3", onClick: () => props.onClick() },
10
- react_1.default.createElement(icon_close_1.default, null)));
9
+ return (react_1.default.createElement("button", { className: "bg-black bg-opacity-50 p-5", onClick: () => props.onClick() },
10
+ react_1.default.createElement(icon_1.Icon, { className: "h-6 w-6 text-white", name: "xmarkLarge" })));
11
11
  }
12
12
  exports.default = CloseButton;
@@ -4,9 +4,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const react_1 = __importDefault(require("react"));
7
- const icon_chevron_right_1 = __importDefault(require("./icon-chevron-right"));
7
+ const icon_1 = require("../../icon");
8
8
  function NextButton(props) {
9
- return (react_1.default.createElement("button", { className: "pointer-events-auto rounded-full bg-black bg-opacity-50 p-2", onClick: props.onClick },
10
- react_1.default.createElement(icon_chevron_right_1.default, null)));
9
+ return (react_1.default.createElement("button", { className: "pointer-events-auto rounded-full bg-black bg-opacity-50 p-3", onClick: props.onClick },
10
+ react_1.default.createElement(icon_1.Icon, { className: "h-8 w-8 text-white", name: "chevronRight" })));
11
11
  }
12
12
  exports.default = NextButton;
@@ -4,9 +4,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const react_1 = __importDefault(require("react"));
7
- const icon_chevron_left_1 = __importDefault(require("./icon-chevron-left"));
7
+ const icon_1 = require("../../icon");
8
8
  function PreviousButton(props) {
9
- return (react_1.default.createElement("button", { className: "pointer-events-auto rounded-full bg-black bg-opacity-50 p-2", onClick: props.onClick },
10
- react_1.default.createElement(icon_chevron_left_1.default, null)));
9
+ return (react_1.default.createElement("button", { className: "pointer-events-auto rounded-full bg-black bg-opacity-50 p-3", onClick: props.onClick },
10
+ react_1.default.createElement(icon_1.Icon, { className: "h-8 w-8 text-white", name: "chevronLeft" })));
11
11
  }
12
12
  exports.default = PreviousButton;
package/input/index.d.ts CHANGED
@@ -1,13 +1,12 @@
1
1
  /// <reference types="react" />
2
- import { Input as RootInput } from "./input";
3
- import LeftAddon from "./input-left-addon";
4
- import LeftElement from "./input-left-element";
5
- import RightAddon from "./input-right-addon";
6
- import RightElement from "./input-right-element";
7
- export declare const Input: typeof RootInput & {
2
+ import { InputLeftAddon } from "./input-left-addon";
3
+ import { InputLeftElement } from "./input-left-element";
4
+ import { InputRightAddon } from "./input-right-addon";
5
+ import { InputRightElement } from "./input-right-element";
6
+ export declare const Input: import("react").ForwardRefExoticComponent<import("./input").InputProps & import("react").RefAttributes<HTMLInputElement>> & {
8
7
  Element: import("react").ForwardRefExoticComponent<import("./input-element").InputElementProps & import("react").RefAttributes<HTMLInputElement>>;
9
- LeftElement: typeof LeftElement;
10
- RightElement: typeof RightElement;
11
- LeftAddon: typeof LeftAddon;
12
- RightAddon: typeof RightAddon;
8
+ LeftElement: typeof InputLeftElement;
9
+ RightElement: typeof InputRightElement;
10
+ LeftAddon: typeof InputLeftAddon;
11
+ RightAddon: typeof InputRightAddon;
13
12
  };
package/input/index.js CHANGED
@@ -1,19 +1,16 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.Input = void 0;
7
4
  const input_1 = require("./input");
8
- const input_element_1 = __importDefault(require("./input-element"));
9
- const input_left_addon_1 = __importDefault(require("./input-left-addon"));
10
- const input_left_element_1 = __importDefault(require("./input-left-element"));
11
- const input_right_addon_1 = __importDefault(require("./input-right-addon"));
12
- const input_right_element_1 = __importDefault(require("./input-right-element"));
5
+ const input_element_1 = require("./input-element");
6
+ const input_left_addon_1 = require("./input-left-addon");
7
+ const input_left_element_1 = require("./input-left-element");
8
+ const input_right_addon_1 = require("./input-right-addon");
9
+ const input_right_element_1 = require("./input-right-element");
13
10
  exports.Input = Object.assign(input_1.Input, {
14
- Element: input_element_1.default,
15
- LeftElement: input_left_element_1.default,
16
- RightElement: input_right_element_1.default,
17
- LeftAddon: input_left_addon_1.default,
18
- RightAddon: input_right_addon_1.default,
11
+ Element: input_element_1.InputElement,
12
+ LeftElement: input_left_element_1.InputLeftElement,
13
+ RightElement: input_right_element_1.InputRightElement,
14
+ LeftAddon: input_left_addon_1.InputLeftAddon,
15
+ RightAddon: input_right_addon_1.InputRightAddon,
19
16
  });
@@ -17,5 +17,5 @@ export interface InputElementProps extends FormControlProps<string> {
17
17
  pattern?: string;
18
18
  step?: number | string;
19
19
  }
20
- declare const _default: React.ForwardRefExoticComponent<InputElementProps & React.RefAttributes<HTMLInputElement>>;
21
- export default _default;
20
+ export declare const InputElement: React.ForwardRefExoticComponent<InputElementProps & React.RefAttributes<HTMLInputElement>>;
21
+ export {};