PageSourceSearch

https://realservicesolutions.com/assets/js/forms-pickers.js

js realservicesolutions.com collected 2026-10-02 01:41:09 UTC 10,184 bytes, 412 lines download raw bytes

1/**
2 * Form Picker
3 */
4
5'use strict';
6
7(function () {
8  // Flat Picker
9  // --------------------------------------------------------------------
10  const flatpickrDate = document.querySelector('#flatpickr-date'),
11    flatpickrTime = document.querySelector('#flatpickr-time'),
12    flatpickrDateTime = document.querySelector('#flatpickr-datetime'),
13    flatpickrMulti = document.querySelector('#flatpickr-multi'),
14    flatpickrRange = document.querySelector('#flatpickr-range'),
15    flatpickrInline = document.querySelector('#flatpickr-inline'),
16    flatpickrFriendly = document.querySelector('#flatpickr-human-friendly'),
17    flatpickrDisabledRange = document.querySelector('#flatpickr-disabled-range');
18
19  // Date
20  if (flatpickrDate) {
21    flatpickrDate.flatpickr({
22      monthSelectorType: 'static'
23    });
24  }
25
26  // Time
27  if (flatpickrTime) {
28    flatpickrTime.flatpickr({
29      enableTime: true,
30      noCalendar: true
31    });
32  }
33
34  // Datetime
35  if (flatpickrDateTime) {
36    flatpickrDateTime.flatpickr({
37      enableTime: true,
38      dateFormat: 'Y-m-d H:i'
39    });
40  }
41
42  // Multi Date Select
43  if (flatpickrMulti) {
44    flatpickrMulti.flatpickr({
45      weekNumbers: true,
46      enableTime: true,
47      mode: 'multiple',
48      minDate: 'today'
49    });
50  }
51
52  // Range
53  if (typeof flatpickrRange != undefined) {
54    flatpickrRange.flatpickr({
55      mode: 'range'
56    });
57  }
58
59  // Inline
60  if (flatpickrInline) {
61    flatpickrInline.flatpickr({
62      inline: true,
63      allowInput: false,
64      monthSelectorType: 'static'
65    });
66  }
67
68  // Human Friendly
69  if (flatpickrFriendly) {
70    flatpickrFriendly.flatpickr({
71      altInput: true,
72      altFormat: 'F j, Y',
73      dateFormat: 'Y-m-d'
74    });
75  }
76
77  // Disabled Date Range
78  if (flatpickrDisabledRange) {
79    const fromDate = new Date(Date.now() - 3600 * 1000 * 48);
80    const toDate = new Date(Date.now() + 3600 * 1000 * 48);
81
82    flatpickrDisabledRange.flatpickr({
83      dateFormat: 'Y-m-d',
84      disable: [
85        {
86          from: fromDate.toISOString().split('T')[0],
87          to: toDate.toISOString().split('T')[0]
88        }
89      ]
90    });
91  }
92})();
93
94// * Pickers with jQuery dependency (jquery)
95$(function () {
96  // Bootstrap Datepicker
97  // --------------------------------------------------------------------
98  var bsDatepickerBasic = $('#bs-datepicker-basic'),
99    bsDatepickerFormat = $('#bs-datepicker-format'),
100    bsDatepickerRange = $('#bs-datepicker-daterange'),
101    bsDatepickerDisabledDays = $('#bs-datepicker-disabled-days'),
102    bsDatepickerMultidate = $('#bs-datepicker-multidate'),
103    bsDatepickerOptions = $('#bs-datepicker-options'),
104    bsDatepickerAutoclose = $('#bs-datepicker-autoclose'),
105    bsDatepickerInlinedate = $('#bs-datepicker-inline');
106
107  // Basic
108  if (bsDatepickerBasic.length) {
109    bsDatepickerBasic.datepicker({
110      todayHighlight: true,
111      orientation: isRtl ? 'auto right' : 'auto left'
112    });
113  }
114
115  // Format
116  if (bsDatepickerFormat.length) {
117    bsDatepickerFormat.datepicker({
118      todayHighlight: true,
119      format: 'dd/mm/yyyy',
120      orientation: isRtl ? 'auto right' : 'auto left'
121    });
122  }
123
124  // Range
125  if (bsDatepickerRange.length) {
126    bsDatepickerRange.datepicker({
127      todayHighlight: true,
128      orientation: isRtl ? 'auto right' : 'auto left'
129    });
130  }
131
132  // Disabled Days
133  if (bsDatepickerDisabledDays.length) {
134    bsDatepickerDisabledDays.datepicker({
135      todayHighlight: true,
136      daysOfWeekDisabled: [0, 6],
137      orientation: isRtl ? 'auto right' : 'auto left'
138    });
139  }
140
141  // Multiple
142  if (bsDatepickerMultidate.length) {
143    bsDatepickerMultidate.datepicker({
144      multidate: true,
145      todayHighlight: true,
146      orientation: isRtl ? 'auto right' : 'auto left'
147    });
148  }
149
150  // Options
151  if (bsDatepickerOptions.length) {
152    bsDatepickerOptions.datepicker({
153      calendarWeeks: true,
154      clearBtn: true,
155      todayHighlight: true,
156      orientation: isRtl ? 'auto left' : 'auto right'
157    });
158  }
159
160  // Auto close
161  if (bsDatepickerAutoclose.length) {
162    bsDatepickerAutoclose.datepicker({
163      todayHighlight: true,
164      autoclose: true,
165      orientation: isRtl ? 'auto right' : 'auto left'
166    });
167  }
168
169  // Inline picker
170  if (bsDatepickerInlinedate.length) {
171    bsDatepickerInlinedate.datepicker({
172      todayHighlight: true
173    });
174  }
175
176  // Bootstrap Daterange Picker
177  // --------------------------------------------------------------------
178  var bsRangePickerBasic = $('#bs-rangepicker-basic'),
179    bsRangePickerSingle = $('#bs-rangepicker-single'),
180    bsRangePickerTime = $('#bs-rangepicker-time'),
181    bsRangePickerRange = $('#bs-rangepicker-range'),
182    bsRangePickerWeekNum = $('#bs-rangepicker-week-num'),
183    bsRangePickerDropdown = $('#bs-rangepicker-dropdown');
184
185  // Basic
186  if (bsRangePickerBasic.length) {
187    bsRangePickerBasic.daterangepicker({
188      opens: isRtl ? 'left' : 'right'
189    });
190  }
191
192  // Single
193  if (bsRangePickerSingle.length) {
194    bsRangePickerSingle.daterangepicker({
195      singleDatePicker: true,
196      opens: isRtl ? 'left' : 'right'
197    });
198  }
199
200  // Time & Date
201  if (bsRangePickerTime.length) {
202    bsRangePickerTime.daterangepicker({
203      timePicker: true,
204      timePickerIncrement: 30,
205      locale: {
206        format: 'MM/DD/YYYY h:mm A'
207      },
208      opens: isRtl ? 'left' : 'right'
209    });
210  }
211
212  if (bsRangePickerRange.length) {
213    bsRangePickerRange.daterangepicker({
214      ranges: {
215        Today: [moment(), moment()],
216        Yesterday: [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
217        'Last 7 Days': [moment().subtract(6, 'days'), moment()],
218        'Last 30 Days': [moment().subtract(29, 'days'), moment()],
219        'This Month': [moment().startOf('month'), moment().endOf('month')],
220        'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')]
221      },
222      opens: isRtl ? 'left' : 'right'
223    });
224  }
225
226  // Week Numbers
227  if (bsRangePickerWeekNum.length) {
228    bsRangePickerWeekNum.daterangepicker({
229      showWeekNumbers: true,
230      opens: isRtl ? 'left' : 'right'
231    });
232  }
233  // Dropdown
234  if (bsRangePickerDropdown.length) {
235    bsRangePickerDropdown.daterangepicker({
236      showDropdowns: true,
237      opens: isRtl ? 'left' : 'right'
238    });
239  }
240
241  // jQuery Timepicker
242  // --------------------------------------------------------------------
243  var basicTimepicker = $('#timepicker-basic'),
244    minMaxTimepicker = $('#timepicker-min-max'),
245    disabledTimepicker = $('#timepicker-disabled-times'),
246    formatTimepicker = $('#timepicker-format'),
247    stepTimepicker = $('#timepicker-step'),
248    altHourTimepicker = $('#timepicker-24hours');
249
250  // Basic
251  if (basicTimepicker.length) {
252    basicTimepicker.timepicker({
253      orientation: isRtl ? 'r' : 'l'
254    });
255  }
256
257  // Min & Max
258  if (minMaxTimepicker.length) {
259    minMaxTimepicker.timepicker({
260      minTime: '2:00pm',
261      maxTime: '7:00pm',
262      showDuration: true,
263      orientation: isRtl ? 'r' : 'l'
264    });
265  }
266
267  // Disabled Picker
268  if (disabledTimepicker.length) {
269    disabledTimepicker.timepicker({
270      disableTimeRanges: [
271        ['12am', '3am'],
272        ['4am', '4:30am']
273      ],
274      orientation: isRtl ? 'r' : 'l'
275    });
276  }
277
278  // Format Picker
279  if (formatTimepicker.length) {
280    formatTimepicker.timepicker({
281      timeFormat: 'H:i:s',
282      orientation: isRtl ? 'r' : 'l'
283    });
284  }
285
286  // Steps Picker
287  if (stepTimepicker.length) {
288    stepTimepicker.timepicker({
289      step: 15,
290      orientation: isRtl ? 'r' : 'l'
291    });
292  }
293
294  // 24 Hours Format
295  if (altHourTimepicker.length) {
296    altHourTimepicker.timepicker({
297      show: '24:00',
298      timeFormat: 'H:i:s',
299      orientation: isRtl ? 'r' : 'l'
300    });
301  }
302});
303
304// color picker (pickr)
305// --------------------------------------------------------------------
306(function () {
307  const classicPicker = document.querySelector('#color-picker-classic'),
308    monolithPicker = document.querySelector('#color-picker-monolith'),
309    nanoPicker = document.querySelector('#color-picker-nano');
310
311  // classic
312  if (classicPicker) {
313    pickr.create({
314      el: classicPicker,
315      theme: 'classic',
316      default: 'rgba(102, 108, 232, 1)',
317      swatches: [
318        'rgba(102, 108, 232, 1)',
319        'rgba(40, 208, 148, 1)',
320        'rgba(255, 73, 97, 1)',
321        'rgba(255, 145, 73, 1)',
322        'rgba(30, 159, 242, 1)'
323      ],
324      components: {
325        // Main components
326        preview: true,
327        opacity: true,
328        hue: true,
329
330        // Input / output Options
331        interaction: {
332          hex: true,
333          rgba: true,
334          hsla: true,
335          hsva: true,
336          cmyk: true,
337          input: true,
338          clear: true,
339          save: true
340        }
341      }
342    });
343  }
344
345  // monolith
346  if (monolithPicker) {
347    pickr.create({
348      el: monolithPicker,
349      theme: 'monolith',
350      default: 'rgba(40, 208, 148, 1)',
351      swatches: [
352        'rgba(102, 108, 232, 1)',
353        'rgba(40, 208, 148, 1)',
354        'rgba(255, 73, 97, 1)',
355        'rgba(255, 145, 73, 1)',
356        'rgba(30, 159, 242, 1)'
357      ],
358      components: {
359        // Main components
360        preview: true,
361        opacity: true,
362        hue: true,
363
364        // Input / output Options
365        interaction: {
366          hex: true,
367          rgba: true,
368          hsla: true,
369          hsva: true,
370          cmyk: true,
371          input: true,
372          clear: true,
373          save: true
374        }
375      }
376    });
377  }
378
379  // nano
380  if (nanoPicker) {
381    pickr.create({
382      el: nanoPicker,
383      theme: 'nano',
384      default: 'rgba(255, 73, 97, 1)',
385      swatches: [
386        'rgba(102, 108, 232, 1)',
387        'rgba(40, 208, 148, 1)',
388        'rgba(255, 73, 97, 1)',
389        'rgba(255, 145, 73, 1)',
390        'rgba(30, 159, 242, 1)'
391      ],
392      components: {
393        // Main components
394        preview: true,
395        opacity: true,
396        hue: true,
397
398        // Input / output Options
399        interaction: {
400          hex: true,
401          rgba: true,
402          hsla: true,
403          hsva: true,
404          cmyk: true,
405          input: true,
406          clear: true,
407          save: true
408        }
409      }
410    });
411  }
412})();

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.