bs-datepicker.actions.js 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223
  1. /**
  2. * @fileoverview added by tsickle
  3. * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
  4. */
  5. import { Injectable } from '@angular/core';
  6. export class BsDatepickerActions {
  7. /**
  8. * @return {?}
  9. */
  10. calculate() {
  11. return { type: BsDatepickerActions.CALCULATE };
  12. }
  13. /**
  14. * @return {?}
  15. */
  16. format() {
  17. return { type: BsDatepickerActions.FORMAT };
  18. }
  19. /**
  20. * @return {?}
  21. */
  22. flag() {
  23. return { type: BsDatepickerActions.FLAG };
  24. }
  25. /**
  26. * @param {?} date
  27. * @return {?}
  28. */
  29. select(date) {
  30. return {
  31. type: BsDatepickerActions.SELECT,
  32. payload: date
  33. };
  34. }
  35. /**
  36. * @param {?} event
  37. * @return {?}
  38. */
  39. changeViewMode(event) {
  40. return {
  41. type: BsDatepickerActions.CHANGE_VIEWMODE,
  42. payload: event
  43. };
  44. }
  45. /**
  46. * @param {?} event
  47. * @return {?}
  48. */
  49. navigateTo(event) {
  50. return {
  51. type: BsDatepickerActions.NAVIGATE_TO,
  52. payload: event
  53. };
  54. }
  55. /**
  56. * @param {?} step
  57. * @return {?}
  58. */
  59. navigateStep(step) {
  60. return {
  61. type: BsDatepickerActions.NAVIGATE_OFFSET,
  62. payload: step
  63. };
  64. }
  65. /**
  66. * @param {?} options
  67. * @return {?}
  68. */
  69. setOptions(options) {
  70. return {
  71. type: BsDatepickerActions.SET_OPTIONS,
  72. payload: options
  73. };
  74. }
  75. // date range picker
  76. /**
  77. * @param {?} value
  78. * @return {?}
  79. */
  80. selectRange(value) {
  81. return {
  82. type: BsDatepickerActions.SELECT_RANGE,
  83. payload: value
  84. };
  85. }
  86. /**
  87. * @param {?} event
  88. * @return {?}
  89. */
  90. hoverDay(event) {
  91. return {
  92. type: BsDatepickerActions.HOVER,
  93. payload: event.isHovered ? event.cell.date : null
  94. };
  95. }
  96. /**
  97. * @param {?} date
  98. * @return {?}
  99. */
  100. minDate(date) {
  101. return {
  102. type: BsDatepickerActions.SET_MIN_DATE,
  103. payload: date
  104. };
  105. }
  106. /**
  107. * @param {?} date
  108. * @return {?}
  109. */
  110. maxDate(date) {
  111. return {
  112. type: BsDatepickerActions.SET_MAX_DATE,
  113. payload: date
  114. };
  115. }
  116. /**
  117. * @param {?} days
  118. * @return {?}
  119. */
  120. daysDisabled(days) {
  121. return {
  122. type: BsDatepickerActions.SET_DAYSDISABLED,
  123. payload: days
  124. };
  125. }
  126. /**
  127. * @param {?} dates
  128. * @return {?}
  129. */
  130. datesDisabled(dates) {
  131. return {
  132. type: BsDatepickerActions.SET_DATESDISABLED,
  133. payload: dates
  134. };
  135. }
  136. /**
  137. * @param {?} value
  138. * @return {?}
  139. */
  140. isDisabled(value) {
  141. return {
  142. type: BsDatepickerActions.SET_IS_DISABLED,
  143. payload: value
  144. };
  145. }
  146. /**
  147. * @param {?} value
  148. * @return {?}
  149. */
  150. setDateCustomClasses(value) {
  151. return {
  152. type: BsDatepickerActions.SET_DATE_CUSTOM_CLASSES,
  153. payload: value
  154. };
  155. }
  156. /**
  157. * @param {?} locale
  158. * @return {?}
  159. */
  160. setLocale(locale) {
  161. return {
  162. type: BsDatepickerActions.SET_LOCALE,
  163. payload: locale
  164. };
  165. }
  166. }
  167. BsDatepickerActions.CALCULATE = '[datepicker] calculate dates matrix';
  168. BsDatepickerActions.FORMAT = '[datepicker] format datepicker values';
  169. BsDatepickerActions.FLAG = '[datepicker] set flags';
  170. BsDatepickerActions.SELECT = '[datepicker] select date';
  171. BsDatepickerActions.NAVIGATE_OFFSET = '[datepicker] shift view date';
  172. BsDatepickerActions.NAVIGATE_TO = '[datepicker] change view date';
  173. BsDatepickerActions.SET_OPTIONS = '[datepicker] update render options';
  174. BsDatepickerActions.HOVER = '[datepicker] hover date';
  175. BsDatepickerActions.CHANGE_VIEWMODE = '[datepicker] switch view mode';
  176. BsDatepickerActions.SET_MIN_DATE = '[datepicker] set min date';
  177. BsDatepickerActions.SET_MAX_DATE = '[datepicker] set max date';
  178. BsDatepickerActions.SET_DAYSDISABLED = '[datepicker] set days disabled';
  179. BsDatepickerActions.SET_DATESDISABLED = '[datepicker] set dates disabled';
  180. BsDatepickerActions.SET_IS_DISABLED = '[datepicker] set is disabled';
  181. BsDatepickerActions.SET_DATE_CUSTOM_CLASSES = '[datepicker] set date custom classes';
  182. BsDatepickerActions.SET_LOCALE = '[datepicker] set datepicker locale';
  183. BsDatepickerActions.SELECT_RANGE = '[daterangepicker] select dates range';
  184. BsDatepickerActions.decorators = [
  185. { type: Injectable }
  186. ];
  187. if (false) {
  188. /** @type {?} */
  189. BsDatepickerActions.CALCULATE;
  190. /** @type {?} */
  191. BsDatepickerActions.FORMAT;
  192. /** @type {?} */
  193. BsDatepickerActions.FLAG;
  194. /** @type {?} */
  195. BsDatepickerActions.SELECT;
  196. /** @type {?} */
  197. BsDatepickerActions.NAVIGATE_OFFSET;
  198. /** @type {?} */
  199. BsDatepickerActions.NAVIGATE_TO;
  200. /** @type {?} */
  201. BsDatepickerActions.SET_OPTIONS;
  202. /** @type {?} */
  203. BsDatepickerActions.HOVER;
  204. /** @type {?} */
  205. BsDatepickerActions.CHANGE_VIEWMODE;
  206. /** @type {?} */
  207. BsDatepickerActions.SET_MIN_DATE;
  208. /** @type {?} */
  209. BsDatepickerActions.SET_MAX_DATE;
  210. /** @type {?} */
  211. BsDatepickerActions.SET_DAYSDISABLED;
  212. /** @type {?} */
  213. BsDatepickerActions.SET_DATESDISABLED;
  214. /** @type {?} */
  215. BsDatepickerActions.SET_IS_DISABLED;
  216. /** @type {?} */
  217. BsDatepickerActions.SET_DATE_CUSTOM_CLASSES;
  218. /** @type {?} */
  219. BsDatepickerActions.SET_LOCALE;
  220. /** @type {?} */
  221. BsDatepickerActions.SELECT_RANGE;
  222. }
  223. //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnMtZGF0ZXBpY2tlci5hY3Rpb25zLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWJvb3RzdHJhcC9kYXRlcGlja2VyLyIsInNvdXJjZXMiOlsicmVkdWNlci9icy1kYXRlcGlja2VyLmFjdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFZM0MsTUFBTSxPQUFPLG1CQUFtQjs7OztJQXNCOUIsU0FBUztRQUNQLE9BQU8sRUFBRSxJQUFJLEVBQUUsbUJBQW1CLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDakQsQ0FBQzs7OztJQUVELE1BQU07UUFDSixPQUFPLEVBQUUsSUFBSSxFQUFFLG1CQUFtQixDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQzlDLENBQUM7Ozs7SUFFRCxJQUFJO1FBQ0YsT0FBTyxFQUFFLElBQUksRUFBRSxtQkFBbUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM1QyxDQUFDOzs7OztJQUVELE1BQU0sQ0FBQyxJQUFVO1FBQ2YsT0FBTztZQUNMLElBQUksRUFBRSxtQkFBbUIsQ0FBQyxNQUFNO1lBQ2hDLE9BQU8sRUFBRSxJQUFJO1NBQ2QsQ0FBQztJQUNKLENBQUM7Ozs7O0lBRUQsY0FBYyxDQUFDLEtBQTJCO1FBQ3hDLE9BQU87WUFDTCxJQUFJLEVBQUUsbUJBQW1CLENBQUMsZUFBZTtZQUN6QyxPQUFPLEVBQUUsS0FBSztTQUNmLENBQUM7SUFDSixDQUFDOzs7OztJQUVELFVBQVUsQ0FBQyxLQUE0QjtRQUNyQyxPQUFPO1lBQ0wsSUFBSSxFQUFFLG1CQUFtQixDQUFDLFdBQVc7WUFDckMsT0FBTyxFQUFFLEtBQUs7U0FDZixDQUFDO0lBQ0osQ0FBQzs7Ozs7SUFFRCxZQUFZLENBQUMsSUFBYztRQUN6QixPQUFPO1lBQ0wsSUFBSSxFQUFFLG1CQUFtQixDQUFDLGVBQWU7WUFDekMsT0FBTyxFQUFFLElBQUk7U0FDZCxDQUFDO0lBQ0osQ0FBQzs7Ozs7SUFF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RSxpQ0FBMkQ7O0lBQzNELGlDQUEyRDs7SUFDM0QscUNBQW9FOztJQUNwRSxzQ0FBc0U7O0lBQ3RFLG9DQUFpRTs7SUFDakUsNENBQWlGOztJQUVqRiwrQkFBa0U7O0lBRWxFLGlDQUFzRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRpbWVVbml0IH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9jaHJvbm9zJztcbmltcG9ydCB7IEFjdGlvbiB9IGZyb20gJ25neC1ib290c3RyYXAvbWluaS1uZ3J4JztcbmltcG9ydCB7XG4gIEJzRGF0ZXBpY2tlclZpZXdNb2RlLFxuICBCc1ZpZXdOYXZpZ2F0aW9uRXZlbnQsXG4gIENlbGxIb3ZlckV2ZW50LFxuICBEYXRlcGlja2VyUmVuZGVyT3B0aW9ucyxcbiAgRGF0ZXBpY2tlckRhdGVDdXN0b21DbGFzc2VzXG59IGZyb20gJy4uL21vZGVscyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBCc0RhdGVwaWNrZXJBY3Rpb25zIHtcbiAgc3RhdGljIHJlYWRvbmx5IENBTENVTEFURSA9ICdbZGF0ZXBpY2tlcl0gY2FsY3VsYXRlIGRhdGVzIG1hdHJpeCc7XG4gIHN0YXRpYyByZWFkb25seSBGT1JNQVQgPSAnW2RhdGVwaWNrZXJdIGZvcm1hdCBkYXRlcGlja2VyIHZhbHVlcyc7XG4gIHN0YXRpYyByZWFkb25seSBGTEFHID0gJ1tkYXRlcGlja2VyXSBzZXQgZmxhZ3MnO1xuICBzdGF0aWMgcmVhZG9ubHkgU0VMRUNUID0gJ1tkYXRlcGlja2VyXSBzZWxlY3QgZGF0ZSc7XG4gIHN0YXRpYyByZWFkb25seSBOQVZJR0FURV9PRkZTRVQgPSAnW2RhdGVwaWNrZXJdIHNoaWZ0IHZpZXcgZGF0ZSc7XG4gIHN0YXRpYyByZWFkb25seSBOQVZJR0FURV9UTyA9ICdbZGF0ZXBpY2tlcl0gY2hhbmdlIHZpZXcgZGF0ZSc7XG4gIHN0YXRpYyByZWFkb25seSBTRVRfT1BUSU9OUyA9ICdbZGF0ZXBpY2tlcl0gdXBkYXRlIHJlbmRlciBvcHRpb25zJztcbiAgc3RhdGljIHJlYWRvbmx5IEhPVkVSID0gJ1tkYXRlcGlja2VyXSBob3ZlciBkYXRlJztcbiAgc3RhdGljIHJlYWRvbmx5IENIQU5HRV9WSUVXTU9ERSA9ICdbZGF0ZXBpY2tlcl0gc3dpdGNoIHZpZXcgbW9kZSc7XG5cbiAgc3RhdGljIHJlYWRvbmx5IFNFVF9NSU5fREFURSA9ICdbZGF0ZXBpY2tlcl0gc2V0IG1pbiBkYXRlJztcbiAgc3RhdGljIHJlYWRvbmx5IFNFVF9NQVhfREFURSA9ICdbZGF0ZXBpY2tlcl0gc2V0IG1heCBkYXRlJztcbiAgc3RhdGljIHJlYWRvbmx5IFNFVF9EQVlTRElTQUJMRUQgPSAnW2RhdGVwaWNrZXJdIHNldCBkYXlzIGRpc2FibGVkJztcbiAgc3RhdGljIHJlYWRvbmx5IFNFVF9EQVRFU0RJU0FCTEVEID0gJ1tkYXRlcGlja2VyXSBzZXQgZGF0ZXMgZGlzYWJsZWQnO1xuICBzdGF0aWMgcmVhZG9ubHkgU0VUX0lTX0RJU0FCTEVEID0gJ1tkYXRlcGlja2VyXSBzZXQgaXMgZGlzYWJsZWQnO1xuICBzdGF0aWMgcmVhZG9ubHkgU0VUX0RBVEVfQ1VTVE9NX0NMQVNTRVMgPSAnW2RhdGVwaWNrZXJdIHNldCBkYXRlIGN1c3RvbSBjbGFzc2VzJztcblxuICBzdGF0aWMgcmVhZG9ubHkgU0VUX0xPQ0FMRSA9ICdbZGF0ZXBpY2tlcl0gc2V0IGRhdGVwaWNrZXIgbG9jYWxlJztcblxuICBzdGF0aWMgcmVhZG9ubHkgU0VMRUNUX1JBTkdFID0gJ1tkYXRlcmFuZ2VwaWNrZXJdIHNlbGVjdCBkYXRlcyByYW5nZSc7XG5cbiAgY2FsY3VsYXRlKCk6IEFjdGlvbiB7XG4gICAgcmV0dXJuIHsgdHlwZTogQnNEYXRlcGlja2VyQWN0aW9ucy5DQUxDVUxBVEUgfTtcbiAgfVxuXG4gIGZvcm1hdCgpOiBBY3Rpb24ge1xuICAgIHJldHVybiB7IHR5cGU6IEJzRGF0ZXBpY2tlckFjdGlvbnMuRk9STUFUIH07XG4gIH1cblxuICBmbGFnKCk6IEFjdGlvbiB7XG4gICAgcmV0dXJuIHsgdHlwZTogQnNEYXRlcGlja2VyQWN0aW9ucy5GTEFHIH07XG4gIH1cblxuICBzZWxlY3QoZGF0ZTogRGF0ZSk6IEFjdGlvbiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHR5cGU6IEJzRGF0ZXBpY2tlckFjdGlvbnMuU0VMRUNULFxuICAgICAgcGF5bG9hZDogZGF0ZVxuICAgIH07XG4gIH1cblxuICBjaGFuZ2VWaWV3TW9kZShldmVudDogQnNEYXRlcGlja2VyVmlld01vZGUpOiBBY3Rpb24ge1xuICAgIHJldHVybiB7XG4gICAgICB0eXBlOiBCc0RhdGVwaWNrZXJBY3Rpb25zLkNIQU5HRV9WSUVXTU9ERSxcbiAgICAgIHBheWxvYWQ6IGV2ZW50XG4gICAgfTtcbiAgfVxuXG4gIG5hdmlnYXRlVG8oZXZlbnQ6IEJzVmlld05hdmlnYXRpb25FdmVudCk6IEFjdGlvbiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHR5cGU6IEJzRGF0ZXBpY2tlckFjdGlvbnMuTkFWSUdBVEVfVE8sXG4gICAgICBwYXlsb2FkOiBldmVudFxuICAgIH07XG4gIH1cblxuICBuYXZpZ2F0ZVN0ZXAoc3RlcDogVGltZVVuaXQpOiBBY3Rpb24ge1xuICAgIHJldHVybiB7XG4gICAgICB0eXBlOiBCc0RhdGVwaWNrZXJBY3Rpb25zLk5BVklHQVRFX09GRlNFVCxcbiAgICAgIHBheWxvYWQ6IHN0ZXBcbiAgICB9O1xuICB9XG5cbiAgc2V0T3B0aW9ucyhvcHRpb25zOiBEYXRlcGlja2VyUmVuZGVyT3B0aW9ucyk6IEFjdGlvbiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHR5cGU6IEJzRGF0ZXBpY2tlckFjdGlvbnMuU0VUX09QVElPTlMsXG4gICAgICBwYXlsb2FkOiBvcHRpb25zXG4gICAgfTtcbiAgfVxuXG4gIC8vIGRhdGUgcmFuZ2UgcGlja2VyXG4gIHNlbGVjdFJhbmdlKHZhbHVlOiBEYXRlW10pOiBBY3Rpb24ge1xuICAgIHJldHVybiB7XG4gICAgICB0eXBlOiBCc0RhdGVwaWNrZXJBY3Rpb25zLlNFTEVDVF9SQU5HRSxcbiAgICAgIHBheWxvYWQ6IHZhbHVlXG4gICAgfTtcbiAgfVxuXG4gIGhvdmVyRGF5KGV2ZW50OiBDZWxsSG92ZXJFdmVudCk6IEFjdGlvbiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHR5cGU6IEJzRGF0ZXBpY2tlckFjdGlvbnMuSE9WRVIsXG4gICAgICBwYXlsb2FkOiBldmVudC5pc0hvdmVyZWQgPyBldmVudC5jZWxsLmRhdGUgOiBudWxsXG4gICAgfTtcbiAgfVxuXG4gIG1pbkRhdGUoZGF0ZTogRGF0ZSk6IEFjdGlvbiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHR5cGU6IEJzRGF0ZXBpY2tlckFjdGlvbnMuU0VUX01JTl9EQVRFLFxuICAgICAgcGF5bG9hZDogZGF0ZVxuICAgIH07XG4gIH1cblxuICBtYXhEYXRlKGRhdGU6IERhdGUpOiBBY3Rpb24ge1xuICAgIHJldHVybiB7XG4gICAgICB0eXBlOiBCc0RhdGVwaWNrZXJBY3Rpb25zLlNFVF9NQVhfREFURSxcbiAgICAgIHBheWxvYWQ6IGRhdGVcbiAgICB9O1xuICB9XG5cbiAgZGF5c0Rpc2FibGVkKGRheXM6IG51bWJlcltdKTogQWN0aW9uIHtcbiAgICByZXR1cm4ge1xuICAgICAgdHlwZTogQnNEYXRlcGlja2VyQWN0aW9ucy5TRVRfREFZU0RJU0FCTEVELFxuICAgICAgcGF5bG9hZDogZGF5c1xuICAgIH07XG4gIH1cblxuICBkYXRlc0Rpc2FibGVkKGRhdGVzOiBEYXRlW10pOiBBY3Rpb24ge1xuICAgIHJldHVybiB7XG4gICAgICB0eXBlOiBCc0RhdGVwaWNrZXJBY3Rpb25zLlNFVF9EQVRFU0RJU0FCTEVELFxuICAgICAgcGF5bG9hZDogZGF0ZXNcbiAgICB9O1xuICB9XG5cbiAgaXNEaXNhYmxlZCh2YWx1ZTogYm9vbGVhbik6IEFjdGlvbiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHR5cGU6IEJzRGF0ZXBpY2tlckFjdGlvbnMuU0VUX0lTX0RJU0FCTEVELFxuICAgICAgcGF5bG9hZDogdmFsdWVcbiAgICB9O1xuICB9XG5cbiAgc2V0RGF0ZUN1c3RvbUNsYXNzZXModmFsdWU6IERhdGVwaWNrZXJEYXRlQ3VzdG9tQ2xhc3Nlc1tdKTogQWN0aW9uIHtcbiAgICByZXR1cm4ge1xuICAgICAgdHlwZTogQnNEYXRlcGlja2VyQWN0aW9ucy5TRVRfREFURV9DVVNUT01fQ0xBU1NFUyxcbiAgICAgIHBheWxvYWQ6IHZhbHVlXG4gICAgfTtcbiAgfVxuXG4gIHNldExvY2FsZShsb2NhbGU6IHN0cmluZyk6IEFjdGlvbiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHR5cGU6IEJzRGF0ZXBpY2tlckFjdGlvbnMuU0VUX0xPQ0FMRSxcbiAgICAgIHBheWxvYWQ6IGxvY2FsZVxuICAgIH07XG4gIH1cbn1cbiJdfQ==