@cloud-ru/uikit-product-mobile-chips 0.8.36 → 0.8.38

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 (156) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/cjs/components/AdaptiveChips/AdaptiveChips.d.ts +6 -0
  3. package/dist/cjs/components/AdaptiveChips/AdaptiveChips.js +28 -0
  4. package/dist/cjs/components/AdaptiveChips/index.d.ts +1 -0
  5. package/dist/cjs/components/AdaptiveChips/index.js +17 -0
  6. package/dist/cjs/components/MobileChipChoice/components/ChipChoiceBase/ChipChoiceBase.d.ts +20 -0
  7. package/dist/cjs/components/MobileChipChoice/components/ChipChoiceBase/ChipChoiceBase.js +72 -0
  8. package/dist/cjs/components/MobileChipChoice/components/ChipChoiceBase/index.d.ts +1 -0
  9. package/dist/cjs/components/MobileChipChoice/components/ChipChoiceBase/index.js +17 -0
  10. package/dist/cjs/components/MobileChipChoice/components/ChipChoiceBase/styles.module.css +427 -0
  11. package/dist/cjs/components/MobileChipChoice/components/MobileChipChoiceCustom.d.ts +25 -0
  12. package/dist/cjs/components/MobileChipChoice/components/MobileChipChoiceCustom.js +38 -0
  13. package/dist/cjs/components/MobileChipChoice/components/MobileChipChoiceDate.d.ts +22 -0
  14. package/dist/cjs/components/MobileChipChoice/components/MobileChipChoiceDate.js +73 -0
  15. package/dist/cjs/components/MobileChipChoice/components/MobileChipChoiceDateRange.d.ts +15 -0
  16. package/dist/cjs/components/MobileChipChoice/components/MobileChipChoiceDateRange.js +52 -0
  17. package/dist/cjs/components/MobileChipChoice/components/MobileChipChoiceMultiple.d.ts +8 -0
  18. package/dist/cjs/components/MobileChipChoice/components/MobileChipChoiceMultiple.js +128 -0
  19. package/dist/cjs/components/MobileChipChoice/components/MobileChipChoiceSingle.d.ts +8 -0
  20. package/dist/cjs/components/MobileChipChoice/components/MobileChipChoiceSingle.js +112 -0
  21. package/dist/cjs/components/MobileChipChoice/components/MobileChipChoiceTime.d.ts +12 -0
  22. package/dist/cjs/components/MobileChipChoice/components/MobileChipChoiceTime.js +71 -0
  23. package/dist/cjs/components/MobileChipChoice/components/index.d.ts +6 -0
  24. package/dist/cjs/components/MobileChipChoice/components/index.js +22 -0
  25. package/dist/cjs/components/MobileChipChoice/components/styles.module.css +37 -0
  26. package/dist/cjs/components/MobileChipChoice/constants.d.ts +16 -0
  27. package/dist/cjs/components/MobileChipChoice/constants.js +20 -0
  28. package/dist/cjs/components/MobileChipChoice/hooks.d.ts +23 -0
  29. package/dist/cjs/components/MobileChipChoice/hooks.js +69 -0
  30. package/dist/cjs/components/MobileChipChoice/index.d.ts +12 -0
  31. package/dist/cjs/components/MobileChipChoice/index.js +19 -0
  32. package/dist/cjs/components/MobileChipChoice/styles.module.css +211 -0
  33. package/dist/cjs/components/MobileChipChoice/types.d.ts +80 -0
  34. package/dist/cjs/components/MobileChipChoice/types.js +2 -0
  35. package/dist/cjs/components/MobileChipChoice/utils/index.d.ts +2 -0
  36. package/dist/cjs/components/MobileChipChoice/utils/index.js +18 -0
  37. package/dist/cjs/components/MobileChipChoice/utils/options.d.ts +9 -0
  38. package/dist/cjs/components/MobileChipChoice/utils/options.js +36 -0
  39. package/dist/cjs/components/MobileChipChoice/utils/typeGuards.d.ts +6 -0
  40. package/dist/cjs/components/MobileChipChoice/utils/typeGuards.js +22 -0
  41. package/dist/cjs/components/MobileChipChoice/utils/utils.d.ts +19 -0
  42. package/dist/cjs/components/MobileChipChoice/utils/utils.js +33 -0
  43. package/dist/cjs/components/MobileChipChoiceRow/MobileChipChoiceRow.d.ts +29 -0
  44. package/dist/cjs/components/MobileChipChoiceRow/MobileChipChoiceRow.js +124 -0
  45. package/dist/cjs/components/MobileChipChoiceRow/components/ForwardedChipChoice.d.ts +2 -0
  46. package/dist/cjs/components/MobileChipChoiceRow/components/ForwardedChipChoice.js +9 -0
  47. package/dist/cjs/components/MobileChipChoiceRow/components/constants.d.ts +9 -0
  48. package/dist/cjs/components/MobileChipChoiceRow/components/constants.js +14 -0
  49. package/dist/cjs/components/MobileChipChoiceRow/components/index.d.ts +1 -0
  50. package/dist/cjs/components/MobileChipChoiceRow/components/index.js +17 -0
  51. package/dist/cjs/components/MobileChipChoiceRow/constants.d.ts +12 -0
  52. package/dist/cjs/components/MobileChipChoiceRow/constants.js +19 -0
  53. package/dist/cjs/components/MobileChipChoiceRow/index.d.ts +2 -0
  54. package/dist/cjs/components/MobileChipChoiceRow/index.js +20 -0
  55. package/dist/cjs/components/MobileChipChoiceRow/styles.module.css +28 -0
  56. package/dist/cjs/components/MobileChipChoiceRow/types.d.ts +36 -0
  57. package/dist/cjs/components/MobileChipChoiceRow/types.js +2 -0
  58. package/dist/cjs/components/index.d.ts +3 -0
  59. package/dist/cjs/components/index.js +19 -0
  60. package/dist/cjs/constants.d.ts +43 -0
  61. package/dist/cjs/constants.js +46 -0
  62. package/dist/cjs/helperComponents/ButtonClearValue/ButtonClearValue.d.ts +11 -0
  63. package/dist/cjs/helperComponents/ButtonClearValue/ButtonClearValue.js +18 -0
  64. package/dist/cjs/helperComponents/ButtonClearValue/index.d.ts +1 -0
  65. package/dist/cjs/helperComponents/ButtonClearValue/index.js +17 -0
  66. package/dist/cjs/helperComponents/ButtonClearValue/styles.module.css +43 -0
  67. package/dist/cjs/helperComponents/ItemContent/ItemContent.d.ts +9 -0
  68. package/dist/cjs/helperComponents/ItemContent/ItemContent.js +25 -0
  69. package/dist/cjs/helperComponents/ItemContent/index.d.ts +1 -0
  70. package/dist/cjs/helperComponents/ItemContent/index.js +17 -0
  71. package/dist/cjs/helperComponents/ItemContent/styles.module.css +122 -0
  72. package/dist/cjs/helperComponents/index.d.ts +2 -0
  73. package/dist/cjs/helperComponents/index.js +18 -0
  74. package/dist/cjs/index.d.ts +1 -0
  75. package/dist/cjs/index.js +17 -0
  76. package/dist/cjs/styles.module.css +0 -0
  77. package/dist/cjs/types.d.ts +20 -0
  78. package/dist/cjs/types.js +2 -0
  79. package/dist/esm/components/AdaptiveChips/AdaptiveChips.d.ts +6 -0
  80. package/dist/esm/components/AdaptiveChips/AdaptiveChips.js +24 -0
  81. package/dist/esm/components/AdaptiveChips/index.d.ts +1 -0
  82. package/dist/esm/components/AdaptiveChips/index.js +1 -0
  83. package/dist/esm/components/MobileChipChoice/components/ChipChoiceBase/ChipChoiceBase.d.ts +20 -0
  84. package/dist/esm/components/MobileChipChoice/components/ChipChoiceBase/ChipChoiceBase.js +66 -0
  85. package/dist/esm/components/MobileChipChoice/components/ChipChoiceBase/index.d.ts +1 -0
  86. package/dist/esm/components/MobileChipChoice/components/ChipChoiceBase/index.js +1 -0
  87. package/dist/esm/components/MobileChipChoice/components/ChipChoiceBase/styles.module.css +427 -0
  88. package/dist/esm/components/MobileChipChoice/components/MobileChipChoiceCustom.d.ts +25 -0
  89. package/dist/esm/components/MobileChipChoice/components/MobileChipChoiceCustom.js +35 -0
  90. package/dist/esm/components/MobileChipChoice/components/MobileChipChoiceDate.d.ts +22 -0
  91. package/dist/esm/components/MobileChipChoice/components/MobileChipChoiceDate.js +67 -0
  92. package/dist/esm/components/MobileChipChoice/components/MobileChipChoiceDateRange.d.ts +15 -0
  93. package/dist/esm/components/MobileChipChoice/components/MobileChipChoiceDateRange.js +46 -0
  94. package/dist/esm/components/MobileChipChoice/components/MobileChipChoiceMultiple.d.ts +8 -0
  95. package/dist/esm/components/MobileChipChoice/components/MobileChipChoiceMultiple.js +122 -0
  96. package/dist/esm/components/MobileChipChoice/components/MobileChipChoiceSingle.d.ts +8 -0
  97. package/dist/esm/components/MobileChipChoice/components/MobileChipChoiceSingle.js +105 -0
  98. package/dist/esm/components/MobileChipChoice/components/MobileChipChoiceTime.d.ts +12 -0
  99. package/dist/esm/components/MobileChipChoice/components/MobileChipChoiceTime.js +65 -0
  100. package/dist/esm/components/MobileChipChoice/components/index.d.ts +6 -0
  101. package/dist/esm/components/MobileChipChoice/components/index.js +6 -0
  102. package/dist/esm/components/MobileChipChoice/components/styles.module.css +37 -0
  103. package/dist/esm/components/MobileChipChoice/constants.d.ts +16 -0
  104. package/dist/esm/components/MobileChipChoice/constants.js +17 -0
  105. package/dist/esm/components/MobileChipChoice/hooks.d.ts +23 -0
  106. package/dist/esm/components/MobileChipChoice/hooks.js +61 -0
  107. package/dist/esm/components/MobileChipChoice/index.d.ts +12 -0
  108. package/dist/esm/components/MobileChipChoice/index.js +11 -0
  109. package/dist/esm/components/MobileChipChoice/styles.module.css +211 -0
  110. package/dist/esm/components/MobileChipChoice/types.d.ts +80 -0
  111. package/dist/esm/components/MobileChipChoice/types.js +1 -0
  112. package/dist/esm/components/MobileChipChoice/utils/index.d.ts +2 -0
  113. package/dist/esm/components/MobileChipChoice/utils/index.js +2 -0
  114. package/dist/esm/components/MobileChipChoice/utils/options.d.ts +9 -0
  115. package/dist/esm/components/MobileChipChoice/utils/options.js +33 -0
  116. package/dist/esm/components/MobileChipChoice/utils/typeGuards.d.ts +6 -0
  117. package/dist/esm/components/MobileChipChoice/utils/typeGuards.js +15 -0
  118. package/dist/esm/components/MobileChipChoice/utils/utils.d.ts +19 -0
  119. package/dist/esm/components/MobileChipChoice/utils/utils.js +30 -0
  120. package/dist/esm/components/MobileChipChoiceRow/MobileChipChoiceRow.d.ts +29 -0
  121. package/dist/esm/components/MobileChipChoiceRow/MobileChipChoiceRow.js +118 -0
  122. package/dist/esm/components/MobileChipChoiceRow/components/ForwardedChipChoice.d.ts +2 -0
  123. package/dist/esm/components/MobileChipChoiceRow/components/ForwardedChipChoice.js +6 -0
  124. package/dist/esm/components/MobileChipChoiceRow/components/constants.d.ts +9 -0
  125. package/dist/esm/components/MobileChipChoiceRow/components/constants.js +11 -0
  126. package/dist/esm/components/MobileChipChoiceRow/components/index.d.ts +1 -0
  127. package/dist/esm/components/MobileChipChoiceRow/components/index.js +1 -0
  128. package/dist/esm/components/MobileChipChoiceRow/constants.d.ts +12 -0
  129. package/dist/esm/components/MobileChipChoiceRow/constants.js +16 -0
  130. package/dist/esm/components/MobileChipChoiceRow/index.d.ts +2 -0
  131. package/dist/esm/components/MobileChipChoiceRow/index.js +2 -0
  132. package/dist/esm/components/MobileChipChoiceRow/styles.module.css +28 -0
  133. package/dist/esm/components/MobileChipChoiceRow/types.d.ts +36 -0
  134. package/dist/esm/components/MobileChipChoiceRow/types.js +1 -0
  135. package/dist/esm/components/index.d.ts +3 -0
  136. package/dist/esm/components/index.js +3 -0
  137. package/dist/esm/constants.d.ts +43 -0
  138. package/dist/esm/constants.js +43 -0
  139. package/dist/esm/helperComponents/ButtonClearValue/ButtonClearValue.d.ts +11 -0
  140. package/dist/esm/helperComponents/ButtonClearValue/ButtonClearValue.js +12 -0
  141. package/dist/esm/helperComponents/ButtonClearValue/index.d.ts +1 -0
  142. package/dist/esm/helperComponents/ButtonClearValue/index.js +1 -0
  143. package/dist/esm/helperComponents/ButtonClearValue/styles.module.css +43 -0
  144. package/dist/esm/helperComponents/ItemContent/ItemContent.d.ts +9 -0
  145. package/dist/esm/helperComponents/ItemContent/ItemContent.js +19 -0
  146. package/dist/esm/helperComponents/ItemContent/index.d.ts +1 -0
  147. package/dist/esm/helperComponents/ItemContent/index.js +1 -0
  148. package/dist/esm/helperComponents/ItemContent/styles.module.css +122 -0
  149. package/dist/esm/helperComponents/index.d.ts +2 -0
  150. package/dist/esm/helperComponents/index.js +2 -0
  151. package/dist/esm/index.d.ts +1 -0
  152. package/dist/esm/index.js +1 -0
  153. package/dist/esm/styles.module.css +0 -0
  154. package/dist/esm/types.d.ts +20 -0
  155. package/dist/esm/types.js +1 -0
  156. package/package.json +7 -6
@@ -0,0 +1,211 @@
1
+ .label,
2
+ .value{
3
+ display:inline-flex;
4
+ align-items:center;
5
+ }
6
+
7
+ .choiceChip{
8
+ background-color:var(--sys-neutral-background1-level, #fdfdfd);
9
+ border-color:var(--sys-neutral-decor-default, #dde0ea);
10
+ cursor:pointer;
11
+ position:relative;
12
+ display:inline-flex;
13
+ align-items:center;
14
+ box-sizing:border-box;
15
+ width:-moz-max-content;
16
+ width:max-content;
17
+ min-width:-moz-max-content;
18
+ min-width:max-content;
19
+ margin:0;
20
+ padding:0;
21
+ text-decoration:none;
22
+ text-transform:none;
23
+ border-style:solid;
24
+ outline:0;
25
+ outline-offset:0;
26
+ }
27
+ .choiceChip .spinner{
28
+ display:inline-flex;
29
+ }
30
+ .choiceChip .icon{
31
+ display:inline-flex;
32
+ }
33
+ .choiceChip .icon svg{
34
+ width:var(--size-icon-container-s, 24px) !important;
35
+ height:var(--size-icon-container-s, 24px) !important;
36
+ }
37
+ .choiceChip .labelLayout{
38
+ display:inline-flex;
39
+ align-items:center;
40
+ min-width:0;
41
+ }
42
+ .choiceChip[data-size=xs]{
43
+ height:var(--size-chips-xs, 24px);
44
+ padding-left:var(--space-chips-container-padding-xs, 3px);
45
+ padding-right:var(--space-chips-container-padding-xs, 3px);
46
+ border-radius:var(--radius-chips-xs, 12px);
47
+ border-width:var(--border-width-chips-single, 1px);
48
+ }
49
+ .choiceChip[data-size=xs] .label{
50
+ font-family:var(--light-label-s-font-family, SB Sans Interface);
51
+ font-weight:var(--light-label-s-font-weight, Regular);
52
+ line-height:var(--light-label-s-line-height, 14px);
53
+ font-size:var(--light-label-s-font-size, 11px);
54
+ letter-spacing:var(--light-label-s-letter-spacing, 0px);
55
+ paragraph-spacing:var(--light-label-s-paragraph-spacing, 6.05px);
56
+ }
57
+ .choiceChip[data-size=xs] .labelLayout{
58
+ padding-left:var(--space-chips-label-layout-padding-xs, 4px);
59
+ padding-right:var(--space-chips-label-layout-padding-xs, 4px);
60
+ gap:var(--space-chips-label-layout-gap, 2px);
61
+ }
62
+ .choiceChip[data-size=s]{
63
+ height:var(--size-chips-s, 32px);
64
+ padding-left:var(--space-chips-container-padding-s, 3px);
65
+ padding-right:var(--space-chips-container-padding-s, 3px);
66
+ border-radius:var(--radius-chips-s, 16px);
67
+ border-width:var(--border-width-chips-single, 1px);
68
+ }
69
+ .choiceChip[data-size=s] .label{
70
+ font-family:var(--light-label-m-font-family, SB Sans Interface);
71
+ font-weight:var(--light-label-m-font-weight, Regular);
72
+ line-height:var(--light-label-m-line-height, 16px);
73
+ font-size:var(--light-label-m-font-size, 12px);
74
+ letter-spacing:var(--light-label-m-letter-spacing, 0px);
75
+ paragraph-spacing:var(--light-label-m-paragraph-spacing, 6.6px);
76
+ }
77
+ .choiceChip[data-size=s] .labelLayout{
78
+ padding-left:var(--space-chips-label-layout-padding-s, 4px);
79
+ padding-right:var(--space-chips-label-layout-padding-s, 4px);
80
+ gap:var(--space-chips-label-layout-gap, 2px);
81
+ }
82
+ .choiceChip[data-size=m]{
83
+ height:var(--size-chips-m, 40px);
84
+ padding-left:var(--space-chips-container-padding-m, 7px);
85
+ padding-right:var(--space-chips-container-padding-m, 7px);
86
+ border-radius:var(--radius-chips-m, 20px);
87
+ border-width:var(--border-width-chips-single, 1px);
88
+ }
89
+ .choiceChip[data-size=m] .label{
90
+ font-family:var(--sans-label-l-font-family, SB Sans Interface);
91
+ font-weight:var(--sans-label-l-font-weight, Semibold);
92
+ line-height:var(--sans-label-l-line-height, 20px);
93
+ font-size:var(--sans-label-l-font-size, 14px);
94
+ letter-spacing:var(--sans-label-l-letter-spacing, 0px);
95
+ paragraph-spacing:var(--sans-label-l-paragraph-spacing, 7.7px);
96
+ }
97
+ .choiceChip[data-size=m] .labelLayout{
98
+ padding-left:var(--space-chips-label-layout-padding-m, 8px);
99
+ padding-right:var(--space-chips-label-layout-padding-m, 8px);
100
+ gap:var(--space-chips-label-layout-gap, 2px);
101
+ }
102
+ .choiceChip[data-size=l]{
103
+ height:var(--size-chips-l, 48px);
104
+ padding-left:var(--space-chips-container-padding-l, 11px);
105
+ padding-right:var(--space-chips-container-padding-l, 11px);
106
+ border-radius:var(--radius-chips-l, 24px);
107
+ border-width:var(--border-width-chips-single, 1px);
108
+ }
109
+ .choiceChip[data-size=l] .label{
110
+ font-family:var(--light-label-l-font-family, SB Sans Interface);
111
+ font-weight:var(--light-label-l-font-weight, Regular);
112
+ line-height:var(--light-label-l-line-height, 20px);
113
+ font-size:var(--light-label-l-font-size, 14px);
114
+ letter-spacing:var(--light-label-l-letter-spacing, 0px);
115
+ paragraph-spacing:var(--light-label-l-paragraph-spacing, 7.7px);
116
+ }
117
+ .choiceChip[data-size=l] .labelLayout{
118
+ padding-left:var(--space-chips-label-layout-padding-l, 12px);
119
+ padding-right:var(--space-chips-label-layout-padding-l, 12px);
120
+ gap:var(--space-chips-label-layout-gap, 2px);
121
+ }
122
+ .choiceChip .label,
123
+ .choiceChip .value{
124
+ color:var(--sys-neutral-text-support, #6d707f);
125
+ }
126
+ .choiceChip .icon{
127
+ color:var(--sys-neutral-text-light, #8b8e9b);
128
+ }
129
+ .choiceChip[data-size=xs] .value{
130
+ font-family:var(--sans-label-s-font-family, SB Sans Interface);
131
+ font-weight:var(--sans-label-s-font-weight, Semibold);
132
+ line-height:var(--sans-label-s-line-height, 14px);
133
+ font-size:var(--sans-label-s-font-size, 11px);
134
+ letter-spacing:var(--sans-label-s-letter-spacing, 0px);
135
+ paragraph-spacing:var(--sans-label-s-paragraph-spacing, 6.05px);
136
+ }
137
+ .choiceChip[data-size=s] .value{
138
+ font-family:var(--sans-label-m-font-family, SB Sans Interface);
139
+ font-weight:var(--sans-label-m-font-weight, Semibold);
140
+ line-height:var(--sans-label-m-line-height, 16px);
141
+ font-size:var(--sans-label-m-font-size, 12px);
142
+ letter-spacing:var(--sans-label-m-letter-spacing, 0px);
143
+ paragraph-spacing:var(--sans-label-m-paragraph-spacing, 6.6px);
144
+ }
145
+ .choiceChip[data-size=m] .value{
146
+ font-family:var(--sans-label-l-font-family, SB Sans Interface);
147
+ font-weight:var(--sans-label-l-font-weight, Semibold);
148
+ line-height:var(--sans-label-l-line-height, 20px);
149
+ font-size:var(--sans-label-l-font-size, 14px);
150
+ letter-spacing:var(--sans-label-l-letter-spacing, 0px);
151
+ paragraph-spacing:var(--sans-label-l-paragraph-spacing, 7.7px);
152
+ }
153
+ .choiceChip[data-size=l] .value{
154
+ font-family:var(--sans-label-l-font-family, SB Sans Interface);
155
+ font-weight:var(--sans-label-l-font-weight, Semibold);
156
+ line-height:var(--sans-label-l-line-height, 20px);
157
+ font-size:var(--sans-label-l-font-size, 14px);
158
+ letter-spacing:var(--sans-label-l-letter-spacing, 0px);
159
+ paragraph-spacing:var(--sans-label-l-paragraph-spacing, 7.7px);
160
+ }
161
+ .choiceChip:hover, .choiceChip:active, .choiceChip:focus-visible{
162
+ background-color:var(--sys-neutral-background2-level, #ffffff);
163
+ border-color:var(--sys-neutral-decor-hovered, #cfd2dc);
164
+ }
165
+ .choiceChip:hover .label, .choiceChip:active .label, .choiceChip:focus-visible .label{
166
+ color:var(--sys-neutral-text-support, #6d707f);
167
+ }
168
+ .choiceChip:hover .value, .choiceChip:active .value, .choiceChip:focus-visible .value{
169
+ color:var(--sys-neutral-text-main, #41424e);
170
+ }
171
+ .choiceChip:focus-visible{
172
+ outline-width:var(--border-state-focus-s-border-width, 2px);
173
+ outline-style:var(--border-state-focus-s-border-style, solid);
174
+ outline-color:var(--border-state-focus-s-border-color, );
175
+ outline-color:var(--sys-available-complementary, #1c1c24);
176
+ outline-offset:var(--spacing-state-focus-offset, 2px);
177
+ }
178
+ .choiceChip[data-disabled]{
179
+ cursor:not-allowed;
180
+ background-color:var(--sys-neutral-background, #eeeff3);
181
+ border-color:var(--sys-neutral-decor-disabled, #e6e8ef);
182
+ }
183
+ .choiceChip[data-disabled] .label,
184
+ .choiceChip[data-disabled] .value{
185
+ color:var(--sys-neutral-text-light, #8b8e9b);
186
+ }
187
+ .choiceChip[data-loading]{
188
+ background-color:var(--sys-neutral-background, #eeeff3);
189
+ border-color:var(--sys-neutral-decor-activated, #b6bac7);
190
+ cursor:progress;
191
+ }
192
+ .choiceChip[data-loading] true .spinner{
193
+ display:flex;
194
+ align-items:center;
195
+ justify-content:center;
196
+ }
197
+ .choiceChip[data-loading] .label,
198
+ .choiceChip[data-loading] .value{
199
+ color:var(--sys-neutral-text-support, #6d707f);
200
+ }
201
+
202
+ .triggerClassName{
203
+ --offset:var(--space-drop-list-drop-offset, 4px);
204
+ }
205
+
206
+ .autoApplyFooter{
207
+ display:flex;
208
+ align-items:center;
209
+ justify-content:space-between;
210
+ gap:8px;
211
+ }
@@ -0,0 +1,80 @@
1
+ import { MouseEventHandler, ReactNode } from 'react';
2
+ import { BaseItemProps, DroplistProps, GroupItemProps, GroupSelectItemProps, ItemContentProps, ItemId, NextListItemProps, SelectionMultipleState, SelectionSingleState } from '@sbercloud/uikit-product-mobile-dropdown';
3
+ import { TruncateStringProps } from '@snack-uikit/truncate-string';
4
+ import { WithSupportProps } from '@snack-uikit/utils';
5
+ import { BaseChipProps, Size } from '../../types';
6
+ export type AnyType = any;
7
+ export type ContentRenderProps = Omit<ItemContentProps, 'option' | 'disabled'>;
8
+ export type FilterOption<T extends ContentRenderProps = ContentRenderProps> = BaseOption<T> | AccordionOption<T> | GroupOption<T> | GroupSelectOption<T> | NestListOption<T>;
9
+ export type BaseOption<T extends ContentRenderProps = ContentRenderProps> = Omit<BaseItemProps, 'content' | 'id'> & {
10
+ value: ItemId;
11
+ label: ItemId;
12
+ contentRenderProps?: T;
13
+ };
14
+ export type AccordionOption<T extends ContentRenderProps = ContentRenderProps> = Omit<BaseOption<T>, 'switch' | 'inactive' | 'value'> & {
15
+ id?: ItemId;
16
+ type: 'collapse';
17
+ options: FilterOption<T>[];
18
+ };
19
+ export type GroupOption<T extends ContentRenderProps = ContentRenderProps> = Omit<GroupItemProps, 'items'> & {
20
+ options: FilterOption<T>[];
21
+ };
22
+ export type GroupSelectOption<T extends ContentRenderProps = ContentRenderProps> = Omit<GroupSelectItemProps, 'items'> & {
23
+ options: FilterOption<T>[];
24
+ };
25
+ export type NestListOption<T extends ContentRenderProps = ContentRenderProps> = Omit<NextListItemProps, 'items' | 'content'> & {
26
+ label: ItemId;
27
+ contentRenderProps?: T;
28
+ options: FilterOption<T>[];
29
+ };
30
+ export type ChipChoiceCommonProps = WithSupportProps<Partial<BaseChipProps> & {
31
+ /** Размер */
32
+ size?: Size;
33
+ /** Колбек обработки клика */
34
+ onClick?: MouseEventHandler<HTMLButtonElement | HTMLDivElement>;
35
+ /** Колбек для клика по кнопке очистки */
36
+ onClearButtonClick?: MouseEventHandler<HTMLButtonElement>;
37
+ /** Управляет состоянием показан/не показан. */
38
+ open?: boolean;
39
+ /** Колбек отображения компонента. Срабатывает при изменении состояния open. */
40
+ onOpenChange?(isOpen: boolean): void;
41
+ /** Вариант обрезания значения */
42
+ truncateVariant?: TruncateStringProps['variant'];
43
+ }>;
44
+ export type ChipChoiceSelectCommonProps<T extends ContentRenderProps = ContentRenderProps> = ChipChoiceCommonProps & {
45
+ options: FilterOption<T>[];
46
+ contentRender?(option: {
47
+ label: ItemId;
48
+ value?: ItemId;
49
+ contentRenderProps?: T;
50
+ }): ReactNode;
51
+ filterFn?(option: {
52
+ label: ItemId;
53
+ value?: ItemId;
54
+ contentRenderProps?: T;
55
+ }): boolean;
56
+ searchable?: boolean;
57
+ /**
58
+ * Отключает Fuzzy Search. Иногда в дроплисте могут быть различные айдишники - нам важно искать их без Fuzzy Search
59
+ * @default false
60
+ */
61
+ disableFuzzySearch?: boolean;
62
+ /** Флаг, отвечающий за применение выбранного значения по умолчанию */
63
+ autoApply?: boolean;
64
+ /** Колбек основной кнопки */
65
+ onApprove?(): void;
66
+ /** Колбек кнопки отмены */
67
+ onCancel?(): void;
68
+ } & Pick<DroplistProps, 'selection' | 'scrollRef' | 'scrollContainerRef' | 'noDataState' | 'footer' | 'footerActiveElementsRefs' | 'dataError' | 'errorDataState' | 'dataFiltered' | 'noResultsState' | 'loading' | 'virtualized'>;
69
+ export type MobileChipChoiceSingleProps<T extends ContentRenderProps = ContentRenderProps> = ChipChoiceSelectCommonProps<T> & Omit<SelectionSingleState, 'mode'> & {
70
+ /** Массив опций */
71
+ options: FilterOption<T>[];
72
+ /** Колбек формирующий отображение выбранного значения. Принимает выбранное значение. По умолчанию для отображения используется FilterOption.label */
73
+ valueRender?(option?: BaseOption<T>): ReactNode;
74
+ };
75
+ export type MobileChipChoiceMultipleProps<T extends ContentRenderProps = ContentRenderProps> = ChipChoiceSelectCommonProps<T> & Omit<SelectionMultipleState, 'mode'> & {
76
+ /** Массив опций */
77
+ options: FilterOption<T>[];
78
+ /** Колбек формирующий отображение выбранного значения. Принимает выбранное значение. По умолчанию для отображения используется FilterOption.label */
79
+ valueRender?(option?: BaseOption<T>[]): ReactNode;
80
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export * from './typeGuards';
2
+ export * from './utils';
@@ -0,0 +1,2 @@
1
+ export * from './typeGuards';
2
+ export * from './utils';
@@ -0,0 +1,9 @@
1
+ import { ReactNode } from 'react';
2
+ import { ItemId, MobileDroplistProps } from '@sbercloud/uikit-product-mobile-dropdown';
3
+ import { ContentRenderProps, FilterOption } from '../types';
4
+ export declare function transformOptionsToItems<T extends ContentRenderProps = ContentRenderProps>(options: FilterOption<T>[], contentRender?: (option: {
5
+ label: ItemId;
6
+ value?: ItemId;
7
+ contentRenderProps?: T;
8
+ disabled?: boolean;
9
+ }) => ReactNode): MobileDroplistProps['items'];
@@ -0,0 +1,33 @@
1
+ var __rest = (this && this.__rest) || function (s, e) {
2
+ var t = {};
3
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
+ t[p] = s[p];
5
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
+ t[p[i]] = s[p[i]];
9
+ }
10
+ return t;
11
+ };
12
+ import { jsx as _jsx } from "react/jsx-runtime";
13
+ import { ItemContent } from '../../../helperComponents';
14
+ import { isAccordionOption, isGroupOption, isGroupSelectOption, isNextListOption } from './typeGuards';
15
+ export function transformOptionsToItems(options, contentRender) {
16
+ return options.map(option => {
17
+ if (isAccordionOption(option) || isNextListOption(option)) {
18
+ const { label, options, id, contentRenderProps, disabled } = option, rest = __rest(option, ["label", "options", "id", "contentRenderProps", "disabled"]);
19
+ return Object.assign(Object.assign({}, rest), { disabled,
20
+ id, content: contentRender ? (contentRender({ label, contentRenderProps, disabled })) : (_jsx(ItemContent, Object.assign({ option: label }, contentRenderProps, { disabled: disabled }))), items: transformOptionsToItems(options) });
21
+ }
22
+ if (isGroupSelectOption(option)) {
23
+ const { options } = option, rest = __rest(option, ["options"]);
24
+ return Object.assign(Object.assign({}, rest), { items: transformOptionsToItems(options) });
25
+ }
26
+ if (isGroupOption(option)) {
27
+ const { options } = option, rest = __rest(option, ["options"]);
28
+ return Object.assign(Object.assign({}, rest), { items: transformOptionsToItems(options) });
29
+ }
30
+ const _a = option, { label, value, contentRenderProps, disabled } = _a, rest = __rest(_a, ["label", "value", "contentRenderProps", "disabled"]);
31
+ return Object.assign(Object.assign({}, rest), { disabled, id: value, content: contentRender ? (contentRender({ label, contentRenderProps, disabled, value })) : (_jsx(ItemContent, Object.assign({ option: label }, contentRenderProps, { disabled: disabled }))) });
32
+ });
33
+ }
@@ -0,0 +1,6 @@
1
+ import { AccordionOption, AnyType, BaseOption, ContentRenderProps, GroupOption, GroupSelectOption, NestListOption } from '../types';
2
+ export declare function isBaseOption<T extends ContentRenderProps = ContentRenderProps>(option: AnyType): option is BaseOption<T>;
3
+ export declare function isAccordionOption<T extends ContentRenderProps = ContentRenderProps>(option: AnyType): option is AccordionOption<T>;
4
+ export declare function isNextListOption<T extends ContentRenderProps = ContentRenderProps>(option: AnyType): option is NestListOption<T>;
5
+ export declare function isGroupOption<T extends ContentRenderProps = ContentRenderProps>(option: AnyType): option is GroupOption<T>;
6
+ export declare function isGroupSelectOption<T extends ContentRenderProps = ContentRenderProps>(option: AnyType): option is GroupSelectOption<T>;
@@ -0,0 +1,15 @@
1
+ export function isBaseOption(option) {
2
+ return !('options' in option);
3
+ }
4
+ export function isAccordionOption(option) {
5
+ return option && 'options' in option && option['type'] === 'collapse';
6
+ }
7
+ export function isNextListOption(option) {
8
+ return option && 'options' in option && option['type'] === 'next-list';
9
+ }
10
+ export function isGroupOption(option) {
11
+ return option && 'options' in option && option['type'] === 'group';
12
+ }
13
+ export function isGroupSelectOption(option) {
14
+ return option && 'options' in option && option['type'] === 'group-select';
15
+ }
@@ -0,0 +1,19 @@
1
+ import { ReactNode } from 'react';
2
+ import { ItemId } from '@sbercloud/uikit-product-mobile-dropdown';
3
+ import { ContentRenderProps, FilterOption } from '../types';
4
+ export type FlattenOption<T extends ContentRenderProps = ContentRenderProps> = {
5
+ value: ItemId;
6
+ label: ItemId;
7
+ contentRenderProps?: T;
8
+ disabled?: boolean;
9
+ hidden?: boolean;
10
+ afterContent?: ReactNode;
11
+ beforeContent?: ReactNode;
12
+ };
13
+ type KindFlattenOptionsProps<T extends ContentRenderProps = ContentRenderProps> = {
14
+ options: FilterOption<T>[];
15
+ };
16
+ export declare function kindFlattenOptions<T extends ContentRenderProps = ContentRenderProps>({ options, }: KindFlattenOptionsProps<T>): {
17
+ flattenOptions: Record<string, FlattenOption<T>>;
18
+ };
19
+ export {};
@@ -0,0 +1,30 @@
1
+ import { isBaseOption } from './typeGuards';
2
+ export function kindFlattenOptions({ options, }) {
3
+ const flattenOptions = {};
4
+ function flatten(option) {
5
+ if (isBaseOption(option)) {
6
+ const { value, label, contentRenderProps, disabled, afterContent, beforeContent, hidden } = option;
7
+ flattenOptions[value] = {
8
+ value,
9
+ label,
10
+ contentRenderProps,
11
+ disabled,
12
+ afterContent,
13
+ beforeContent,
14
+ hidden,
15
+ };
16
+ return;
17
+ }
18
+ const { options } = option;
19
+ for (let idx = 0; idx < options.length; idx++) {
20
+ flatten(options[idx]);
21
+ }
22
+ return;
23
+ }
24
+ for (let idx = 0; idx < options.length; idx++) {
25
+ flatten(options[idx]);
26
+ }
27
+ return {
28
+ flattenOptions,
29
+ };
30
+ }
@@ -0,0 +1,29 @@
1
+ import { WithSupportProps } from '@snack-uikit/utils';
2
+ import { ChipChoiceProps, ChipChoiceRowSize, OmitBetter } from './types';
3
+ export type FiltersState = Record<string, unknown>;
4
+ export type MobileChipChoiceRowFilter = OmitBetter<ChipChoiceProps, 'onChange' | 'value' | 'size' | 'defaultValue'> & {
5
+ pinned?: boolean;
6
+ };
7
+ export type MobileChipChoiceRowProps<TState extends FiltersState> = WithSupportProps<{
8
+ /** Состояние фильтров */
9
+ value?: TState;
10
+ /** Начальное состояние фильтров */
11
+ defaultValue?: Partial<TState>;
12
+ /** Колбек изменения состояния фильтров */
13
+ onChange?(filters: TState): void;
14
+ /** Массив чипов */
15
+ filters: MobileChipChoiceRowFilter[];
16
+ /** Размер @default 's' */
17
+ size?: ChipChoiceRowSize;
18
+ /** CSS-класс */
19
+ className?: string;
20
+ /** Скрыть/показать кнопку очиски фильтров @default true */
21
+ showClearButton?: boolean;
22
+ /** Скрыть/показать кнопку добавления фильров @default true */
23
+ showAddButton?: boolean;
24
+ /** Состояние для видимых фильтров */
25
+ visibleFilters?: string[];
26
+ /** Коллбек на изменение видимых фильтров */
27
+ onVisibleFiltersChange?(value: string[]): void;
28
+ }>;
29
+ export declare function MobileChipChoiceRow<TState extends FiltersState>({ filters, onChange, showClearButton: showClearButtonProp, showAddButton, className, value, defaultValue: defaultValueProp, size, visibleFilters: visibleFiltersProp, onVisibleFiltersChange, ...rest }: MobileChipChoiceRowProps<TState>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,118 @@
1
+ var __rest = (this && this.__rest) || function (s, e) {
2
+ var t = {};
3
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
+ t[p] = s[p];
5
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
+ t[p[i]] = s[p[i]];
9
+ }
10
+ return t;
11
+ };
12
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
+ import cn from 'classnames';
14
+ import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
15
+ import { useUncontrolledProp } from 'uncontrollable';
16
+ import { CrossSVG, PlusSVG } from '@sbercloud/uikit-product-icons';
17
+ import { useLocale } from '@sbercloud/uikit-product-locale';
18
+ import { MobileDroplist } from '@sbercloud/uikit-product-mobile-dropdown';
19
+ import { MobileTooltip } from '@sbercloud/uikit-product-mobile-tooltip';
20
+ import { ButtonFunction } from '@snack-uikit/button';
21
+ import { Divider } from '@snack-uikit/divider';
22
+ import { extractSupportProps } from '@snack-uikit/utils';
23
+ import { CHIP_CHOICE_ROW_IDS } from '../../constants';
24
+ import { ForwardedChipChoice } from './components';
25
+ import { CHIP_CHOICE_ROW_SIZE, MAP_ROW_SIZE_TO_BUTTON_SIZE, MAP_ROW_SIZE_TO_CHOICE_SIZE } from './constants';
26
+ import styles from './styles.module.css';
27
+ export function MobileChipChoiceRow(_a) {
28
+ var { filters, onChange, showClearButton: showClearButtonProp = true, showAddButton = true, className, value, defaultValue: defaultValueProp, size = CHIP_CHOICE_ROW_SIZE.S, visibleFilters: visibleFiltersProp, onVisibleFiltersChange } = _a, rest = __rest(_a, ["filters", "onChange", "showClearButton", "showAddButton", "className", "value", "defaultValue", "size", "visibleFilters", "onVisibleFiltersChange"]);
29
+ const { t } = useLocale('Chips');
30
+ const defaultValue = useMemo(() => (defaultValueProp !== null && defaultValueProp !== void 0 ? defaultValueProp : {}), [defaultValueProp]);
31
+ const [state, setState] = useUncontrolledProp(value, defaultValue, newState => {
32
+ const result = typeof newState === 'function' ? newState(state) : newState;
33
+ onChange === null || onChange === void 0 ? void 0 : onChange(result);
34
+ });
35
+ const [addListValue, setAddListValue] = useUncontrolledProp(visibleFiltersProp, Object.keys(state), newState => {
36
+ const result = typeof newState === 'function' ? newState(addListValue) : newState;
37
+ onVisibleFiltersChange === null || onVisibleFiltersChange === void 0 ? void 0 : onVisibleFiltersChange(result);
38
+ });
39
+ const [openedChip, setOpenedChip] = useState('');
40
+ const [addListOpen, setAddListOpen] = useState(false);
41
+ const handleChange = (fieldId, value) => {
42
+ setState((state) => (Object.assign(Object.assign({}, state), { [fieldId]: value })));
43
+ };
44
+ const handleChipOpen = useCallback((filterId) => (isOpen) => {
45
+ setOpenedChip(isOpen ? filterId : '');
46
+ }, []);
47
+ const handleFiltersClear = () => {
48
+ const defaultState = filters.reduce((res, filter) => {
49
+ if (filter.pinned) {
50
+ return Object.assign(Object.assign({}, res), { [filter.id]: defaultValue[filter.id] });
51
+ }
52
+ return res;
53
+ }, {});
54
+ setState(defaultState);
55
+ setAddListValue([]);
56
+ };
57
+ const { pinnedFilters, nonPinnedFilters } = useMemo(() => filters.reduce((res, filter) => {
58
+ if (filter.pinned) {
59
+ res.pinnedFilters.push(filter);
60
+ }
61
+ else {
62
+ res.nonPinnedFilters.push(filter);
63
+ }
64
+ return res;
65
+ }, { pinnedFilters: [], nonPinnedFilters: [] }), [filters]);
66
+ const visibleFilters = useMemo(() => addListValue.reduce((res, filterId) => {
67
+ const filter = nonPinnedFilters.find(filter => filter.id === filterId);
68
+ if (filter) {
69
+ res.push(filter);
70
+ }
71
+ return res;
72
+ }, []), [addListValue, nonPinnedFilters]);
73
+ const hasAnyFilter = useMemo(() => visibleFilters.length > 0 || pinnedFilters.some(filter => state[filter.id] !== defaultValue[filter.id]), [defaultValue, pinnedFilters, state, visibleFilters.length]);
74
+ const handleClearPinnedFilter = (filterId) => {
75
+ const defaultFilterValue = defaultValue[filterId];
76
+ if (state[filterId] === defaultFilterValue) {
77
+ return;
78
+ }
79
+ return () => setState((prevState) => (Object.assign(Object.assign({}, prevState), { [filterId]: defaultFilterValue })));
80
+ };
81
+ const handleRemoveVisibleFilter = (filterId) => () => {
82
+ setAddListValue((prev) => prev === null || prev === void 0 ? void 0 : prev.filter(item => filterId !== item));
83
+ setState((prevState) => (Object.assign(Object.assign({}, prevState), { [filterId]: undefined })));
84
+ };
85
+ const addSelectorOptions = useMemo(() => nonPinnedFilters.reduce((res, filter, index) => {
86
+ var _a, _b;
87
+ if (addListValue.includes(filter.id)) {
88
+ return res;
89
+ }
90
+ res.push({
91
+ id: filter.id,
92
+ content: { option: (_a = filter.label) !== null && _a !== void 0 ? _a : filter.id },
93
+ onClick: () => {
94
+ setAddListValue(function (prevValue) {
95
+ return [...(prevValue !== null && prevValue !== void 0 ? prevValue : []), filter.id];
96
+ });
97
+ setAddListOpen(false);
98
+ },
99
+ 'data-test-id': `${CHIP_CHOICE_ROW_IDS.addButtonOption}-${(_b = filter['data-test-id']) !== null && _b !== void 0 ? _b : index}`,
100
+ });
101
+ return res;
102
+ }, []), [addListValue, nonPinnedFilters, setAddListValue]);
103
+ const canAddChips = addSelectorOptions.length > 0;
104
+ const addListPrevValue = useRef(addListValue);
105
+ useEffect(() => {
106
+ const prevValue = addListPrevValue.current;
107
+ if (addListValue.length > prevValue.length) {
108
+ const newItem = addListValue.find(item => !prevValue.includes(item));
109
+ if (newItem) {
110
+ handleChipOpen(newItem)(true);
111
+ }
112
+ }
113
+ addListPrevValue.current = addListValue;
114
+ }, [addListValue, handleChipOpen]);
115
+ const showClearButton = showClearButtonProp && hasAnyFilter;
116
+ const showPinnedFiltersDivider = showAddButton || showClearButton || visibleFilters.length > 0;
117
+ return (_jsxs("div", Object.assign({ className: cn(styles.chipChoiceRow, className) }, extractSupportProps(rest), { children: [pinnedFilters.length > 0 && (_jsxs("div", { className: styles.pinnedItems, children: [pinnedFilters.map(filter => (_jsx(ForwardedChipChoice, Object.assign({}, filter, { value: state[filter.id], size: MAP_ROW_SIZE_TO_CHOICE_SIZE[size], onChange: (value) => handleChange(filter.id, value), onClearButtonClick: handleClearPinnedFilter(filter.id) }), filter.id))), showPinnedFiltersDivider && _jsx(Divider, { orientation: 'vertical', className: styles.divider })] })), visibleFilters.map(filter => (_jsx(ForwardedChipChoice, Object.assign({}, filter, { value: state[filter.id], size: MAP_ROW_SIZE_TO_CHOICE_SIZE[size], onChange: (value) => handleChange(filter.id, value), onClearButtonClick: handleRemoveVisibleFilter(filter.id), open: openedChip === filter.id, onOpenChange: handleChipOpen(filter.id) }), filter.id))), _jsxs("div", { className: styles.controlWrapper, children: [showAddButton && (_jsx(MobileTooltip, { tip: t('addButtonDisabledTip'), open: canAddChips ? false : undefined, placement: 'bottom', "data-test-id": CHIP_CHOICE_ROW_IDS.addButtonTooltip, children: _jsx(MobileDroplist, { open: canAddChips && addListOpen, onOpenChange: setAddListOpen, items: addSelectorOptions, children: _jsx(ButtonFunction, { disabled: !canAddChips, label: t('add'), icon: _jsx(PlusSVG, {}), iconPosition: 'before', size: MAP_ROW_SIZE_TO_BUTTON_SIZE[size], "data-test-id": CHIP_CHOICE_ROW_IDS.addButton }) }) })), showClearButton && (_jsx(ButtonFunction, { onClick: handleFiltersClear, label: t('clear'), icon: _jsx(CrossSVG, {}), iconPosition: 'before', size: MAP_ROW_SIZE_TO_BUTTON_SIZE[size], "data-test-id": CHIP_CHOICE_ROW_IDS.clearButton }))] })] })));
118
+ }
@@ -0,0 +1,2 @@
1
+ import { ChipChoiceProps } from '../types';
2
+ export declare function ForwardedChipChoice(props: ChipChoiceProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,6 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { MAP_CHIP_TYPE_TO_COMPONENT } from './constants';
3
+ export function ForwardedChipChoice(props) {
4
+ const Component = MAP_CHIP_TYPE_TO_COMPONENT[props.type];
5
+ return _jsx(Component, Object.assign({}, props));
6
+ }
@@ -0,0 +1,9 @@
1
+ export declare const MAP_CHIP_TYPE_TO_COMPONENT: {
2
+ single: typeof import("../../MobileChipChoice/components").MobileChipChoiceSingle;
3
+ multiple: typeof import("../../MobileChipChoice/components").MobileChipChoiceMultiple;
4
+ date: typeof import("../../MobileChipChoice/components").MobileChipChoiceDate;
5
+ "date-time": typeof import("../../MobileChipChoice/components").MobileChipChoiceDate;
6
+ "date-range": typeof import("../../MobileChipChoice/components").MobileChipChoiceDateRange;
7
+ time: typeof import("../../MobileChipChoice/components").MobileChipChoiceTime;
8
+ custom: typeof import("../../MobileChipChoice/components").MobileChipChoiceCustom;
9
+ };
@@ -0,0 +1,11 @@
1
+ import { MobileChipChoice } from '../../MobileChipChoice';
2
+ import { CHIP_CHOICE_TYPE } from '../../MobileChipChoice/constants';
3
+ export const MAP_CHIP_TYPE_TO_COMPONENT = {
4
+ [CHIP_CHOICE_TYPE.Single]: MobileChipChoice.Single,
5
+ [CHIP_CHOICE_TYPE.Multiple]: MobileChipChoice.Multiple,
6
+ [CHIP_CHOICE_TYPE.Date]: MobileChipChoice.Date,
7
+ [CHIP_CHOICE_TYPE.DateTime]: MobileChipChoice.Date,
8
+ [CHIP_CHOICE_TYPE.DateRange]: MobileChipChoice.DateRange,
9
+ [CHIP_CHOICE_TYPE.Time]: MobileChipChoice.Time,
10
+ [CHIP_CHOICE_TYPE.Custom]: MobileChipChoice.Custom,
11
+ };
@@ -0,0 +1 @@
1
+ export * from './ForwardedChipChoice';
@@ -0,0 +1 @@
1
+ export * from './ForwardedChipChoice';
@@ -0,0 +1,12 @@
1
+ import { ButtonFunctionProps } from '@snack-uikit/button';
2
+ export declare const CHIP_CHOICE_ROW_SIZE: {
3
+ readonly Xs: "xs";
4
+ readonly S: "s";
5
+ readonly M: "m";
6
+ };
7
+ export declare const MAP_ROW_SIZE_TO_CHOICE_SIZE: {
8
+ xs: "xs";
9
+ s: "s";
10
+ m: "m";
11
+ };
12
+ export declare const MAP_ROW_SIZE_TO_BUTTON_SIZE: Record<string, ButtonFunctionProps['size']>;
@@ -0,0 +1,16 @@
1
+ import { SIZE } from '../../constants';
2
+ export const CHIP_CHOICE_ROW_SIZE = {
3
+ Xs: 'xs',
4
+ S: 's',
5
+ M: 'm',
6
+ };
7
+ export const MAP_ROW_SIZE_TO_CHOICE_SIZE = {
8
+ [CHIP_CHOICE_ROW_SIZE.Xs]: SIZE.Xs,
9
+ [CHIP_CHOICE_ROW_SIZE.S]: SIZE.S,
10
+ [CHIP_CHOICE_ROW_SIZE.M]: SIZE.M,
11
+ };
12
+ export const MAP_ROW_SIZE_TO_BUTTON_SIZE = {
13
+ [CHIP_CHOICE_ROW_SIZE.Xs]: 'xs',
14
+ [CHIP_CHOICE_ROW_SIZE.S]: 's',
15
+ [CHIP_CHOICE_ROW_SIZE.M]: 'm',
16
+ };
@@ -0,0 +1,2 @@
1
+ export * from './MobileChipChoiceRow';
2
+ export { hasFilterBeenApplied } from '@snack-uikit/chips';