fomantic-ui 2.9.3-beta.8 → 2.9.3

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 (290) hide show
  1. package/.all-contributorsrc +2 -2
  2. package/.github/FUNDING.yml +1 -1
  3. package/.github/auto_assign.yml +1 -1
  4. package/.github/workflows/ci.yml +5 -5
  5. package/.github/workflows/nightly.yml +1 -1
  6. package/.github/workflows/release.yml +1 -1
  7. package/CHANGELOG.md +131 -0
  8. package/CONTRIBUTORS.md +1 -1
  9. package/README.md +5 -2
  10. package/SECURITY.md +2 -1
  11. package/dist/components/accordion.css +1 -1
  12. package/dist/components/accordion.js +2 -2
  13. package/dist/components/accordion.min.css +1 -1
  14. package/dist/components/accordion.min.js +2 -2
  15. package/dist/components/ad.css +1 -1
  16. package/dist/components/ad.min.css +1 -1
  17. package/dist/components/api.js +10 -9
  18. package/dist/components/api.min.js +2 -2
  19. package/dist/components/breadcrumb.css +1 -1
  20. package/dist/components/breadcrumb.min.css +1 -1
  21. package/dist/components/button.css +2 -2
  22. package/dist/components/button.min.css +2 -2
  23. package/dist/components/calendar.css +140 -3
  24. package/dist/components/calendar.js +2 -2
  25. package/dist/components/calendar.min.css +2 -2
  26. package/dist/components/calendar.min.js +2 -2
  27. package/dist/components/card.css +1 -1
  28. package/dist/components/card.min.css +1 -1
  29. package/dist/components/checkbox.css +50 -6
  30. package/dist/components/checkbox.js +5 -3
  31. package/dist/components/checkbox.min.css +2 -2
  32. package/dist/components/checkbox.min.js +2 -2
  33. package/dist/components/comment.css +6 -1
  34. package/dist/components/comment.min.css +2 -2
  35. package/dist/components/container.css +62 -1
  36. package/dist/components/container.min.css +2 -2
  37. package/dist/components/dimmer.css +3 -3
  38. package/dist/components/dimmer.js +2 -2
  39. package/dist/components/dimmer.min.css +2 -2
  40. package/dist/components/dimmer.min.js +2 -2
  41. package/dist/components/divider.css +1 -1
  42. package/dist/components/divider.min.css +1 -1
  43. package/dist/components/dropdown.css +101 -25
  44. package/dist/components/dropdown.js +29 -21
  45. package/dist/components/dropdown.min.css +2 -2
  46. package/dist/components/dropdown.min.js +2 -2
  47. package/dist/components/embed.css +1 -1
  48. package/dist/components/embed.js +2 -2
  49. package/dist/components/embed.min.css +1 -1
  50. package/dist/components/embed.min.js +2 -2
  51. package/dist/components/emoji.css +697 -249
  52. package/dist/components/emoji.min.css +2 -2
  53. package/dist/components/feed.css +486 -5
  54. package/dist/components/feed.min.css +2 -2
  55. package/dist/components/flag.css +3 -2
  56. package/dist/components/flag.min.css +2 -2
  57. package/dist/components/flyout.css +1 -1
  58. package/dist/components/flyout.js +2 -33
  59. package/dist/components/flyout.min.css +1 -1
  60. package/dist/components/flyout.min.js +2 -2
  61. package/dist/components/form.css +34 -32
  62. package/dist/components/form.js +72 -31
  63. package/dist/components/form.min.css +2 -2
  64. package/dist/components/form.min.js +2 -2
  65. package/dist/components/grid.css +107 -107
  66. package/dist/components/grid.min.css +2 -2
  67. package/dist/components/header.css +1 -1
  68. package/dist/components/header.min.css +1 -1
  69. package/dist/components/icon.css +62 -62
  70. package/dist/components/icon.min.css +2 -2
  71. package/dist/components/image.css +1 -1
  72. package/dist/components/image.min.css +1 -1
  73. package/dist/components/input.css +3 -27
  74. package/dist/components/input.min.css +2 -2
  75. package/dist/components/item.css +6 -1
  76. package/dist/components/item.min.css +2 -2
  77. package/dist/components/label.css +21 -2
  78. package/dist/components/label.min.css +2 -2
  79. package/dist/components/list.css +13 -13
  80. package/dist/components/list.min.css +2 -2
  81. package/dist/components/loader.css +282 -282
  82. package/dist/components/loader.min.css +2 -2
  83. package/dist/components/menu.css +13 -7
  84. package/dist/components/menu.min.css +2 -2
  85. package/dist/components/message.css +1 -1
  86. package/dist/components/message.min.css +1 -1
  87. package/dist/components/modal.css +5 -1
  88. package/dist/components/modal.js +3 -3
  89. package/dist/components/modal.min.css +2 -2
  90. package/dist/components/modal.min.js +2 -2
  91. package/dist/components/nag.css +1 -1
  92. package/dist/components/nag.js +3 -3
  93. package/dist/components/nag.min.css +1 -1
  94. package/dist/components/nag.min.js +2 -2
  95. package/dist/components/placeholder.css +1 -1
  96. package/dist/components/placeholder.min.css +1 -1
  97. package/dist/components/popup.css +3 -3
  98. package/dist/components/popup.js +11 -9
  99. package/dist/components/popup.min.css +2 -2
  100. package/dist/components/popup.min.js +2 -2
  101. package/dist/components/progress.css +1 -1
  102. package/dist/components/progress.js +2 -2
  103. package/dist/components/progress.min.css +1 -1
  104. package/dist/components/progress.min.js +2 -2
  105. package/dist/components/rail.css +1 -1
  106. package/dist/components/rail.min.css +1 -1
  107. package/dist/components/rating.css +1 -1
  108. package/dist/components/rating.js +2 -2
  109. package/dist/components/rating.min.css +1 -1
  110. package/dist/components/rating.min.js +2 -2
  111. package/dist/components/reset.css +1 -1
  112. package/dist/components/reset.min.css +1 -1
  113. package/dist/components/reveal.css +1 -1
  114. package/dist/components/reveal.min.css +1 -1
  115. package/dist/components/search.css +26 -1
  116. package/dist/components/search.js +5 -4
  117. package/dist/components/search.min.css +2 -2
  118. package/dist/components/search.min.js +2 -2
  119. package/dist/components/segment.css +159 -33
  120. package/dist/components/segment.min.css +2 -2
  121. package/dist/components/shape.css +1 -1
  122. package/dist/components/shape.js +2 -2
  123. package/dist/components/shape.min.css +1 -1
  124. package/dist/components/shape.min.js +2 -2
  125. package/dist/components/sidebar.css +1 -1
  126. package/dist/components/sidebar.js +2 -32
  127. package/dist/components/sidebar.min.css +1 -1
  128. package/dist/components/sidebar.min.js +2 -2
  129. package/dist/components/site.css +1 -1
  130. package/dist/components/site.js +2 -2
  131. package/dist/components/site.min.css +1 -1
  132. package/dist/components/site.min.js +2 -2
  133. package/dist/components/slider.css +1 -1
  134. package/dist/components/slider.js +126 -26
  135. package/dist/components/slider.min.css +1 -1
  136. package/dist/components/slider.min.js +2 -2
  137. package/dist/components/state.js +2 -2
  138. package/dist/components/state.min.js +2 -2
  139. package/dist/components/statistic.css +1 -1
  140. package/dist/components/statistic.min.css +1 -1
  141. package/dist/components/step.css +1 -1
  142. package/dist/components/step.min.css +1 -1
  143. package/dist/components/sticky.css +1 -1
  144. package/dist/components/sticky.js +2 -2
  145. package/dist/components/sticky.min.css +1 -1
  146. package/dist/components/sticky.min.js +2 -2
  147. package/dist/components/tab.css +1 -1
  148. package/dist/components/tab.js +6 -4
  149. package/dist/components/tab.min.css +1 -1
  150. package/dist/components/tab.min.js +2 -2
  151. package/dist/components/table.css +65 -1
  152. package/dist/components/table.min.css +2 -2
  153. package/dist/components/text.css +1 -1
  154. package/dist/components/text.min.css +1 -1
  155. package/dist/components/toast.css +6 -1
  156. package/dist/components/toast.js +2 -2
  157. package/dist/components/toast.min.css +2 -2
  158. package/dist/components/toast.min.js +2 -2
  159. package/dist/components/transition.css +1 -1
  160. package/dist/components/transition.js +3 -3
  161. package/dist/components/transition.min.css +1 -1
  162. package/dist/components/transition.min.js +2 -2
  163. package/dist/components/visibility.js +2 -2
  164. package/dist/components/visibility.min.js +2 -2
  165. package/dist/semantic.css +2822 -954
  166. package/dist/semantic.js +302 -206
  167. package/dist/semantic.min.css +2 -2
  168. package/dist/semantic.min.js +2 -2
  169. package/package.json +5 -4
  170. package/scripts/nightly-version.js +2 -2
  171. package/src/definitions/behaviors/api.js +9 -8
  172. package/src/definitions/behaviors/form.js +71 -30
  173. package/src/definitions/behaviors/state.js +1 -1
  174. package/src/definitions/behaviors/visibility.js +1 -1
  175. package/src/definitions/collections/form.less +9 -14
  176. package/src/definitions/collections/grid.less +106 -106
  177. package/src/definitions/collections/menu.less +29 -22
  178. package/src/definitions/collections/table.less +66 -0
  179. package/src/definitions/elements/button.less +1 -1
  180. package/src/definitions/elements/container.less +63 -0
  181. package/src/definitions/elements/icon.less +5 -5
  182. package/src/definitions/elements/input.less +2 -2
  183. package/src/definitions/elements/label.less +21 -1
  184. package/src/definitions/elements/list.less +13 -13
  185. package/src/definitions/elements/loader.less +71 -71
  186. package/src/definitions/elements/segment.less +110 -13
  187. package/src/definitions/globals/site.js +1 -1
  188. package/src/definitions/modules/accordion.js +1 -1
  189. package/src/definitions/modules/calendar.js +1 -1
  190. package/src/definitions/modules/calendar.less +40 -11
  191. package/src/definitions/modules/checkbox.js +4 -2
  192. package/src/definitions/modules/checkbox.less +61 -5
  193. package/src/definitions/modules/dimmer.js +1 -1
  194. package/src/definitions/modules/dimmer.less +2 -2
  195. package/src/definitions/modules/dropdown.js +28 -20
  196. package/src/definitions/modules/dropdown.less +124 -21
  197. package/src/definitions/modules/embed.js +1 -1
  198. package/src/definitions/modules/flyout.js +1 -32
  199. package/src/definitions/modules/modal.js +2 -2
  200. package/src/definitions/modules/modal.less +6 -0
  201. package/src/definitions/modules/nag.js +2 -2
  202. package/src/definitions/modules/popup.js +10 -8
  203. package/src/definitions/modules/popup.less +4 -4
  204. package/src/definitions/modules/progress.js +1 -1
  205. package/src/definitions/modules/rating.js +1 -1
  206. package/src/definitions/modules/search.js +4 -3
  207. package/src/definitions/modules/search.less +31 -0
  208. package/src/definitions/modules/shape.js +1 -1
  209. package/src/definitions/modules/sidebar.js +1 -31
  210. package/src/definitions/modules/slider.js +125 -25
  211. package/src/definitions/modules/sticky.js +1 -1
  212. package/src/definitions/modules/tab.js +5 -3
  213. package/src/definitions/modules/toast.js +1 -1
  214. package/src/definitions/modules/toast.less +7 -0
  215. package/src/definitions/modules/transition.js +2 -2
  216. package/src/definitions/views/comment.less +7 -0
  217. package/src/definitions/views/feed.less +238 -32
  218. package/src/definitions/views/item.less +7 -0
  219. package/src/theme.less +1 -1
  220. package/src/themes/amazon/elements/button.variables +5 -1
  221. package/src/themes/bootstrap3/elements/button.variables +5 -1
  222. package/src/themes/chubby/elements/header.variables +6 -1
  223. package/src/themes/default/collections/message.variables +3 -9
  224. package/src/themes/default/collections/table.variables +11 -8
  225. package/src/themes/default/elements/button.variables +8 -10
  226. package/src/themes/default/elements/container.variables +3 -0
  227. package/src/themes/default/elements/emoji.variables +179 -67
  228. package/src/themes/default/elements/flag.variables +1 -1
  229. package/src/themes/default/elements/label.variables +6 -1
  230. package/src/themes/default/elements/segment.variables +8 -0
  231. package/src/themes/default/globals/site.variables +362 -341
  232. package/src/themes/default/globals/variation.variables +24 -1
  233. package/src/themes/default/modules/calendar.variables +11 -0
  234. package/src/themes/default/modules/checkbox.variables +12 -0
  235. package/src/themes/default/modules/dropdown.variables +10 -4
  236. package/src/themes/default/modules/modal.variables +3 -0
  237. package/src/themes/default/modules/popup.variables +1 -1
  238. package/src/themes/default/modules/search.variables +3 -0
  239. package/src/themes/default/modules/toast.variables +6 -5
  240. package/src/themes/default/views/card.variables +4 -12
  241. package/src/themes/default/views/feed.variables +55 -1
  242. package/src/themes/default/views/item.variables +5 -5
  243. package/src/themes/flat/collections/form.variables +4 -4
  244. package/src/themes/flat/globals/site.variables +1 -1
  245. package/src/themes/github/elements/button.variables +5 -1
  246. package/src/themes/joypixels/elements/emoji.variables +182 -70
  247. package/src/themes/material/globals/site.variables +1 -1
  248. package/src/themes/twitter/elements/button.variables +5 -1
  249. package/src/themes/twitter/elements/emoji.variables +178 -66
  250. package/tasks/admin/components/create.js +1 -2
  251. package/tasks/admin/components/init.js +3 -4
  252. package/tasks/admin/components/update.js +2 -3
  253. package/tasks/admin/distributions/create.js +9 -5
  254. package/tasks/admin/distributions/init.js +3 -4
  255. package/tasks/admin/distributions/update.js +2 -3
  256. package/tasks/config/project/install.js +3 -0
  257. package/tasks/config/tasks.js +1 -8
  258. package/tasks/config/user.js +1 -1
  259. package/tasks/docs/build.js +2 -2
  260. package/tasks/docs/metadata.js +1 -1
  261. package/tasks/docs/serve.js +1 -1
  262. package/tasks/install.js +19 -10
  263. package/tasks/watch.js +1 -2
  264. package/types/fomantic-ui-accordion.d.ts +244 -0
  265. package/types/fomantic-ui-api.d.ts +555 -0
  266. package/types/fomantic-ui-calendar.d.ts +766 -0
  267. package/types/fomantic-ui-checkbox.d.ts +332 -0
  268. package/types/fomantic-ui-dimmer.d.ts +408 -0
  269. package/types/fomantic-ui-dropdown.d.ts +1183 -0
  270. package/types/fomantic-ui-embed.d.ts +326 -0
  271. package/types/fomantic-ui-flyout.d.ts +525 -0
  272. package/types/fomantic-ui-form.d.ts +651 -0
  273. package/types/fomantic-ui-modal.d.ts +471 -0
  274. package/types/fomantic-ui-nag.d.ts +270 -0
  275. package/types/fomantic-ui-popup.d.ts +523 -0
  276. package/types/fomantic-ui-progress.d.ts +459 -0
  277. package/types/fomantic-ui-rating.d.ts +187 -0
  278. package/types/fomantic-ui-search.d.ts +496 -0
  279. package/types/fomantic-ui-shape.d.ts +274 -0
  280. package/types/fomantic-ui-sidebar.d.ts +402 -0
  281. package/types/fomantic-ui-slider.d.ts +316 -0
  282. package/types/fomantic-ui-sticky.d.ts +215 -0
  283. package/types/fomantic-ui-tab.d.ts +361 -0
  284. package/types/fomantic-ui-tests.ts +25 -0
  285. package/types/fomantic-ui-toast.d.ts +514 -0
  286. package/types/fomantic-ui-transition.d.ts +355 -0
  287. package/types/fomantic-ui-visibility.d.ts +355 -0
  288. package/types/index.d.ts +63 -0
  289. package/types/tsconfig.json +23 -0
  290. package/types/tslint.json +1 -0
@@ -0,0 +1,316 @@
1
+ declare namespace FomanticUI {
2
+ interface Slider {
3
+ settings: SliderSettings;
4
+
5
+ /**
6
+ * Get the current selected value.
7
+ */
8
+ (behavior: 'get value'): number;
9
+
10
+ /**
11
+ * Get the selected value of one of the range thumbs.
12
+ * Provide either 'first' or 'second' as a string parameter.
13
+ */
14
+ (behavior: 'get thumbValue', which: 'first' | 'second'): number;
15
+
16
+ /**
17
+ * Get the number of rendered label ticks.
18
+ */
19
+ (behavior: 'get numLabels'): number;
20
+
21
+ /**
22
+ * Set the current slider value.
23
+ * Pass 'false' to 'fireChange' to skip the 'onChange' and 'onMove' callbacks.
24
+ */
25
+ (behavior: 'set value', value: number, fireChange: boolean): void;
26
+
27
+ /**
28
+ * Set the current range slider values.
29
+ * Pass 'false' to 'fireChange' to skip the 'onChange' and 'onMove' callbacks.
30
+ */
31
+ (behavior: 'set rangeValue', fromValue: number, toValue: number, fireChange: boolean): JQuery;
32
+
33
+ /**
34
+ * Destroys instance and removes all events.
35
+ */
36
+ (behavior: 'destroy'): JQuery;
37
+
38
+ <K extends keyof SliderSettings>(behavior: 'setting', name: K, value?: undefined, ): Partial<Pick<SliderSettings, keyof SliderSettings>>;
39
+ <K extends keyof SliderSettings>(behavior: 'setting', name: K, value: SliderSettings[K]): JQuery;
40
+ (behavior: 'setting', value: Partial<Pick<SliderSettings, keyof SliderSettings>>): JQuery;
41
+ (settings?: Partial<Pick<SliderSettings, keyof SliderSettings>>): JQuery;
42
+ }
43
+
44
+ /**
45
+ * @see {@link https://fomantic-ui.com/modules/slider.html#/settings}
46
+ */
47
+ interface SliderSettings {
48
+ // region Slider Settings
49
+
50
+ /**
51
+ * The lowest value the slider can be.
52
+ * @default 0
53
+ */
54
+ min: number;
55
+
56
+ /**
57
+ * The max value the slider can be.
58
+ * @default 20
59
+ */
60
+ max: number;
61
+
62
+ /**
63
+ * The slider step.
64
+ * Set to '0' to disable step.
65
+ * @default 1
66
+ */
67
+ step: number;
68
+
69
+ /**
70
+ * The value the slider will start at.
71
+ * @default 0
72
+ */
73
+ start: number;
74
+
75
+ /**
76
+ * The second value to set in case of a range slider.
77
+ * @default 20
78
+ */
79
+ end: number;
80
+
81
+ /**
82
+ * The type of label to display for a labeled slider.
83
+ * Can be 'number' or 'letter'.
84
+ * @default 'number'
85
+ */
86
+ labelType: 'number' | 'letter';
87
+
88
+ /**
89
+ * You can specify a function here which consumes the current label value as parameter and should return a custom label text according to the given value.
90
+ * @default false
91
+ */
92
+ interpretLabel: false | Function;
93
+
94
+ /**
95
+ * Show ticks on a labeled slider.
96
+ * @default false
97
+ */
98
+ showLabelTicks: boolean;
99
+
100
+ /**
101
+ * Define smoothness when the slider is moving.
102
+ * @default false
103
+ */
104
+ smooth: boolean;
105
+
106
+ /**
107
+ * Whether labels should auto adjust on window resize.
108
+ * @default true
109
+ */
110
+ autoAdjustLabels: boolean;
111
+
112
+ /**
113
+ * The distance between labels.
114
+ * @default 100
115
+ */
116
+ labelDistance: number;
117
+
118
+ /**
119
+ * Number of decimals to use with an unstepped slider.
120
+ * @default 2
121
+ */
122
+ decimalPlaces: number;
123
+
124
+ /**
125
+ * Page up/down multiplier.
126
+ * Define how many more times the steps to take on page up/down press.
127
+ * @default 2
128
+ */
129
+ pageMultiplier: number;
130
+
131
+ /**
132
+ * Prevents the lower thumb to crossover the thumb handle.
133
+ * @default true
134
+ */
135
+ preventCrossover: boolean;
136
+
137
+ // endregion
138
+
139
+ // region Callbacks
140
+
141
+ /**
142
+ * Is called when the slider value is changed.
143
+ */
144
+ onChange(this: JQuery, value: number, thumbVal: number, secondThumbVal: number): void;
145
+
146
+ /**
147
+ * Is called when the slider is moving.
148
+ */
149
+ onMove(this: JQuery, value: number, thumbVal: number, secondThumbVal: number): void;
150
+
151
+ // endregion
152
+
153
+ // region DOM Settings
154
+
155
+ /**
156
+ * Class names used to determine element state.
157
+ */
158
+ className: Slider.ClassNameSettings;
159
+
160
+ /**
161
+ * DOM metadata used by module.
162
+ */
163
+ metadata: Slider.MetadataSettings;
164
+
165
+ /**
166
+ * Keys used by module.
167
+ */
168
+ keys: Slider.KeySettings;
169
+
170
+ // endregion
171
+
172
+ // region Debug Settings
173
+
174
+ /**
175
+ * Name used in log statements
176
+ * @default 'Slider'
177
+ */
178
+ name: string;
179
+
180
+ /**
181
+ * Event namespace. Makes sure module teardown does not effect other events attached to an element.
182
+ * @default 'slider'
183
+ */
184
+ namespace: string;
185
+
186
+ /**
187
+ * Silences all console output including error messages, regardless of other debug settings.
188
+ * @default false
189
+ */
190
+ silent: boolean;
191
+
192
+ /**
193
+ * Debug output to console
194
+ * @default false
195
+ */
196
+ debug: boolean;
197
+
198
+ /**
199
+ * Show console.table output with performance metrics
200
+ * @default true
201
+ */
202
+ performance: boolean;
203
+
204
+ /**
205
+ * Debug output includes all internal behaviors
206
+ * @default false
207
+ */
208
+ verbose: boolean;
209
+
210
+ error: Slider.ErrorSettings;
211
+
212
+ // endregion
213
+ }
214
+
215
+ namespace Slider {
216
+ type ClassNameSettings = Partial<Pick<Settings.ClassNames, keyof Settings.ClassNames>>;
217
+ type MetadataSettings = Partial<Pick<Settings.Metadatas, keyof Settings.Metadatas>>;
218
+ type KeySettings = Partial<Pick<Settings.Keys, keyof Settings.Keys>>;
219
+ type ErrorSettings = Partial<Pick<Settings.Errors, keyof Settings.Errors>>;
220
+
221
+ namespace Settings {
222
+ interface ClassNames {
223
+ /**
224
+ * @default 'reversed'
225
+ */
226
+ reversed: string;
227
+
228
+ /**
229
+ * @default 'disabled'
230
+ */
231
+ disabled: string;
232
+
233
+ /**
234
+ * @default 'labeled'
235
+ */
236
+ labeled: string;
237
+
238
+ /**
239
+ * @default 'ticked'
240
+ */
241
+ ticked: string;
242
+
243
+ /**
244
+ * @default 'vertical'
245
+ */
246
+ vertical: string;
247
+
248
+ /**
249
+ * @default 'range'
250
+ */
251
+ range: string;
252
+
253
+ /**
254
+ * @default 'smooth'
255
+ */
256
+ smooth: string;
257
+ }
258
+
259
+ interface Metadatas {
260
+ /**
261
+ * @default 'thumbVal'
262
+ */
263
+ thumbVal: string;
264
+
265
+ /**
266
+ * @default 'secondThumbVal'
267
+ */
268
+ secondThumbVal: string;
269
+ }
270
+
271
+ interface Keys {
272
+ /**
273
+ * @default 33
274
+ */
275
+ pageUp: number;
276
+
277
+ /**
278
+ * @default 34
279
+ */
280
+ pageDown: number;
281
+
282
+ /**
283
+ * @default 37
284
+ */
285
+ leftArrow: number;
286
+
287
+ /**
288
+ * @default 38
289
+ */
290
+ upArrow: number;
291
+
292
+ /**
293
+ * @default 39
294
+ */
295
+ rightArrow: number;
296
+
297
+ /**
298
+ * @default 40
299
+ */
300
+ downArrow: number;
301
+ }
302
+
303
+ interface Errors {
304
+ /**
305
+ * @default 'The method you called is not defined.'
306
+ */
307
+ method: string;
308
+
309
+ /**
310
+ * @default 'This slider is not a range slider.'
311
+ */
312
+ notrange: string;
313
+ }
314
+ }
315
+ }
316
+ }
@@ -0,0 +1,215 @@
1
+ declare namespace FomanticUI {
2
+ interface Sticky {
3
+ settings: StickySettings;
4
+
5
+ (behavior: 'destroy'): JQuery;
6
+ <K extends keyof StickySettings>(behavior: 'setting', name: K, value?: undefined, ): Partial<Pick<StickySettings, keyof StickySettings>>;
7
+ <K extends keyof StickySettings>(behavior: 'setting', name: K, value: StickySettings[K]): JQuery;
8
+ (behavior: 'setting', value: Partial<Pick<StickySettings, keyof StickySettings>>): JQuery;
9
+ (settings?: Partial<Pick<StickySettings, keyof StickySettings>>): JQuery;
10
+ }
11
+
12
+ /**
13
+ * @see {@link https://fomantic-ui.com/modules/sticky.html#/settings}
14
+ */
15
+ interface StickySettings {
16
+ // region Sticky Settings
17
+
18
+ /**
19
+ * Whether element should be "pushed" by the viewport, attaching to the bottom of the screen when scrolling up.
20
+ * @default false
21
+ */
22
+ pushing: boolean;
23
+
24
+ /**
25
+ * Sets size of fixed content to match its width before fixing to screen dynamically.
26
+ * This is used because fixed may display block or 100% width content differently than it appears before sticking.
27
+ * @default true
28
+ */
29
+ setSize: boolean;
30
+
31
+ /**
32
+ * Sticky container height will only be set if the difference between heights of container and context is larger than this jitter value.
33
+ * @default 5
34
+ */
35
+ jitter: number;
36
+
37
+ /**
38
+ * Whether any change in 'context' DOM should automatically refresh cached sticky positions.
39
+ * @default false
40
+ */
41
+ observeChanges: boolean;
42
+
43
+ /**
44
+ * Context which sticky element should stick to.
45
+ * @default false
46
+ */
47
+ context: boolean | string;
48
+
49
+ /**
50
+ * Context which sticky should attach 'onscroll' events.
51
+ * @default window
52
+ */
53
+ scrollContext: Window | string;
54
+
55
+ /**
56
+ * Offset in pixels from the top of the screen when fixing element to viewport.
57
+ * @default 0
58
+ */
59
+ offset: number;
60
+
61
+ /**
62
+ * Offset in pixels from the bottom of the screen when fixing element to viewport.
63
+ * @default 0
64
+ */
65
+ bottomOffset: number;
66
+
67
+ // endregion
68
+
69
+ // region Callbacks
70
+
71
+ /**
72
+ * Callback when element is repositioned from layout change.
73
+ */
74
+ onReposition(this: JQuery): void;
75
+
76
+ /**
77
+ * Callback when 'requestAnimationFrame' fires from scroll handler.
78
+ */
79
+ onScroll(this: JQuery): void;
80
+
81
+ /**
82
+ * Callback when element is fixed to page.
83
+ */
84
+ onStick(this: JQuery): void;
85
+
86
+ /**
87
+ * Callback when element is unfixed from page.
88
+ */
89
+ onUnstick(this: JQuery): void;
90
+
91
+ /**
92
+ * Callback when element is bound to top of parent container.
93
+ */
94
+ onTop(this: JQuery): void;
95
+
96
+ /**
97
+ * Callback when element is bound to bottom of parent container.
98
+ */
99
+ onBottom(this: JQuery): void;
100
+
101
+ // endregion
102
+
103
+ // region DOM Settings
104
+
105
+ /**
106
+ * Class names used to determine element state.
107
+ */
108
+ className: Sticky.ClassNameSettings;
109
+
110
+ // endregion
111
+
112
+ // region Debug Settings
113
+
114
+ /**
115
+ * Name used in log statements
116
+ * @default 'Sticky'
117
+ */
118
+ name: string;
119
+
120
+ /**
121
+ * Event namespace. Makes sure module teardown does not effect other events attached to an element.
122
+ * @default 'sticky'
123
+ */
124
+ namespace: string;
125
+
126
+ /**
127
+ * Silences all console output including error messages, regardless of other debug settings.
128
+ * @default false
129
+ */
130
+ silent: boolean;
131
+
132
+ /**
133
+ * Debug output to console
134
+ * @default false
135
+ */
136
+ debug: boolean;
137
+
138
+ /**
139
+ * Show console.table output with performance metrics
140
+ * @default true
141
+ */
142
+ performance: boolean;
143
+
144
+ /**
145
+ * Debug output includes all internal behaviors
146
+ * @default false
147
+ */
148
+ verbose: boolean;
149
+
150
+ error: Sticky.ErrorSettings;
151
+
152
+ // endregion
153
+ }
154
+
155
+ namespace Sticky {
156
+ type ClassNameSettings = Partial<Pick<Settings.ClassNames, keyof Settings.ClassNames>>;
157
+ type ErrorSettings = Partial<Pick<Settings.Errors, keyof Settings.Errors>>;
158
+
159
+ namespace Settings {
160
+ interface ClassNames {
161
+ /**
162
+ * @default 'bound'
163
+ */
164
+ bound: string;
165
+
166
+ /**
167
+ * @default 'fixed'
168
+ */
169
+ fixed: string;
170
+
171
+ /**
172
+ * @default 'native'
173
+ */
174
+ supported: string;
175
+
176
+ /**
177
+ * @default 'top'
178
+ */
179
+ top: string;
180
+
181
+ /**
182
+ * @default 'bottom'
183
+ */
184
+ bottom: string;
185
+ }
186
+
187
+ interface Errors {
188
+ /**
189
+ * @default 'Sticky element must be inside a relative container'
190
+ */
191
+ container: string;
192
+
193
+ /**
194
+ * @default 'Element is hidden, you must call refresh after element becomes visible'
195
+ */
196
+ visible: string;
197
+
198
+ /**
199
+ * @default 'The method you called is not defined.'
200
+ */
201
+ method: string;
202
+
203
+ /**
204
+ * @default 'Context specified does not exist'
205
+ */
206
+ invalidContext: string;
207
+
208
+ /**
209
+ * @default 'Sticky element is larger than its container, cannot create sticky.'
210
+ */
211
+ elementSize: string;
212
+ }
213
+ }
214
+ }
215
+ }