diff --git a/.github/workflows/keep-alive.yml b/.github/workflows/keep-alive.yml
deleted file mode 100644
index b29534c..0000000
--- a/.github/workflows/keep-alive.yml
+++ /dev/null
@@ -1,11 +0,0 @@
-name: keep alive
-
-on:
- schedule:
- - cron: '*/5 * * * *'
-jobs:
- build:
- name: keep alive
- runs-on: ubuntu-latest
- steps:
- - run: curl -X GET "https://muslimboard-api.novalagung.com/muslimboard-api?v=v2.6.0&op=shalat-schedule-by-coordinate&latitude=41.0895249&longitude=-73.8419063&method=1&month=3&year=2023"
diff --git a/extension/assets/3rd-parties/toast/toast.min.css b/extension/assets/3rd-parties/toast/toast.min.css
new file mode 100644
index 0000000..f2e5609
--- /dev/null
+++ b/extension/assets/3rd-parties/toast/toast.min.css
@@ -0,0 +1 @@
+.jq-toast-wrap,.jq-toast-wrap *{margin:0;padding:0}.jq-toast-wrap{display:block;position:fixed;width:400px;pointer-events:none!important;letter-spacing:normal;z-index:9000!important}.jq-toast-wrap.bottom-left{bottom:20px;left:20px}.jq-toast-wrap.bottom-right{bottom:20px;right:40px}.jq-toast-wrap.top-left{top:20px;left:20px}.jq-toast-wrap.top-right{top:20px;right:40px}.jq-toast-single{display:block;width:100%;padding:10px;margin:0 0 5px;border-radius:4px;font-size:12px;font-family:arial,sans-serif;line-height:17px;position:relative;pointer-events:all!important;background-color:#444;color:#fff}.jq-toast-single h2{font-family:arial,sans-serif;font-size:14px;margin:0 0 7px;background:0 0;color:inherit;line-height:inherit;letter-spacing:normal}.jq-toast-single a{color:#eee;text-decoration:none;font-weight:700;border-bottom:1px solid #fff;padding-bottom:3px;font-size:12px}.jq-toast-single ul{margin:0 0 0 15px;background:0 0;padding:0}.jq-toast-single ul li{list-style-type:disc!important;line-height:17px;background:0 0;margin:0;padding:0;letter-spacing:normal}.close-jq-toast-single{position:absolute;top:3px;right:7px;font-size:14px;cursor:pointer}.jq-toast-loader{display:block;position:absolute;top:-2px;height:5px;width:0;left:0;border-radius:5px;background:red}.jq-toast-loaded{width:100%}.jq-has-icon{padding:10px 10px 10px 50px;background-repeat:no-repeat;background-position:10px}.jq-icon-info{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGwSURBVEhLtZa9SgNBEMc9sUxxRcoUKSzSWIhXpFMhhYWFhaBg4yPYiWCXZxBLERsLRS3EQkEfwCKdjWJAwSKCgoKCcudv4O5YLrt7EzgXhiU3/4+b2ckmwVjJSpKkQ6wAi4gwhT+z3wRBcEz0yjSseUTrcRyfsHsXmD0AmbHOC9Ii8VImnuXBPglHpQ5wwSVM7sNnTG7Za4JwDdCjxyAiH3nyA2mtaTJufiDZ5dCaqlItILh1NHatfN5skvjx9Z38m69CgzuXmZgVrPIGE763Jx9qKsRozWYw6xOHdER+nn2KkO+Bb+UV5CBN6WC6QtBgbRVozrahAbmm6HtUsgtPC19tFdxXZYBOfkbmFJ1VaHA1VAHjd0pp70oTZzvR+EVrx2Ygfdsq6eu55BHYR8hlcki+n+kERUFG8BrA0BwjeAv2M8WLQBtcy+SD6fNsmnB3AlBLrgTtVW1c2QN4bVWLATaIS60J2Du5y1TiJgjSBvFVZgTmwCU+dAZFoPxGEEs8nyHC9Bwe2GvEJv2WXZb0vjdyFT4Cxk3e/kIqlOGoVLwwPevpYHT+00T+hWwXDf4AJAOUqWcDhbwAAAAASUVORK5CYII=);background-color:#31708f;color:#d9edf7;border-color:#bce8f1}.jq-icon-warning{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGYSURBVEhL5ZSvTsNQFMbXZGICMYGYmJhAQIJAICYQPAACiSDB8AiICQQJT4CqQEwgJvYASAQCiZiYmJhAIBATCARJy+9rTsldd8sKu1M0+dLb057v6/lbq/2rK0mS/TRNj9cWNAKPYIJII7gIxCcQ51cvqID+GIEX8ASG4B1bK5gIZFeQfoJdEXOfgX4QAQg7kH2A65yQ87lyxb27sggkAzAuFhbbg1K2kgCkB1bVwyIR9m2L7PRPIhDUIXgGtyKw575yz3lTNs6X4JXnjV+LKM/m3MydnTbtOKIjtz6VhCBq4vSm3ncdrD2lk0VgUXSVKjVDJXJzijW1RQdsU7F77He8u68koNZTz8Oz5yGa6J3H3lZ0xYgXBK2QymlWWA+RWnYhskLBv2vmE+hBMCtbA7KX5drWyRT/2JsqZ2IvfB9Y4bWDNMFbJRFmC9E74SoS0CqulwjkC0+5bpcV1CZ8NMej4pjy0U+doDQsGyo1hzVJttIjhQ7GnBtRFN1UarUlH8F3xict+HY07rEzoUGPlWcjRFRr4/gChZgc3ZL2d8oAAAAASUVORK5CYII=);background-color:#8a6d3b;color:#fcf8e3;border-color:#faebcc}.jq-icon-error{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHOSURBVEhLrZa/SgNBEMZzh0WKCClSCKaIYOED+AAKeQQLG8HWztLCImBrYadgIdY+gIKNYkBFSwu7CAoqCgkkoGBI/E28PdbLZmeDLgzZzcx83/zZ2SSXC1j9fr+I1Hq93g2yxH4iwM1vkoBWAdxCmpzTxfkN2RcyZNaHFIkSo10+8kgxkXIURV5HGxTmFuc75B2RfQkpxHG8aAgaAFa0tAHqYFfQ7Iwe2yhODk8+J4C7yAoRTWI3w/4klGRgR4lO7Rpn9+gvMyWp+uxFh8+H+ARlgN1nJuJuQAYvNkEnwGFck18Er4q3egEc/oO+mhLdKgRyhdNFiacC0rlOCbhNVz4H9FnAYgDBvU3QIioZlJFLJtsoHYRDfiZoUyIxqCtRpVlANq0EU4dApjrtgezPFad5S19Wgjkc0hNVnuF4HjVA6C7QrSIbylB+oZe3aHgBsqlNqKYH48jXyJKMuAbiyVJ8KzaB3eRc0pg9VwQ4niFryI68qiOi3AbjwdsfnAtk0bCjTLJKr6mrD9g8iq/S/B81hguOMlQTnVyG40wAcjnmgsCNESDrjme7wfftP4P7SP4N3CJZdvzoNyGq2c/HWOXJGsvVg+RA/k2MC/wN6I2YA2Pt8GkAAAAASUVORK5CYII=);background-color:#a94442;color:#f2dede;border-color:#ebccd1}.jq-icon-success{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADsSURBVEhLY2AYBfQMgf///3P8+/evAIgvA/FsIF+BavYDDWMBGroaSMMBiE8VC7AZDrIFaMFnii3AZTjUgsUUWUDA8OdAH6iQbQEhw4HyGsPEcKBXBIC4ARhex4G4BsjmweU1soIFaGg/WtoFZRIZdEvIMhxkCCjXIVsATV6gFGACs4Rsw0EGgIIH3QJYJgHSARQZDrWAB+jawzgs+Q2UO49D7jnRSRGoEFRILcdmEMWGI0cm0JJ2QpYA1RDvcmzJEWhABhD/pqrL0S0CWuABKgnRki9lLseS7g2AlqwHWQSKH4oKLrILpRGhEQCw2LiRUIa4lwAAAABJRU5ErkJggg==);color:#dff0d8;background-color:#3c763d;border-color:#d6e9c6}
diff --git a/extension/assets/3rd-parties/toast/toast.min.js b/extension/assets/3rd-parties/toast/toast.min.js
new file mode 100644
index 0000000..0cfd3d0
--- /dev/null
+++ b/extension/assets/3rd-parties/toast/toast.min.js
@@ -0,0 +1 @@
+"function"!=typeof Object.create&&(Object.create=function(t){function o(){}return o.prototype=t,new o}),function(t,o,i,s){"use strict";var n={_positionClasses:["bottom-left","bottom-right","top-right","top-left","bottom-center","top-center","mid-center"],_defaultIcons:["success","error","info","warning"],init:function(o,i){this.prepareOptions(o,t.toast.options),this.process()},prepareOptions:function(o,i){var s={};"string"==typeof o||o instanceof Array?s.text=o:s=o,this.options=t.extend({},i,s)},process:function(){this.setup(),this.addToDom(),this.position(),this.bindToast(),this.animate()},setup:function(){var o="";if(this._toastEl=this._toastEl||t("
",{"class":"jq-toast-single"}),o+='',this.options.allowToastClose&&(o+='×'),this.options.text instanceof Array){this.options.heading&&(o+=''+this.options.heading+"
"),o+='';for(var i=0;i'+this.options.text[i]+"";o+="
"}else this.options.heading&&(o+=''+this.options.heading+"
"),o+=this.options.text;this._toastEl.html(o),this.options.bgColor!==!1&&this._toastEl.css("background-color",this.options.bgColor),this.options.textColor!==!1&&this._toastEl.css("color",this.options.textColor),this.options.textAlign&&this._toastEl.css("text-align",this.options.textAlign),this.options.icon!==!1&&(this._toastEl.addClass("jq-has-icon"),-1!==t.inArray(this.options.icon,this._defaultIcons)&&this._toastEl.addClass("jq-icon-"+this.options.icon)),this.options["class"]!==!1&&this._toastEl.addClass(this.options["class"])},position:function(){"string"==typeof this.options.position&&-1!==t.inArray(this.options.position,this._positionClasses)?"bottom-center"===this.options.position?this._container.css({left:t(o).outerWidth()/2-this._container.outerWidth()/2,bottom:20}):"top-center"===this.options.position?this._container.css({left:t(o).outerWidth()/2-this._container.outerWidth()/2,top:20}):"mid-center"===this.options.position?this._container.css({left:t(o).outerWidth()/2-this._container.outerWidth()/2,top:t(o).outerHeight()/2-this._container.outerHeight()/2}):this._container.addClass(this.options.position):"object"==typeof this.options.position?this._container.css({top:this.options.position.top?this.options.position.top:"auto",bottom:this.options.position.bottom?this.options.position.bottom:"auto",left:this.options.position.left?this.options.position.left:"auto",right:this.options.position.right?this.options.position.right:"auto"}):this._container.addClass("bottom-left")},bindToast:function(){var t=this;this._toastEl.on("afterShown",function(){t.processLoader()}),this._toastEl.find(".close-jq-toast-single").on("click",function(o){o.preventDefault(),"fade"===t.options.showHideTransition?(t._toastEl.trigger("beforeHide"),t._toastEl.fadeOut(function(){t._toastEl.trigger("afterHidden")})):"slide"===t.options.showHideTransition?(t._toastEl.trigger("beforeHide"),t._toastEl.slideUp(function(){t._toastEl.trigger("afterHidden")})):(t._toastEl.trigger("beforeHide"),t._toastEl.hide(function(){t._toastEl.trigger("afterHidden")}))}),"function"==typeof this.options.beforeShow&&this._toastEl.on("beforeShow",function(){t.options.beforeShow()}),"function"==typeof this.options.afterShown&&this._toastEl.on("afterShown",function(){t.options.afterShown()}),"function"==typeof this.options.beforeHide&&this._toastEl.on("beforeHide",function(){t.options.beforeHide()}),"function"==typeof this.options.afterHidden&&this._toastEl.on("afterHidden",function(){t.options.afterHidden()})},addToDom:function(){var o=t(".jq-toast-wrap");if(0===o.length?(o=t("",{"class":"jq-toast-wrap"}),t("body").append(o)):(!this.options.stack||isNaN(parseInt(this.options.stack,10)))&&o.empty(),o.find(".jq-toast-single:hidden").remove(),o.append(this._toastEl),this.options.stack&&!isNaN(parseInt(this.options.stack),10)){var i=o.find(".jq-toast-single").length,s=i-this.options.stack;s>0&&t(".jq-toast-wrap").find(".jq-toast-single").slice(0,s).remove()}this._container=o},canAutoHide:function(){return this.options.hideAfter!==!1&&!isNaN(parseInt(this.options.hideAfter,10))},processLoader:function(){if(!this.canAutoHide()||this.options.loader===!1)return!1;var t=this._toastEl.find(".jq-toast-loader"),o=(this.options.hideAfter-400)/1e3+"s",i=this.options.loaderBg,s=t.attr("style")||"";s=s.substring(0,s.indexOf("-webkit-transition")),s+="-webkit-transition: width "+o+" ease-in; -o-transition: width "+o+" ease-in; transition: width "+o+" ease-in; background-color: "+i+";",t.attr("style",s).addClass("jq-toast-loaded")},animate:function(){var t=this;if(this._toastEl.hide(),this._toastEl.trigger("beforeShow"),"fade"===this.options.showHideTransition.toLowerCase()?this._toastEl.fadeIn(function(){t._toastEl.trigger("afterShown")}):"slide"===this.options.showHideTransition.toLowerCase()?this._toastEl.slideDown(function(){t._toastEl.trigger("afterShown")}):this._toastEl.show(function(){t._toastEl.trigger("afterShown")}),this.canAutoHide()){var t=this;o.setTimeout(function(){"fade"===t.options.showHideTransition.toLowerCase()?(t._toastEl.trigger("beforeHide"),t._toastEl.fadeOut(function(){t._toastEl.trigger("afterHidden")})):"slide"===t.options.showHideTransition.toLowerCase()?(t._toastEl.trigger("beforeHide"),t._toastEl.slideUp(function(){t._toastEl.trigger("afterHidden")})):(t._toastEl.trigger("beforeHide"),t._toastEl.hide(function(){t._toastEl.trigger("afterHidden")}))},this.options.hideAfter)}},reset:function(o){"all"===o?t(".jq-toast-wrap").remove():this._toastEl.remove()},update:function(t){this.prepareOptions(t,this.options),this.setup(),this.bindToast()}};t.toast=function(t){var o=Object.create(n);return o.init(t,this),{reset:function(t){o.reset(t)},update:function(t){o.update(t)}}},t.toast.options={text:"",heading:"",showHideTransition:"fade",allowToastClose:!0,hideAfter:3e3,loader:!0,loaderBg:"#9EC600",stack:5,position:"bottom-left",bgColor:!1,textColor:!1,textAlign:"left",icon:!1,beforeShow:function(){},afterShown:function(){},beforeHide:function(){},afterHidden:function(){}}}(jQuery,window,document);
\ No newline at end of file
diff --git a/extension/assets/internal/scripts/app.js b/extension/assets/internal/scripts/app.js
index 8015281..8bcec97 100644
--- a/extension/assets/internal/scripts/app.js
+++ b/extension/assets/internal/scripts/app.js
@@ -82,10 +82,12 @@
// =========== PRAYER TIME
activePrayerTimeDurationInMinute: 10,
+ isLocationAndPrayerTimeError: false,
// render player time placeholder.
// used on the screen during loading data process
renderPrayerTimePlaceholder() {
+ this.isLocationAndPrayerTimeError = false
$('.location .text').text('Loading ...')
// $(`.prayer-time tbody`).css('visibility', 'hidden')
@@ -97,7 +99,26 @@
})
// $(`.prayer-time tbody tr.prayer-time-row:eq(0)`).css('visibility', 'visible')
- $(`.prayer-time tbody tr.prayer-time-row:eq(0) td:eq(0)`).html('Loading ...')
+ $(`.prayer-time tbody tr.prayer-time-row:eq(0) td:eq(0)`).html(' Loading ...')
+
+ $(`.prayer-time tbody tr.prayer-time-row.active`).removeClass('active')
+
+ $('.prayer-time tbody tr.remaining-time td').html('');
+ $('.prayer-time tbody tr.remaining-time').hide();
+ },
+
+ // render player time error.
+ renderPrayerTimeError(err) {
+ this.isLocationAndPrayerTimeError = true
+ $('.location .text').text('Error ❌')
+
+ Array(6).fill(0).forEach((each, i) => {
+ $(`.prayer-time tbody tr.prayer-time-row:eq(${i}) td:eq(0)`).html('')
+ $(`.prayer-time tbody tr.prayer-time-row:eq(${i}) td:eq(1)`).html('')
+ $(`.prayer-time tbody tr.prayer-time-row:eq(${i}) td:eq(2)`).html('')
+ })
+
+ $(`.prayer-time tbody tr.prayer-time-row:eq(0) td:eq(0)`).html(` Error ❌`)
},
// get automatic prayer time
@@ -238,6 +259,10 @@
let isAlarmEverSet = false
const doRenderPrayerTime = () => {
+ if (this.isLocationAndPrayerTimeError) {
+ return
+ }
+
const hmFormatter = (str) => parseInt(str.slice(0, 5).replace(':', ''), 10)
const nowHM = parseInt(Utility.now().add(-1 * this.activePrayerTimeDurationInMinute, 'minutes').format('HHmm'), 10)
const fajrHM = hmFormatter(schedule.Fajr)
@@ -460,7 +485,7 @@
}, Constant.app.updateBackgroundDelayDuration)
}
preloader.onerror = (err) => {
- this.nextSelectedBackground = Utility.randomFromArray('background', data.content, this.selectedBackground)
+ this.nextSelectedBackground = Utility.randomFromArray('background', data.content, this.selectedBackground)
preloader.src = doGetBackgroundURL(this.nextSelectedBackground)
}
}
@@ -711,15 +736,19 @@
this.renderPrayerTime.call(this, schedule)
}
} catch (err) {
+ if (err instanceof Error) {
+ err = err.message
+ }
Utility.error(err)
- Swal.fire({
- type: 'error',
- title: I18n.getText('promptErrorFailToGetDataTitle'),
- html: err.message,
- confirmButtonText: 'OK',
- showConfirmButton: true,
- allowOutsideClick: true
- });
+ this.renderPrayerTimeError.call(this, err)
+ $.toast({
+ heading: 'Error',
+ text: err,
+ showHideTransition: 'fade',
+ icon: 'error',
+ position: 'top-center',
+ hideAfter: 10000
+ })
}
},
diff --git a/extension/assets/internal/scripts/i18n.js b/extension/assets/internal/scripts/i18n.js
index 9296e3d..6ea2c50 100644
--- a/extension/assets/internal/scripts/i18n.js
+++ b/extension/assets/internal/scripts/i18n.js
@@ -248,15 +248,15 @@ const I18n = {
'zh-cn': `almost|距离 $1 祈祷还有 10 分钟|在 $2`
},
- promptErrorFailToGetDataTitle: {
- ar: 'مشكلة في جلب البيانات',
- en: 'Error fetching data',
- ru: 'Ошибка при получении данных',
- bn: 'ডেটা আনতে সমস্যা হচ্ছে',
- hi: 'डेटा लाने में परेशानी हो रही है',
- id: 'Error koneksi pengambilan data',
- 'zh-tw': '取得資料錯誤',
- 'zh-cn': '获取数据错误'
+ promptErrorFailToGetLocationInfo: {
+ ar: 'تم حظر الاكتشاف التلقائي لخطأ الموقع بسبب "إذن الموقع". يرجى التأكد من تمكينه على المتصفح الخاص بك',
+ en: 'Auto-detect location error due to "location permission" is blocked. Please ensure to enable it on your browser',
+ ru: 'Ошибка автоматического определения местоположения из-за «разрешения на определение местоположения» заблокирована. Обязательно включите его в вашем браузере',
+ bn: '"অবস্থান অনুমতি" এর কারণে স্বয়ংক্রিয়ভাবে সনাক্তকরণের অবস্থানের ত্রুটি ব্লক করা হয়েছে। আপনার ব্রাউজারে এটি সক্ষম করা নিশ্চিত করুন',
+ hi: '"स्थान अनुमति" के कारण स्थान का स्वतः पता लगाने वाली त्रुटि अवरुद्ध है। कृपया अपने ब्राउज़र पर इसे सक्षम करना सुनिश्चित करें',
+ id: 'Terjadi error saat pengambilan informasi lokasi. Pastikan untuk membolehkan akses "location" di browser anda',
+ 'zh-tw': '由於“位置權限”被阻止而導致自動檢測位置錯誤。請確保在您的瀏覽器上啟用它',
+ 'zh-cn': '由于“位置权限”被阻止而导致自动检测位置错误。请确保在您的浏览器上启用它'
},
promptErrorFailToGetPrayerTimesMessage: {
ar: 'تعذر الحصول على مواقيت الصلاة بسبب خطأ. يرجى التأكد من توفر اتصال بالإنترنت ثم قم بتحديث الصفحة',
diff --git a/extension/assets/internal/scripts/utility.js b/extension/assets/internal/scripts/utility.js
index ce96209..cdfb0f8 100644
--- a/extension/assets/internal/scripts/utility.js
+++ b/extension/assets/internal/scripts/utility.js
@@ -44,14 +44,7 @@ const Utility = {
resolve(coordinateCache)
} else {
localStorage.removeItem('data-coordinate-cache')
- reject(new Error(`
-
Gagal mendeteksi lokasi user secara otomatis.
-
-
Pastikan "location permission" untuk ekstensi
-
Muslim Board adalah "allowed" dan ada akses internet.
-
-
Atau silakan gunakan fitur atur manual pilihan lokasi.
- `))
+ reject(new Error(I18n.getText('promptErrorFailToGetLocationInfo')))
}
}
diff --git a/extension/index.html b/extension/index.html
index 70d13e0..a022488 100644
--- a/extension/index.html
+++ b/extension/index.html
@@ -9,6 +9,7 @@
+
@@ -107,7 +108,7 @@
- ' |
+ |
18:58 |
WIB |
@@ -188,6 +189,7 @@
+
diff --git a/extension/manifest.json b/extension/manifest.json
index c45019f..6b3e6d9 100644
--- a/extension/manifest.json
+++ b/extension/manifest.json
@@ -2,7 +2,7 @@
"manifest_version": 3,
"name": "Muslim Board",
"short_name": "muslimboard",
- "version": "2.10.1",
+ "version": "2.11.0",
"description": "Personal Dashboard for Muslim",
"chrome_url_overrides": {
"newtab": "index.html"
diff --git a/extension/manifests/chrome.json b/extension/manifests/chrome.json
index c45019f..6b3e6d9 100644
--- a/extension/manifests/chrome.json
+++ b/extension/manifests/chrome.json
@@ -2,7 +2,7 @@
"manifest_version": 3,
"name": "Muslim Board",
"short_name": "muslimboard",
- "version": "2.10.1",
+ "version": "2.11.0",
"description": "Personal Dashboard for Muslim",
"chrome_url_overrides": {
"newtab": "index.html"
diff --git a/extension/manifests/edge.json b/extension/manifests/edge.json
index c45019f..6b3e6d9 100644
--- a/extension/manifests/edge.json
+++ b/extension/manifests/edge.json
@@ -2,7 +2,7 @@
"manifest_version": 3,
"name": "Muslim Board",
"short_name": "muslimboard",
- "version": "2.10.1",
+ "version": "2.11.0",
"description": "Personal Dashboard for Muslim",
"chrome_url_overrides": {
"newtab": "index.html"
diff --git a/extension/manifests/firefox.json b/extension/manifests/firefox.json
index daa4040..661d5d8 100644
--- a/extension/manifests/firefox.json
+++ b/extension/manifests/firefox.json
@@ -2,7 +2,7 @@
"manifest_version": 2,
"name": "Muslim Board",
"short_name": "muslimboard",
- "version": "2.10.1",
+ "version": "2.11.0",
"description": "Personal Dashboard for Muslim",
"chrome_url_overrides": {
"newtab": "index.html"
diff --git a/macos/Muslim Board Extension/manifest.json b/macos/Muslim Board Extension/manifest.json
index daa4040..661d5d8 100644
--- a/macos/Muslim Board Extension/manifest.json
+++ b/macos/Muslim Board Extension/manifest.json
@@ -2,7 +2,7 @@
"manifest_version": 2,
"name": "Muslim Board",
"short_name": "muslimboard",
- "version": "2.10.1",
+ "version": "2.11.0",
"description": "Personal Dashboard for Muslim",
"chrome_url_overrides": {
"newtab": "index.html"
diff --git a/macos/Muslim Board.xcodeproj/project.pbxproj b/macos/Muslim Board.xcodeproj/project.pbxproj
index 392a59a..d443d53 100644
--- a/macos/Muslim Board.xcodeproj/project.pbxproj
+++ b/macos/Muslim Board.xcodeproj/project.pbxproj
@@ -650,7 +650,7 @@
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 10.13;
- MARKETING_VERSION = 2.10.1;
+ MARKETING_VERSION = 2.11.0;
OTHER_LDFLAGS = (
"-framework",
SafariServices,
@@ -690,7 +690,7 @@
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 10.13;
- MARKETING_VERSION = 2.10.1;
+ MARKETING_VERSION = 2.11.0;
OTHER_LDFLAGS = (
"-framework",
SafariServices,