From 0f90b4a6f564a07882b8430fb349761a92c6a72a Mon Sep 17 00:00:00 2001 From: Alan Date: Wed, 13 Nov 2024 18:32:01 +0100 Subject: [PATCH 1/8] Update README.md --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 395bae60..c0ebfbe5 100755 --- a/README.md +++ b/README.md @@ -155,7 +155,8 @@ The properties you can configure are as follows. }; $scope.openDatePicker = function(){ - ionicDatePicker.openDatePicker(ipObj1); + var closePicker = ionicDatePicker.openDatePicker(ipObj1); + // closePicker(); }; }; ```` From 077cd91c882b0197181afdd09eed4c88f749c4de Mon Sep 17 00:00:00 2001 From: Alan Date: Wed, 13 Nov 2024 18:33:24 +0100 Subject: [PATCH 2/8] Update ionic-datepicker.provider.js --- src/ionic-datepicker.provider.js | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/ionic-datepicker.provider.js b/src/ionic-datepicker.provider.js index 43ecd7b0..0cc8f841 100644 --- a/src/ionic-datepicker.provider.js +++ b/src/ionic-datepicker.provider.js @@ -80,7 +80,7 @@ angular.module('ionic-datepicker.provider', []) if ($scope.mainObj.closeOnSelect) { $scope.mainObj.callback($scope.selctedDateEpoch); if ($scope.mainObj.templateType.toLowerCase() == 'popup') { - $scope.popup.close(); + closePopup(); } else { closeModal(); } @@ -221,6 +221,10 @@ angular.module('ionic-datepicker.provider', []) $scope.modal.hide(); } + function closePopup() { + $scope.popup.close(); + } + $scope.closeIonicDatePickerModal = function () { closeModal(); }; @@ -295,9 +299,10 @@ angular.module('ionic-datepicker.provider', []) cssClass: 'ionic_datepicker_popup', buttons: buttons }); - } else { - openModal(); + return closePopup; } + openModal(); + return closeModal; }; return provider; From d71dd6c459bae9bae3705618137d49b35d8b7b5e Mon Sep 17 00:00:00 2001 From: Alan Date: Wed, 13 Nov 2024 18:34:47 +0100 Subject: [PATCH 3/8] Update package.json --- package.json | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 7e181ea0..015beacb 100644 --- a/package.json +++ b/package.json @@ -3,19 +3,24 @@ "version": "1.2.1", "description": "A date picker for ionic framework", "main": "./dist/ionic-datepicker.bundle.min.js", - "scripts": {}, + "scripts": { + "build": "gulp build" + }, "author": "https://github.com/rajeshwarpatlolla, rajeshwar.patlolla@gmail.com", "license": "MIT", - "dependencies": {}, + "type": "module", + "dependencies": { + "sass": "^1.80.7" + }, "devDependencies": { "del": "*", "gulp": "*", - "gulp-autoprefixer": "^3.1.1", + "gulp-autoprefixer": "*", "gulp-concat": "*", "gulp-css2js": "*", "gulp-minify-html": "*", "gulp-ng-html2js": "*", - "gulp-sass": "^2.3.2", + "gulp-sass": "5.1.0", "gulp-uglify": "*" } } From 6973d97fa5131640fc3c28c2a41485e57c8cb5cb Mon Sep 17 00:00:00 2001 From: Alan Date: Wed, 13 Nov 2024 18:35:17 +0100 Subject: [PATCH 4/8] Create workflows --- .github/workflows | 1 + 1 file changed, 1 insertion(+) create mode 100644 .github/workflows diff --git a/.github/workflows b/.github/workflows new file mode 100644 index 00000000..8b137891 --- /dev/null +++ b/.github/workflows @@ -0,0 +1 @@ + From 0d198cbcff43dce297b8d1680166f1e14ba7cba3 Mon Sep 17 00:00:00 2001 From: Alan Date: Wed, 13 Nov 2024 18:35:31 +0100 Subject: [PATCH 5/8] Delete .github/workflows --- .github/workflows | 1 - 1 file changed, 1 deletion(-) delete mode 100644 .github/workflows diff --git a/.github/workflows b/.github/workflows deleted file mode 100644 index 8b137891..00000000 --- a/.github/workflows +++ /dev/null @@ -1 +0,0 @@ - From 4aad820dc15e4e34ce902e973b974a2c5b56901f Mon Sep 17 00:00:00 2001 From: Alan Date: Wed, 13 Nov 2024 18:36:10 +0100 Subject: [PATCH 6/8] Create gulp-build.yml --- .github/workflows/gulp-build.yml | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 .github/workflows/gulp-build.yml diff --git a/.github/workflows/gulp-build.yml b/.github/workflows/gulp-build.yml new file mode 100644 index 00000000..4896e656 --- /dev/null +++ b/.github/workflows/gulp-build.yml @@ -0,0 +1,25 @@ +name: Build Ionic Datepicker + +on: + push: + branches: + - master + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - name: Checkout the repository + uses: actions/checkout@v2 + + - name: Set up Node.js + uses: actions/setup-node@v3 + with: + node-version: '20.18.0' + + - name: Install dependencies + run: npm install + + - name: Run Gulp build + run: npm run build From 7b9783fea9c111bda61cbc336eff097ead573eec Mon Sep 17 00:00:00 2001 From: Alan Date: Wed, 13 Nov 2024 18:36:27 +0100 Subject: [PATCH 7/8] Update gulpfile.js --- gulpfile.js | 81 +++++++++++++++++++++++++++++------------------------ 1 file changed, 45 insertions(+), 36 deletions(-) diff --git a/gulpfile.js b/gulpfile.js index 12ac8560..df47151c 100755 --- a/gulpfile.js +++ b/gulpfile.js @@ -1,20 +1,25 @@ -var gulp = require('gulp'); -var del = require('del'); -var concat = require('gulp-concat'); -var uglify = require('gulp-uglify'); -var ngHtml2Js = require("gulp-ng-html2js"); -var minifyHtml = require("gulp-minify-html"); -var css2js = require("gulp-css2js"); -var sass = require("gulp-sass"); -var autoprefixer = require('gulp-autoprefixer'); +import gulp from 'gulp'; +import { deleteAsync as del } from 'del'; // Correct ES module import for del +import concat from 'gulp-concat'; +import uglify from 'gulp-uglify'; +import ngHtml2Js from 'gulp-ng-html2js'; +import minifyHtml from 'gulp-minify-html'; +import css2js from 'gulp-css2js'; +import gulpSass from 'gulp-sass'; // Import gulp-sass +import sassCompiler from 'sass'; // Import the sass compiler (Dart Sass) +import autoprefixer from 'gulp-autoprefixer'; // Import autoprefixer -var sassOptions = { - indentWidth: 4, - outputStyle: 'expanded', - errorLogToConsole: true +const sass = gulpSass(sassCompiler); // Initialize gulp-sass with the sass compiler + +// Define Sass options +const sassOptions = { + indentWidth: 4, + outputStyle: 'expanded', + errorLogToConsole: true, }; -var autoprefixerOptions = { +// Define Autoprefixer options +const autoprefixerOptions = { browsers: [ '> 1%', 'last 2 versions', @@ -23,45 +28,49 @@ var autoprefixerOptions = { 'safari 8', 'IE 9', 'IE 10', - 'IE 11' - ] + 'IE 11', + ], }; +// HTML to JS task gulp.task('html2js', function () { return gulp.src(['./src/*.html']) .pipe(minifyHtml()) .pipe(ngHtml2Js({ - moduleName: "ionic-datepicker.templates" + moduleName: 'ionic-datepicker.templates', })) - .pipe(concat("templates.js")) - //.pipe(uglify()) - .pipe(gulp.dest("./dist")); + .pipe(concat('templates.js')) + .pipe(gulp.dest('./dist')); }); +// CSS to JS task gulp.task('css2js', function () { - return gulp.src("./src/**/ionic-datepicker.styles.scss") - .pipe(concat("ionic-datepicker.styles.css")) - .pipe(sass(sassOptions).on('error', sass.logError)) - .pipe(autoprefixer(autoprefixerOptions)) + return gulp.src('./src/**/ionic-datepicker.styles.scss') + .pipe(concat('ionic-datepicker.styles.css')) + .pipe(sass(sassOptions).on('error', sass.logError)) // Use the sass compiler here + .pipe(autoprefixer(autoprefixerOptions)) // Apply autoprefixer here .pipe(css2js()) .pipe(uglify()) - .pipe(gulp.dest("./dist/")); + .pipe(gulp.dest('./dist/')); +}); + +// Delete dist files task +gulp.task('del', function () { + return del(['./dist/*']); }); -gulp.task('make-bundle', ['del', 'html2js', 'css2js'], function () { +// Make bundle task +gulp.task('make-bundle', gulp.series('del', 'html2js', 'css2js', function () { return gulp.src(['./dist/*', './src/*.js']) .pipe(concat('ionic-datepicker.bundle.min.js')) .pipe(uglify()) .pipe(gulp.dest('./dist/')); -}); - -gulp.task('del-temp-files', ['make-bundle'], function () { - del(['./dist/templates.js', './dist/ionic-datepicker.styles.js']); -}); - -gulp.task('del', function () { - del(['./dist/*']); -}); +})); -gulp.task('build', ['del-temp-files']); +// Delete temporary files task +gulp.task('del-temp-files', gulp.series('make-bundle', function () { + return del(['./dist/templates.js', './dist/ionic-datepicker.styles.js']); +})); +// Build task +gulp.task('build', gulp.series('del-temp-files')); From 1a1b3a3e73dd5dc74fc33cbaecaa3acf325b5383 Mon Sep 17 00:00:00 2001 From: Alan Date: Wed, 13 Nov 2024 18:38:19 +0100 Subject: [PATCH 8/8] Add files via upload --- dist/ionic-datepicker.bundle.min.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dist/ionic-datepicker.bundle.min.js b/dist/ionic-datepicker.bundle.min.js index 27b42917..cb3feffd 100644 --- a/dist/ionic-datepicker.bundle.min.js +++ b/dist/ionic-datepicker.bundle.min.js @@ -1 +1 @@ -!function(e,t){var n=e.createElement("style");if(e.getElementsByTagName("head")[0].appendChild(n),n.styleSheet)n.styleSheet.disabled||(n.styleSheet.cssText=t);else try{n.innerHTML=t}catch(e){n.innerText=t}}(document,"/**/\n.padding_zero {\n padding: 0;\n}\n\n.ionic_datepicker_popup .font_bold {\n font-weight: bold;\n}\n\n.ionic_datepicker_popup .padding_top_zero {\n padding-top: 0;\n}\n\n.ionic_datepicker_popup .padding_left_5px {\n padding-left: 5px;\n}\n\n.ionic_datepicker_popup .padding_right_5px {\n padding-right: 5px;\n}\n\n.ionic_datepicker_popup .month_year_section {\n padding: 5px 0;\n}\n\n.ionic_datepicker_popup .calendar_grid {\n height: 215px;\n}\n\n.ionic_datepicker_popup .calendar_grid .weeks_row {\n padding: 0;\n}\n\n.ionic_datepicker_popup .today {\n border: 1px solid #009688;\n border-radius: 50%;\n}\n\n.ionic_datepicker_popup .selected_date {\n background-color: #009688;\n border-radius: 50%;\n color: #ffffff;\n font-weight: bold;\n}\n\n.ionic_datepicker_popup .popup-head {\n background-color: #009688;\n display: none;\n}\n\n.ionic_datepicker_popup .popup-head .popup-title {\n color: #ffffff;\n}\n\n.ionic_datepicker_popup .popup-head .popup-sub-title {\n color: #ffffff;\n}\n\n.ionic_datepicker_popup .popup-body {\n background-color: #ffffff;\n}\n\n.ionic_datepicker_popup .popup-body .selected_date_full {\n background-color: #009688;\n margin: -10px -10px 0 -10px;\n height: 45px;\n text-align: center;\n font-weight: bold;\n color: #ffffff;\n line-height: 45px;\n font-size: 18px;\n}\n\n.ionic_datepicker_popup .popup-body .select_section {\n padding: 1px 5px;\n}\n\n.ionic_datepicker_popup .popup-body .pointer_events_none {\n pointer-events: none;\n color: #aaaaaa !important;\n}\n\n.ionic_datepicker_popup .popup-body .month_select, .ionic_datepicker_popup .popup-body .year_select {\n border: none;\n border-bottom: 1px solid #009688;\n padding: 0;\n}\n\n.ionic_datepicker_popup .popup-body .month_select .input-label, .ionic_datepicker_popup .popup-body .year_select .input-label {\n padding: 2px 0;\n width: 0;\n}\n\n.ionic_datepicker_popup .popup-body .month_select select, .ionic_datepicker_popup .popup-body .year_select select {\n left: 10px;\n border: none;\n padding: 0;\n}\n\n.ionic_datepicker_popup .popup-body .month_select:after, .ionic_datepicker_popup .popup-body .year_select:after {\n right: 5px;\n color: #009688;\n}\n\n.ionic_datepicker_popup .popup-body .show_nav {\n padding: 5px 0 0 0;\n}\n\n.ionic_datepicker_popup .popup-body .show_nav .prev_btn_section {\n padding: 5px 0;\n text-align: left;\n}\n\n.ionic_datepicker_popup .popup-body .show_nav .prev_btn_section button {\n padding: 0;\n}\n\n.ionic_datepicker_popup .popup-body .show_nav .next_btn_section {\n padding: 5px 0;\n text-align: right;\n}\n\n.ionic_datepicker_popup .popup-body .show_nav .next_btn_section button {\n padding: 0;\n}\n\n.ionic_datepicker_popup .popup-body .button-clear {\n color: #009688;\n}\n\n.ionic_datepicker_popup .popup-buttons {\n padding: 0;\n min-height: 45px;\n}\n\n.ionic_datepicker_popup .popup-buttons button {\n background-color: #009688;\n border-radius: 0;\n margin-right: 1px;\n color: #ffffff;\n}\n\n.ionic_datepicker_popup .row + .row {\n padding: 0;\n}\n\n.ionic_datepicker_modal .header, .ionic_datepicker_modal .footer {\n background-color: #009688;\n}\n\n.ionic_datepicker_modal .header .title, .ionic_datepicker_modal .header .button, .ionic_datepicker_modal .footer .title, .ionic_datepicker_modal .footer .button {\n color: #ffffff;\n}\n\n.ionic_datepicker_modal .footer .button-block {\n margin: 0;\n}\n\n.ionic_datepicker_modal .today {\n border: 1px solid #009688;\n}\n\n.ionic_datepicker_modal .selected_date {\n background-color: #009688;\n color: #ffffff;\n font-weight: bold;\n}\n\n.ionic_datepicker_modal .pointer_events_none {\n pointer-events: none;\n color: #aaaaaa !important;\n}\n\n.ionic_datepicker_modal .select_section {\n padding: 1px 5px;\n}\n\n.ionic_datepicker_modal .button-clear {\n color: #009688;\n}\n\n.ionic_datepicker_modal .month_select, .ionic_datepicker_modal .year_select {\n border: none;\n border-bottom: 1px solid #009688;\n padding: 0;\n}\n\n.ionic_datepicker_modal .month_select .input-label, .ionic_datepicker_modal .year_select .input-label {\n padding: 2px 0;\n width: 0;\n}\n\n.ionic_datepicker_modal .month_select select, .ionic_datepicker_modal .year_select select {\n left: 10px;\n border: none;\n padding: 0 10px;\n}\n\n.ionic_datepicker_modal .month_select:after, .ionic_datepicker_modal .year_select:after {\n right: 5px;\n color: #009688;\n}\n\n.ionic_datepicker_modal .padding_left_5px {\n padding-left: 5px;\n}\n\n.ionic_datepicker_modal .padding_right_5px {\n padding-right: 5px;\n}\n\n.ionic_datepicker_modal .date_col {\n height: 50px;\n line-height: 50px;\n}\n\n.ionic_datepicker_modal .font_bold {\n font-weight: bold;\n}\n\n.ionic_datepicker_modal .font_22px {\n font-size: 22px;\n}\n\n.platform-android .ionic_datepicker_modal .bar .title.title-left {\n text-align: center;\n}\n\n.platform-android .ionic_datepicker_modal select {\n left: 25%;\n}\n\n.platform-ios .ionic_datepicker_modal select {\n left: 5%;\n}"),function(e){try{e=angular.module("ionic-datepicker.templates")}catch(t){e=angular.module("ionic-datepicker.templates",[])}e.run(["$templateCache",function(e){e.put("ionic-datepicker-modal.html",'

{{mainObj.titleLabel || selctedDateEpoch | date : mainObj.dateFormat}}

{{dayList[row + col].date}}
')}])}(),function(e){try{e=angular.module("ionic-datepicker.templates")}catch(t){e=angular.module("ionic-datepicker.templates",[])}e.run(["$templateCache",function(e){e.put("ionic-datepicker-popup.html",'
{{mainObj.titleLabel || selctedDateEpoch | date : mainObj.dateFormat}}
{{dayList[row + col].date}}
')}])}(),angular.module("ionic-datepicker",["ionic","ionic-datepicker.service","ionic-datepicker.provider","ionic-datepicker.templates"]),angular.module("ionic-datepicker.provider",[]).provider("ionicDatePicker",function(){var e={titleLabel:null,setLabel:"Set",todayLabel:"Today",closeLabel:"Close",inputDate:new Date,mondayFirst:!0,weeksList:["S","M","T","W","T","F","S"],monthsList:["Jan","Feb","March","April","May","June","July","Aug","Sept","Oct","Nov","Dec"],templateType:"popup",showTodayButton:!1,closeOnSelect:!1,disableWeekdays:[]};this.configDatePicker=function(t){angular.extend(e,t)},this.$get=["$rootScope","$ionicPopup","$ionicModal","IonicDatepickerService",function(t,n,a,o){function i(e){return e.setHours(0),e.setMinutes(0),e.setSeconds(0),e.setMilliseconds(0),e}function c(e){e.disabledDates&&0!==e.disabledDates.length?(u.disabledDates=[],angular.forEach(e.disabledDates,function(e,t){e=i(new Date(e)),u.disabledDates.push(e.getTime())})):u.disabledDates=[]}function d(e){e=i(e),u.currentDate=angular.copy(e);var t=new Date(e.getFullYear(),e.getMonth(),1).getDate(),n=new Date(e.getFullYear(),e.getMonth()+1,0).getDate();u.monthsList=[],u.mainObj.monthsList&&12===u.mainObj.monthsList.length?u.monthsList=u.mainObj.monthsList:u.monthsList=o.monthsList,u.yearsList=o.getYearsList(u.mainObj.from,u.mainObj.to),u.dayList=[];var a,c;u.firstDayEpoch=i(new Date(e.getFullYear(),e.getMonth(),t)).getTime(),u.lastDayEpoch=i(new Date(e.getFullYear(),e.getMonth(),n)).getTime();for(var d=t;d<=n;d++)a=new Date(e.getFullYear(),e.getMonth(),d),c=a.getTime()u.toDate||u.mainObj.disableWeekdays.indexOf(a.getDay())>=0,u.dayList.push({date:a.getDate(),month:a.getMonth(),year:a.getFullYear(),day:a.getDay(),epoch:a.getTime(),disabled:c});var r=u.dayList[0].day-u.mainObj.mondayFirst;r=r<0?6:r;for(var l=0;l{var n=e.createElement("style");if(e.getElementsByTagName("head")[0].appendChild(n),n.styleSheet)n.styleSheet.disabled||(n.styleSheet.cssText=t);else try{n.innerHTML=t}catch(e){n.innerText=t}})(document,"/**/\n.padding_zero {\n padding: 0;\n}\n\n.ionic_datepicker_popup .font_bold {\n font-weight: bold;\n}\n\n.ionic_datepicker_popup .padding_top_zero {\n padding-top: 0;\n}\n\n.ionic_datepicker_popup .padding_left_5px {\n padding-left: 5px;\n}\n\n.ionic_datepicker_popup .padding_right_5px {\n padding-right: 5px;\n}\n\n.ionic_datepicker_popup .month_year_section {\n padding: 5px 0;\n}\n\n.ionic_datepicker_popup .calendar_grid {\n height: 215px;\n}\n\n.ionic_datepicker_popup .calendar_grid .weeks_row {\n padding: 0;\n}\n\n.ionic_datepicker_popup .today {\n border: 1px solid #009688;\n border-radius: 50%;\n}\n\n.ionic_datepicker_popup .selected_date {\n background-color: #009688;\n border-radius: 50%;\n color: #ffffff;\n font-weight: bold;\n}\n\n.ionic_datepicker_popup .popup-head {\n background-color: #009688;\n display: none;\n}\n\n.ionic_datepicker_popup .popup-head .popup-title {\n color: #ffffff;\n}\n\n.ionic_datepicker_popup .popup-head .popup-sub-title {\n color: #ffffff;\n}\n\n.ionic_datepicker_popup .popup-body {\n background-color: #ffffff;\n}\n\n.ionic_datepicker_popup .popup-body .selected_date_full {\n background-color: #009688;\n margin: -10px -10px 0 -10px;\n height: 45px;\n text-align: center;\n font-weight: bold;\n color: #ffffff;\n line-height: 45px;\n font-size: 18px;\n}\n\n.ionic_datepicker_popup .popup-body .select_section {\n padding: 1px 5px;\n}\n\n.ionic_datepicker_popup .popup-body .pointer_events_none {\n pointer-events: none;\n color: #aaaaaa !important;\n}\n\n.ionic_datepicker_popup .popup-body .month_select, .ionic_datepicker_popup .popup-body .year_select {\n border: none;\n border-bottom: 1px solid #009688;\n padding: 0;\n}\n\n.ionic_datepicker_popup .popup-body .month_select .input-label, .ionic_datepicker_popup .popup-body .year_select .input-label {\n padding: 2px 0;\n width: 0;\n}\n\n.ionic_datepicker_popup .popup-body .month_select select, .ionic_datepicker_popup .popup-body .year_select select {\n left: 10px;\n border: none;\n padding: 0;\n}\n\n.ionic_datepicker_popup .popup-body .month_select:after, .ionic_datepicker_popup .popup-body .year_select:after {\n right: 5px;\n color: #009688;\n}\n\n.ionic_datepicker_popup .popup-body .show_nav {\n padding: 5px 0 0 0;\n}\n\n.ionic_datepicker_popup .popup-body .show_nav .prev_btn_section {\n padding: 5px 0;\n text-align: left;\n}\n\n.ionic_datepicker_popup .popup-body .show_nav .prev_btn_section button {\n padding: 0;\n}\n\n.ionic_datepicker_popup .popup-body .show_nav .next_btn_section {\n padding: 5px 0;\n text-align: right;\n}\n\n.ionic_datepicker_popup .popup-body .show_nav .next_btn_section button {\n padding: 0;\n}\n\n.ionic_datepicker_popup .popup-body .button-clear {\n color: #009688;\n}\n\n.ionic_datepicker_popup .popup-buttons {\n padding: 0;\n min-height: 45px;\n}\n\n.ionic_datepicker_popup .popup-buttons button {\n background-color: #009688;\n border-radius: 0;\n margin-right: 1px;\n color: #ffffff;\n}\n\n.ionic_datepicker_popup .row + .row {\n padding: 0;\n}\n\n.ionic_datepicker_modal .header, .ionic_datepicker_modal .footer {\n background-color: #009688;\n}\n\n.ionic_datepicker_modal .header .title, .ionic_datepicker_modal .header .button, .ionic_datepicker_modal .footer .title, .ionic_datepicker_modal .footer .button {\n color: #ffffff;\n}\n\n.ionic_datepicker_modal .footer .button-block {\n margin: 0;\n}\n\n.ionic_datepicker_modal .today {\n border: 1px solid #009688;\n}\n\n.ionic_datepicker_modal .selected_date {\n background-color: #009688;\n color: #ffffff;\n font-weight: bold;\n}\n\n.ionic_datepicker_modal .pointer_events_none {\n pointer-events: none;\n color: #aaaaaa !important;\n}\n\n.ionic_datepicker_modal .select_section {\n padding: 1px 5px;\n}\n\n.ionic_datepicker_modal .button-clear {\n color: #009688;\n}\n\n.ionic_datepicker_modal .month_select, .ionic_datepicker_modal .year_select {\n border: none;\n border-bottom: 1px solid #009688;\n padding: 0;\n}\n\n.ionic_datepicker_modal .month_select .input-label, .ionic_datepicker_modal .year_select .input-label {\n padding: 2px 0;\n width: 0;\n}\n\n.ionic_datepicker_modal .month_select select, .ionic_datepicker_modal .year_select select {\n left: 10px;\n border: none;\n padding: 0 10px;\n}\n\n.ionic_datepicker_modal .month_select:after, .ionic_datepicker_modal .year_select:after {\n right: 5px;\n color: #009688;\n}\n\n.ionic_datepicker_modal .padding_left_5px {\n padding-left: 5px;\n}\n\n.ionic_datepicker_modal .padding_right_5px {\n padding-right: 5px;\n}\n\n.ionic_datepicker_modal .date_col {\n height: 50px;\n line-height: 50px;\n}\n\n.ionic_datepicker_modal .font_bold {\n font-weight: bold;\n}\n\n.ionic_datepicker_modal .font_22px {\n font-size: 22px;\n}\n\n.platform-android .ionic_datepicker_modal .bar .title.title-left {\n text-align: center;\n}\n\n.platform-android .ionic_datepicker_modal select {\n left: 25%;\n}\n\n.platform-ios .ionic_datepicker_modal select {\n left: 5%;\n}\n\n.date_col {\n cursor: pointer;\n}"),(t=>{try{t=angular.module("ionic-datepicker.templates")}catch(e){t=angular.module("ionic-datepicker.templates",[])}t.run(["$templateCache",function(e){e.put("ionic-datepicker-modal.html",'

{{mainObj.titleLabel || selctedDateEpoch | date : mainObj.dateFormat}}

{{dayList[row + col].date}}
')}])})(),(t=>{try{t=angular.module("ionic-datepicker.templates")}catch(e){t=angular.module("ionic-datepicker.templates",[])}t.run(["$templateCache",function(e){e.put("ionic-datepicker-popup.html",'
{{mainObj.titleLabel || selctedDateEpoch | date : mainObj.dateFormat}}
{{dayList[row + col].date}}
')}])})(),angular.module("ionic-datepicker",["ionic","ionic-datepicker.service","ionic-datepicker.provider","ionic-datepicker.templates"]),angular.module("ionic-datepicker.provider",[]).provider("ionicDatePicker",function(){var u={titleLabel:null,setLabel:"Set",todayLabel:"Today",closeLabel:"Close",inputDate:new Date,mondayFirst:!0,weeksList:["S","M","T","W","T","F","S"],monthsList:["Jan","Feb","March","April","May","June","July","Aug","Sept","Oct","Nov","Dec"],templateType:"popup",showTodayButton:!1,closeOnSelect:!1,disableWeekdays:[]};this.configDatePicker=function(e){angular.extend(u,e)},this.$get=["$rootScope","$ionicPopup","$ionicModal","IonicDatepickerService",function(e,n,t,r){var a={},l=e.$new();function p(e){return e.setHours(0),e.setMinutes(0),e.setSeconds(0),e.setMilliseconds(0),e}l.today=p(new Date).getTime(),l.disabledDates=[],l.data={},l.prevMonth=function(){1===l.currentDate.getMonth()&&l.currentDate.setFullYear(l.currentDate.getFullYear()),l.currentDate.setMonth(l.currentDate.getMonth()-1),l.data.currentMonth=l.mainObj.monthsList[l.currentDate.getMonth()],l.data.currentYear=l.currentDate.getFullYear(),i(l.currentDate),o()},l.nextMonth=function(){11===l.currentDate.getMonth()&&l.currentDate.setFullYear(l.currentDate.getFullYear()),l.currentDate.setDate(1),l.currentDate.setMonth(l.currentDate.getMonth()+1),l.data.currentMonth=l.mainObj.monthsList[l.currentDate.getMonth()],l.data.currentYear=l.currentDate.getFullYear(),l.monthChanged(l.currentDate.getMonth()),i(new Date),o()};var o=function(){var e=new Date(l.selctedDateEpoch);e.setMonth(l.currentDate.getMonth()),e.setYear(l.currentDate.getFullYear()),l.selctedDateEpoch=e.getTime(),l.mainObj.callback(l.selctedDateEpoch)};function i(e){e=p(e),l.currentDate=angular.copy(e);var t,n,a=new Date(e.getFullYear(),e.getMonth(),1).getDate(),o=new Date(e.getFullYear(),e.getMonth()+1,0).getDate();l.monthsList=[],l.mainObj.monthsList&&12===l.mainObj.monthsList.length?l.monthsList=l.mainObj.monthsList:l.monthsList=r.monthsList,l.yearsList=r.getYearsList(l.mainObj.from,l.mainObj.to),l.dayList=[],l.firstDayEpoch=p(new Date(e.getFullYear(),e.getMonth(),a)).getTime(),l.lastDayEpoch=p(new Date(e.getFullYear(),e.getMonth(),o)).getTime();for(var i=a;i<=o;i++)n=(t=new Date(e.getFullYear(),e.getMonth(),i)).getTime()l.toDate||0<=l.mainObj.disableWeekdays.indexOf(t.getDay()),l.dayList.push({date:t.getDate(),month:t.getMonth(),year:t.getFullYear(),day:t.getDay(),epoch:t.getTime(),disabled:n});for(var c=(c=l.dayList[0].day-l.mainObj.mondayFirst)<0?6:c,d=0;d