fomantic-ui 2.9.3-beta.9 → 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,766 @@
1
+ declare namespace FomanticUI {
2
+ interface Calendar {
3
+ settings: CalendarSettings;
4
+
5
+ /**
6
+ * Refresh the calendar
7
+ */
8
+ (behavior: 'refresh'): JQuery;
9
+
10
+ /**
11
+ * Call the popup module (e.g. passing show will show the calendar popup)
12
+ */
13
+ (behavior: 'popup', arguments: any): JQuery;
14
+
15
+ /**
16
+ * Focus the calendar input
17
+ */
18
+ (behavior: 'focus'): JQuery;
19
+
20
+ /**
21
+ * Blur the calendar input
22
+ */
23
+ (behavior: 'blur'): JQuery;
24
+
25
+ /**
26
+ * Clear the selected date
27
+ */
28
+ (behavior: 'clear'): JQuery;
29
+
30
+ /**
31
+ * Get the selected date
32
+ */
33
+ (behavior: 'get date'): Date | string;
34
+
35
+ /**
36
+ * Set the selected date.
37
+ * Pass false to updateInput to disable updating the input.
38
+ * Pass false to fireChange to disable the onBeforeChange and onChange callbacks for this change
39
+ */
40
+ (behavior: 'set date', date: string, updateInput: boolean, fireChange: boolean): JQuery;
41
+
42
+ /**
43
+ * Get the current selection mode (year, month, day, hour, minute)
44
+ */
45
+ (behavior: 'get mode'): 'year' | 'month' | 'day' | 'hour' | 'minute';
46
+
47
+ /**
48
+ * Set the current selection mode (year, month, day, hour, minute)
49
+ */
50
+ (behavior: 'set mode', mode: 'year' | 'month' | 'day' | 'hour' | 'minute'): JQuery;
51
+
52
+ /**
53
+ * Get the start date for range selection
54
+ */
55
+ (behavior: 'get startDate'): Date | string;
56
+
57
+ /**
58
+ * Set the start date for range selection
59
+ */
60
+ (behavior: 'set startDate', date: Date | string): JQuery;
61
+
62
+ /**
63
+ * Get the end date for range selection
64
+ */
65
+ (behavior: 'get endDate'): Date | string;
66
+
67
+ /**
68
+ * Set the end date for range selection
69
+ */
70
+ (behavior: 'set endDate', date: Date | string): JQuery;
71
+
72
+ /**
73
+ * Get the currently focused date
74
+ */
75
+ (behavior: 'get focusDate'): Date | string;
76
+
77
+ /**
78
+ * Set the currently focused date
79
+ */
80
+ (behavior: 'set focusDate', date: Date | string): JQuery;
81
+
82
+ /**
83
+ * Set the minimal selectable date
84
+ */
85
+ (behavior: 'set minDate', date: Date | string): JQuery;
86
+
87
+ /**
88
+ * Set the maximal selectable date
89
+ */
90
+ (behavior: 'set maxDate', date: Date | string): JQuery;
91
+
92
+ (behavior: 'destroy'): JQuery;
93
+
94
+ <K extends keyof CalendarSettings>(behavior: 'setting', name: K, value?: undefined): Partial<Pick<CalendarSettings, keyof CalendarSettings>>;
95
+ <K extends keyof CalendarSettings>(behavior: 'setting', name: K, value: CalendarSettings[K]): JQuery;
96
+ (behavior: 'setting', value: Partial<Pick<CalendarSettings, keyof CalendarSettings>>): JQuery;
97
+ (settings?: Partial<Pick<CalendarSettings, keyof CalendarSettings>>): JQuery;
98
+ }
99
+
100
+ /**
101
+ * @see {@link https://fomantic-ui.com/modules/calendar.html#/settings}
102
+ */
103
+ interface CalendarSettings {
104
+ // region Toast Settings
105
+
106
+ /**
107
+ * Picker type, can be 'datetime', 'date', 'time', 'month', or 'year'.
108
+ *
109
+ * @default 'datetime'
110
+ */
111
+ type: 'datetime' | 'date' | 'time' | 'month' | 'year';
112
+
113
+ /**
114
+ * Day for first day column (0 = Sunday).
115
+ *
116
+ * @default 0
117
+ */
118
+ firstDayOfWeek: 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7;
119
+
120
+ /**
121
+ * Add row(s) to shorter months to keep day calendar height consistent (6 rows).
122
+ *
123
+ * @default 'true'
124
+ */
125
+ constantHeight: boolean;
126
+
127
+ /**
128
+ * Show a 'today/now' button at the bottom of the calendar.
129
+ *
130
+ * @default false
131
+ */
132
+ today: boolean;
133
+
134
+ /**
135
+ * Close the popup after selecting a date/time.
136
+ *
137
+ * @default false
138
+ */
139
+ closable: true;
140
+
141
+ /**
142
+ * Month before day when parsing/converting date from/to text.
143
+ *
144
+ * @default true
145
+ */
146
+ monthFirst: boolean;
147
+
148
+ /**
149
+ * Set input to readonly on touch devices.
150
+ *
151
+ * @default true
152
+ */
153
+ touchReadonly: boolean;
154
+
155
+ /**
156
+ * Create the calendar inline instead of inside a popup.
157
+ *
158
+ * @default false
159
+ */
160
+ inline: boolean;
161
+
162
+ /**
163
+ * Display the week number on the left.
164
+ *
165
+ * @default false
166
+ */
167
+ showWeekNumbers: boolean;
168
+
169
+ /**
170
+ * Disable some days of the week from selection (0= Sunday, 1=Monday, ...).
171
+ *
172
+ * @default []
173
+ */
174
+ disabledDaysOfWeek: number[];
175
+
176
+ /**
177
+ * An array of Date-Objects or Objects with given message to show in a popup when hovering over the appropriate date '{date: Date, message: string}'.
178
+ *
179
+ * @default []
180
+ */
181
+ disabledDates: object[];
182
+
183
+ /**
184
+ * An array of Date-Objects to be enabled for selection. All other dates are disabled.
185
+ *
186
+ * @default []
187
+ */
188
+ enabledDates: object[];
189
+
190
+ /**
191
+ * An array of Date-Objects or Objects with given message to show in a popup when hovering over the appropriate date
192
+ * and an individual class for the cell '{date: Date, message: string, class: string}'.
193
+ *
194
+ * @default []
195
+ */
196
+ eventDates: object[];
197
+
198
+ /**
199
+ * Default class to be added to each cell of an eventDate date element when no specific class is given to the eventDate element.
200
+ *
201
+ * @default 'blue'
202
+ */
203
+ eventClass: string;
204
+
205
+ /**
206
+ * Choose when to show the popup (defaults to 'focus' for input, 'click' for others).
207
+ *
208
+ * @default null
209
+ */
210
+ on: null | 'focus' | 'click';
211
+
212
+ /**
213
+ * Date to display initially when no date is selected (null = now).
214
+ *
215
+ * @default null
216
+ */
217
+ initialDate: null | Date;
218
+
219
+ /**
220
+ * Display mode to start in, can be 'year', 'month', 'day', 'hour', 'minute' (false = 'day').
221
+ *
222
+ * @default false
223
+ */
224
+ startMode: false | 'year' | 'month' | 'day' | 'hour' | 'minute';
225
+
226
+ /**
227
+ * Minimum date/time that can be selected, dates/times before are disabled.
228
+ *
229
+ * @default null
230
+ */
231
+ minDate: null | Date;
232
+
233
+ /**
234
+ * Maximum date/time that can be selected, dates/times after are disabled.
235
+ *
236
+ * @default null
237
+ */
238
+ maxDate: null | Date;
239
+
240
+ /**
241
+ * Show am/pm in time mode.
242
+ *
243
+ * @default true
244
+ */
245
+ ampm: boolean;
246
+
247
+ /**
248
+ * Disable year selection mode.
249
+ *
250
+ * @default false
251
+ */
252
+ disableYear: boolean;
253
+
254
+ /**
255
+ * Disable month selection mode.
256
+ *
257
+ * @default false
258
+ */
259
+ disableMonth: boolean;
260
+
261
+ /**
262
+ * Disable minute selection mode.
263
+ *
264
+ * @default false
265
+ */
266
+ disableMinute: boolean;
267
+
268
+ /**
269
+ * Format the input text upon input blur and module creation.
270
+ *
271
+ * @default true
272
+ */
273
+ formatInput: boolean;
274
+
275
+ /**
276
+ * jQuery object or selector for another calendar that represents the start date of a date range.
277
+ *
278
+ * @default null
279
+ */
280
+ startCalendar: null | JQuery | string;
281
+
282
+ /**
283
+ * jQuery object or selector for another calendar that represents the end date of a date range.
284
+ *
285
+ * @default null
286
+ */
287
+ endCalendar: null | JQuery | string;
288
+
289
+ /**
290
+ * Show multiple months when in 'day' mode.
291
+ *
292
+ * @default 1
293
+ */
294
+ multiMonth: number;
295
+
296
+ /**
297
+ * Minimum time gap, can only be 5, 10, 15, 20, 30.
298
+ *
299
+ * @default 5
300
+ */
301
+ minTimeGap: 5 | 10 | 15 | 20 | 30;
302
+
303
+ /**
304
+ * Starting short year until 99 where it will be assumed to belong to the last century.
305
+ *
306
+ * @default 60
307
+ */
308
+ centuryBreak: number;
309
+
310
+ /**
311
+ * Century to be added to 2-digit years (00 to 'centuryBreak' -1).
312
+ *
313
+ * @default 2000
314
+ */
315
+ currentCentury: number;
316
+
317
+ /**
318
+ * Make adjacent days from previous and next month also selectable.
319
+ *
320
+ * @default false
321
+ */
322
+ selectAdjacentDays: 5 | 10 | 15 | 20 | 30;
323
+
324
+ popupOptions: Calendar.PopupSettings;
325
+
326
+ text: Calendar.TextSettings;
327
+
328
+ // endregion
329
+
330
+ // region Callbacks
331
+
332
+ /**
333
+ * Is called before a calendar date changes. 'return false;' will cancel the change.
334
+ * @since 2.8.0
335
+ */
336
+ onBeforeChange(this: JQuery): void;
337
+
338
+ /**
339
+ * Is called after a calendar date has changed.
340
+ */
341
+ onChange(this: JQuery): void;
342
+
343
+ /**
344
+ * Is called before a calendar is shown. 'return false;' will prevent the calendar to be shown.
345
+ */
346
+ onShow(this: JQuery): void;
347
+
348
+ /**
349
+ * Is called when the calendar is shown.
350
+ */
351
+ onVisible(this: JQuery): void;
352
+
353
+ /**
354
+ * Is called before a calendar is hidden. 'return false;' will prevent the calendar to be hidden.
355
+ */
356
+ onHide(this: JQuery): void;
357
+
358
+ /**
359
+ * Is called when the calendar is hidden.
360
+ */
361
+ onHidden(this: JQuery): void;
362
+
363
+ /**
364
+ * Is called when a cell of the calendar is selected providing its value and current mode.
365
+ * 'return false;' will prevent the selection.
366
+ */
367
+ onSelect(this: JQuery, date: Date, mode: string): void;
368
+
369
+ // endregion
370
+
371
+ // region DOM Settings
372
+
373
+ /**
374
+ * DOM Selectors used internally.
375
+ * If the calendars parent node matches the append selector, the calendar is appended to the input field instead of prepended.
376
+ */
377
+ selector: Calendar.SelectorSettings;
378
+
379
+ /**
380
+ * Class names used to attach style to state.
381
+ */
382
+ className: Calendar.ClassNameSettings;
383
+
384
+ /**
385
+ * Icon names used internally.
386
+ */
387
+ regExp: Calendar.RegExpSettings;
388
+
389
+ metadata: Calendar.MetadataSettings;
390
+
391
+ // endregion
392
+
393
+ // region Debug Settings
394
+
395
+ /**
396
+ * Name used in log statements
397
+ * @default 'Calendar'
398
+ */
399
+ name: string;
400
+
401
+ /**
402
+ * Event namespace. Makes sure module teardown does not effect other events attached to an element.
403
+ * @default 'calendar'
404
+ */
405
+ namespace: string;
406
+
407
+ /**
408
+ * Silences all console output including error messages, regardless of other debug settings.
409
+ * @default false
410
+ */
411
+ silent: boolean;
412
+
413
+ /**
414
+ * Debug output to console
415
+ * @default false
416
+ */
417
+ debug: boolean;
418
+
419
+ /**
420
+ * Show console.table output with performance metrics
421
+ * @default true
422
+ */
423
+ performance: boolean;
424
+
425
+ /**
426
+ * Debug output includes all internal behaviors
427
+ * @default false
428
+ */
429
+ verbose: boolean;
430
+
431
+ error: Calendar.ErrorSettings;
432
+
433
+ // endregion
434
+ }
435
+
436
+ namespace Calendar {
437
+ type PopupSettings = Partial<Pick<Settings.Popup, keyof Settings.Popup>>;
438
+ type TextSettings = Partial<Pick<Settings.Texts, keyof Settings.Texts>>;
439
+ type SelectorSettings = Partial<Pick<Settings.Selectors, keyof Settings.Selectors>>;
440
+ type ClassNameSettings = Partial<Pick<Settings.ClassNames, keyof Settings.ClassNames>>;
441
+ type RegExpSettings = Partial<Pick<Settings.RegExps, keyof Settings.RegExps>>;
442
+ type MetadataSettings = Partial<Pick<Settings.Metadatas, keyof Settings.Metadatas>>;
443
+ type ErrorSettings = Partial<Pick<Settings.Errors, keyof Settings.Errors>>;
444
+
445
+ namespace Settings {
446
+ interface Popup {
447
+ /**
448
+ * @default 'bottom left'
449
+ */
450
+ position: string;
451
+
452
+ /**
453
+ * @default 'bottom left'
454
+ */
455
+ lastResort: string;
456
+
457
+ /**
458
+ * @default 'opposite'
459
+ */
460
+ prefer: string;
461
+
462
+ /**
463
+ * @default false
464
+ */
465
+ hideOnScroll: boolean;
466
+ }
467
+
468
+ interface Texts {
469
+ /**
470
+ * @default ['S', 'M', 'T', 'W', 'T', 'F', 'S']
471
+ */
472
+ days: string[];
473
+
474
+ /**
475
+ * @default ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']
476
+ */
477
+ months: string[];
478
+
479
+ /**
480
+ * @default ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
481
+ */
482
+ monthsShort: string[];
483
+
484
+ /**
485
+ * @default 'Today'
486
+ */
487
+ today: string;
488
+
489
+ /**
490
+ * @default 'Now'
491
+ */
492
+ now: string;
493
+
494
+ /**
495
+ * @default 'AM'
496
+ */
497
+ am: string;
498
+
499
+ /**
500
+ * @default 'PM'
501
+ */
502
+ pm: string;
503
+
504
+ /**
505
+ * @default 'Week'
506
+ */
507
+ weekNo: string;
508
+ }
509
+
510
+ interface Selectors {
511
+ /**
512
+ * @default '.ui.popup'
513
+ */
514
+ popup: string;
515
+
516
+ /**
517
+ * @default 'input'
518
+ */
519
+ input: string;
520
+
521
+ /**
522
+ * @default 'input'
523
+ */
524
+ activator: string;
525
+
526
+ /**
527
+ * @default '.inline.field,.inline.fields'
528
+ */
529
+ append: string;
530
+ }
531
+
532
+ interface ClassNames {
533
+ /**
534
+ * @default 'calendar'
535
+ */
536
+ calendar: string;
537
+
538
+ /**
539
+ * @default 'active'
540
+ */
541
+ active: string;
542
+
543
+ /**
544
+ * @default 'ui popup'
545
+ */
546
+ popup: string;
547
+
548
+ /**
549
+ * @default 'ui equal width grid'
550
+ */
551
+ grid: string;
552
+
553
+ /**
554
+ * @default 'column'
555
+ */
556
+ column: string;
557
+
558
+ /**
559
+ * @default 'ui celled center aligned unstackable table'
560
+ */
561
+ table: string;
562
+
563
+ /**
564
+ * @default 'inverted'
565
+ */
566
+ inverted: string;
567
+
568
+ /**
569
+ * @default 'prev link'
570
+ */
571
+ prev: string;
572
+
573
+ /**
574
+ * @default 'next link'
575
+ */
576
+ next: string;
577
+
578
+ /**
579
+ * @default 'chevron left icon'
580
+ */
581
+ prevIcon: string;
582
+
583
+ /**
584
+ * @default 'chevron right icon'
585
+ */
586
+ nextIcon: string;
587
+
588
+ /**
589
+ * @default 'link'
590
+ */
591
+ link: string;
592
+
593
+ /**
594
+ * @default 'link'
595
+ */
596
+ cell: string;
597
+
598
+ /**
599
+ * @default 'disabled'
600
+ */
601
+ disabledCell: string;
602
+
603
+ /**
604
+ * @default 'disabled'
605
+ */
606
+ weekCell: string;
607
+
608
+ /**
609
+ * @default 'adjacent'
610
+ */
611
+ adjacentCell: string;
612
+
613
+ /**
614
+ * @default 'active'
615
+ */
616
+ activeCell: string;
617
+
618
+ /**
619
+ * @default 'range'
620
+ */
621
+ rangeCell: string;
622
+
623
+ /**
624
+ * @default 'focus'
625
+ */
626
+ focusCell: string;
627
+
628
+ /**
629
+ * @default 'today'
630
+ */
631
+ todayCell: string;
632
+
633
+ /**
634
+ * @default 'today link'
635
+ */
636
+ today: string;
637
+
638
+ /**
639
+ * @default 'disabled'
640
+ */
641
+ disabled: string;
642
+ }
643
+
644
+ interface RegExps {
645
+ /**
646
+ * @default /[^A-Za-z\u00C0-\u024F]+/g
647
+ */
648
+ dateWords: RegExp;
649
+
650
+ /**
651
+ * @default /[^\d:]+/g
652
+ */
653
+ dateNumbers: RegExp;
654
+
655
+ /**
656
+ * @default /d{1,4}|D{1,2}|M{1,4}|YY(?:YY)?|([Hhmsw])\1?|[ASYa]|"[^"]*"|'[^']*'/g
657
+ */
658
+ token: RegExp;
659
+ }
660
+
661
+ interface Metadatas {
662
+ /**
663
+ * @default 'date'
664
+ */
665
+ date: string;
666
+
667
+ /**
668
+ * @default 'focusDate'
669
+ */
670
+ focusDate: string;
671
+
672
+ /**
673
+ * @default 'startDate'
674
+ */
675
+ startDate: string;
676
+
677
+ /**
678
+ * @default 'endDate'
679
+ */
680
+ endDate: string;
681
+
682
+ /**
683
+ * @default 'minDate'
684
+ */
685
+ minDate: string;
686
+
687
+ /**
688
+ * @default 'maxDate'
689
+ */
690
+ maxDate: string;
691
+
692
+ /**
693
+ * @default 'mode'
694
+ */
695
+ mode: string;
696
+
697
+ /**
698
+ * @default 'type'
699
+ */
700
+ type: string;
701
+
702
+ /**
703
+ * @default 'monthOffset'
704
+ */
705
+ monthOffset: string;
706
+
707
+ /**
708
+ * @default 'message'
709
+ */
710
+ message: string;
711
+
712
+ /**
713
+ * @default 'class'
714
+ */
715
+ class: string;
716
+
717
+ /**
718
+ * @default 'inverted'
719
+ */
720
+ inverted: string;
721
+
722
+ /**
723
+ * @default 'variation'
724
+ */
725
+ variation: string;
726
+
727
+ /**
728
+ * @default 'position'
729
+ */
730
+ position: string;
731
+
732
+ /**
733
+ * @default 'month'
734
+ */
735
+ month: string;
736
+
737
+ /**
738
+ * @default 'year'
739
+ */
740
+ year: string;
741
+
742
+ /**
743
+ * @default 'hours'
744
+ */
745
+ hours: string;
746
+
747
+ /**
748
+ * @default 'days'
749
+ */
750
+ days: string;
751
+ }
752
+
753
+ interface Errors {
754
+ /**
755
+ * @default 'UI Popup, a required component is not included in this page.'
756
+ */
757
+ popup: string;
758
+
759
+ /**
760
+ * @default 'The method you called is not defined.'
761
+ */
762
+ method: string;
763
+ }
764
+ }
765
+ }
766
+ }