From 8023286ca3efea0efbfebeabaf45026032f86d01 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Sat, 11 Feb 2017 05:59:53 +0800 Subject: [PATCH 01/67] Update README.md --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 7766935..2c8fcd3 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ -## Would you like to own this Open Source Project? -If so please get in touch via Github issues. I can transfer the ownership of this **organisation**, the associated npm packages and it's twitter account (https://twitter.com/riotcomponents) to anyone who can take it further than my time permits +## Forked RiotGear +The orginal RG implementation is based on Blaze CSS 1.x. Many users in the community are using Blaze CSS 2.x, which breaks RG. # RiotGear From 5c1afb6a04a3eabeb19bea5a7b65c106d1a1c19c Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Sat, 11 Feb 2017 06:02:49 +0800 Subject: [PATCH 02/67] Update rg-alerts.js --- dist/rg-alerts/rg-alerts.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dist/rg-alerts/rg-alerts.js b/dist/rg-alerts/rg-alerts.js index 5463814..9d0b046 100644 --- a/dist/rg-alerts/rg-alerts.js +++ b/dist/rg-alerts/rg-alerts.js @@ -1,4 +1,4 @@ -riot.tag2('rg-alerts', '
{text}
', '', '', function(opts) { +riot.tag2('rg-alerts', '
{text}
', '', '', function(opts) { var _this = this; this.on('update', function () { From a93034216003dd13c55fd43568d1b248d109dd17 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Sat, 11 Feb 2017 06:03:49 +0800 Subject: [PATCH 03/67] Update rg-bubble.js --- dist/rg-bubble/rg-bubble.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dist/rg-bubble/rg-bubble.js b/dist/rg-bubble/rg-bubble.js index 9994152..038ff15 100644 --- a/dist/rg-bubble/rg-bubble.js +++ b/dist/rg-bubble/rg-bubble.js @@ -1,4 +1,4 @@ -riot.tag2('rg-bubble', '
{opts.bubble.text}
', 'rg-bubble .context,[riot-tag="rg-bubble"] .context,[data-is="rg-bubble"] .context,rg-bubble .content,[riot-tag="rg-bubble"] .content,[data-is="rg-bubble"] .content{ display: inline-block; position: relative; } rg-bubble .bubble,[riot-tag="rg-bubble"] .bubble,[data-is="rg-bubble"] .bubble{ position: absolute; top: -70px; left: 50%; transform: translate3d(-50%, 0, 0); }', '', function(opts) { +riot.tag2('rg-bubble', '
{opts.bubble.text}
', 'rg-bubble .context,[riot-tag="rg-bubble"] .context,[data-is="rg-bubble"] .context,rg-bubble .content,[riot-tag="rg-bubble"] .content,[data-is="rg-bubble"] .content{ display: inline-block; position: relative; } rg-bubble .bubble,[riot-tag="rg-bubble"] .bubble,[data-is="rg-bubble"] .bubble{ position: absolute; top: -70px; left: 50%; transform: translate3d(-50%, 0, 0); }', '', function(opts) { var _this = this; this.showBubble = function () { From eff8462ed9da6e0b2fcacd63f35d791aa14bea8b Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Sat, 11 Feb 2017 06:39:43 +0800 Subject: [PATCH 04/67] Update rg-alerts.js --- dist/rg-alerts/rg-alerts.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dist/rg-alerts/rg-alerts.js b/dist/rg-alerts/rg-alerts.js index 9d0b046..5985dd8 100644 --- a/dist/rg-alerts/rg-alerts.js +++ b/dist/rg-alerts/rg-alerts.js @@ -1,4 +1,4 @@ -riot.tag2('rg-alerts', '
{text}
', '', '', function(opts) { +riot.tag2('rg-alerts', '
{text}
', '', '', function(opts) { var _this = this; this.on('update', function () { From 2a674da514b1466b15e1200f72318beef208ee3b Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Sat, 11 Feb 2017 06:41:50 +0800 Subject: [PATCH 05/67] Update rg-bubble.js Fixed based on original RG 3.5.0 code. --- dist/rg-bubble/rg-bubble.js | 33 +++++++++++++++------------------ 1 file changed, 15 insertions(+), 18 deletions(-) diff --git a/dist/rg-bubble/rg-bubble.js b/dist/rg-bubble/rg-bubble.js index 038ff15..93200cb 100644 --- a/dist/rg-bubble/rg-bubble.js +++ b/dist/rg-bubble/rg-bubble.js @@ -1,19 +1,16 @@ -riot.tag2('rg-bubble', '
{opts.bubble.text}
', 'rg-bubble .context,[riot-tag="rg-bubble"] .context,[data-is="rg-bubble"] .context,rg-bubble .content,[riot-tag="rg-bubble"] .content,[data-is="rg-bubble"] .content{ display: inline-block; position: relative; } rg-bubble .bubble,[riot-tag="rg-bubble"] .bubble,[data-is="rg-bubble"] .bubble{ position: absolute; top: -70px; left: 50%; transform: translate3d(-50%, 0, 0); }', '', function(opts) { -var _this = this; - -this.showBubble = function () { - clearTimeout(_this._timer); - _this.isvisible = true; -}; - -this.hideBubble = function () { - _this._timer = setTimeout(function () { - _this.isvisible = false; - _this.update(); - }, 1000); -}; - -this.toggleBubble = function () { - _this.isvisible = !_this.isvisible; -}; +riot.tag2("rg-bubble", '
{opts.bubble.text}
', 'rg-bubble .context,[riot-tag="rg-bubble"] .context,[data-is="rg-bubble"] .context,rg-bubble .content,[riot-tag="rg-bubble"] .content,[data-is="rg-bubble"] .content{ display: inline-block; position: relative; } rg-bubble .c-bubble,[riot-tag="rg-bubble"] .c-bubble,[data-is="rg-bubble"] .c-bubble{ position: absolute; top: -70px; left: 50%; transform: translate3d(-50%, 0, 0); }', "", function(opts) { + var _this = this; + this.showBubble = function() { + clearTimeout(_this._timer); + _this.isvisible = true + }; + this.hideBubble = function() { + _this._timer = setTimeout(function() { + _this.isvisible = false; + _this.update() + }, 1e3) + }; + this.toggleBubble = function() { + _this.isvisible = !_this.isvisible + } }); From 7cb953db91cd609d47293cfd458ab1db98a3779e Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Sat, 11 Feb 2017 06:51:56 +0800 Subject: [PATCH 06/67] 3.6.0 - In Progress --- dist/rg-date/rg-date.js | 293 +++++++++++++++++++--------------------- 1 file changed, 136 insertions(+), 157 deletions(-) diff --git a/dist/rg-date/rg-date.js b/dist/rg-date/rg-date.js index 8d18042..d1b434e 100644 --- a/dist/rg-date/rg-date.js +++ b/dist/rg-date/rg-date.js @@ -1,158 +1,137 @@ -riot.tag2('rg-date', '
{opts.date.date.format(yearFormat)}
{opts.date.date.format(monthFormat)}
Mo
Tu
We
Th
Fr
Sa
Su
', 'rg-date .container,[riot-tag="rg-date"] .container,[data-is="rg-date"] .container{ position: relative; display: inline-block; cursor: pointer; } rg-date .calendar,[riot-tag="rg-date"] .calendar,[data-is="rg-date"] .calendar{ position: absolute; min-width: 300px; margin-top: .5em; left: 0; }', '', function(opts) { -var _this = this; - -var toMoment = function toMoment(d) { - if (!moment.isMoment(d)) d = moment(d); - if (d.isValid()) return d; - return moment(); -}; - -var handleClickOutside = function handleClickOutside(e) { - if (!_this.root.contains(e.target)) _this.close(); - _this.update(); -}; - -var dayObj = function dayObj(dayDate) { - var dateObj = dayDate || moment(); - - return { - date: dateObj, - selected: opts.date.date.isSame(dayDate, 'day'), - today: moment().isSame(dayDate, 'day'), - disabled: opts.date.min && opts.date.min.isAfter(dayDate) || opts.date.max && opts.date.max.isBefore(dayDate) - }; -}; - -var buildCalendar = function buildCalendar() { - _this.format = 'LL'; - _this.yearFormat = 'YYYY'; - _this.monthFormat = 'MMMM'; - _this.dayFormat = 'DD'; - - _this.days = []; - _this.startBuffer = []; - _this.endBuffer = []; - - var begin = moment(opts.date.date).startOf('month'); - var daysInMonth = moment(opts.date.date).daysInMonth(); - var end = moment(opts.date.date).endOf('month'); - - for (var i = begin.isoWeekday() - 1; i > 0; i -= 1) { - var d = moment(begin).subtract(i, 'days'); - _this.startBuffer.push(dayObj(d)); - } - - for (var i = 0; i < daysInMonth; i++) { - var current = moment(begin).add(i, 'days'); - _this.days.push(dayObj(current)); - } - - for (var i = end.isoWeekday() + 1; i <= 7; i++) { - var d = moment(end).add(i - end.isoWeekday(), 'days'); - _this.endBuffer.push(dayObj(d)); - } -}; - -this.on('mount', function () { - if (!opts.date) opts.date = { date: moment() }; - if (!opts.date.date) opts.date.date = moment(); - opts.date.date = toMoment(opts.date.date); - - if (opts.date.min) { - opts.date.min = toMoment(opts.date.min); - - if (opts.date.min.isAfter(moment(), 'day')) { - opts.date.date = moment(opts.date.min); - } - } - - if (opts.date.max) { - opts.date.max = toMoment(opts.date.max); - - if (opts.date.max.isBefore(moment(), 'day')) { - opts.date.date = moment(opts.date.max); - } - } - - _this.on('update', function () { - opts.date.date = toMoment(opts.date.date); - buildCalendar(); - positionDropdown(); - }); - document.addEventListener('click', handleClickOutside); - _this.update(); -}); - -this.on('unmount', function () { - document.removeEventListener('click', handleClickOutside); -}); - -this.open = function () { - opts.date.isvisible = true; - _this.trigger('open'); -}; - -this.close = function () { - if (opts.date.isvisible) { - opts.date.isvisible = false; - _this.trigger('close'); - } -}; - -this.select = function (e) { - opts.date.date = e.item.day.date; - _this.trigger('select', opts.date.date); -}; - -this.setToday = function () { - opts.date.date = moment(); - _this.trigger('select', opts.date.date); -}; - -this.prevYear = function () { - opts.date.date = opts.date.date.subtract(1, 'year'); -}; - -this.nextYear = function () { - opts.date.date = opts.date.date.add(1, 'year'); -}; - -this.prevMonth = function () { - opts.date.date = opts.date.date.subtract(1, 'month'); -}; - -this.nextMonth = function () { - opts.date.date = opts.date.date.add(1, 'month'); -}; - -function getWindowDimensions() { - var w = window, - d = document, - e = d.documentElement, - g = d.getElementsByTagName('body')[0], - x = w.innerWidth || e.clientWidth || g.clientWidth, - y = w.innerHeight || e.clientHeight || g.clientHeight; - return { width: x, height: y }; -} - -var positionDropdown = function positionDropdown() { - var w = getWindowDimensions(); - var m = _this.root.querySelector('.calendar'); - if (!m) return; - if (!opts.date.isvisible) { - m.style.marginTop = ''; - m.style.marginLeft = ''; - return; - } - var pos = m.getBoundingClientRect(); - if (w.width < pos.left + pos.width) { - m.style.marginLeft = w.width - (pos.left + pos.width) - 20 + 'px'; - } - if (pos.left < 0) { - m.style.marginLeft = '20px'; - } - if (w.height < pos.top + pos.height) { - m.style.marginTop = w.height - (pos.top + pos.height) - 20 + 'px'; - } -}; +riot.tag2("rg-date", '
{opts.date.date.format(yearFormat)}
{opts.date.date.format(monthFormat)}
Mo
Tu
We
Th
Fr
Sa
Su
', 'rg-date .container,[riot-tag="rg-date"] .container,[data-is="rg-date"] .container{ position: relative; display: inline-block; cursor: pointer; } rg-date .c-calendar,[riot-tag="rg-date"] .c-calendar,[data-is="rg-date"] .c-calendar{ position: absolute; min-width: 300px; margin-top: .5em; left: 0; }', "", function(opts) { + var _this = this; + var toMoment = function toMoment(d) { + if (!moment.isMoment(d)) d = moment(d); + if (d.isValid()) return d; + return moment() + }; + var handleClickOutside = function handleClickOutside(e) { + if (!_this.root.contains(e.target)) _this.close(); + _this.update() + }; + var dayObj = function dayObj(dayDate) { + var dateObj = dayDate || moment(); + return { + date: dateObj, + selected: opts.date.date.isSame(dayDate, "day"), + today: moment().isSame(dayDate, "day"), + disabled: opts.date.min && opts.date.min.isAfter(dayDate) || opts.date.max && opts.date.max.isBefore(dayDate) + } + }; + var buildCalendar = function buildCalendar() { + _this.format = "LL"; + _this.yearFormat = "YYYY"; + _this.monthFormat = "MMMM"; + _this.dayFormat = "DD"; + _this.days = []; + _this.startBuffer = []; + _this.endBuffer = []; + var begin = moment(opts.date.date).startOf("month"); + var daysInMonth = moment(opts.date.date).daysInMonth(); + var end = moment(opts.date.date).endOf("month"); + for (var i = begin.isoWeekday() - 1; i > 0; i -= 1) { + var d = moment(begin).subtract(i, "days"); + _this.startBuffer.push(dayObj(d)) + } + for (var i = 0; i < daysInMonth; i++) { + var current = moment(begin).add(i, "days"); + _this.days.push(dayObj(current)) + } + for (var i = end.isoWeekday() + 1; i <= 7; i++) { + var d = moment(end).add(i - end.isoWeekday(), "days"); + _this.endBuffer.push(dayObj(d)) + } + }; + this.on("mount", function() { + if (!opts.date) opts.date = { + date: moment() + }; + if (!opts.date.date) opts.date.date = moment(); + opts.date.date = toMoment(opts.date.date); + if (opts.date.min) { + opts.date.min = toMoment(opts.date.min); + if (opts.date.min.isAfter(moment(), "day")) { + opts.date.date = moment(opts.date.min) + } + } + if (opts.date.max) { + opts.date.max = toMoment(opts.date.max); + if (opts.date.max.isBefore(moment(), "day")) { + opts.date.date = moment(opts.date.max) + } + } + _this.on("update", function() { + opts.date.date = toMoment(opts.date.date); + buildCalendar(); + positionDropdown() + }); + document.addEventListener("click", handleClickOutside); + _this.update() + }); + this.on("unmount", function() { + document.removeEventListener("click", handleClickOutside) + }); + this.open = function() { + opts.date.isvisible = true; + _this.trigger("open") + }; + this.close = function() { + if (opts.date.isvisible) { + opts.date.isvisible = false; + _this.trigger("close") + } + }; + this.select = function(e) { + opts.date.date = e.item.day.date; + _this.trigger("select", opts.date.date) + }; + this.setToday = function() { + opts.date.date = moment(); + _this.trigger("select", opts.date.date) + }; + this.prevYear = function() { + opts.date.date = opts.date.date.subtract(1, "year") + }; + this.nextYear = function() { + opts.date.date = opts.date.date.add(1, "year") + }; + this.prevMonth = function() { + opts.date.date = opts.date.date.subtract(1, "month") + }; + this.nextMonth = function() { + opts.date.date = opts.date.date.add(1, "month") + }; + + function getWindowDimensions() { + var w = window, + d = document, + e = d.documentElement, + g = d.getElementsByTagName("body")[0], + x = w.innerWidth || e.clientWidth || g.clientWidth, + y = w.innerHeight || e.clientHeight || g.clientHeight; + return { + width: x, + height: y + } + } + var positionDropdown = function positionDropdown() { + var w = getWindowDimensions(); + var m = _this.root.querySelector(".c-calendar"); + if (!m) return; + if (!opts.date.isvisible) { + m.style.marginTop = ""; + m.style.marginLeft = ""; + return + } + var pos = m.getBoundingClientRect(); + if (w.width < pos.left + pos.width) { + m.style.marginLeft = w.width - (pos.left + pos.width) - 20 + "px" + } + if (pos.left < 0) { + m.style.marginLeft = "20px" + } + if (w.height < pos.top + pos.height) { + m.style.marginTop = w.height - (pos.top + pos.height) - 20 + "px" + } + } }); From 1ad1029a23c5b9f05646a93a0e6ca8b30c6e15eb Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Sat, 11 Feb 2017 06:52:48 +0800 Subject: [PATCH 07/67] 3.6.0 - Fixed and tested --- dist/rg-bubble/rg-bubble.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dist/rg-bubble/rg-bubble.js b/dist/rg-bubble/rg-bubble.js index 93200cb..dfb6777 100644 --- a/dist/rg-bubble/rg-bubble.js +++ b/dist/rg-bubble/rg-bubble.js @@ -13,4 +13,4 @@ riot.tag2("rg-bubble", '
{opts.date.date.format(yearFormat)}
{opts.date.date.format(monthFormat)}
Mo
Tu
We
Th
Fr
Sa
Su
', 'rg-date .container,[riot-tag="rg-date"] .container,[data-is="rg-date"] .container{ position: relative; display: inline-block; cursor: pointer; } rg-date .c-calendar,[riot-tag="rg-date"] .c-calendar,[data-is="rg-date"] .c-calendar{ position: absolute; min-width: 300px; margin-top: .5em; left: 0; }', "", function(opts) { +riot.tag2("rg-date", '
{opts.date.date.format(yearFormat)}
{opts.date.date.format(monthFormat)}
Mo
Tu
We
Th
Fr
Sa
Su
', 'rg-date .container,[riot-tag="rg-date"] .container,[data-is="rg-date"] .container{ position: relative; display: inline-block; cursor: pointer; } rg-date .c-calendar,[riot-tag="rg-date"] .c-calendar,[data-is="rg-date"] .c-calendar{ position: absolute; min-width: 300px; margin-top: .5em; left: 0; }', "", function(opts) { var _this = this; var toMoment = function toMoment(d) { if (!moment.isMoment(d)) d = moment(d); From cf08d52e6fd96032879bcebfaba48503189cbc4c Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Mon, 13 Feb 2017 07:01:13 +0800 Subject: [PATCH 09/67] 3.6.1 -- Added a new tag "rg-alert" There is still a minor issue on the default action of dismissed, a single instance of rg-alert, correctly, by default, has dissmissable set to TRUE. However, you must explicitly set it true manually for the rg-alerts list version. Syntax and features are the same as 3.5.0. Timeout works in both cases. Animations will be added later. --- dist/rg-alerts/rg-alerts.js | 64 ++++++++++++++++++------------------- 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/dist/rg-alerts/rg-alerts.js b/dist/rg-alerts/rg-alerts.js index 5985dd8..25655c0 100644 --- a/dist/rg-alerts/rg-alerts.js +++ b/dist/rg-alerts/rg-alerts.js @@ -1,34 +1,34 @@ -riot.tag2('rg-alerts', '
{text}
', '', '', function(opts) { -var _this = this; - -this.on('update', function () { - if (!opts.alerts) return; - opts.alerts.forEach(function (alert) { - if (typeof alert.isvisible === 'undefined') alert.isvisible = true; - if (alert.timeout) { - alert.startTimer = function () { - alert.timer = setTimeout(function () { - _this.dismiss({ - item: alert - }); - }, alert.timeout); - }; - alert.startTimer(); - } - }); -}); +riot.tag("rg-alert", '
{opts.text}
', "", "", function(opts) { + var _this = this; + + if (typeof opts.dismissable == "string") { + opts.dismissable = Boolean(opts.dismissable); + } + + if (typeof this.opts.dismissable != "boolean") { + this.opts.dismissable = true; + } + + if (typeof opts.timeout == "string") + opts.timeout = Number(opts.timeout); -this.dismiss = function (e) { - var alert = e.item; - alert.isvisible = false; - clearTimeout(alert.timer); - _this.trigger('dismiss', alert); - _this.update(); -}; - -this.select = function (e) { - var alert = e.item; - if (alert.onclick) alert.onclick(alert); - _this.trigger('select', alert); -}; + if (typeof opts.timeout == "number" && opts.timeout > 0) { + this.startTimer = function() { + this.timer = setTimeout(function() { + _this.dismiss(); + }, opts.timeout) + }; + this.startTimer() + } + + + this.dismiss = function(e) { + if (this.opts.timeout) + clearTimeout(this.startTimer); + + this.unmount(); + } // onSelect }); + +// Multiple Alets +riot.tag("rg-alerts", '
', "", "", function() {}); From 48fdafb8be66802807842febee7021c0b0f362d1 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Mon, 13 Feb 2017 07:14:21 +0800 Subject: [PATCH 10/67] 3.5.0 No changes from forked code base. --- dist/rg-chart/rg-chart.js | 81 ++++++++++++++++++--------------------- 1 file changed, 38 insertions(+), 43 deletions(-) diff --git a/dist/rg-chart/rg-chart.js b/dist/rg-chart/rg-chart.js index 36f4457..7193d5a 100644 --- a/dist/rg-chart/rg-chart.js +++ b/dist/rg-chart/rg-chart.js @@ -1,44 +1,39 @@ -riot.tag2('rg-chart', '', 'rg-chart,[riot-tag="rg-chart"],[data-is="rg-chart"]{ display: inline-block; width: 100%; }', '', function(opts) { -var _this = this; - -Chart.defaults.global.responsive = true; - -this.on('mount', function () { - drawChart(); -}); - -this.on('loaded', function (c) { - _this.on('unmount', function () { - c.destroy(); - }); -}); - -var drawChart = function drawChart() { - if (!opts.chart) opts.chart = {}; - - var ctx = _this.root.querySelector('canvas').getContext('2d'); - var chart = new Chart(ctx); - var c = null; - switch (opts.chart.type) { - case 'line': - c = chart.Line(opts.chart.data, opts.chart.options); - break; - case 'radar': - c = chart.Radar(opts.chart.data, opts.chart.options); - break; - case 'polar': - c = chart.PolarArea(opts.chart.data, opts.chart.options); - break; - case 'pie': - c = chart.Pie(opts.chart.data, opts.chart.options); - break; - case 'doughnut': - c = chart.Doughnut(opts.chart.data, opts.chart.options); - break; - default: - c = chart.Bar(opts.chart.data, opts.chart.options); - break; - } - _this.trigger('loaded', c); -}; +riot.tag2("rg-chart", "", 'rg-chart,[riot-tag="rg-chart"],[data-is="rg-chart"]{ display: inline-block; width: 100%; }', "", function(opts) { + var _this = this; + Chart.defaults.global.responsive = true; + this.on("mount", function() { + drawChart() + }); + this.on("loaded", function(c) { + _this.on("unmount", function() { + c.destroy() + }) + }); + var drawChart = function drawChart() { + if (!opts.chart) opts.chart = {}; + var ctx = _this.root.querySelector("canvas").getContext("2d"); + var chart = new Chart(ctx); + var c = null; + switch (opts.chart.type) { + case "line": + c = chart.Line(opts.chart.data, opts.chart.options); + break; + case "radar": + c = chart.Radar(opts.chart.data, opts.chart.options); + break; + case "polar": + c = chart.PolarArea(opts.chart.data, opts.chart.options); + break; + case "pie": + c = chart.Pie(opts.chart.data, opts.chart.options); + break; + case "doughnut": + c = chart.Doughnut(opts.chart.data, opts.chart.options); + break; + default: + c = chart.Bar(opts.chart.data, opts.chart.options); + break + } + _this.trigger("loaded", c) + } }); From 72d9b0ca56f1d52bc5e2a21e43d32293b924cb8b Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Mon, 13 Feb 2017 07:24:42 +0800 Subject: [PATCH 11/67] 3.2 - Code Editor --- tags/rg-code/rg-code.tag | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tags/rg-code/rg-code.tag b/tags/rg-code/rg-code.tag index b8146f2..d70b62f 100644 --- a/tags/rg-code/rg-code.tag +++ b/tags/rg-code/rg-code.tag @@ -53,6 +53,6 @@ bottom: 0; left: 0; } - + From 7eaf8c242523dcb3006454822ebdef129efb66c3 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Mon, 13 Feb 2017 14:39:22 +0800 Subject: [PATCH 12/67] Delete rg-drawer.spec.js --- tags/rg-drawer/rg-drawer.spec.js | 65 -------------------------------- 1 file changed, 65 deletions(-) delete mode 100644 tags/rg-drawer/rg-drawer.spec.js diff --git a/tags/rg-drawer/rg-drawer.spec.js b/tags/rg-drawer/rg-drawer.spec.js deleted file mode 100644 index b90763e..0000000 --- a/tags/rg-drawer/rg-drawer.spec.js +++ /dev/null @@ -1,65 +0,0 @@ -describe('rg-drawer', function () { - let tag, drawer - let onClickSpy = sinon.spy() - let onCloseSpy = sinon.spy() - - beforeEach(function () { - $('body').append('') - drawer = { - header: 'Side Menu', - isvisible: true, - items: [{ - text: 'Item 1' - }, { - text: 'Item 2' - }] - } - - tag = riot.mount('rg-drawer', { - drawer - })[0] - - tag.on('select', onClickSpy) - .on('close', onCloseSpy) - }) - - afterEach(function () { - tag.unmount() - }) - - it('is mounted', function () { - tag.isMounted.should.be.true - }) - - it('has an overlay', function () { - $('rg-drawer .overlay').length.should.equal(1) - $('rg-drawer .drawer').is('.drawer--visible').should.be.true - }) - - it('header is set correctly', function () { - $('rg-drawer .heading').text().should.contain('Side Menu') - }) - - it('has items', function () { - $('rg-drawer .menu__item').length.should.equal(2) - $('rg-drawer .menu__item:nth-child(1)').text().should.contain('Item 1') - $('rg-drawer .menu__item:nth-child(2)').text().should.contain('Item 2') - }) - - it('clicking an item activates it', function () { - $('rg-drawer .menu__item:nth-child(1)').is('.menu__item--active').should.be.false - $('rg-drawer .menu__item:nth-child(2)').is('.menu__item--active').should.be.false - $('rg-drawer .menu__item:nth-child(1)').click() - $('rg-drawer .menu__item:nth-child(1)').is('.menu__item--active').should.be.true - $('rg-drawer .menu__item:nth-child(2)').is('.menu__item--active').should.be.false - $('rg-drawer .menu__item:nth-child(2)').click() - $('rg-drawer .menu__item:nth-child(1)').is('.menu__item--active').should.be.false - $('rg-drawer .menu__item:nth-child(2)').is('.menu__item--active').should.be.true - }) - - it('clicking overlay closes draw', function () { - $('rg-drawer .overlay').click() - $('rg-drawer .overlay').length.should.equal(0) - $('rg-drawer .drawer').is('.drawer--visible').should.be.false - }) -}) From d835e286090f60f9223e9d0afce9389caada72ea Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Mon, 13 Feb 2017 14:39:34 +0800 Subject: [PATCH 13/67] Delete rg-drawer.tag --- tags/rg-drawer/rg-drawer.tag | 37 ------------------------------------ 1 file changed, 37 deletions(-) delete mode 100644 tags/rg-drawer/rg-drawer.tag diff --git a/tags/rg-drawer/rg-drawer.tag b/tags/rg-drawer/rg-drawer.tag deleted file mode 100644 index b1feb7a..0000000 --- a/tags/rg-drawer/rg-drawer.tag +++ /dev/null @@ -1,37 +0,0 @@ - - -
- -
-

{ opts.drawer.header }

- - - -
- -
-
- - - -
From 7440d67f7cd82a358fcd06439ee1b5cf026eac8c Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Mon, 13 Feb 2017 14:42:50 +0800 Subject: [PATCH 14/67] 3.6.0 Adds functionality for footers etc. Example usage: ... HTML: The contents of my own special drawer.
Some random text.
--- SCRIPT: var tags = riot.mount('rg-drawer', { header: "My Drawer Title", items : [ {text: "items 1"}, {text: "Items 2"} ], footer:{ items : [ {text: "Press 1"}, {text: "Press 2"} ] } }); --- dist/rg-drawer/rg-drawer.js | 30 ++++++++++++++---------------- 1 file changed, 14 insertions(+), 16 deletions(-) diff --git a/dist/rg-drawer/rg-drawer.js b/dist/rg-drawer/rg-drawer.js index da2af26..fa357a9 100644 --- a/dist/rg-drawer/rg-drawer.js +++ b/dist/rg-drawer/rg-drawer.js @@ -1,20 +1,18 @@ -riot.tag2('rg-drawer', '

{opts.drawer.header}

', '', '', function(opts) { -var _this = this; +riot.tag("rg-drawer", '

{opts.header}
{opts.subheading}

  • {text}
', "", "", function(opts) { + var _this = this; -this.on('mount', function () { - if (!opts.drawer) opts.drawer = {}; + this.close = function() { + this.unmount() ; + }; + + this.select = function(e) { + opts.items.forEach(function(item) { + return item.active = false + }); + e.item.active = true; + _this.trigger("select", e.item) + } }); -this.close = function () { - opts.drawer.isvisible = false; - _this.trigger('close'); -}; -this.select = function (e) { - opts.drawer.items.forEach(function (item) { - return item.active = false; - }); - e.item.active = true; - _this.trigger('select', e.item); -}; -}); + From 1ef52def3cd893efdbe7c0d30524f7ce2e4498c8 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Mon, 13 Feb 2017 14:59:26 +0800 Subject: [PATCH 15/67] 3.6.0 No visible user interaction. Obviously. :-P --- dist/rg-ga/rg-ga.js | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/dist/rg-ga/rg-ga.js b/dist/rg-ga/rg-ga.js index b5497f7..1bec3b9 100644 --- a/dist/rg-ga/rg-ga.js +++ b/dist/rg-ga/rg-ga.js @@ -1,11 +1,15 @@ -riot.tag2('rg-ga', '', '', '', function(opts) { +riot.tag("rg-ga", "", "", "", function(opts) { + (function(i, s, o, g, r, a, m) { + i["GoogleAnalyticsObject"] = r; + i[r] = i[r] || function() { + (i[r].q = i[r].q || []).push(arguments) + }, i[r].l = 1 * new Date; + a = s.createElement(o), m = s.getElementsByTagName(o)[0]; + a.async = 1; + a.src = g; + m.parentNode.insertBefore(a, m) + })(window, document, "script", "//www.google-analytics.com/analytics.js", "ga"); -(function (i, s, o, g, r, a, m) { - i['GoogleAnalyticsObject'] = r;i[r] = i[r] || function () { - (i[r].q = i[r].q || []).push(arguments); - }, i[r].l = 1 * new Date();a = s.createElement(o), m = s.getElementsByTagName(o)[0];a.async = 1;a.src = g;m.parentNode.insertBefore(a, m); -})(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga'); - -ga('create', opts.property, 'auto'); -ga('send', 'pageview'); + ga("create", opts.property, "auto"); + ga("send", "pageview") }); From ec077a7df895e7544c1bcd31cb16a60c165f318f Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Mon, 13 Feb 2017 15:01:41 +0800 Subject: [PATCH 16/67] 3.6.1 -- Added new single alert tag Example usage: --- HTML:
-- SCRIPT: var tags = riot.mount('rg-alert'); var tags = riot.mount('rg-alerts', { alerts: [{ type: 'brand', text: 'Look! Something you should know about.' }, { type: 'warning', text: 'Warning! You can\'t remove this alert.', dismissable: false }, { type: 'success', text: 'Success! Well done. This alert will disappear in 10 seconds', timeout: 10000 }, { type: 'error', text: 'Error! Something bad happened. ', dismissable: true }] }); --- dist/rg-alerts/rg-alerts.js | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/dist/rg-alerts/rg-alerts.js b/dist/rg-alerts/rg-alerts.js index 25655c0..e0d93a5 100644 --- a/dist/rg-alerts/rg-alerts.js +++ b/dist/rg-alerts/rg-alerts.js @@ -1,6 +1,17 @@ -riot.tag("rg-alert", '
{opts.text}
', "", "", function(opts) { +// Single Alert +riot.tag("rg-alert", '
{opts.text}
', "", "", function(opts) { var _this = this; + this.on("mount", function() { + if (this.opts.dismissable) + this.refs.closeButton.hidden = false ; + else + this.refs.closeButton.hidden = true ; + + this.update() ; + }); + + if (typeof opts.dismissable == "string") { opts.dismissable = Boolean(opts.dismissable); } @@ -31,4 +42,6 @@ riot.tag("rg-alert", '
', "", "", function() {}); +riot.tag("rg-alerts", '
', "", "", + function() { + }); From 2d4a2dfc47c99f6417a72a6a63b3d3dc100f47df Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Mon, 13 Feb 2017 15:05:03 +0800 Subject: [PATCH 17/67] 3.5.8 - Still Buggy Planning on removing image dependency and us a CDN icon font source for the images. As yet, still doesn't work. --- dist/rg-credit-card/rg-credit-card-number.js | 342 +++++++++---------- 1 file changed, 169 insertions(+), 173 deletions(-) diff --git a/dist/rg-credit-card/rg-credit-card-number.js b/dist/rg-credit-card/rg-credit-card-number.js index 2f74e03..70b5ba8 100644 --- a/dist/rg-credit-card/rg-credit-card-number.js +++ b/dist/rg-credit-card/rg-credit-card-number.js @@ -1,183 +1,179 @@ -riot.tag2('rg-credit-card-number', '', 'rg-credit-card-number .card-no,[riot-tag="rg-credit-card-number"] .card-no,[data-is="rg-credit-card-number"] .card-no{ padding-right: 60px; background-repeat: no-repeat; background-position: right center; background-size: 60px; } rg-credit-card-number .amex,[riot-tag="rg-credit-card-number"] .amex,[data-is="rg-credit-card-number"] .amex{ background-image: url(img/amex.png); } rg-credit-card-number .diners_club,[riot-tag="rg-credit-card-number"] .diners_club,[data-is="rg-credit-card-number"] .diners_club{ background-image: url(img/diners_club.png); } rg-credit-card-number .discover,[riot-tag="rg-credit-card-number"] .discover,[data-is="rg-credit-card-number"] .discover{ background-image: url(img/discover.png); } rg-credit-card-number .jcb,[riot-tag="rg-credit-card-number"] .jcb,[data-is="rg-credit-card-number"] .jcb{ background-image: url(img/jcb.png); } rg-credit-card-number .mastercard,[riot-tag="rg-credit-card-number"] .mastercard,[data-is="rg-credit-card-number"] .mastercard{ background-image: url(img/mastercard.png); } rg-credit-card-number .visa,[riot-tag="rg-credit-card-number"] .visa,[data-is="rg-credit-card-number"] .visa{ background-image: url(img/visa.png); }', '', function(opts) { -var _this2 = this; +// PaymontFont icons https://cdnjs.cloudflare.com/ajax/libs/paymentfont/1.1.2/css/paymentfont.min.css +riot.tag("rg-credit-card-number", '', 'rg-credit-card-number .card-no,[riot-tag="rg-credit-card-number"] .card-no,[data-is="rg-credit-card-number"] .card-no{ padding-right: 60px; background-repeat: no-repeat; background-position: right center; background-size: 60px; } rg-credit-card-number .amex,[riot-tag="rg-credit-card-number"] .amex,[data-is="rg-credit-card-number"] .amex{ background-image: url(img/amex.png); } rg-credit-card-number .diners_club,[riot-tag="rg-credit-card-number"] .diners_club,[data-is="rg-credit-card-number"] .diners_club{ background-image: url(img/diners_club.png); } rg-credit-card-number .discover,[riot-tag="rg-credit-card-number"] .discover,[data-is="rg-credit-card-number"] .discover{ background-image: url(img/discover.png); } rg-credit-card-number .jcb,[riot-tag="rg-credit-card-number"] .jcb,[data-is="rg-credit-card-number"] .jcb{ background-image: url(img/jcb.png); } rg-credit-card-number .mastercard,[riot-tag="rg-credit-card-number"] .mastercard,[data-is="rg-credit-card-number"] .mastercard{ background-image: url(img/mastercard.png); } rg-credit-card-number .visa,[riot-tag="rg-credit-card-number"] .visa,[data-is="rg-credit-card-number"] .visa{ background-image: url(img/visa.png); }', "", function(opts) { -if (!opts.card) opts.card = { cardnumber: '' }; + var _this2 = this; -this.on('update', function () { - if (_this2.cardnumber.value != opts.card.cardnumber) _this2.cardnumber.value = opts.card.cardnumber; - _this2.validate(); -}); - -this.validate = function () { - opts.card.cardnumber = _this2.cardnumber.value; - var res = validateCreditCard(opts.card.cardnumber); - opts.card.valid = res.valid; - _this2.icon = opts.card.valid ? res.card_type.name : ''; -}; - -function validateCreditCard(input) { - var __indexOf = [].indexOf || function (item) { - for (var i = 0, l = this.length; i < l; i++) { - if (i in this && this[i] === item) return i; - } - return -1; - }; - var card, card_type, card_types, get_card_type, is_valid_length, is_valid_luhn, normalize, validate, validate_number, _i, _len, _ref; - card_types = [{ - name: 'amex', - icon: 'images/amex.png', - pattern: /^3[47]/, - valid_length: [15] - }, { - name: 'diners_club', - icon: 'images/diners_club.png', - pattern: /^30[0-5]/, - valid_length: [14] - }, { - name: 'diners_club', - icon: 'images/diners_club.png', - pattern: /^36/, - valid_length: [14] - }, { - name: 'jcb', - icon: 'images/jcb.png', - pattern: /^35(2[89]|[3-8][0-9])/, - valid_length: [16] - }, { - name: 'laser', - pattern: /^(6304|670[69]|6771)/, - valid_length: [16, 17, 18, 19] - }, { - name: 'visa_electron', - pattern: /^(4026|417500|4508|4844|491(3|7))/, - valid_length: [16] - }, { - name: 'visa', - icon: 'images/visa.png', - pattern: /^4/, - valid_length: [16] - }, { - name: 'mastercard', - icon: 'images/mastercard.png', - pattern: /^5[1-5]/, - valid_length: [16] - }, { - name: 'maestro', - pattern: /^(5018|5020|5038|6304|6759|676[1-3])/, - valid_length: [12, 13, 14, 15, 16, 17, 18, 19] - }, { - name: 'discover', - icon: 'images/discover.png', - pattern: /^(6011|622(12[6-9]|1[3-9][0-9]|[2-8][0-9]{2}|9[0-1][0-9]|92[0-5]|64[4-9])|65)/, - valid_length: [16] - }]; - - var options = {}; - - if (options.accept == null) { - options.accept = (function () { - var _i, _len, _results; - _results = []; - for (_i = 0, _len = card_types.length; _i < _len; _i++) { - card = card_types[_i]; - _results.push(card.name); - } - return _results; - })(); - } - _ref = options.accept; - for (_i = 0, _len = _ref.length; _i < _len; _i++) { - card_type = _ref[_i]; - if (__indexOf.call((function () { - var _j, _len1, _results; - _results = []; - for (_j = 0, _len1 = card_types.length; _j < _len1; _j++) { - card = card_types[_j]; - _results.push(card.name); - } - return _results; - })(), card_type) < 0) { - throw "Credit card type '" + card_type + "' is not supported"; - } - } + this.on("update", function() { + if (_this2.refs.cardinput.value != opts.cardnumber) _this2.refs.cardinput.value = opts.cardnumber; + _this2.validate() + }); - get_card_type = function (number) { - var _j, _len1, _ref1; - _ref1 = (function () { - var _k, _len1, _ref1, _results; - _results = []; - for (_k = 0, _len1 = card_types.length; _k < _len1; _k++) { - card = card_types[_k]; - if ((_ref1 = card.name, __indexOf.call(options.accept, _ref1) >= 0)) { - _results.push(card); - } - } - return _results; - })(); - for (_j = 0, _len1 = _ref1.length; _j < _len1; _j++) { - card_type = _ref1[_j]; - if (number.match(card_type.pattern)) { - return card_type; - } - } - return null; - }; + this.validate = function() { + opts.cardnumber = this.refs.cardinput.value; + var res = validateCreditCard(opts.cardnumber); + opts.valid = res.valid; + _this2.icon = opts.valid ? res.card_type.name : "" + }; - is_valid_luhn = function (number) { - var digit, n, sum, _j, _len1, _ref1; - sum = 0; - _ref1 = number.split('').reverse(); - for (n = _j = 0, _len1 = _ref1.length; _j < _len1; n = ++_j) { - digit = _ref1[n]; - digit = +digit; - if (n % 2) { - digit *= 2; - if (digit < 10) { - sum += digit; - } else { - sum += digit - 9; - } - } else { - sum += digit; - } - } - return sum % 10 === 0; - }; + function validateCreditCard(input) { + var __indexOf = [].indexOf || function(item) { + for (var i = 0, l = this.length; i < l; i++) { + if (i in this && this[i] === item) return i + } + return -1 + }; - is_valid_length = function (number, card_type) { - var _ref1; - return _ref1 = number.length, __indexOf.call(card_type.valid_length, _ref1) >= 0; - }; + var card, card_type, card_types, get_card_type, is_valid_length, is_valid_luhn, normalize, validate, validate_number, _i, _len, _ref; - validate_number = (function (_this) { - return function (number) { - var length_valid, luhn_valid; - card_type = get_card_type(number); - luhn_valid = false; - length_valid = false; - if (card_type != null) { - luhn_valid = is_valid_luhn(number); - length_valid = is_valid_length(number, card_type); - } - return { - card_type: card_type, - valid: luhn_valid && length_valid, - luhn_valid: luhn_valid, - length_valid: length_valid - }; - }; - })(this); + card_types = [{ + name: "amex", + icon: "images/amex.png", + pattern: /^3[47]/, + valid_length: [15] + }, { + name: "diners_club", + icon: "images/diners_club.png", + pattern: /^30[0-5]/, + valid_length: [14] + }, { + name: "diners_club", + icon: "images/diners_club.png", + pattern: /^36/, + valid_length: [14] + }, { + name: "jcb", + icon: "images/jcb.png", + pattern: /^35(2[89]|[3-8][0-9])/, + valid_length: [16] + }, { + name: "laser", + pattern: /^(6304|670[69]|6771)/, + valid_length: [16, 17, 18, 19] + }, { + name: "visa_electron", + pattern: /^(4026|417500|4508|4844|491(3|7))/, + valid_length: [16] + }, { + name: "visa", + icon: "images/visa.png", + pattern: /^4/, + valid_length: [16] + }, { + name: "mastercard", + icon: "images/mastercard.png", + pattern: /^5[1-5]/, + valid_length: [16] + }, { + name: "maestro", + pattern: /^(5018|5020|5038|6304|6759|676[1-3])/, + valid_length: [12, 13, 14, 15, 16, 17, 18, 19] + }, { + name: "discover", + icon: "images/discover.png", + pattern: /^(6011|622(12[6-9]|1[3-9][0-9]|[2-8][0-9]{2}|9[0-1][0-9]|92[0-5]|64[4-9])|65)/, + valid_length: [16] + }]; - normalize = function (number) { - return number.replace(/[ -]/g, ''); - }; - validate = (function (_this) { - return function () { - return validate_number(normalize(input)); - }; - })(this); + var options = {}; - return validate(input); -} + if (options.accept == null) { + options.accept = function() { + var _i, _len, _results; + _results = []; + for (_i = 0, _len = card_types.length; _i < _len; _i++) { + card = card_types[_i]; + _results.push(card.name) + } + return _results + }() + } + _ref = options.accept; + for (_i = 0, _len = _ref.length; _i < _len; _i++) { + card_type = _ref[_i]; + if (__indexOf.call(function() { + var _j, _len1, _results; + _results = []; + for (_j = 0, _len1 = card_types.length; _j < _len1; _j++) { + card = card_types[_j]; + _results.push(card.name) + } + return _results + }(), card_type) < 0) { + throw "Credit card type '" + card_type + "' is not supported" + } + } + get_card_type = function(number) { + var _j, _len1, _ref1; + _ref1 = function() { + var _k, _len1, _ref1, _results; + _results = []; + for (_k = 0, _len1 = card_types.length; _k < _len1; _k++) { + card = card_types[_k]; + if (_ref1 = card.name, __indexOf.call(options.accept, _ref1) >= 0) { + _results.push(card) + } + } + return _results + }(); + for (_j = 0, _len1 = _ref1.length; _j < _len1; _j++) { + card_type = _ref1[_j]; + if (number.match(card_type.pattern)) { + return card_type + } + } + return null + }; + is_valid_luhn = function(number) { + var digit, n, sum, _j, _len1, _ref1; + sum = 0; + _ref1 = number.split("").reverse(); + for (n = _j = 0, _len1 = _ref1.length; _j < _len1; n = ++_j) { + digit = _ref1[n]; + digit = +digit; + if (n % 2) { + digit *= 2; + if (digit < 10) { + sum += digit + } else { + sum += digit - 9 + } + } else { + sum += digit + } + } + return sum % 10 === 0 + }; + is_valid_length = function(number, card_type) { + var _ref1; + return _ref1 = number.length, __indexOf.call(card_type.valid_length, _ref1) >= 0 + }; + validate_number = function(_this) { + return function(number) { + var length_valid, luhn_valid; + card_type = get_card_type(number); + luhn_valid = false; + length_valid = false; + if (card_type != null) { + luhn_valid = is_valid_luhn(number); + length_valid = is_valid_length(number, card_type) + } + return { + card_type: card_type, + valid: luhn_valid && length_valid, + luhn_valid: luhn_valid, + length_valid: length_valid + } + } + }(this); + normalize = function(number) { + return number.replace(/[ -]/g, "") + }; + validate = function(_this) { + return function() { + return validate_number(normalize(input)) + } + }(this); + return validate(input) + } }); From 1f4b65a428fed32aa88227cfeaa5db252391d0d9 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Mon, 13 Feb 2017 16:01:05 +0800 Subject: [PATCH 18/67] 3.6.0 You'll need to add the momentjs as well. Something like: . Or pull it from a CDN site. --- dist/rg-date/rg-date.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dist/rg-date/rg-date.js b/dist/rg-date/rg-date.js index 37c9536..1281081 100644 --- a/dist/rg-date/rg-date.js +++ b/dist/rg-date/rg-date.js @@ -1,4 +1,4 @@ -riot.tag2("rg-date", '
{opts.date.date.format(yearFormat)}
{opts.date.date.format(monthFormat)}
Mo
Tu
We
Th
Fr
Sa
Su
', 'rg-date .container,[riot-tag="rg-date"] .container,[data-is="rg-date"] .container{ position: relative; display: inline-block; cursor: pointer; } rg-date .c-calendar,[riot-tag="rg-date"] .c-calendar,[data-is="rg-date"] .c-calendar{ position: absolute; min-width: 300px; margin-top: .5em; left: 0; }', "", function(opts) { +riot.tag("rg-date", '
{opts.date.date.format(yearFormat)}
{opts.date.date.format(monthFormat)}
Mo
Tu
We
Th
Fr
Sa
Su
', 'rg-date .container,[riot-tag="rg-date"] .container,[data-is="rg-date"] .container{ position: relative; display: inline-block; cursor: pointer; } rg-date .c-calendar,[riot-tag="rg-date"] .c-calendar,[data-is="rg-date"] .c-calendar{ position: absolute; min-width: 300px; margin-top: .5em; left: 0; }', "", function(opts) { var _this = this; var toMoment = function toMoment(d) { if (!moment.isMoment(d)) d = moment(d); From 80832d0de2b475d0364010fb31f5bff80649f023 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Mon, 13 Feb 2017 16:05:23 +0800 Subject: [PATCH 19/67] 3.6.0 Changes from 3.50 - removed the include. prefix the to options. Options are: url: text path to file. unsafe: boolean. If set to true, it will parse the file as HTML regardless of errors. Example: ---HTML: --- SCRIPT: var tags = riot.mount('rg-include', {unsafe: true}); --- dist/rg-include/rg-include.js | 35 +++++++++++++++++------------------ 1 file changed, 17 insertions(+), 18 deletions(-) diff --git a/dist/rg-include/rg-include.js b/dist/rg-include/rg-include.js index e7c8307..49ac2b8 100644 --- a/dist/rg-include/rg-include.js +++ b/dist/rg-include/rg-include.js @@ -1,19 +1,18 @@ -riot.tag2('rg-include', '
{responseText}
', '', '', function(opts) { -var _this = this; - -var fetch = function fetch() { - var req = new XMLHttpRequest(); - req.onload = function (resp) { - if (opts.include.unsafe) _this.root.innerHTML = req.responseText;else _this.responseText = req.responseText; - _this.update(); - _this.trigger('loaded'); - }; - req.open('get', opts.include.url, true); - req.send(); - _this.trigger('loading'); -}; - -this.on('mount', function () { - fetch(); -}); +riot.tag("rg-include", "
{responseText}
", "", "", function(opts) { + var _this = this; + var fetch = function fetch() { + var req = new XMLHttpRequest; + req.onload = function(resp) { + if (opts.unsafe) _this.root.innerHTML = req.responseText; + else _this.responseText = req.responseText; + _this.update(); + _this.trigger("loaded") + }; + req.open("get", opts.url, true); + req.send(); + _this.trigger("loading") + }; + this.on("mount", function() { + fetch() + }) }); From 64cf6b3b923446bf412638bfc264058eee0637ae Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Sun, 19 Feb 2017 17:11:45 +0800 Subject: [PATCH 20/67] 3.6.0 Usage: The only parameter you MUST enter is the API key. The rest are normal Google Map JSON data. In the tag object you can enter: * lat/long * tilt * heading * zoom For any more parameters, you need to pass the Google Maps JSON object when you mount the tag. Please note: at the moment, it's only possible to have one map per page. --- dist/rg-map/rg-map.js | 98 +++++++++++++++++++++++++++++-------------- 1 file changed, 67 insertions(+), 31 deletions(-) diff --git a/dist/rg-map/rg-map.js b/dist/rg-map/rg-map.js index a0cd4ea..5d7b0c8 100644 --- a/dist/rg-map/rg-map.js +++ b/dist/rg-map/rg-map.js @@ -1,33 +1,69 @@ -riot.tag2('rg-map', '
', 'rg-map .rg-map,[riot-tag="rg-map"] .rg-map,[data-is="rg-map"] .rg-map{ margin: 0; padding: 0; width: 100%; height: 100%; } rg-map .rg-map img,[riot-tag="rg-map"] .rg-map img,[data-is="rg-map"] .rg-map img{ max-width: inherit; }', '', function(opts) { -var _this = this; - -window.rg = window.rg || {}; -window.rg.gmap = riot.observable({ - initialize: function initialize() { - window.rg.gmap.trigger('initialize'); - } -}); +riot.tag2("rg-map", '
', 'rg-map .rg-map,[riot-tag="rg-map"] .rg-map,[data-is="rg-map"] .rg-map{ margin: 0; padding: 0; width: 100%; height: 100%; } rg-map .rg-map img,[riot-tag="rg-map"] .rg-map img,[data-is="rg-map"] .rg-map img{ max-width: inherit; }', "", function(opts) { + var _this = this; + var _script_id = "rg_map_script_unqiue" ; // Unique reference, to ensure Google APIs pulled in only once. + + window.rg = window.rg || {}; + window.rg.gmap = riot.observable({ + initialize: function initialize() { + window.rg.gmap.trigger("initialize") + } + }); + + + this.on("before-mount", function () { + if (!opts.map) opts.map = { + center: { + lat: (opts.lat ? Number(opts.lat) : -34.397), + lng: (opts.lng ? Number(opts.lng) : 50.644) + }, + zoom: 7 + } + + if (!opts.id) + opts.id = "rg_map_id_" + Date.now() ; + + if (opts.apikey && !opts.map.apikey) + opts.map.apikey = opts.apikey ; + + if (opts.lat && opts.map && opts.map.center.lat) + opts.map.center.lat = (opts.lat ? Number(opts.lat) : opts.map.center.lat) ; + + if (opts.lng && opts.map && opts.map.center.lng) + opts.map.center.lng = (opts.lng ? Number(opts.lng) : opts.map.center.lng) ; + + if (opts.zoom && opts.map) + opts.map.zoom = (opts.zoom ? Number(opts.zoom) : (opts.map.zoom ? opts.map.zoom : 8)) ; + + if (opts.type && opts.map) + opts.map.mapTypeId = (opts.type ? opts.type : (opts.map.mapTypeId ? opts.map.mapTypeId : "roadmap")) ; + + if (opts.tilt && opts.map) + opts.map.tilt = (opts.tilt ? Number(opts.tilt) : (opts.map.tilt ? opts.map.tilt : 45)) ; + + if (opts.heading && opts.map) + opts.map.heading = (opts.heading ? Number(opts.heading) : (opts.map.heading ? opts.map.heading : 90) ) ; + + }) ; // on before-mount + + + + this.on("mount", function() { + + rg.gmap.on("initialize", function() { + e1 = _this.root.querySelector(".rg-map") ; + e2 = _this.refs[0] ; + opts.map.mapObj = new google.maps.Map(e1, opts.map); + _this.trigger("loaded", opts.map.mapObj) + }); + + + if (!document.getElementById(_script_id)) { + var script = document.createElement("script"); + script.setAttribute("id", _script_id); + script.type = "text/javascript"; + script.src = "https://maps.googleapis.com/maps/api/js?key="+opts.apikey+"&callback=window.rg.gmap.initialize"; + document.body.appendChild(script) + } + }) // on mount -this.on('mount', function () { - if (!opts.map) opts.map = { - center: { - lat: 53.806, - lng: -1.535 - }, - zoom: 7 - }; - - rg.gmap.on('initialize', function () { - opts.map.mapObj = new google.maps.Map(_this.root.querySelector('.rg-map'), opts.map); - _this.trigger('loaded', opts.map.mapObj); - }); - - if (!document.getElementById('gmap_script')) { - var script = document.createElement('script'); - script.setAttribute('id', 'gmap_script'); - script.type = 'text/javascript'; - script.src = 'https://maps.googleapis.com/maps/api/js?callback=window.rg.gmap.initialize'; - document.body.appendChild(script); - } -}); }); From 0c40684388a6d170213b7f9648aafcc7c5457e76 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Sun, 19 Feb 2017 17:14:29 +0800 Subject: [PATCH 21/67] 3.6.0 Usage: The only parameter you MUST enter is the API key. The rest are normal Google Map JSON data. In the tag object you can enter: * lat/long * tilt * heading * zoom For any more parameters, you need to pass the Google Maps JSON object when you mount the tag. Please note: at the moment, it's only possible to have one map per page. From 8799a4977565cad45ae8911ec72c7a07d8edbf61 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Sun, 19 Feb 2017 19:01:06 +0800 Subject: [PATCH 22/67] 3.6.0 Usage: 1) **testing** content _creation_ again 2) 3) riot.mount('rg-markdown', {markdown: {content: '**Some** _more_ content', url: 'helptext.md'} }); Dependency Note: requires inclusion of commonmark.min.js --- dist/rg-markdown/rg-markdown.js | 70 +++++++++++++++++++++------------ 1 file changed, 45 insertions(+), 25 deletions(-) diff --git a/dist/rg-markdown/rg-markdown.js b/dist/rg-markdown/rg-markdown.js index 0b4592c..967a112 100644 --- a/dist/rg-markdown/rg-markdown.js +++ b/dist/rg-markdown/rg-markdown.js @@ -1,26 +1,46 @@ -riot.tag2('rg-markdown', '', '', '', function(opts) { -var _this = this; - -if (commonmark) { - this.reader = new commonmark.Parser(); - this.writer = new commonmark.HtmlRenderer(); -} - -this.on('update', function () { - if (!opts.markdown) opts.markdown = {}; - if (opts.markdown.content) { - _this.root.innerHTML = _this.writer.render(_this.reader.parse(opts.markdown.content)); - } else if (opts.markdown.url) { - (function () { - var req = new XMLHttpRequest(); - req.onload = function (resp) { - _this.root.innerHTML = _this.writer.render(_this.reader.parse(req.responseText)); - _this.trigger('loaded'); - }; - req.open('get', opts.markdown.url, true); - req.send(); - _this.trigger('loading'); - })(); - } -}); +riot.tag("rg-markdown", "", "", "", function(opts) { + var _this = this ; + + this.on("before-mount", function() { + + if (!opts.markdown) { + opts.markdown = { + content: (opts.content ? opts.content : "") + } + } + + if (opts.content) { + opts.markdown.content = opts.content ; + } + + if (this.__.innerHTML) + opts.markdown.content = this.__.innerHTML ; + + + }) ; + + + this.on("mount", function() { + if (commonmark) { + this.reader = new commonmark.Parser; + this.writer = new commonmark.HtmlRenderer + } + + if (!opts.markdown) opts.markdown = {}; + if (opts.markdown.content) { + _this.root.innerHTML = _this.writer.render(_this.reader.parse(opts.markdown.content)) + } else if (opts.markdown.url) { + (function() { + var req = new XMLHttpRequest; + req.onload = function(resp) { + _this.root.innerHTML = _this.writer.render(_this.reader.parse(req.responseText)); + _this.trigger("loaded") + }; + req.open("get", opts.markdown.url, true); + req.send(); + _this.trigger("loading") + })() + } + }) ; + }); From 4a1a974c5658734488f5d8b54114768282574430 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Sun, 19 Feb 2017 22:45:38 +0800 Subject: [PATCH 23/67] 3.6.0 Modal now has default values. Pending is adding values from HTML. --- dist/rg-modal/rg-modal.js | 56 +++++++++++++++++++++++++++++++-------- 1 file changed, 45 insertions(+), 11 deletions(-) diff --git a/dist/rg-modal/rg-modal.js b/dist/rg-modal/rg-modal.js index ceb7b68..c2dee02 100644 --- a/dist/rg-modal/rg-modal.js +++ b/dist/rg-modal/rg-modal.js @@ -1,14 +1,48 @@ -riot.tag2('rg-modal', '
', 'rg-modal .modal--ghost .modal__footer .button,[riot-tag="rg-modal"] .modal--ghost .modal__footer .button,[data-is="rg-modal"] .modal--ghost .modal__footer .button{ margin: 0 .5em 0 0; }', '', function(opts) { -var _this = this; +riot.tag("rg-modal", + '
' + + '
' + + '
' + + '
' + + '
' + + '' + + '

{opts.modal.heading}

' + + '
' + + '
' + + '' + + '
' + + '
' + + '
'+ + ''+ + '
'+ + '
' + + '
' + + '
', + 'rg-modal .o-modal--ghost .o-modal__footer .c-button,[riot-tag="rg-modal"] .o-modal--ghost .c-card__footer .c-button,[data-is="rg-modal"] .o-modal--ghost .c-card__footer .c-button{ margin: 0 .5em 0 0; }', "", function(opts) { -this.on('mount', function () { - if (!opts.modal) opts.modal = {}; -}); + var _this = this; + + this.on("before-mount", function() { + + if (!opts.modal) + opts.modal = { + isvisible: true, + dismissable: true, + full: false, + ghost: false, + heading: 'Note', + buttons: [{ + text: 'Close', + type: 'brand', + action: function() { this.close() } + }], + blockbuttons: true + } + }); -this.close = function () { - if (opts.modal.dismissable) { - opts.modal.isvisible = false; - _this.trigger('close'); - } -}; + this.close = function() { + if (opts.modal.dismissable) { + opts.modal.isvisible = false; + _this.trigger("close") ; + } + } }); From 9e8910b2f81a0fc36e6460a2d9d9ac0c18b20898 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Sun, 19 Feb 2017 23:11:16 +0800 Subject: [PATCH 24/67] 3.6.0 Usage: Body of modal dialog --- dist/rg-modal/rg-modal.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/dist/rg-modal/rg-modal.js b/dist/rg-modal/rg-modal.js index c2dee02..26388a9 100644 --- a/dist/rg-modal/rg-modal.js +++ b/dist/rg-modal/rg-modal.js @@ -25,11 +25,17 @@ riot.tag("rg-modal", if (!opts.modal) opts.modal = { + /* + isvisible: ((typeof opts.visible == "undefined") ? Boolean(opts.visible) : true), + dismissable: ((typeof opts.dismissable == "undefined") ? Boolean(opts.dismissable) : true), + full: ((typeof opts.fullscreen == "undefined") ? Boolean(opts.fullscreen) : false), + ghost: ((typeof opts.ghost == "undefined") ? Boolean(opts.ghost) : false), + */ isvisible: true, dismissable: true, full: false, ghost: false, - heading: 'Note', + heading: (opts.heading ? opts.heading : 'Note'), buttons: [{ text: 'Close', type: 'brand', From 1a6580e596fc77ed9402e16b8d595516b9416fb8 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Tue, 21 Feb 2017 03:11:17 +0800 Subject: [PATCH 25/67] 3.6.0 Partial - all prior to pagination is 3.6.0 --- dist/rg.js | 1262 +++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 1260 insertions(+), 2 deletions(-) diff --git a/dist/rg.js b/dist/rg.js index 1cc9613..70dede8 100644 --- a/dist/rg.js +++ b/dist/rg.js @@ -1,2 +1,1260 @@ -riot.tag2("rg-alerts",'
{text}
',"","",function(opts){var _this=this;this.on("update",function(){if(!opts.alerts)return;opts.alerts.forEach(function(alert){if(typeof alert.isvisible==="undefined")alert.isvisible=true;if(alert.timeout){alert.startTimer=function(){alert.timer=setTimeout(function(){_this.dismiss({item:alert})},alert.timeout)};alert.startTimer()}})});this.dismiss=function(e){var alert=e.item;alert.isvisible=false;clearTimeout(alert.timer);_this.trigger("dismiss",alert);_this.update()};this.select=function(e){var alert=e.item;if(alert.onclick)alert.onclick(alert);_this.trigger("select",alert)}});riot.tag2("rg-bubble",'
{opts.bubble.text}
','rg-bubble .context,[riot-tag="rg-bubble"] .context,[data-is="rg-bubble"] .context,rg-bubble .content,[riot-tag="rg-bubble"] .content,[data-is="rg-bubble"] .content{ display: inline-block; position: relative; } rg-bubble .bubble,[riot-tag="rg-bubble"] .bubble,[data-is="rg-bubble"] .bubble{ position: absolute; top: -70px; left: 50%; transform: translate3d(-50%, 0, 0); }',"",function(opts){var _this=this;this.showBubble=function(){clearTimeout(_this._timer);_this.isvisible=true};this.hideBubble=function(){_this._timer=setTimeout(function(){_this.isvisible=false;_this.update()},1e3)};this.toggleBubble=function(){_this.isvisible=!_this.isvisible}});riot.tag2("rg-chart","",'rg-chart,[riot-tag="rg-chart"],[data-is="rg-chart"]{ display: inline-block; width: 100%; }',"",function(opts){var _this=this;Chart.defaults.global.responsive=true;this.on("mount",function(){drawChart()});this.on("loaded",function(c){_this.on("unmount",function(){c.destroy()})});var drawChart=function drawChart(){if(!opts.chart)opts.chart={};var ctx=_this.root.querySelector("canvas").getContext("2d");var chart=new Chart(ctx);var c=null;switch(opts.chart.type){case"line":c=chart.Line(opts.chart.data,opts.chart.options);break;case"radar":c=chart.Radar(opts.chart.data,opts.chart.options);break;case"polar":c=chart.PolarArea(opts.chart.data,opts.chart.options);break;case"pie":c=chart.Pie(opts.chart.data,opts.chart.options);break;case"doughnut":c=chart.Doughnut(opts.chart.data,opts.chart.options);break;default:c=chart.Bar(opts.chart.data,opts.chart.options);break}_this.trigger("loaded",c)}});riot.tag2("rg-code",'
','rg-code .editor,[riot-tag="rg-code"] .editor,[data-is="rg-code"] .editor{ position: absolute; top: 0; right: 0; bottom: 0; left: 0; }',"",function(opts){var _this=this;if(!opts.editor)opts.editor={code:""};var editor=undefined;var setupEditor=function setupEditor(){editor.setTheme("ace/theme/"+(opts.editor.theme||"monokai"));editor.getSession().setMode("ace/mode/"+(opts.editor.mode||"html"));editor.getSession().setTabSize(opts.editor.tabsize||2);editor.getSession().setUseSoftTabs(opts.editor.softtabs);editor.getSession().setUseWrapMode(opts.editor.wordwrap);editor.setReadOnly(opts.editor.readonly)};this.on("mount",function(){editor=ace.edit(_this.root.querySelector(".editor"));editor.$blockScrolling=Infinity;_this.on("update",function(){setupEditor();if(opts.editor.code!=editor.getValue())editor.setValue(opts.editor.code,1)});if(opts.url){var req=new XMLHttpRequest;req.onload=function(resp){opts.editor.code=resp;_this.update()};req.open("get",opts.url,true);req.send()}editor.setValue(opts.editor.code,1);editor.getSession().on("change",function(e){opts.editor.code=editor.getValue();_this.trigger("onchange",editor.getValue())});setupEditor();_this.update()})});riot.tag2("rg-credit-card-number",'','rg-credit-card-number .card-no,[riot-tag="rg-credit-card-number"] .card-no,[data-is="rg-credit-card-number"] .card-no{ padding-right: 60px; background-repeat: no-repeat; background-position: right center; background-size: 60px; } rg-credit-card-number .amex,[riot-tag="rg-credit-card-number"] .amex,[data-is="rg-credit-card-number"] .amex{ background-image: url(img/amex.png); } rg-credit-card-number .diners_club,[riot-tag="rg-credit-card-number"] .diners_club,[data-is="rg-credit-card-number"] .diners_club{ background-image: url(img/diners_club.png); } rg-credit-card-number .discover,[riot-tag="rg-credit-card-number"] .discover,[data-is="rg-credit-card-number"] .discover{ background-image: url(img/discover.png); } rg-credit-card-number .jcb,[riot-tag="rg-credit-card-number"] .jcb,[data-is="rg-credit-card-number"] .jcb{ background-image: url(img/jcb.png); } rg-credit-card-number .mastercard,[riot-tag="rg-credit-card-number"] .mastercard,[data-is="rg-credit-card-number"] .mastercard{ background-image: url(img/mastercard.png); } rg-credit-card-number .visa,[riot-tag="rg-credit-card-number"] .visa,[data-is="rg-credit-card-number"] .visa{ background-image: url(img/visa.png); }',"",function(opts){var _this2=this;if(!opts.card)opts.card={cardnumber:""};this.on("update",function(){if(_this2.cardnumber.value!=opts.card.cardnumber)_this2.cardnumber.value=opts.card.cardnumber;_this2.validate()});this.validate=function(){opts.card.cardnumber=_this2.cardnumber.value;var res=validateCreditCard(opts.card.cardnumber);opts.card.valid=res.valid;_this2.icon=opts.card.valid?res.card_type.name:""};function validateCreditCard(input){var __indexOf=[].indexOf||function(item){for(var i=0,l=this.length;i=0){_results.push(card)}}return _results}();for(_j=0,_len1=_ref1.length;_j<_len1;_j++){card_type=_ref1[_j];if(number.match(card_type.pattern)){return card_type}}return null};is_valid_luhn=function(number){var digit,n,sum,_j,_len1,_ref1;sum=0;_ref1=number.split("").reverse();for(n=_j=0,_len1=_ref1.length;_j<_len1;n=++_j){digit=_ref1[n];digit=+digit;if(n%2){digit*=2;if(digit<10){sum+=digit}else{sum+=digit-9}}else{sum+=digit}}return sum%10===0};is_valid_length=function(number,card_type){var _ref1;return _ref1=number.length,__indexOf.call(card_type.valid_length,_ref1)>=0};validate_number=function(_this){return function(number){var length_valid,luhn_valid;card_type=get_card_type(number);luhn_valid=false;length_valid=false;if(card_type!=null){luhn_valid=is_valid_luhn(number);length_valid=is_valid_length(number,card_type)}return{card_type:card_type,valid:luhn_valid&&length_valid,luhn_valid:luhn_valid,length_valid:length_valid}}}(this);normalize=function(number){return number.replace(/[ -]/g,"")};validate=function(_this){return function(){return validate_number(normalize(input))}}(this);return validate(input)}});riot.tag2("rg-date",'
{opts.date.date.format(yearFormat)}
{opts.date.date.format(monthFormat)}
Mo
Tu
We
Th
Fr
Sa
Su
','rg-date .container,[riot-tag="rg-date"] .container,[data-is="rg-date"] .container{ position: relative; display: inline-block; cursor: pointer; } rg-date .calendar,[riot-tag="rg-date"] .calendar,[data-is="rg-date"] .calendar{ position: absolute; min-width: 300px; margin-top: .5em; left: 0; }',"",function(opts){var _this=this;var toMoment=function toMoment(d){if(!moment.isMoment(d))d=moment(d);if(d.isValid())return d;return moment()};var handleClickOutside=function handleClickOutside(e){if(!_this.root.contains(e.target))_this.close();_this.update()};var dayObj=function dayObj(dayDate){var dateObj=dayDate||moment();return{date:dateObj,selected:opts.date.date.isSame(dayDate,"day"),today:moment().isSame(dayDate,"day"),disabled:opts.date.min&&opts.date.min.isAfter(dayDate)||opts.date.max&&opts.date.max.isBefore(dayDate)}};var buildCalendar=function buildCalendar(){_this.format="LL";_this.yearFormat="YYYY";_this.monthFormat="MMMM";_this.dayFormat="DD";_this.days=[];_this.startBuffer=[];_this.endBuffer=[];var begin=moment(opts.date.date).startOf("month");var daysInMonth=moment(opts.date.date).daysInMonth();var end=moment(opts.date.date).endOf("month");for(var i=begin.isoWeekday()-1;i>0;i-=1){var d=moment(begin).subtract(i,"days");_this.startBuffer.push(dayObj(d))}for(var i=0;i

{opts.drawer.header}

',"","",function(opts){var _this=this;this.on("mount",function(){if(!opts.drawer)opts.drawer={}});this.close=function(){opts.drawer.isvisible=false;_this.trigger("close")};this.select=function(e){opts.drawer.items.forEach(function(item){return item.active=false});e.item.active=true;_this.trigger("select",e.item)}});riot.tag2("rg-ga","","","",function(opts){(function(i,s,o,g,r,a,m){i["GoogleAnalyticsObject"]=r;i[r]=i[r]||function(){(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date;a=s.createElement(o),m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)})(window,document,"script","//www.google-analytics.com/analytics.js","ga");ga("create",opts.property,"auto");ga("send","pageview")});riot.tag2("rg-iframify",'
','rg-iframify .iframify,[riot-tag="rg-iframify"] .iframify,[data-is="rg-iframify"] .iframify{ margin: 0; padding: 0; } rg-iframify iframe,[riot-tag="rg-iframify"] iframe,[data-is="rg-iframify"] iframe{ position: relative; width: 100%; border: 0; }',"",function(opts){var _this=this;this.on("mount",function(){iframify(_this.root.querySelector(".frame"),_this.opts)})});riot.tag2("rg-include","
{responseText}
","","",function(opts){var _this=this;var fetch=function fetch(){var req=new XMLHttpRequest;req.onload=function(resp){if(opts.include.unsafe)_this.root.innerHTML=req.responseText;else _this.responseText=req.responseText;_this.update();_this.trigger("loaded")};req.open("get",opts.include.url,true);req.send();_this.trigger("loading")};this.on("mount",function(){fetch()})});riot.tag2("rg-map",'
','rg-map .rg-map,[riot-tag="rg-map"] .rg-map,[data-is="rg-map"] .rg-map{ margin: 0; padding: 0; width: 100%; height: 100%; } rg-map .rg-map img,[riot-tag="rg-map"] .rg-map img,[data-is="rg-map"] .rg-map img{ max-width: inherit; }',"",function(opts){var _this=this;window.rg=window.rg||{};window.rg.gmap=riot.observable({initialize:function initialize(){window.rg.gmap.trigger("initialize")}});this.on("mount",function(){if(!opts.map)opts.map={center:{lat:53.806,lng:-1.535},zoom:7};rg.gmap.on("initialize",function(){opts.map.mapObj=new google.maps.Map(_this.root.querySelector(".rg-map"),opts.map);_this.trigger("loaded",opts.map.mapObj)});if(!document.getElementById("gmap_script")){var script=document.createElement("script");script.setAttribute("id","gmap_script");script.type="text/javascript";script.src="https://maps.googleapis.com/maps/api/js?callback=window.rg.gmap.initialize";document.body.appendChild(script)}})});riot.tag2("rg-markdown","","","",function(opts){var _this=this;if(commonmark){this.reader=new commonmark.Parser;this.writer=new commonmark.HtmlRenderer}this.on("update",function(){if(!opts.markdown)opts.markdown={};if(opts.markdown.content){_this.root.innerHTML=_this.writer.render(_this.reader.parse(opts.markdown.content))}else if(opts.markdown.url){(function(){var req=new XMLHttpRequest;req.onload=function(resp){_this.root.innerHTML=_this.writer.render(_this.reader.parse(req.responseText));_this.trigger("loaded")};req.open("get",opts.markdown.url,true);req.send();_this.trigger("loading")})()}})});riot.tag2("rg-modal",'
','rg-modal .modal--ghost .modal__footer .button,[riot-tag="rg-modal"] .modal--ghost .modal__footer .button,[data-is="rg-modal"] .modal--ghost .modal__footer .button{ margin: 0 .5em 0 0; }',"",function(opts){var _this=this;this.on("mount",function(){if(!opts.modal)opts.modal={}});this.close=function(){if(opts.modal.dismissable){opts.modal.isvisible=false;_this.trigger("close")}}});riot.tag2("rg-pagination",'',"","",function(opts){var _this=this;this.on("update",function(){if(!opts.pagination)opts.pagination={pages:1,page:1}});this.on("page",function(){var btns=_this.root.querySelectorAll("button");for(var i=0;i
','rg-phone-sim .emulator,[riot-tag="rg-phone-sim"] .emulator,[data-is="rg-phone-sim"] .emulator{ position: relative; width: 365px; height: 792px; background-image: url(\'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAW0AAAMYCAMAAAA3r0ZLAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAwBQTFRFMDk6+vr6KTM0lJucMz4/PklKJS8wLTg5Qk1OxsjILzo7gomJ2NvbdH5/ho2O9fb2KzY3ztHRPEdIOkVGZWxtjJSVOEJDkpeYWGRluL2+KTQ1vcHBoaWlPUZHcnp6nKKjOkRF1NfXqa2tp62tZnBxanV2VmFiZ29wVl1eaXJzbXR04uTktbq7QElK1tnZipKTi5CRTlZXpKioo6mqXmlqUVlaOEFCSVFSUFxdISssT1tcTlpbJC4vIiwtTVlaJjAxIy0uTFhZS1dYJzEyKDIzSlZXPUhJOURFO0ZHSVVWKzU2P0pLKjQ1OENEND0+QEtMLDY3SFRVN0JDQ05PLTc4ND9ANUBBQUxNNkFCR1NUMTo7RE9QLjg5N0BBR1JTRlJTLzk6RVFSMjs8RVBRRlFSNj9AMzw9SFNUMj0+IissMTs8MDo7SVRVRFBRMDs8MTw9IiwsMz0+Mjw9SlVWQ09QLjk6NT4/S1ZXND4/JC4uQU1OIy0tQk5PTFdYTVhZQExNTllaJS8vJzIyP0tMLzg5LDc4KDMzNT9AKjU1N0FCNkBBJjAwIywtMDs7Mj09NkFBJjExLjk5LDc3N0JCNUBAKjU2MTw8LDU2Ljc4OUNEKDEyQU1NPEhIPEhJO0dHOkZGND8/Qk5ORFBQQ09PLTY3OUREPkpKPkpLPUlJT1pbP0tLJTAwPUlKJzAxKjM07u/vKTIzsbW2YGprtLm50tXWPkhJo6endn+A3d/f6uvreoOEg4yN2tvc/Pz8n6am8/T0VFtcm6CgJS4v4OLi5ufnYGdncnt8dHp7gYaHJC0uu8DAjJGRQkxNxMfHKzQ1YGtsS1NUaXN0bnh5yMzMyszMy83Oy8/PdoCAKDIy7O3tT1dYuLu70NTUbXd46Onq6erreoCA2dzc8PHx8vPz5OXlnaSkn6Wmqq6ucHZ2t7y8o6eoeoSEkJaWm5+gW2ZnZG5vqa+wOEFB09bWtru7qrCwcXd4t7u83eDgzM7O7/DwNT4+7e7uwMPDwcPEeH5/////70wnUQAAAQB0Uk5T////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AFP3ByUAAA+NSURBVHja7N13nBTlGcDxEQI5AmJQBAkcnqhEDIhoWMt5iogmQbOaYNrqYrJh16gplmTVkILJpYCmF+DSE1JIcjRR7L333ntPYjQxvTl55tnr7N7t7uw+vDP3+/0x3G3hs5+vr++8M7s7eH75Xb5x+rOjN017aeq+tO++U1+atmn0s9M3Xl6BoFfm466ZOPROhIt259CJ19RS++7LdgW133a97O7aaI/a+VE0y+jRnUeF1p6wqfvvaz6+YVjT0jMyJ3rkeSdmzljaNKzh+OZuoE0TQmmvv67zLzrwmMY8wkXLNx5zYCfTdeur1p6wdeegblgKar8tbegc4lv/rirtjTMLT99/UVMKzgFLNS3avwA2c2Pl2n8tPHV1QxLJMks2rC6g/alC7ScvKozrhhyIFZRrKIzvi56sRHt94b/RIsZ1xeN7UYFuffna4/UJB68Er4rGHax648vUfmqkPnxBBrmqyixQv5FPlaP9Dz2eWdIEW9U1LdFjnQsG1n5ETz4dyowdavY+VE9XPTKQ9phddPfICjvk6lt3lruM6V97j132l26BK3S3BJAv79Gf9jN3BY85HKsadHhAedebSmtf+ofgEcOQqknDAsyLLi2pPTq4/0icatSRAefoUto7Bvc2oFSzGgLQHYtr3xTct5DVSA1XJgsD0puKaa99s9wzlwPImh5WzhXTl/5TRHt7uaN5GUI1bVmzqL64ufZfgkF/GD417rCA9e99tf8VzCPHoVPzjhPXaVv10d5bblzCyZE6nDIJ5pKde2u/Egz487Cp1zHlHr20h8otp50ETT2WgaeL7dCe2vcF/uOQqUsrA9z7emgHQ3thdEZLLpeL0kHYwq7BrdqjAv2ofEAnlU0EZaPjvTTgHdWlvXeEhnYu0VkuUoN7707tbW6X35oiciyc6C4yZxmaxPf2bTq0z5VfTo/IC8/20M5GZnAHy5JzO7Tvj85bCKlEzyIzdQdvLNxf0L4wmMQjMgnmemlHZubOBcQXqvb0CO0jk720o3OmIdhPTlft4FTrth5ju55tK8bbq/YG+emUiLzqTC/t6Lz1cYoYbwi0r47QisTz0j2w0xE6ngxWJVeLdrD+WxCZVx3J9ba0QNeAnj9T/twuOi87GcF9pLSdKM8U7Q2rV6+O0jcQMoXJJB2t96tzorzB99Y2NzfPjdQL9zLJZDJynw2YK85rvZ1ku9Cjuq+4xXknb4Js+XxU/WsQ5wnec7LlDcn6d544P+ddLFu+zlT/Vorzxd5k2fIJqfq3TJwney/Lls+RGBwniPPL3g6y5aOWBstWcd7BmypbLjhS/1LiPNWTTTMWBik02mijTWijTWijjTbFVTuZTqSTRW8OUzqJdpGyxT89mU2ELYv25kO4+LvnyUT4kmj3LV38YzjpGmin3dReIm2pF9BlU+LmMDmnrdBbUntQje0trj2o5m2FPlBiTWKQQm9R7cG03nZAexCFNtpoE9poE9poo01oo01oo01oo4021VT7MxIUBik02mijTeG1D5agMEih0UYbbUIbbUIbbbQJbbQJbbQJbbTRplppf1qCwiCFRhtttCm89lwJCoMUGm200Sa00Sa00Uab0Eab0Eab0EY73tqnS1AYpNBoo402hdc+VILCIIVGG220CW20CW200Sa00Sa00aYC9GkSFAYpNNpoo01oR0v7bRIUBik02mijTWijTWijjTahjTah7bL2hyUoDFJotNFGm9BGm0ppv0OCwiCFRhtttAlttAlttNEmtOOhfbwEhUEKjTbaaBPaaBPaLmi/T4LCIIVGG220CW20CW200ab6aS+UoDBIodFGG21CG21C2wXt4yQoDFJotNFGm9BGm9BGe7BpL5KgMEih0UYbbUIbbULbBe0PSFAYpNBoo402oY02oY32YNP+oASFQQqNNtpoE9poE9poDzbtj0hQGKTQaKONNqGNNpXS/qkEhUEKfYwEhUEKjTbaaBPaaBPaaA827Y9LUBik0GijjTahHS3tn0lQGKTQCyQoDFJotNFGm9BGm9BGG22qn/anJCgMUmi00Uabwmv/RILCIIVukKAwSKHRRhttQhttQhtttKl+2p+UoDBIodFGG20Kr/09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\'); background-repeat: no-repeat; background-position: center; background-size: cover; } rg-phone-sim .screen,[riot-tag="rg-phone-sim"] .screen,[data-is="rg-phone-sim"] .screen{ position: absolute; top: 105px; left: 22px; background-color: white; width: 320px; height: 568px; border: 0; }',"",function(opts){});riot.tag2("rg-placeholdit",'',"","",function(opts){this.on("update",function(){if(!opts.placeholdit)opts.placeholdit={};opts.placeholdit.width=opts.placeholdit.width||450;opts.placeholdit.height=opts.placeholdit.height||250;opts.placeholdit.background=opts.placeholdit.background||"000";opts.placeholdit.color=opts.placeholdit.color||"fff";opts.placeholdit.text=opts.placeholdit.text||opts.placeholdit.width+" x "+opts.placeholdit.height;opts.placeholdit.textsize=opts.placeholdit.textsize||30;opts.placeholdit.format=opts.placeholdit.format||"png"})});riot.tag2("rg-raw","","","",function(opts){this.on("mount update",function(){this.root.innerHTML=opts.content||""})});riot.tag2("rg-select",' ','rg-select .menu,[riot-tag="rg-select"] .menu,[data-is="rg-select"] .menu{ position: absolute; }',"",function(opts){var _this=this;if(!opts.select)opts.select={options:[]};var handleClickOutside=function handleClickOutside(e){if(!_this.root.contains(e.target))_this.close();_this.update()};var applyFieldText=function applyFieldText(){for(var i=0;i-1});_this.trigger("filter",_this.selectfield.value)};function getWindowDimensions(){var w=window,d=document,e=d.documentElement,g=d.getElementsByTagName("body")[0],x=w.innerWidth||e.clientWidth||g.clientWidth,y=w.innerHeight||e.clientHeight||g.clientHeight;return{width:x,height:y}}var positionDropdown=function positionDropdown(){var w=getWindowDimensions();var m=_this.root.querySelector(".menu");if(!m)return;if(!opts.select.isvisible){m.style.marginTop="";m.style.marginLeft="";return}var pos=m.getBoundingClientRect();if(w.width-1&&!opts.select.isvisible){e.preventDefault();_this.open();return true}var length=_this.options.length;if(length>0&&[13,38,40].indexOf(e.keyCode)>-1){e.preventDefault();var activeIndex=null;for(var i=0;i
{heading}
{text}
{include.responseText}
',"","",function(opts){var _this=this;var fetch=function fetch(tab){var req=new XMLHttpRequest;req.onload=function(resp){var activeTab=_this.root.querySelector(".tabs__tab--active");if(activeTab)activeTab.innerHTML=req.responseText;_this.trigger("loaded",tab)};req.open("get",tab.include,true);req.send();_this.trigger("loading",tab)};this.open=function(e){var tab=e.item;if(!tab.disabled&&!tab.active){opts.tabs.tabs.forEach(function(tab){tab.active=false});_this.trigger("open",tab);tab.active=true}};this.on("update",function(){if(!opts.tabs)opts.tabs={};if(!Array.isArray(opts.tabs.tabs))return;opts.tabs.tabs.forEach(function(tab){if(!tab.disabled&&tab.active&&tab.include){fetch(tab)}})})});riot.tag2("rg-tags",'
','rg-tags .menu,[riot-tag="rg-tags"] .menu,[data-is="rg-tags"] .menu{ position: absolute; }',"",function(opts){var _this=this;if(!opts.tags)opts.tags={options:[],tags:[]};if(!opts.tags.options)opts.tags.options=[];if(!opts.tags.tags)opts.tags.tags=[];var handleClickOutside=function handleClickOutside(e){if(!_this.root.contains(e.target))_this.close();_this.update()};var applyFieldText=function applyFieldText(){_this.selectfield.value="";for(var i=0;i-1});_this.trigger("filter",_this.selectfield.value)};function getWindowDimensions(){var w=window,d=document,e=d.documentElement,g=d.getElementsByTagName("body")[0],x=w.innerWidth||e.clientWidth||g.clientWidth,y=w.innerHeight||e.clientHeight||g.clientHeight;return{width:x,height:y}}var positionDropdown=function positionDropdown(){var w=getWindowDimensions();var m=_this.root.querySelector(".menu");if(!m)return;if(!opts.tags.isvisible){m.style.marginTop="";m.style.marginLeft="";return}var pos=m.getBoundingClientRect();if(w.width-1&&!opts.tags.isvisible){e.preventDefault();_this.open();return true}var length=_this.options.length;if(length>0&&[13,38,40].indexOf(e.keyCode)>-1){e.preventDefault();var activeIndex=null;for(var i=0;i
{text}
',"","",function(opts){var _this=this;this.toastClicked=function(e){var toast=e.item;window.clearTimeout(toast.timer);toast.isvisible=false;_this.trigger("select",toast)};var _uid=1;var uid=function uid(){return _uid++};this.on("update",function(){if(!opts.toasts||!Array.isArray(opts.toasts.toasts))return;opts.toasts.position=opts.toasts.position||"bottomright";opts.toasts.toasts.forEach(function(toast){if(typeof toast.isvisible=="undefined")toast.isvisible=true;toast.id=toast.id||uid();if(!toast.timer&&!toast.sticky){toast.startTimer=function(){toast.timer=window.setTimeout(function(){toast.isvisible=false;_this.trigger("close",toast);_this.update()},toast.timeout||6e3)};toast.startTimer()}});opts.toasts.isvisible=opts.toasts.toasts.filter(function(toast){return toast.isvisible}).length>0})});riot.tag2("rg-toggle",'
',"","",function(opts){var _this=this;this.on("mount",function(){if(!opts.toggle)opts.toggle={checked:false}});this.toggle=function(){opts.toggle.checked=!opts.toggle.checked;_this.trigger("toggle",opts.toggle.checked)}});riot.tag2("rg-unsplash",'',"","",function(opts){var _this=this;this.on("update",function(){_this.options="";if(!opts.unsplash)opts.unsplash={};opts.unsplash.width=opts.unsplash.width||450;opts.unsplash.height=opts.unsplash.height||250;if(opts.unsplash.greyscale)opts.unsplash.greyscale="g/";if(opts.unsplash.random)_this.options+="random&";if(opts.unsplash.blur)_this.options+="blur&";if(opts.unsplash.image)_this.options+="image="+opts.unsplash.image+"&";if(typeof opts.unsplash.gravity!=="undefined")_this.options+="gravity="+opts.unsplash.gravity})}); \ No newline at end of file +// Single Alert +riot.tag("rg-alert", + '
{opts.text}
', "", "", + function(opts) { + var _this = this; + + this.on("mount", function() { + if (this.opts.dismissable) + this.refs.closeButton.hidden = false; + else + this.refs.closeButton.hidden = true; + + this.update(); + }); + + + if (typeof opts.dismissable == "string") { + opts.dismissable = Boolean(opts.dismissable); + } + + if (typeof this.opts.dismissable != "boolean") { + this.opts.dismissable = true; + } + + if (typeof opts.timeout == "string") + opts.timeout = Number(opts.timeout); + + if (typeof opts.timeout == "number" && opts.timeout > 0) { + this.startTimer = function() { + this.timer = setTimeout(function() { + _this.dismiss(); + }, opts.timeout) + }; + this.startTimer() + } + + + this.dismiss = function(e) { + if (this.opts.timeout) + clearTimeout(this.startTimer); + + this.unmount(); + } // onSelect + }); + + + +// Multiple Alets +riot.tag("rg-alerts", + '
' + + '
', "", "", + function() {}); + + + +riot.tag("rg-bubble", + '
{opts.bubble.text}
' + + '
', + 'rg-bubble .context,[riot-tag="rg-bubble"] .context,[data-is="rg-bubble"] .context,rg-bubble .content,[riot-tag="rg-bubble"]' + + ' .content,[data-is="rg-bubble"] .content{ display: inline-block; position: relative; } rg-bubble .c-bubble,[riot-tag="rg-bubble"]' + + ' .c-bubble,[data-is="rg-bubble"] .c-bubble{ position: absolute; top: -70px; left: 50%; transform: translate3d(-50%, 0, 0); }', "", + function(opts) { + var _this = this; + this.showBubble = function() { + clearTimeout(_this._timer); + _this.isvisible = true + }; + this.hideBubble = function() { + _this._timer = setTimeout(function() { + _this.isvisible = false; + _this.update() + }, 1e3) + }; + this.toggleBubble = function() { + _this.isvisible = !_this.isvisible + } + }); + + + +riot.tag("rg-chart", + "", + 'rg-chart,[riot-tag="rg-chart"],[data-is="rg-chart"]{ display: inline-block; width: 100%; }', "", + function(opts) { + + var _this = this; + + Chart.defaults.global.responsive = true; + + this.on("mount", function() { + drawChart() + }); + + this.on("loaded", function(c) { + _this.on("unmount", function() { + c.destroy() + }) + }); + + var drawChart = function drawChart() { + if (!opts.chart) opts.chart = {}; + var ctx = _this.root.querySelector("canvas").getContext("2d"); + var chart = new Chart(ctx); + var c = null; + switch (opts.chart.type) { + case "line": + c = chart.Line(opts.chart.data, opts.chart.options); + break; + case "radar": + c = chart.Radar(opts.chart.data, opts.chart.options); + break; + case "polar": + c = chart.PolarArea(opts.chart.data, opts.chart.options); + break; + case "pie": + c = chart.Pie(opts.chart.data, opts.chart.options); + break; + case "doughnut": + c = chart.Doughnut(opts.chart.data, opts.chart.options); + break; + default: + c = chart.Bar(opts.chart.data, opts.chart.options); + break + } + _this.trigger("loaded", c) + } + }); + + + +riot.tag2("rg-code", + '
', + 'rg-code .editor,[riot-tag="rg-code"] .editor,[data-is="rg-code"] ' + + '.editor{ position: absolute; top: 0; right: 0; bottom: 0; left: 0; }', "", + function(opts) { + + var _this = this; + + if (!opts.editor) opts.editor = { + code: "" + }; + + var editor = undefined; + + var setupEditor = function setupEditor() { + editor.setTheme("ace/theme/" + (opts.editor.theme || "monokai")); + editor.getSession().setMode("ace/mode/" + (opts.editor.mode || "html")); + editor.getSession().setTabSize(opts.editor.tabsize || 2); + editor.getSession().setUseSoftTabs(opts.editor.softtabs); + editor.getSession().setUseWrapMode(opts.editor.wordwrap); + editor.setReadOnly(opts.editor.readonly) + }; + + + this.on("mount", function() { + editor = ace.edit(_this.root.querySelector(".editor")); + editor.$blockScrolling = Infinity; + _this.on("update", function(stuff) { + setupEditor(); + if (opts.editor.code != editor.getValue()) editor.setValue(opts.editor.code, 1) + }); + + + if (opts.url) { + var req = new XMLHttpRequest; + req.onload = function(resp) { + opts.editor.code = resp; + _this.update() + }; + req.open("get", opts.url, true); + req.send() + } + + editor.setValue(opts.editor.code, 1); + editor.getSession().on("change", function(e) { + opts.editor.code = editor.getValue(); + _this.trigger("onchange", editor.getValue()) + }); + + setupEditor(); + _this.update() + }) + }); + + +// PaymontFont icons https://cdnjs.cloudflare.com/ajax/libs/paymentfont/1.1.2/css/paymentfont.min.css +riot.tag("rg-credit-card-number", + '', + 'rg-credit-card-number .card-no,[riot-tag="rg-credit-card-number"] ' + + '.card-no,[data-is="rg-credit-card-number"] .card-no{ padding-right: 60px; ' + + 'background-repeat: no-repeat; background-position: right center; background-size: 60px; } ' + + 'rg-credit-card-number .amex,[riot-tag="rg-credit-card-number"] .amex,[data-is="rg-credit-card-number"]' + + ' .amex{ background-image: url(img/amex.png); } rg-credit-card-number .diners_club,[riot-tag="rg-credit-card-number"]' + + ' .diners_club,[data-is="rg-credit-card-number"] .diners_club{ background-image: url(img/diners_club.png); }' + + ' rg-credit-card-number .discover,[riot-tag="rg-credit-card-number"]' + + ' .discover,[data-is="rg-credit-card-number"] .discover{ background-image: url(img/discover.png); } rg-credit-card-number' + + ' .jcb,[riot-tag="rg-credit-card-number"] .jcb,[data-is="rg-credit-card-number"] .jcb{ background-image: url(img/jcb.png); }' + + ' rg-credit-card-number .mastercard,[riot-tag="rg-credit-card-number"]' + + ' .mastercard,[data-is="rg-credit-card-number"] .mastercard{ background-image: url(img/mastercard.png); } rg-credit-card-number ' + + '.visa,[riot-tag="rg-credit-card-number"] .visa,[data-is="rg-credit-card-number"] .visa{ background-image: url(img/visa.png); }', "", + function(opts) { + + var _this2 = this; + + this.on("update", function() { + if (_this2.refs.cardinput.value != opts.cardnumber) _this2.refs.cardinput.value = opts.cardnumber; + _this2.validate() + }); + + this.validate = function() { + opts.cardnumber = this.refs.cardinput.value; + var res = validateCreditCard(opts.cardnumber); + opts.valid = res.valid; + _this2.icon = opts.valid ? res.card_type.name : "" + }; + + function validateCreditCard(input) { + var __indexOf = [].indexOf || function(item) { + for (var i = 0, l = this.length; i < l; i++) { + if (i in this && this[i] === item) return i + } + return -1 + }; + + var card, card_type, card_types, get_card_type, is_valid_length, is_valid_luhn, normalize, validate, validate_number, _i, _len, _ref; + + card_types = [{ + name: "amex", + icon: "images/amex.png", + pattern: /^3[47]/, + valid_length: [15] + }, { + name: "diners_club", + icon: "images/diners_club.png", + pattern: /^30[0-5]/, + valid_length: [14] + }, { + name: "diners_club", + icon: "images/diners_club.png", + pattern: /^36/, + valid_length: [14] + }, { + name: "jcb", + icon: "images/jcb.png", + pattern: /^35(2[89]|[3-8][0-9])/, + valid_length: [16] + }, { + name: "laser", + pattern: /^(6304|670[69]|6771)/, + valid_length: [16, 17, 18, 19] + }, { + name: "visa_electron", + pattern: /^(4026|417500|4508|4844|491(3|7))/, + valid_length: [16] + }, { + name: "visa", + icon: "images/visa.png", + pattern: /^4/, + valid_length: [16] + }, { + name: "mastercard", + icon: "images/mastercard.png", + pattern: /^5[1-5]/, + valid_length: [16] + }, { + name: "maestro", + pattern: /^(5018|5020|5038|6304|6759|676[1-3])/, + valid_length: [12, 13, 14, 15, 16, 17, 18, 19] + }, { + name: "discover", + icon: "images/discover.png", + pattern: /^(6011|622(12[6-9]|1[3-9][0-9]|[2-8][0-9]{2}|9[0-1][0-9]|92[0-5]|64[4-9])|65)/, + valid_length: [16] + }]; + + + var options = {}; + + if (options.accept == null) { + options.accept = function() { + var _i, _len, _results; + _results = []; + for (_i = 0, _len = card_types.length; _i < _len; _i++) { + card = card_types[_i]; + _results.push(card.name) + } + return _results + }() + } + _ref = options.accept; + for (_i = 0, _len = _ref.length; _i < _len; _i++) { + card_type = _ref[_i]; + if (__indexOf.call(function() { + var _j, _len1, _results; + _results = []; + for (_j = 0, _len1 = card_types.length; _j < _len1; _j++) { + card = card_types[_j]; + _results.push(card.name) + } + return _results + }(), card_type) < 0) { + throw "Credit card type '" + card_type + "' is not supported" + } + } + get_card_type = function(number) { + var _j, _len1, _ref1; + _ref1 = function() { + var _k, _len1, _ref1, _results; + _results = []; + for (_k = 0, _len1 = card_types.length; _k < _len1; _k++) { + card = card_types[_k]; + if (_ref1 = card.name, __indexOf.call(options.accept, _ref1) >= 0) { + _results.push(card) + } + } + return _results + }(); + for (_j = 0, _len1 = _ref1.length; _j < _len1; _j++) { + card_type = _ref1[_j]; + if (number.match(card_type.pattern)) { + return card_type + } + } + return null + }; + is_valid_luhn = function(number) { + var digit, n, sum, _j, _len1, _ref1; + sum = 0; + _ref1 = number.split("").reverse(); + for (n = _j = 0, _len1 = _ref1.length; _j < _len1; n = ++_j) { + digit = _ref1[n]; + digit = +digit; + if (n % 2) { + digit *= 2; + if (digit < 10) { + sum += digit + } else { + sum += digit - 9 + } + } else { + sum += digit + } + } + return sum % 10 === 0 + }; + is_valid_length = function(number, card_type) { + var _ref1; + return _ref1 = number.length, __indexOf.call(card_type.valid_length, _ref1) >= 0 + }; + validate_number = function(_this) { + return function(number) { + var length_valid, luhn_valid; + card_type = get_card_type(number); + luhn_valid = false; + length_valid = false; + if (card_type != null) { + luhn_valid = is_valid_luhn(number); + length_valid = is_valid_length(number, card_type) + } + return { + card_type: card_type, + valid: luhn_valid && length_valid, + luhn_valid: luhn_valid, + length_valid: length_valid + } + } + }(this); + normalize = function(number) { + return number.replace(/[ -]/g, "") + }; + validate = function(_this) { + return function() { + return validate_number(normalize(input)) + } + }(this); + return validate(input) + } + }); + + + + +riot.tag("rg-date", + '
' + + ' ' + + '
' + + ' ' + + '
{opts.date.date.format(yearFormat)}
' + + ' ' + + ' ' + + '
{opts.date.date.format(monthFormat)}
' + + ' ' + + '
Mo
Tu
We
' + + '
Th
Fr
' + + '
Sa
Su
' + + ' ' + + ' ' + + ' ' + + ' ' + + '
', + 'rg-date .container,[riot-tag="rg-date"] .container,[data-is="rg-date"] .container{ position: relative; display: inline-block; cursor: pointer; }' + + ' rg-date .c-calendar,[riot-tag="rg-date"] .c-calendar,[data-is="rg-date"] .c-calendar{ position: absolute; min-width: 300px; margin-top: .5em; left: 0; }', "", + function(opts) { + var _this = this; + + var toMoment = function toMoment(d) { + if (!moment.isMoment(d)) d = moment(d); + if (d.isValid()) return d; + return moment() + }; + + var handleClickOutside = function handleClickOutside(e) { + if (!_this.root.contains(e.target)) _this.close(); + _this.update() + }; + + var dayObj = function dayObj(dayDate) { + var dateObj = dayDate || moment(); + return { + date: dateObj, + selected: opts.date.date.isSame(dayDate, "day"), + today: moment().isSame(dayDate, "day"), + disabled: opts.date.min && opts.date.min.isAfter(dayDate) || opts.date.max && opts.date.max.isBefore(dayDate) + } + }; + + var buildCalendar = function buildCalendar() { + _this.format = "LL"; + _this.yearFormat = "YYYY"; + _this.monthFormat = "MMMM"; + _this.dayFormat = "DD"; + _this.days = []; + _this.startBuffer = []; + _this.endBuffer = []; + var begin = moment(opts.date.date).startOf("month"); + var daysInMonth = moment(opts.date.date).daysInMonth(); + var end = moment(opts.date.date).endOf("month"); + for (var i = begin.isoWeekday() - 1; i > 0; i -= 1) { + var d = moment(begin).subtract(i, "days"); + _this.startBuffer.push(dayObj(d)) + } + for (var i = 0; i < daysInMonth; i++) { + var current = moment(begin).add(i, "days"); + _this.days.push(dayObj(current)) + } + for (var i = end.isoWeekday() + 1; i <= 7; i++) { + var d = moment(end).add(i - end.isoWeekday(), "days"); + _this.endBuffer.push(dayObj(d)) + } + }; + + this.on("mount", function() { + if (!opts.date) opts.date = { + date: moment() + }; + if (!opts.date.date) opts.date.date = moment(); + opts.date.date = toMoment(opts.date.date); + if (opts.date.min) { + opts.date.min = toMoment(opts.date.min); + if (opts.date.min.isAfter(moment(), "day")) { + opts.date.date = moment(opts.date.min) + } + } + if (opts.date.max) { + opts.date.max = toMoment(opts.date.max); + if (opts.date.max.isBefore(moment(), "day")) { + opts.date.date = moment(opts.date.max) + } + } + _this.on("update", function() { + opts.date.date = toMoment(opts.date.date); + buildCalendar(); + positionDropdown() + }); + document.addEventListener("click", handleClickOutside); + _this.update() + }); + this.on("unmount", function() { + document.removeEventListener("click", handleClickOutside) + }); + this.open = function() { + opts.date.isvisible = true; + _this.trigger("open") + }; + this.close = function() { + if (opts.date.isvisible) { + opts.date.isvisible = false; + _this.trigger("close") + } + }; + this.select = function(e) { + opts.date.date = e.item.day.date; + _this.trigger("select", opts.date.date) + }; + this.setToday = function() { + opts.date.date = moment(); + _this.trigger("select", opts.date.date) + }; + this.prevYear = function() { + opts.date.date = opts.date.date.subtract(1, "year") + }; + this.nextYear = function() { + opts.date.date = opts.date.date.add(1, "year") + }; + this.prevMonth = function() { + opts.date.date = opts.date.date.subtract(1, "month") + }; + this.nextMonth = function() { + opts.date.date = opts.date.date.add(1, "month") + }; + + function getWindowDimensions() { + var w = window, + d = document, + e = d.documentElement, + g = d.getElementsByTagName("body")[0], + x = w.innerWidth || e.clientWidth || g.clientWidth, + y = w.innerHeight || e.clientHeight || g.clientHeight; + return { + width: x, + height: y + } + } + var positionDropdown = function positionDropdown() { + var w = getWindowDimensions(); + var m = _this.root.querySelector(".c-calendar"); + if (!m) return; + if (!opts.date.isvisible) { + m.style.marginTop = ""; + m.style.marginLeft = ""; + return + } + var pos = m.getBoundingClientRect(); + if (w.width < pos.left + pos.width) { + m.style.marginLeft = w.width - (pos.left + pos.width) - 20 + "px" + } + if (pos.left < 0) { + m.style.marginLeft = "20px" + } + if (w.height < pos.top + pos.height) { + m.style.marginTop = w.height - (pos.top + pos.height) - 20 + "px" + } + } + }); + + +//TODO Need to fix the use of unmount. Rfer to original code. +riot.tag("rg-drawer", + '
' + + '
' + + '
' + + '
' + + '

{opts.header}' + + '
{opts.subheading}
' + + '

' + + '
' + + '
  • {text}
' + + '
' + + '
' + + '
', "", "", + function(opts) { + var _this = this; + + this.close = function() { + this.unmount(); + }; + + this.select = function(e) { + opts.items.forEach(function(item) { + return item.active = false + }); + e.item.active = true; + _this.trigger("select", e.item) + } + }); + + + +riot.tag("rg-ga", "", "", "", function(opts) { + (function(i, s, o, g, r, a, m) { + i["GoogleAnalyticsObject"] = r; + i[r] = i[r] || function() { + (i[r].q = i[r].q || []).push(arguments) + }, i[r].l = 1 * new Date; + a = s.createElement(o), m = s.getElementsByTagName(o)[0]; + a.async = 1; + a.src = g; + m.parentNode.insertBefore(a, m) + })(window, document, "script", "//www.google-analytics.com/analytics.js", "ga"); + ga("create", opts.property, "auto"); + ga("send", "pageview") +}); + + + +riot.tag2("rg-iframify", + '
', + 'rg-iframify .iframify,[riot-tag="rg-iframify"] .iframify,[data-is="rg-iframify"] .iframify{ margin: 0; padding: 0; }' + + ' rg-iframify iframe,[riot-tag="rg-iframify"] iframe,[data-is="rg-iframify"] iframe{ position: relative; width: 100%; border: 0; }', "", + function(opts) { + var _this = this; + this.on("mount", function() { + iframify(_this.root.querySelector(".frame"), _this.opts) + }) + }); + + + +riot.tag("rg-include", "
{responseText}
", "", "", function(opts) { + var _this = this; + + var fetch = function fetch() { + var req = new XMLHttpRequest; + req.onload = function(resp) { + if (opts.unsafe) _this.root.innerHTML = req.responseText; + else _this.responseText = req.responseText; + _this.update(); + _this.trigger("loaded") + }; + + req.open("get", opts.url, true); + req.send(); + _this.trigger("loading") + }; + + this.on("mount", function() { + fetch() + }) +}); + + +riot.tag("rg-map", '
', 'rg-map .rg-map,[riot-tag="rg-map"] .rg-map,[data-is="rg-map"] .rg-map{ margin: 0; padding: 0; width: 100%; height: 100%; } rg-map .rg-map img,[riot-tag="rg-map"] .rg-map img,[data-is="rg-map"] .rg-map img{ max-width: inherit; }', "", function(opts) { + var _this = this; + var _script_id = "rg_map_script_unqiue"; // Unique reference, to ensure Google APIs pulled in only once. + + window.rg = window.rg || {}; + window.rg.gmap = riot.observable({ + initialize: function initialize() { + window.rg.gmap.trigger("initialize") + } + }); + + + this.on("before-mount", function() { + if (!opts.map) + opts.map = { + center: { + lat: (opts.lat ? Number(opts.lat) : -34.397), + lng: (opts.lng ? Number(opts.lng) : 50.644) + }, + zoom: 7 + } + + if (!opts.id) + opts.id = "rg_map_id_" + Date.now(); + + if (opts.apikey && !opts.map.apikey) + opts.map.apikey = opts.apikey; + + if (opts.lat && opts.map && opts.map.center.lat) + opts.map.center.lat = (opts.lat ? Number(opts.lat) : opts.map.center.lat); + + if (opts.lng && opts.map && opts.map.center.lng) + opts.map.center.lng = (opts.lng ? Number(opts.lng) : opts.map.center.lng); + + if (opts.zoom && opts.map) + opts.map.zoom = (opts.zoom ? Number(opts.zoom) : (opts.map.zoom ? opts.map.zoom : 8)); + + if (opts.type && opts.map) + opts.map.mapTypeId = (opts.type ? opts.type : (opts.map.mapTypeId ? opts.map.mapTypeId : "roadmap")); + + if (opts.tilt && opts.map) + opts.map.tilt = (opts.tilt ? Number(opts.tilt) : (opts.map.tilt ? opts.map.tilt : 45)); + + if (opts.heading && opts.map) + opts.map.heading = (opts.heading ? Number(opts.heading) : (opts.map.heading ? opts.map.heading : 90)); + + }); // on before-mount + + + + this.on("mount", function() { + + rg.gmap.on("initialize", function() { + e1 = _this.root.querySelector(".rg-map"); + e2 = _this.refs[0]; + opts.map.mapObj = new google.maps.Map(e1, opts.map); + _this.trigger("loaded", opts.map.mapObj) + }); + + + if (!document.getElementById(_script_id)) { + var script = document.createElement("script"); + script.setAttribute("id", _script_id); + script.type = "text/javascript"; + script.src = "https://maps.googleapis.com/maps/api/js?key=" + opts.apikey + "&callback=window.rg.gmap.initialize"; + document.body.appendChild(script) + } + }) // on mount + +}); + + + + +riot.tag("rg-markdown", "", "", "", function(opts) { + var _this = this; + + this.on("before-mount", function() { + + if (!opts.markdown) { + opts.markdown = { + content: (opts.content ? opts.content : "") + } + } + + if (opts.content) { + opts.markdown.content = opts.content; + } + + if (this.__.innerHTML) + opts.markdown.content = this.__.innerHTML; + + + }); + + + this.on("mount", function() { + if (commonmark) { + this.reader = new commonmark.Parser; + this.writer = new commonmark.HtmlRenderer + } + + if (!opts.markdown) opts.markdown = {}; + if (opts.markdown.content) { + _this.root.innerHTML = _this.writer.render(_this.reader.parse(opts.markdown.content)) + } else if (opts.markdown.url) { + (function() { + var req = new XMLHttpRequest; + req.onload = function(resp) { + _this.root.innerHTML = _this.writer.render(_this.reader.parse(req.responseText)); + _this.trigger("loaded") + }; + req.open("get", opts.markdown.url, true); + req.send(); + _this.trigger("loading") + })() + } + }); + +}); + +/* + +'
'+ +'
'+ +'
'+ +''+ +'

{opts.modal.heading}

'+ +'
'+ +'
'+ +'
', +*/ + +riot.tag("rg-modal", + '
' + + '
' + + '
' + + '
' + + '
' + + '' + + '

{opts.modal.heading}

' + + '
' + + '
' + + '' + + '
' + + '
' + + '
' + + '' + + '
' + + '
' + + '
' + + '
', + 'rg-modal .o-modal--ghost .o-modal__footer .c-button,[riot-tag="rg-modal"] .o-modal--ghost .c-card__footer' + + ' .c-button,[data-is="rg-modal"] .o-modal--ghost .c-card__footer .c-button{ margin: 0 .5em 0 0; }', "", + function(opts) { + + var _this = this; + + this.on("before-mount", function() { + + if (!opts.modal) + opts.modal = { + /* + isvisible: ((typeof opts.visible == "undefined") ? Boolean(opts.visible) : true), + dismissable: ((typeof opts.dismissable == "undefined") ? Boolean(opts.dismissable) : true), + full: ((typeof opts.fullscreen == "undefined") ? Boolean(opts.fullscreen) : false), + ghost: ((typeof opts.ghost == "undefined") ? Boolean(opts.ghost) : false), + */ + isvisible: true, + dismissable: true, + full: false, + ghost: false, + heading: (opts.heading ? opts.heading : 'Note'), + buttons: [{ + text: 'Close', + type: 'brand', + action: function() { + this.close() + } + }], + blockbuttons: true + } + }); + + this.close = function() { + if (opts.modal.dismissable) { + opts.modal.isvisible = false; + _this.trigger("close"); + } + } + }); + + + +riot.tag2("rg-pagination", '', "", "", function(opts) { + var _this = this; + this.on("update", function() { + if (!opts.pagination) opts.pagination = { + pages: 1, + page: 1 + } + }); + this.on("page", function() { + var btns = _this.root.querySelectorAll("button"); + for (var i = 0; i < btns.length; i++) { + btns[i].blur() + } + }); + this.forward = function() { + opts.pagination.page++; + _this.trigger("page", opts.pagination.page) + }; + this.back = function() { + opts.pagination.page--; + _this.trigger("page", opts.pagination.page) + }; + this.first = function() { + opts.pagination.page = 1; + _this.trigger("page", opts.pagination.page) + }; + this.last = function() { + opts.pagination.page = opts.pagination.pages; + _this.trigger("page", opts.pagination.page) + } +}); + + + +riot.tag2("rg-phone-sim", '
', 'rg-phone-sim .emulator,[riot-tag="rg-phone-sim"] .emulator,[data-is="rg-phone-sim"] .emulator{ position: relative; width: 365px; height: 792px; background-image: url(\'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAW0AAAMYCAMAAAA3r0ZLAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAwBQTFRFMDk6+vr6KTM0lJucMz4/PklKJS8wLTg5Qk1OxsjILzo7gomJ2NvbdH5/ho2O9fb2KzY3ztHRPEdIOkVGZWxtjJSVOEJDkpeYWGRluL2+KTQ1vcHBoaWlPUZHcnp6nKKjOkRF1NfXqa2tp62tZnBxanV2VmFiZ29wVl1eaXJzbXR04uTktbq7QElK1tnZipKTi5CRTlZXpKioo6mqXmlqUVlaOEFCSVFSUFxdISssT1tcTlpbJC4vIiwtTVlaJjAxIy0uTFhZS1dYJzEyKDIzSlZXPUhJOURFO0ZHSVVWKzU2P0pLKjQ1OENEND0+QEtMLDY3SFRVN0JDQ05PLTc4ND9ANUBBQUxNNkFCR1NUMTo7RE9QLjg5N0BBR1JTRlJTLzk6RVFSMjs8RVBRRlFSNj9AMzw9SFNUMj0+IissMTs8MDo7SVRVRFBRMDs8MTw9IiwsMz0+Mjw9SlVWQ09QLjk6NT4/S1ZXND4/JC4uQU1OIy0tQk5PTFdYTVhZQExNTllaJS8vJzIyP0tMLzg5LDc4KDMzNT9AKjU1N0FCNkBBJjAwIywtMDs7Mj09NkFBJjExLjk5LDc3N0JCNUBAKjU2MTw8LDU2Ljc4OUNEKDEyQU1NPEhIPEhJO0dHOkZGND8/Qk5ORFBQQ09PLTY3OUREPkpKPkpLPUlJT1pbP0tLJTAwPUlKJzAxKjM07u/vKTIzsbW2YGprtLm50tXWPkhJo6endn+A3d/f6uvreoOEg4yN2tvc/Pz8n6am8/T0VFtcm6CgJS4v4OLi5ufnYGdncnt8dHp7gYaHJC0uu8DAjJGRQkxNxMfHKzQ1YGtsS1NUaXN0bnh5yMzMyszMy83Oy8/PdoCAKDIy7O3tT1dYuLu70NTUbXd46Onq6erreoCA2dzc8PHx8vPz5OXlnaSkn6Wmqq6ucHZ2t7y8o6eoeoSEkJaWm5+gW2ZnZG5vqa+wOEFB09bWtru7qrCwcXd4t7u83eDgzM7O7/DwNT4+7e7uwMPDwcPEeH5/////70wnUQAAAQB0Uk5T////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AFP3ByUAAA+NSURBVHja7N13nBTlGcDxEQI5AmJQBAkcnqhEDIhoWMt5iogmQbOaYNrqYrJh16gplmTVkILJpYCmF+DSE1JIcjRR7L333ntPYjQxvTl55tnr7N7t7uw+vDP3+/0x3G3hs5+vr++8M7s7eH75Xb5x+rOjN017aeq+tO++U1+atmn0s9M3Xl6BoFfm466ZOPROhIt259CJ19RS++7LdgW133a97O7aaI/a+VE0y+jRnUeF1p6wqfvvaz6+YVjT0jMyJ3rkeSdmzljaNKzh+OZuoE0TQmmvv67zLzrwmMY8wkXLNx5zYCfTdeur1p6wdeegblgKar8tbegc4lv/rirtjTMLT99/UVMKzgFLNS3avwA2c2Pl2n8tPHV1QxLJMks2rC6g/alC7ScvKozrhhyIFZRrKIzvi56sRHt94b/RIsZ1xeN7UYFuffna4/UJB68Er4rGHax648vUfmqkPnxBBrmqyixQv5FPlaP9Dz2eWdIEW9U1LdFjnQsG1n5ETz4dyowdavY+VE9XPTKQ9phddPfICjvk6lt3lruM6V97j132l26BK3S3BJAv79Gf9jN3BY85HKsadHhAedebSmtf+ofgEcOQqknDAsyLLi2pPTq4/0icatSRAefoUto7Bvc2oFSzGgLQHYtr3xTct5DVSA1XJgsD0puKaa99s9wzlwPImh5WzhXTl/5TRHt7uaN5GUI1bVmzqL64ufZfgkF/GD417rCA9e99tf8VzCPHoVPzjhPXaVv10d5bblzCyZE6nDIJ5pKde2u/Egz487Cp1zHlHr20h8otp50ETT2WgaeL7dCe2vcF/uOQqUsrA9z7emgHQ3thdEZLLpeL0kHYwq7BrdqjAv2ofEAnlU0EZaPjvTTgHdWlvXeEhnYu0VkuUoN7707tbW6X35oiciyc6C4yZxmaxPf2bTq0z5VfTo/IC8/20M5GZnAHy5JzO7Tvj85bCKlEzyIzdQdvLNxf0L4wmMQjMgnmemlHZubOBcQXqvb0CO0jk720o3OmIdhPTlft4FTrth5ju55tK8bbq/YG+emUiLzqTC/t6Lz1cYoYbwi0r47QisTz0j2w0xE6ngxWJVeLdrD+WxCZVx3J9ba0QNeAnj9T/twuOi87GcF9pLSdKM8U7Q2rV6+O0jcQMoXJJB2t96tzorzB99Y2NzfPjdQL9zLJZDJynw2YK85rvZ1ku9Cjuq+4xXknb4Js+XxU/WsQ5wnec7LlDcn6d544P+ddLFu+zlT/Vorzxd5k2fIJqfq3TJwney/Lls+RGBwniPPL3g6y5aOWBstWcd7BmypbLjhS/1LiPNWTTTMWBik02mijTWijTWijjTbFVTuZTqSTRW8OUzqJdpGyxT89mU2ELYv25kO4+LvnyUT4kmj3LV38YzjpGmin3dReIm2pF9BlU+LmMDmnrdBbUntQje0trj2o5m2FPlBiTWKQQm9R7cG03nZAexCFNtpoE9poE9poo01oo01oo01oo4021VT7MxIUBik02mijTeG1D5agMEih0UYbbUIbbUIbbbQJbbQJbbQJbbTRplppf1qCwiCFRhtttCm89lwJCoMUGm200Sa00Sa00Uab0Eab0Eab0EY73tqnS1AYpNBoo402hdc+VILCIIVGG220CW20CW200Sa00Sa00aYC9GkSFAYpNNpoo01oR0v7bRIUBik02mijTWijTWijjTahjTah7bL2hyUoDFJotNFGm9BGm0ppv0OCwiCFRhtttAlttAlttNEmtOOhfbwEhUEKjTbaaBPaaBPaLmi/T4LCIIVGG220CW20CW200ab6aS+UoDBIodFGG21CG21C2wXt4yQoDFJotNFGm9BGm9BGe7BpL5KgMEih0UYbbUIbbULbBe0PSFAYpNBoo402oY02oY32YNP+oASFQQqNNtpoE9poE9poDzbtj0hQGKTQaKONNqGNNpXS/qkEhUEKfYwEhUEKjTbaaBPaaBPaaA827Y9LUBik0GijjTahHS3tn0lQGKTQCyQoDFJotNFGm9BGm9BGG22qn/anJCgMUmi00Uabwmv/RILCIIVukKAwSKHRRhttQhttQhtttKl+2p+UoDBIodFGG20Kr/09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\'); background-repeat: no-repeat; background-position: center; background-size: cover; } rg-phone-sim .screen,[riot-tag="rg-phone-sim"] .screen,[data-is="rg-phone-sim"] .screen{ position: absolute; top: 105px; left: 22px; background-color: white; width: 320px; height: 568px; border: 0; }', "", function(opts) {}); +riot.tag2("rg-placeholdit", '', "", "", function(opts) { + this.on("update", function() { + if (!opts.placeholdit) opts.placeholdit = {}; + opts.placeholdit.width = opts.placeholdit.width || 450; + opts.placeholdit.height = opts.placeholdit.height || 250; + opts.placeholdit.background = opts.placeholdit.background || "000"; + opts.placeholdit.color = opts.placeholdit.color || "fff"; + opts.placeholdit.text = opts.placeholdit.text || opts.placeholdit.width + " x " + opts.placeholdit.height; + opts.placeholdit.textsize = opts.placeholdit.textsize || 30; + opts.placeholdit.format = opts.placeholdit.format || "png" + }) +}); + + + +riot.tag2("rg-raw", "", "", "", function(opts) { + this.on("mount update", function() { + this.root.innerHTML = opts.content || "" + }) +}); + + + +riot.tag2("rg-select", ' ', 'rg-select .menu,[riot-tag="rg-select"] .menu,[data-is="rg-select"] .menu{ position: absolute; }', "", function(opts) { + var _this = this; + if (!opts.select) opts.select = { + options: [] + }; + var handleClickOutside = function handleClickOutside(e) { + if (!_this.root.contains(e.target)) _this.close(); + _this.update() + }; + var applyFieldText = function applyFieldText() { + for (var i = 0; i < opts.select.options.length; i++) { + var item = opts.select.options[i]; + if (item.selected) { + _this.selectfield.value = item.text; + break + } + } + }; + this.filterOptions = function() { + _this.options = opts.select.options; + if (opts.select.filter) _this.options = _this.options.filter(function(option) { + var attr = option[opts.select.filter]; + return attr && attr.toLowerCase().indexOf(_this.selectfield.value.toLowerCase()) > -1 + }); + _this.trigger("filter", _this.selectfield.value) + }; + + function getWindowDimensions() { + var w = window, + d = document, + e = d.documentElement, + g = d.getElementsByTagName("body")[0], + x = w.innerWidth || e.clientWidth || g.clientWidth, + y = w.innerHeight || e.clientHeight || g.clientHeight; + return { + width: x, + height: y + } + } + var positionDropdown = function positionDropdown() { + var w = getWindowDimensions(); + var m = _this.root.querySelector(".menu"); + if (!m) return; + if (!opts.select.isvisible) { + m.style.marginTop = ""; + m.style.marginLeft = ""; + return + } + var pos = m.getBoundingClientRect(); + if (w.width < pos.left + pos.width) { + m.style.marginLeft = w.width - (pos.left + pos.width) - 20 + "px" + } + if (pos.left < 0) { + m.style.marginLeft = "20px" + } + if (w.height < pos.top + pos.height) { + m.style.marginTop = w.height - (pos.top + pos.height) - 20 + "px" + } + }; + this.navigate = function(e) { + if ([13, 38, 40].indexOf(e.keyCode) > -1 && !opts.select.isvisible) { + e.preventDefault(); + _this.open(); + return true + } + var length = _this.options.length; + if (length > 0 && [13, 38, 40].indexOf(e.keyCode) > -1) { + e.preventDefault(); + var activeIndex = null; + for (var i = 0; i < length; i++) { + var item = _this.options[i]; + if (item.active) { + activeIndex = i; + break + } + } + if (activeIndex != null) _this.options[activeIndex].active = false; + if (e.keyCode == 38) { + if (activeIndex == null || activeIndex == 0) _this.options[length - 1].active = true; + else _this.options[activeIndex - 1].active = true + } else if (e.keyCode == 40) { + if (activeIndex == null || activeIndex == length - 1) _this.options[0].active = true; + else _this.options[activeIndex + 1].active = true; + } else if (e.keyCode == 13 && activeIndex != null) { + _this.select({ + item: _this.options[activeIndex] + }) + } + } + return true + }; + this.open = function() { + opts.select.isvisible = true; + _this.trigger("open") + }; + this.close = function() { + if (opts.select.isvisible) { + opts.select.isvisible = false; + _this.trigger("close") + } + }; + this.select = function(e) { + opts.select.options.forEach(function(i) { + return i.selected = false + }); + e.item.selected = true; + applyFieldText(); + _this.filterOptions(); + opts.select.isvisible = false; + _this.trigger("select", e.item) + }; + this.on("mount", function() { + applyFieldText(); + _this.filterOptions(); + document.addEventListener("click", handleClickOutside); + _this.update() + }); + this.on("update", function() { + if (!opts.select.filter) applyFieldText(); + positionDropdown() + }); + this.on("unmount", function() { + document.removeEventListener("click", handleClickOutside) + }) +}); + + + +riot.tag2("rg-tabs", '
{heading}
{text}
{include.responseText}
', "", "", function(opts) { + var _this = this; + var fetch = function fetch(tab) { + var req = new XMLHttpRequest; + req.onload = function(resp) { + var activeTab = _this.root.querySelector(".tabs__tab--active"); + if (activeTab) activeTab.innerHTML = req.responseText; + _this.trigger("loaded", tab) + }; + req.open("get", tab.include, true); + req.send(); + _this.trigger("loading", tab) + }; + this.open = function(e) { + var tab = e.item; + if (!tab.disabled && !tab.active) { + opts.tabs.tabs.forEach(function(tab) { + tab.active = false + }); + _this.trigger("open", tab); + tab.active = true + } + }; + this.on("update", function() { + if (!opts.tabs) opts.tabs = {}; + if (!Array.isArray(opts.tabs.tabs)) return; + opts.tabs.tabs.forEach(function(tab) { + if (!tab.disabled && tab.active && tab.include) { + fetch(tab) + } + }) + }) +}); + + + +riot.tag2("rg-tags", '
', 'rg-tags .menu,[riot-tag="rg-tags"] .menu,[data-is="rg-tags"] .menu{ position: absolute; }', "", function(opts) { + var _this = this; + if (!opts.tags) opts.tags = { + options: [], + tags: [] + }; + if (!opts.tags.options) opts.tags.options = []; + if (!opts.tags.tags) opts.tags.tags = []; + var handleClickOutside = function handleClickOutside(e) { + if (!_this.root.contains(e.target)) _this.close(); + _this.update() + }; + var applyFieldText = function applyFieldText() { + _this.selectfield.value = ""; + for (var i = 0; i < opts.tags.options.length; i++) { + var item = opts.tags.options[i]; + item.selected = false + } + }; + this.filterOptions = function() { + _this.options = opts.tags.options; + if (opts.tags.filter) _this.options = _this.options.filter(function(option) { + var attr = option[opts.tags.filter]; + return attr && attr.toLowerCase().indexOf(_this.selectfield.value.toLowerCase()) > -1 + }); + _this.trigger("filter", _this.selectfield.value) + }; + + function getWindowDimensions() { + var w = window, + d = document, + e = d.documentElement, + g = d.getElementsByTagName("body")[0], + x = w.innerWidth || e.clientWidth || g.clientWidth, + y = w.innerHeight || e.clientHeight || g.clientHeight; + return { + width: x, + height: y + } + } + var positionDropdown = function positionDropdown() { + var w = getWindowDimensions(); + var m = _this.root.querySelector(".menu"); + if (!m) return; + if (!opts.tags.isvisible) { + m.style.marginTop = ""; + m.style.marginLeft = ""; + return + } + var pos = m.getBoundingClientRect(); + if (w.width < pos.left + pos.width) { + m.style.marginLeft = w.width - (pos.left + pos.width) - 20 + "px" + } + if (pos.left < 0) { + m.style.marginLeft = "20px" + } + if (w.height < pos.top + pos.height) { + m.style.marginTop = w.height - (pos.top + pos.height) - 20 + "px" + } + }; + this.navigate = function(e) { + if ([13, 38, 40].indexOf(e.keyCode) > -1 && !opts.tags.isvisible) { + e.preventDefault(); + _this.open(); + return true + } + var length = _this.options.length; + if (length > 0 && [13, 38, 40].indexOf(e.keyCode) > -1) { + e.preventDefault(); + var activeIndex = null; + for (var i = 0; i < length; i++) { + var item = _this.options[i]; + if (item.active) { + activeIndex = i; + break + } + } + if (activeIndex != null) _this.options[activeIndex].active = false; + if (e.keyCode == 38) { + if (activeIndex == null || activeIndex == 0) _this.options[length - 1].active = true; + else _this.options[activeIndex - 1].active = true + } else if (e.keyCode == 40) { + if (activeIndex == null || activeIndex == length - 1) _this.options[0].active = true; + else _this.options[activeIndex + 1].active = true + } else if (e.keyCode == 13 && activeIndex != null) { + _this.select({ + item: _this.options[activeIndex] + }) + } + } + return true + }; + this.open = function() { + opts.tags.isvisible = true; + _this.trigger("open") + }; + this.close = function() { + if (opts.tags.isvisible) { + opts.tags.isvisible = false; + _this.trigger("close") + } + }; + this.select = function(e) { + opts.tags.options.forEach(function(i) { + return i.selected = false + }); + e.item.selected = true; + _this.addTag(e.item); + applyFieldText(); + _this.filterOptions(); + _this.trigger("select", e.item) + }; + this.addTag = function(item) { + if (opts.tags.tags.indexOf(item) == -1) { + opts.tags.tags.push(item) + } + }; + this.removeTag = function(e) { + opts.tags.tags = opts.tags.tags.filter(function(tag) { + if (tag._id != e.item._id) return tag + }) + }; + this.on("mount", function() { + applyFieldText(); + _this.filterOptions(); + document.addEventListener("click", handleClickOutside); + _this.update() + }); + this.on("update", function() { + opts.tags.options.forEach(function(item) { + item._id = item._id || (Math.floor(Math.random() * 60466175) + 1679615).toString(36) + }); + opts.tags.tags.forEach(function(tag) { + tag._id = tag._id || (Math.floor(Math.random() * 60466175) + 1679615).toString(36) + }); + if (!opts.tags.filter) applyFieldText(); + positionDropdown() + }); + this.on("unmount", function() { + document.removeEventListener("click", handleClickOutside) + }) +}); + + + +riot.tag2("rg-toasts", '
{text}
', "", "", function(opts) { + var _this = this; + this.toastClicked = function(e) { + var toast = e.item; + window.clearTimeout(toast.timer); + toast.isvisible = false; + _this.trigger("select", toast) + }; + var _uid = 1; + var uid = function uid() { + return _uid++ + }; + this.on("update", function() { + if (!opts.toasts || !Array.isArray(opts.toasts.toasts)) return; + opts.toasts.position = opts.toasts.position || "bottomright"; + opts.toasts.toasts.forEach(function(toast) { + if (typeof toast.isvisible == "undefined") toast.isvisible = true; + toast.id = toast.id || uid(); + if (!toast.timer && !toast.sticky) { + toast.startTimer = function() { + toast.timer = window.setTimeout(function() { + toast.isvisible = false; + _this.trigger("close", toast); + _this.update() + }, toast.timeout || 6e3) + }; + toast.startTimer() + } + }); + opts.toasts.isvisible = opts.toasts.toasts.filter(function(toast) { + return toast.isvisible + }).length > 0 + }) +}); + + +riot.tag2("rg-toggle", '
', "", "", function(opts) { + var _this = this; + this.on("mount", function() { + if (!opts.toggle) opts.toggle = { + checked: false + } + }); + this.toggle = function() { + opts.toggle.checked = !opts.toggle.checked; + _this.trigger("toggle", opts.toggle.checked) + } +}); + + +riot.tag2("rg-unsplash", '', "", "", function(opts) { + var _this = this; + this.on("update", function() { + _this.options = ""; + if (!opts.unsplash) opts.unsplash = {}; + opts.unsplash.width = opts.unsplash.width || 450; + opts.unsplash.height = opts.unsplash.height || 250; + if (opts.unsplash.greyscale) opts.unsplash.greyscale = "g/"; + if (opts.unsplash.random) _this.options += "random&"; + if (opts.unsplash.blur) _this.options += "blur&"; + if (opts.unsplash.image) _this.options += "image=" + opts.unsplash.image + "&"; + if (typeof opts.unsplash.gravity !== "undefined") _this.options += "gravity=" + opts.unsplash.gravity + }) +}); From 60578fa6caf813c640622ea782fae5c5e98bef9f Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Tue, 21 Feb 2017 03:37:36 +0800 Subject: [PATCH 26/67] 3.6.0 Adds functionality for footers etc. Example usage: ... HTML: The contents of my own special drawer.
Some random text.
--- SCRIPT: var tags = riot.mount('rg-drawer', { header: "My Drawer Title", items : [ {text: "items 1"}, {text: "Items 2"} ], footer:{ items : [ {text: "Press 1"}, {text: "Press 2"} ] } }); --- dist/rg-drawer/rg-drawer.js | 49 +++++++++++++++++++++++++------------ 1 file changed, 34 insertions(+), 15 deletions(-) diff --git a/dist/rg-drawer/rg-drawer.js b/dist/rg-drawer/rg-drawer.js index fa357a9..92b27a6 100644 --- a/dist/rg-drawer/rg-drawer.js +++ b/dist/rg-drawer/rg-drawer.js @@ -1,18 +1,37 @@ -riot.tag("rg-drawer", '

{opts.header}
{opts.subheading}

  • {text}
', "", "", function(opts) { - var _this = this; - - this.close = function() { - this.unmount() ; - }; - - this.select = function(e) { - opts.items.forEach(function(item) { - return item.active = false - }); - e.item.active = true; - _this.trigger("select", e.item) - } -}); +riot.tag("rg-drawer", + '
' + + '
' + + '
' + + '
' + + '

{opts.header}' + + '
{opts.subheading}
' + + '

' + + '
' + + '
  • {text}
' + + '
' + + '
' + + '
', "", "", + function(opts) { + var _this = this; + this.on ("before-mount", function(){ + if (!opts.footer){ + footer: [] + } + }) + this.close = function() { + opts.isvisible = false ; + _this.trigger('close'); + }; + this.select = function(e) { + opts.items.forEach(function(item) { + return item.active = false + }); + e.item.active = true; + _this.trigger("select", e.item) + } + }); From a70da007ea238545229eb31e3383df56a5d117e3 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Tue, 21 Feb 2017 22:19:27 +0800 Subject: [PATCH 27/67] 3.6.0 - Partial until rg_pagination Includes features to autoload dependencies from CDN sources. Especially for rg_date (momentjs), rg_markdown (markdownit). You can still import the dependencies, if it finds the required objects are there, it carries on, if not, it will load them from CloudFlare CDN, which means the web page needs online access for those components at least. --- dist/rg.js | 282 +++++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 242 insertions(+), 40 deletions(-) diff --git a/dist/rg.js b/dist/rg.js index 70dede8..8f5e51a 100644 --- a/dist/rg.js +++ b/dist/rg.js @@ -1,3 +1,29 @@ + +var rg_date_cdn_momentjs = "https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/moment.min.js" ; +var rg_credit_card_payment_fonts = "https://cdnjs.cloudflare.com/ajax/libs/paymentfont/1.1.2/css/paymentfont.min.css" ; +var rg_markdown_cdn_markdown = "https://cdnjs.cloudflare.com/ajax/libs/markdown-it/8.3.0/markdown-it.min.js" ; + +// Tools used in the library generally. +// https://zeit.co/blog/async-and-await +function sleep(time) { + return new Promise((resolve) => setTimeout(resolve, time)); +} + + +function loadJS(file, callback) { + // DOM: Create the script element + var script = document.createElement("script"); + // set the type attribute + script.type = "application/javascript"; + // make the script element load file + script.src = file; + script.onload = callback; + script.onreadystatechange = callback; + // finally insert the element to the body element in order to load the script + document.head.appendChild(script); +} + + // Single Alert riot.tag("rg-alert", '
+ +--- SCRIPT: + var tags = riot.mount('rg-drawer', { + drawer: { + header: "My Drawer Title", + subheading: "Hello there!", + items : [ + {text: "items 1"}, + {text: "Items 2"} + ], + footer:{ + items : [ + {text: "Press 1"}, + {text: "Press 2"} + ] + } + } + }); +*/ riot.tag("rg-drawer", - '
' + - '
' + + '
' + + '
' + '
' + '
' + - '

{opts.header}' + - '
{opts.subheading}
' + + '

{opts.drawer.header}' + + '
{opts.drawer.subheading}
' + '

' + '
' + - '
  • {text}
' + + '
  • {text}
' + '
' + '
' + '', "", "", function(opts) { var _this = this; + this.on("before-mount", function() { + if (!opts.drawer) { + opts.drawer = { + header: "Notice", + subheading: undefined, + position: "top", + isvisible: true, + footer: [] + } + } + if (!opts.drawer.footer) { + footer: [] + } + + if (opts.header) + opts.drawer.header = opts.header ; + + if (opts.subheading) + opts.drawer.subheading = opts.subheading ; + + if (opts.position) + opts.drawer.position = opts.position ; + }) + + + this.close = function() { - this.unmount(); + opts.drawer.isvisible = false; + _this.trigger('close'); }; this.select = function(e) { - opts.items.forEach(function(item) { + opts.drawer.items.forEach(function(item) { return item.active = false }); e.item.active = true; @@ -709,6 +891,41 @@ riot.tag("rg-map", '
Date: Wed, 22 Feb 2017 17:02:17 +0800 Subject: [PATCH 28/67] 3.6.0 Usage: HTML: Script: var tags = riot.mount('rg-phone-sim', { phonesim: { url: 'http://riotjs.com/' } }) --- dist/rg-phone-sim/rg-phone-sim.js | 52 +++++++++++++++++++++++++++++-- 1 file changed, 50 insertions(+), 2 deletions(-) diff --git a/dist/rg-phone-sim/rg-phone-sim.js b/dist/rg-phone-sim/rg-phone-sim.js index c1a4dcd..9bdf0f5 100644 --- a/dist/rg-phone-sim/rg-phone-sim.js +++ b/dist/rg-phone-sim/rg-phone-sim.js @@ -1,2 +1,50 @@ -riot.tag2('rg-phone-sim', '
', 'rg-phone-sim .emulator,[riot-tag="rg-phone-sim"] .emulator,[data-is="rg-phone-sim"] .emulator{ position: relative; width: 365px; height: 792px; background-image: url(\'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAW0AAAMYCAMAAAA3r0ZLAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAwBQTFRFMDk6+vr6KTM0lJucMz4/PklKJS8wLTg5Qk1OxsjILzo7gomJ2NvbdH5/ho2O9fb2KzY3ztHRPEdIOkVGZWxtjJSVOEJDkpeYWGRluL2+KTQ1vcHBoaWlPUZHcnp6nKKjOkRF1NfXqa2tp62tZnBxanV2VmFiZ29wVl1eaXJzbXR04uTktbq7QElK1tnZipKTi5CRTlZXpKioo6mqXmlqUVlaOEFCSVFSUFxdISssT1tcTlpbJC4vIiwtTVlaJjAxIy0uTFhZS1dYJzEyKDIzSlZXPUhJOURFO0ZHSVVWKzU2P0pLKjQ1OENEND0+QEtMLDY3SFRVN0JDQ05PLTc4ND9ANUBBQUxNNkFCR1NUMTo7RE9QLjg5N0BBR1JTRlJTLzk6RVFSMjs8RVBRRlFSNj9AMzw9SFNUMj0+IissMTs8MDo7SVRVRFBRMDs8MTw9IiwsMz0+Mjw9SlVWQ09QLjk6NT4/S1ZXND4/JC4uQU1OIy0tQk5PTFdYTVhZQExNTllaJS8vJzIyP0tMLzg5LDc4KDMzNT9AKjU1N0FCNkBBJjAwIywtMDs7Mj09NkFBJjExLjk5LDc3N0JCNUBAKjU2MTw8LDU2Ljc4OUNEKDEyQU1NPEhIPEhJO0dHOkZGND8/Qk5ORFBQQ09PLTY3OUREPkpKPkpLPUlJT1pbP0tLJTAwPUlKJzAxKjM07u/vKTIzsbW2YGprtLm50tXWPkhJo6endn+A3d/f6uvreoOEg4yN2tvc/Pz8n6am8/T0VFtcm6CgJS4v4OLi5ufnYGdncnt8dHp7gYaHJC0uu8DAjJGRQkxNxMfHKzQ1YGtsS1NUaXN0bnh5yMzMyszMy83Oy8/PdoCAKDIy7O3tT1dYuLu70NTUbXd46Onq6erreoCA2dzc8PHx8vPz5OXlnaSkn6Wmqq6ucHZ2t7y8o6eoeoSEkJaWm5+gW2ZnZG5vqa+wOEFB09bWtru7qrCwcXd4t7u83eDgzM7O7/DwNT4+7e7uwMPDwcPEeH5/////70wnUQAAAQB0Uk5T////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AFP3ByUAAA+NSURBVHja7N13nBTlGcDxEQI5AmJQBAkcnqhEDIhoWMt5iogmQbOaYNrqYrJh16gplmTVkILJpYCmF+DSE1JIcjRR7L333ntPYjQxvTl55tnr7N7t7uw+vDP3+/0x3G3hs5+vr++8M7s7eH75Xb5x+rOjN017aeq+tO++U1+atmn0s9M3Xl6BoFfm466ZOPROhIt259CJ19RS++7LdgW133a97O7aaI/a+VE0y+jRnUeF1p6wqfvvaz6+YVjT0jMyJ3rkeSdmzljaNKzh+OZuoE0TQmmvv67zLzrwmMY8wkXLNx5zYCfTdeur1p6wdeegblgKar8tbegc4lv/rirtjTMLT99/UVMKzgFLNS3avwA2c2Pl2n8tPHV1QxLJMks2rC6g/alC7ScvKozrhhyIFZRrKIzvi56sRHt94b/RIsZ1xeN7UYFuffna4/UJB68Er4rGHax648vUfmqkPnxBBrmqyixQv5FPlaP9Dz2eWdIEW9U1LdFjnQsG1n5ETz4dyowdavY+VE9XPTKQ9phddPfICjvk6lt3lruM6V97j132l26BK3S3BJAv79Gf9jN3BY85HKsadHhAedebSmtf+ofgEcOQqknDAsyLLi2pPTq4/0icatSRAefoUto7Bvc2oFSzGgLQHYtr3xTct5DVSA1XJgsD0puKaa99s9wzlwPImh5WzhXTl/5TRHt7uaN5GUI1bVmzqL64ufZfgkF/GD417rCA9e99tf8VzCPHoVPzjhPXaVv10d5bblzCyZE6nDIJ5pKde2u/Egz487Cp1zHlHr20h8otp50ETT2WgaeL7dCe2vcF/uOQqUsrA9z7emgHQ3thdEZLLpeL0kHYwq7BrdqjAv2ofEAnlU0EZaPjvTTgHdWlvXeEhnYu0VkuUoN7707tbW6X35oiciyc6C4yZxmaxPf2bTq0z5VfTo/IC8/20M5GZnAHy5JzO7Tvj85bCKlEzyIzdQdvLNxf0L4wmMQjMgnmemlHZubOBcQXqvb0CO0jk720o3OmIdhPTlft4FTrth5ju55tK8bbq/YG+emUiLzqTC/t6Lz1cYoYbwi0r47QisTz0j2w0xE6ngxWJVeLdrD+WxCZVx3J9ba0QNeAnj9T/twuOi87GcF9pLSdKM8U7Q2rV6+O0jcQMoXJJB2t96tzorzB99Y2NzfPjdQL9zLJZDJynw2YK85rvZ1ku9Cjuq+4xXknb4Js+XxU/WsQ5wnec7LlDcn6d544P+ddLFu+zlT/Vorzxd5k2fIJqfq3TJwney/Lls+RGBwniPPL3g6y5aOWBstWcd7BmypbLjhS/1LiPNWTTTMWBik02mijTWijTWijjTbFVTuZTqSTRW8OUzqJdpGyxT89mU2ELYv25kO4+LvnyUT4kmj3LV38YzjpGmin3dReIm2pF9BlU+LmMDmnrdBbUntQje0trj2o5m2FPlBiTWKQQm9R7cG03nZAexCFNtpoE9poE9poo01oo01oo01oo4021VT7MxIUBik02mijTeG1D5agMEih0UYbbUIbbUIbbbQJbbQJbbQJbbTRplppf1qCwiCFRhtttCm89lwJCoMUGm200Sa00Sa00Uab0Eab0Eab0EY73tqnS1AYpNBoo402hdc+VILCIIVGG220CW20CW200Sa00Sa00aYC9GkSFAYpNNpoo01oR0v7bRIUBik02mijTWijTWijjTahjTah7bL2hyUoDFJotNFGm9BGm0ppv0OCwiCFRhtttAlttAlttNEmtOOhfbwEhUEKjTbaaBPaaBPaLmi/T4LCIIVGG220CW20CW200ab6aS+UoDBIodFGG21CG21C2wXt4yQoDFJotNFGm9BGm9BGe7BpL5KgMEih0UYbbUIbbULbBe0PSFAYpNBoo402oY02oY32YNP+oASFQQqNNtpoE9poE9poDzbtj0hQGKTQaKONNqGNNpXS/qkEhUEKfYwEhUEKjTbaaBPaaBPaaA827Y9LUBik0GijjTahHS3tn0lQGKTQCyQoDFJotNFGm9BGm9BGG22qn/anJCgMUmi00Uabwmv/RILCIIVukKAwSKHRRhttQhttQhtttKl+2p+UoDBIodFGG20Kr/09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\'); background-repeat: no-repeat; background-position: center; background-size: cover; } rg-phone-sim .screen,[riot-tag="rg-phone-sim"] .screen,[data-is="rg-phone-sim"] .screen{ position: absolute; top: 105px; left: 22px; background-color: white; width: 320px; height: 568px; border: 0; }', '', function(opts) { -}); +riot.tag("rg-phone-sim", '
', + 'rg-phone-sim .emulator,[riot-tag="rg-phone-sim"] .emulator,[data-is="rg-phone-sim"] .emulator{ position: relative; width: 365px; height: 792px; background-image:'+ + 'url(\'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAW0AAAMYCAMAAAA3r0ZLAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAwBQTFRFMDk6+vr6KTM0lJucMz4/PklKJS8wLTg5Qk1O'+ + 'xsjILzo7gomJ2NvbdH5/ho2O9fb2KzY3ztHRPEdIOkVGZWxtjJSVOEJDkpeYWGRluL2+KTQ1vcHBoaWlPUZHcnp6nKKjOkRF1NfXqa2tp62tZnBxanV2VmFiZ29wVl1eaXJzbXR04uTktbq7QElK1tnZipKTi5CRTlZXpKioo'+ + '6mqXmlqUVlaOEFCSVFSUFxdISssT1tcTlpbJC4vIiwtTVlaJjAxIy0uTFhZS1dYJzEyKDIzSlZXPUhJOURFO0ZHSVVWKzU2P0pLKjQ1OENEND0+QEtMLDY3SFRVN0JDQ05PLTc4ND9ANUBBQUxNNkFCR1NUMTo7RE9QLjg5'+ + 'N0BBR1JTRlJTLzk6RVFSMjs8RVBRRlFSNj9AMzw9SFNUMj0+IissMTs8MDo7SVRVRFBRMDs8MTw9IiwsMz0+Mjw9SlVWQ09QLjk6NT4/S1ZXND4/JC4uQU1OIy0tQk5PTFdYTVhZQExNTllaJS8vJzIyP0tMLzg5LDc4KDMzNT'+ + '9AKjU1N0FCNkBBJjAwIywtMDs7Mj09NkFBJjExLjk5LDc3N0JCNUBAKjU2MTw8LDU2Ljc4OUNEKDEyQU1NPEhIPEhJO0dHOkZGND8/Qk5ORFBQQ09PLTY3OUREPkpKPkpLPUlJT1pbP0tLJTAwPUlKJzAxKjM07u/vKTIzsbW2YGprtLm'+ + '50tXWPkhJo6endn+A3d/f6uvreoOEg4yN2tvc/Pz8n6am8/T0VFtcm6CgJS4v4OLi5ufnYGdncnt8dHp7gYaHJC0uu8DAjJGRQkxNxMfHKzQ1YGtsS1NUaXN0bnh5yMzMyszMy83Oy8/PdoCAKDIy7O3tT1dYuLu70NTUbXd46Onq6erreoC'+ + 'A2dzc8PHx8vPz5OXlnaSkn6Wmqq6ucHZ2t7y8o6eoeoSEkJaWm5+gW2ZnZG5vqa+wOEFB09bWtru7qrCwcXd4t7u83eDgzM7O7/DwNT4+7e7uwMPDwcPEeH5/////70wnUQAAAQB0Uk5T'+ + '//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////'+ + '//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////'+ + 'AFP3ByUAAA+NSURBVHja7N13nBTlGcDxEQI5AmJQBAkcnqhEDIhoWMt5iogmQbOaYNrqYrJh16gplmTVkILJpYCmF+DSE1JIcjRR7L333ntPYjQxvTl55tnr7N7t7uw+vDP3+/0x3G3hs5+vr++8M7s7eH75Xb5x+rOjN017aeq+tO++U'+ + '1+atmn0s9M3Xl6BoFfm466ZOPROhIt259CJ19RS++7LdgW133a97O7aaI/a+VE0y+jRnUeF1p6wqfvvaz6+YVjT0jMyJ3rkeSdmzljaNKzh+OZuoE0TQmmvv67zLzrwmMY8wkXLNx5zYCfTdeur1p6wdeegblgKar8tbegc4lv/rirtjTMLT99'+ + '/UVMKzgFLNS3avwA2c2Pl2n8tPHV1QxLJMks2rC6g/alC7ScvKozrhhyIFZRrKIzvi56sRHt94b/RIsZ1xeN7UYFuffna4/UJB68Er4rGHax648vUfmqkPnxBBrmqyixQv5FPlaP9Dz2eWdIEW9U1LdFjnQsG1n5ETz4dyowdavY+VE9XPTKQ9phddP'+ + 'fICjvk6lt3lruM6V97j132l26BK3S3BJAv79Gf9jN3BY85HKsadHhAedebSmtf+ofgEcOQqknDAsyLLi2pPTq4/0icatSRAefoUto7Bvc2oFSzGgLQHYtr3xTct5DVSA1XJgsD0puKaa99s9wzlwPImh5WzhXTl/5TRHt7uaN5GUI1bVmzqL64ufZfgkF/GD'+ + '417rCA9e99tf8VzCPHoVPzjhPXaVv10d5bblzCyZE6nDIJ5pKde2u/Egz487Cp1zHlHr20h8otp50ETT2WgaeL7dCe2vcF/uOQqUsrA9z7emgHQ3thdEZLLpeL0kHYwq7BrdqjAv2ofEAnlU0EZaPjvTTgHdWlvXeEhnYu0VkuUoN7707tbW6X35oiciyc6C4y'+ + 'ZxmaxPf2bTq0z5VfTo/IC8/20M5GZnAHy5JzO7Tvj85bCKlEzyIzdQdvLNxf0L4wmMQjMgnmemlHZubOBcQXqvb0CO0jk720o3OmIdhPTlft4FTrth5ju55tK8bbq/YG+emUiLzqTC/t6Lz1cYoYbwi0r47QisTz0j2w0xE6ngxWJVeLdrD+WxCZVx3J9ba0QNeAnj'+ + '9T/twuOi87GcF9pLSdKM8U7Q2rV6+O0jcQMoXJJB2t96tzorzB99Y2NzfPjdQL9zLJZDJynw2YK85rvZ1ku9Cjuq+4xXknb4Js+XxU/WsQ5wnec7LlDcn6d544P+ddLFu+zlT/Vorzxd5k2fIJqfq3TJwney/Lls+RGBwniPPL3g6y5aOWBstWcd7BmypbLjhS/1Li'+ + 'PNWTTTMWBik02mijTWijTWijjTbFVTuZTqSTRW8OUzqJdpGyxT89mU2ELYv25kO4+LvnyUT4kmj3LV38YzjpGmin3dReIm2pF9BlU+LmMDmnrdBbUntQje0trj2o5m2FPlBiTWKQQm9R7cG03nZAexCFNtpoE9poE9poo01oo01oo01oo4021VT7MxIUBik02mijTeG1D'+ + '5agMEih0UYbbUIbbUIbbbQJbbQJbbQJbbTRplppf1qCwiCFRhtttCm89lwJCoMUGm200Sa00Sa00Uab0Eab0Eab0EY73tqnS1AYpNBoo402hdc+VILCIIVGG220CW20CW200Sa00Sa00aYC9GkSFAYpNNpoo01oR0v7bRIUBik02mijTWijTWijjTahjTah7bL2hyUoDFJot'+ + 'NFGm9BGm0ppv0OCwiCFRhtttAlttAlttNEmtOOhfbwEhUEKjTbaaBPaaBPaLmi/T4LCIIVGG220CW20CW200ab6aS+UoDBIodFGG21CG21C2wXt4yQoDFJotNFGm9BGm9BGe7BpL5KgMEih0UYbbUIbbULbBe0PSFAYpNBoo402oY02oY32YNP+oASFQQqNNtpoE9poE9poDzbtj'+ + '0hQGKTQaKONNqGNNpXS/qkEhUEKfYwEhUEKjTbaaBPaaBPaaA827Y9LUBik0GijjTahHS3tn0lQGKTQCyQoDFJotNFGm9BGm9BGG22qn/anJCgMUmi00Uabwmv/RILCIIVukKAwSKHRRhttQhttQhtttKl+2p+UoDBIodFGG20Kr/09CQqDFPo9EhQGKTTaaKNNaKNNaKONNtVP+7'+ + 'MSFAYpNNpoo03htY+UoDBIodFGG21CG21CG220Ce14aH9egsIghUYb7bhq/1qCwiCFPlyCwiCFRhtttAlttAlttNEmtNGmSrV/KUFhkEL/QoLCIIUeJkFhkEKjjTbahDbahDbaaBPaaFOl2r+VoDBIoX8lQWGQQh8mQWGQQqONNtqENtqENtpoE9poE9oua/9AgsIghf6+BIVBCr2tBIV'+ + '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\');'+ + ' background-repeat: no-repeat; background-position: center; background-size: cover; } rg-phone-sim .screen,[riot-tag="rg-phone-sim"] .screen,[data-is="rg-phone-sim"] .screen{ position: absolute; top: 105px; left: 22px; background-color: white; width: 320px; height: 568px; border: 0; }', "", + function(opts) { + this.on("before-mount", function (){ + + if (!opts.phonesim) + opts.phonesim = {url: undefined} + + if (opts.url) + opts.phonesim.url = opts.url ; + + }) ; + + }); From 4e7272ea5e5e4cf91c26c4cd5316dffbe217e320 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Wed, 22 Feb 2017 19:43:00 +0800 Subject: [PATCH 29/67] 3.6.0 HTML: Script: var tags = riot.mount('rg-pagination', { pagination: { pages: 10, page: 6 } }) --- dist/rg-pagination/rg-pagination.js | 96 +++++++++++++++++++---------- 1 file changed, 62 insertions(+), 34 deletions(-) diff --git a/dist/rg-pagination/rg-pagination.js b/dist/rg-pagination/rg-pagination.js index 1f70189..d34714c 100644 --- a/dist/rg-pagination/rg-pagination.js +++ b/dist/rg-pagination/rg-pagination.js @@ -1,37 +1,65 @@ -riot.tag2('rg-pagination', '', '', '', function(opts) { -var _this = this; - -this.on('update', function () { - if (!opts.pagination) opts.pagination = { - pages: 1, - page: 1 - }; -}); +riot.tag("rg-pagination", +'
'+ +'
'+ +' '+ +' '+ +'
'+ +'
'+ +' '+ +' '+ +' '+ +' '+ +' …'+ +' '+ +'
'+ +'
'+ +' '+ +' '+ +'
'+ +'
' + , "", "", + function(opts) { + var _this = this; -this.on('page', function () { - var btns = _this.root.querySelectorAll('button'); - for (var i = 0; i < btns.length; i++) { - btns[i].blur(); - } -}); + this.on("before-mount", function(){ + if (!opts.pagination){ + pagination = { + pages: 10, + page: 1 + } + } + if (opts.page) + opts.pagination.page = Number(opts.page) ; + + if (opts.pages) + opts.pagination.pages = Number(opts.pages) ; + + }) ; + + this.on("page", function() { + var btns = _this.root.querySelectorAll("button"); + for (var i = 0; i < btns.length; i++) { + btns[i].blur() + } + }); + + this.forward = function() { + opts.pagination.page++; + _this.trigger("page", opts.pagination.page) + }; + + this.back = function() { + opts.pagination.page--; + _this.trigger("page", opts.pagination.page) + }; + + this.first = function() { + opts.pagination.page = 1; + _this.trigger("page", opts.pagination.page) + }; -this.forward = function () { - opts.pagination.page++; - _this.trigger('page', opts.pagination.page); -}; - -this.back = function () { - opts.pagination.page--; - _this.trigger('page', opts.pagination.page); -}; - -this.first = function () { - opts.pagination.page = 1; - _this.trigger('page', opts.pagination.page); -}; - -this.last = function () { - opts.pagination.page = opts.pagination.pages; - _this.trigger('page', opts.pagination.page); -}; + this.last = function() { + opts.pagination.page = opts.pagination.pages; + _this.trigger("page", opts.pagination.page) + } }); From cb261e496f742e482a7111efd4bea00dedeb1676 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Wed, 22 Feb 2017 19:48:52 +0800 Subject: [PATCH 30/67] 3.6.0 HTML: Script: var tags = riot.mount('rg-pagination', { pagination: { pages: 10, page: 6 } }) --- dist/rg-pagination/rg-pagination.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/dist/rg-pagination/rg-pagination.js b/dist/rg-pagination/rg-pagination.js index d34714c..0410ac5 100644 --- a/dist/rg-pagination/rg-pagination.js +++ b/dist/rg-pagination/rg-pagination.js @@ -28,12 +28,24 @@ riot.tag("rg-pagination", page: 1 } } + + if (opts.page && opts.pages) { + + opts.page = Number(opts.page) ; + opts.pages = Number(opts.pages) ; + + if (opts.page > opts.pages) + opts.page = opts.pages; + + } + if (opts.page) opts.pagination.page = Number(opts.page) ; if (opts.pages) opts.pagination.pages = Number(opts.pages) ; + }) ; this.on("page", function() { From 33025d9d6645cdd3360e59e6a7681b7d8316d8b2 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Thu, 23 Feb 2017 10:16:09 +0800 Subject: [PATCH 31/67] 3.6.0 Uses the webservice http://placeholdit.imigix.net to turn text to images HTML: Any of the parameters can be passed either via the script or the html parameters. Script: var tags = riot.mount('rg-placeholdit', { placeholdit: { width: 450, height: 250, background: '000', color: 'fff', text: 'Hello RiotGear', textsize: 30, format: 'png' } }) --- dist/rg-placeholdit/rg-placeholdit.js | 50 +++++++++++++++++++++------ 1 file changed, 39 insertions(+), 11 deletions(-) diff --git a/dist/rg-placeholdit/rg-placeholdit.js b/dist/rg-placeholdit/rg-placeholdit.js index f9516da..e8ea6d7 100644 --- a/dist/rg-placeholdit/rg-placeholdit.js +++ b/dist/rg-placeholdit/rg-placeholdit.js @@ -1,12 +1,40 @@ -riot.tag2('rg-placeholdit', '', '', '', function(opts) { -this.on('update', function () { - if (!opts.placeholdit) opts.placeholdit = {}; - opts.placeholdit.width = opts.placeholdit.width || 450; - opts.placeholdit.height = opts.placeholdit.height || 250; - opts.placeholdit.background = opts.placeholdit.background || '000'; - opts.placeholdit.color = opts.placeholdit.color || 'fff'; - opts.placeholdit.text = opts.placeholdit.text || opts.placeholdit.width + ' x ' + opts.placeholdit.height; - opts.placeholdit.textsize = opts.placeholdit.textsize || 30; - opts.placeholdit.format = opts.placeholdit.format || 'png'; -}); +riot.tag("rg-placeholdit", + '', "", "", + function(opts) { + + this.on("before-mount", function() { + if (!opts.placeholdit) opts.placeholdit = {}; + opts.placeholdit.width = opts.placeholdit.width || 450; + opts.placeholdit.height = opts.placeholdit.height || 250; + opts.placeholdit.background = opts.placeholdit.background || "000"; + opts.placeholdit.color = opts.placeholdit.color || "fff"; + opts.placeholdit.text = opts.placeholdit.text || opts.placeholdit.width + " x " + opts.placeholdit.height; + opts.placeholdit.textsize = opts.placeholdit.textsize || 30; + opts.placeholdit.format = opts.placeholdit.format || "png" + + if (opts.width) + opts.placeholdit.width = Number(opts.width) ; + + if (opts.height) + opts.placeholdit.height = Number(opts.height) ; + + if (opts.background) + opts.placeholdit.background = opts.background ; + + if (opts.color) + opts.placeholdit.color = opts.color ; + + if (opts.text) + opts.placeholdit.text = opts.text ; + + if (opts.textsize) + opts.placeholdit.textsize = Number(opts.textsize) ; + + if (opts.format) + opts.placeholdit.text = opts.format ; + + }) }); From a902d1b6346c245fccce8a3b94694b4cac4b594f Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Thu, 23 Feb 2017 21:17:20 +0800 Subject: [PATCH 32/67] 3.6.0 HTML: Script: var tags = riot.mount('rg-select', { select: { placeholder: 'Please select a card', filter: 'text', // <-- this enables filtering on the 'text' property options: [{ id: 0, text: 'Visa' }, { id: 1, text: 'MasterCard' //selected: true }, { id: 2, text: 'American Express' }, { id: 3, text: 'Discover' }] } }) tags[0].on('open', function () {console.log("open") }) .on('close', function () { console.log("close") }) .on('select', function (item) { console.log("item=", item) }) --- dist/rg-select/rg-select.js | 211 +++++++++++++----------------------- 1 file changed, 78 insertions(+), 133 deletions(-) diff --git a/dist/rg-select/rg-select.js b/dist/rg-select/rg-select.js index 4187128..7cb7c82 100644 --- a/dist/rg-select/rg-select.js +++ b/dist/rg-select/rg-select.js @@ -1,133 +1,78 @@ -riot.tag2('rg-select', ' ', 'rg-select .menu,[riot-tag="rg-select"] .menu,[data-is="rg-select"] .menu{ position: absolute; }', '', function(opts) { -var _this = this; - -if (!opts.select) opts.select = { options: [] }; - -var handleClickOutside = function handleClickOutside(e) { - if (!_this.root.contains(e.target)) _this.close(); - _this.update(); -}; - -var applyFieldText = function applyFieldText() { - for (var i = 0; i < opts.select.options.length; i++) { - var item = opts.select.options[i]; - if (item.selected) { - _this.selectfield.value = item.text; - break; - } - } -}; - -this.filterOptions = function () { - _this.options = opts.select.options; - if (opts.select.filter) _this.options = _this.options.filter(function (option) { - var attr = option[opts.select.filter]; - return attr && attr.toLowerCase().indexOf(_this.selectfield.value.toLowerCase()) > -1; - }); - _this.trigger('filter', _this.selectfield.value); -}; - -function getWindowDimensions() { - var w = window, - d = document, - e = d.documentElement, - g = d.getElementsByTagName('body')[0], - x = w.innerWidth || e.clientWidth || g.clientWidth, - y = w.innerHeight || e.clientHeight || g.clientHeight; - return { width: x, height: y }; -} - -var positionDropdown = function positionDropdown() { - var w = getWindowDimensions(); - var m = _this.root.querySelector('.menu'); - if (!m) return; - if (!opts.select.isvisible) { - m.style.marginTop = ''; - m.style.marginLeft = ''; - return; - } - var pos = m.getBoundingClientRect(); - if (w.width < pos.left + pos.width) { - m.style.marginLeft = w.width - (pos.left + pos.width) - 20 + 'px'; - } - if (pos.left < 0) { - m.style.marginLeft = '20px'; - } - if (w.height < pos.top + pos.height) { - m.style.marginTop = w.height - (pos.top + pos.height) - 20 + 'px'; - } -}; - -this.navigate = function (e) { - if ([13, 38, 40].indexOf(e.keyCode) > -1 && !opts.select.isvisible) { - e.preventDefault(); - _this.open(); - return true; - } - var length = _this.options.length; - if (length > 0 && [13, 38, 40].indexOf(e.keyCode) > -1) { - e.preventDefault(); - - var activeIndex = null; - for (var i = 0; i < length; i++) { - var item = _this.options[i]; - if (item.active) { - activeIndex = i; - break; - } - } - - if (activeIndex != null) _this.options[activeIndex].active = false; - - if (e.keyCode == 38) { - if (activeIndex == null || activeIndex == 0) _this.options[length - 1].active = true;else _this.options[activeIndex - 1].active = true; - } else if (e.keyCode == 40) { - if (activeIndex == null || activeIndex == length - 1) _this.options[0].active = true;else _this.options[activeIndex + 1].active = true; - } else if (e.keyCode == 13 && activeIndex != null) { - _this.select({ - item: _this.options[activeIndex] - }); - } - } - return true; -}; - -this.open = function () { - opts.select.isvisible = true; - _this.trigger('open'); -}; - -this.close = function () { - if (opts.select.isvisible) { - opts.select.isvisible = false; - _this.trigger('close'); - } -}; - -this.select = function (e) { - opts.select.options.forEach(function (i) { - return i.selected = false; - }); - e.item.selected = true; - applyFieldText(); - _this.filterOptions(); - opts.select.isvisible = false; - _this.trigger('select', e.item); -}; - -this.on('mount', function () { - applyFieldText(); - _this.filterOptions(); - document.addEventListener('click', handleClickOutside); - _this.update(); -}); - -this.on('update', function () { - if (!opts.select.filter) applyFieldText(); - positionDropdown(); -}); - -this.on('unmount', function () { - document.removeEventListener('click', handleClickOutside); -}); -}); +riot.tag("rg-select", ''+ + '
    '+ + '
  • {text}'+ + '
  • '+ + '
', + 'rg-select .c-card--menu,[riot-tag="rg-select"] .c-card--menu,[data-is="rg-select"] .c-card--menu{ position: relative; }', "", +function(opts) { + var _this = this; + + if (!opts.select) opts.select = { + options: [] + }; + + var handleClickOutside = function handleClickOutside(e) { + if (!_this.root.contains(e.target)) _this.close(); + _this.update() + }; + + + var applyFieldText = function applyFieldText() { + for (var i = 0; i < opts.select.options.length; i++) { + var item = opts.select.options[i]; + if (item.selected) { + _this.refs.selectfield.value = item.text; + break + } + } + }; + + + this.filterOptions = function() { + _this.options = opts.select.options; + if (opts.select.filter) _this.options = _this.options.filter(function(option) { + var attr = option[opts.select.filter]; + return attr && attr.toLowerCase().indexOf(_this.refs.selectfield.value.toLowerCase()) > -1 + }); + _this.trigger("filter", _this.refs.selectfield.value) + }; + + function getWindowDimensions() { + var w = window, + d = document, + e = d.documentElement, + g = d.getElementsByTagName("body")[0], + x = w.innerWidth || e.clientWidth || g.clientWidth, + y = w.innerHeight || e.clientHeight || g.clientHeight; + return { + width: x, + height: y + } + } ; + + var positionDropdown = function positionDropdown() { + var w = getWindowDimensions(); + var m = _this.root.querySelector(".c-card--menu"); + if (!m) return; + if (!opts.select.isvisible) { + m.style.marginTop = ""; + m.style.marginLeft = ""; + return + } ; + + var pos = m.getBoundingClientRect(); + + if (w.width < pos.left + pos.width) { + m.style.marginLeft = w.width - (pos.left + pos.width) - 20 + "px" + } + + if (pos.left < 0) { + m.style.marginLeft = "20px" + } + if (w.height < pos.top + pos.height) { + m.style.marginTop = w.height - (pos.top + pos.height) - 20 + "px" + } + }; From 16ac20b4d04f8dc74452fdd1be3a2381b1181da8 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Thu, 23 Feb 2017 21:19:28 +0800 Subject: [PATCH 33/67] 3.6.0 HTML: Script: var tags = riot.mount('rg-tabs', { tabs: { type: 'success', //default|brand|info|warning|success|error tabs: [{ heading: 'Tab one', text: 'This is tab one' }, { heading: 'Tab two', text: 'This is tab two', active: true }, { heading: 'Disabled tab', text: 'This is disabled tab', disabled: true }, { heading: 'Tab three', include: 'tab.html' }] } }) tags[0].on('open', function (tab) { console.log('open', tab) }) .on('loading', function (tab) { console.log('loading', tab) }) .on('loaded', function (tab) { console.log('loaded', tab) }) --- dist/rg-tabs/rg-tabs.js | 60 +++++++++++++++++------------------------ 1 file changed, 25 insertions(+), 35 deletions(-) diff --git a/dist/rg-tabs/rg-tabs.js b/dist/rg-tabs/rg-tabs.js index 27d6aa2..b3362fa 100644 --- a/dist/rg-tabs/rg-tabs.js +++ b/dist/rg-tabs/rg-tabs.js @@ -1,36 +1,26 @@ -riot.tag2('rg-tabs', '
{heading}
{text}
{include.responseText}
', '', '', function(opts) { -var _this = this; +riot.tag("rg-tabs", + '
'+ + '
'+ + '
{heading}'+ + '
'+ + '
'+ + '
'+ + '
{text}
{include.responseText}'+ + '
'+ + '
'+ + '
', "", "", + function(opts) { + var _this = this; -var fetch = function fetch(tab) { - var req = new XMLHttpRequest(); - req.onload = function (resp) { - var activeTab = _this.root.querySelector('.tabs__tab--active'); - if (activeTab) activeTab.innerHTML = req.responseText; - _this.trigger('loaded', tab); - }; - req.open('get', tab.include, true); - req.send(); - _this.trigger('loading', tab); -}; - -this.open = function (e) { - var tab = e.item; - if (!tab.disabled && !tab.active) { - opts.tabs.tabs.forEach(function (tab) { - tab.active = false; - }); - _this.trigger('open', tab); - tab.active = true; - } -}; - -this.on('update', function () { - if (!opts.tabs) opts.tabs = {}; - if (!Array.isArray(opts.tabs.tabs)) return; - opts.tabs.tabs.forEach(function (tab) { - if (!tab.disabled && tab.active && tab.include) { - fetch(tab); - } - }); -}); -}); + var fetch = function fetch(tab) { + var req = new XMLHttpRequest; + req.onload = function(resp) { + var activeTab = _this.root.querySelector(".c-tabs__tab--active"); + if (activeTab) activeTab.innerHTML = req.responseText; + _this.trigger("loaded", tab) + }; + req.open("get", tab.include, true); + req.send(); + _this.trigger("loading", tab) + }; From e3e6435b991fd6bfcf92839cd6f87b8466abb903 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Thu, 23 Feb 2017 22:54:25 +0800 Subject: [PATCH 34/67] 3.6.0 HTML: Script: var tags = riot.mount('rg-tags', { tags: { type: "brand", placeholder: 'Choose a country', filter: 'text', // <-- this enables filtering on the 'text' property options: [{ text: 'England', type: 'info' }, { text: 'Scotland', }, { text: 'Ireland', type: 'warning' }, { text: 'Wales', type: 'success' }], tags: [{ text: 'United States', }] } }) tags[0].on('open', function () { console.log("open") }) .on('close', function () { console.log("close") }) .on('select', function (item) { console.log("select", item) }) --- dist/rg-tags/rg-tags.js | 372 ++++++++++++++++++++++++---------------- 1 file changed, 221 insertions(+), 151 deletions(-) diff --git a/dist/rg-tags/rg-tags.js b/dist/rg-tags/rg-tags.js index 20dc420..21c0689 100644 --- a/dist/rg-tags/rg-tags.js +++ b/dist/rg-tags/rg-tags.js @@ -1,152 +1,222 @@ -riot.tag2('rg-tags', '
', 'rg-tags .menu,[riot-tag="rg-tags"] .menu,[data-is="rg-tags"] .menu{ position: absolute; }', '', function(opts) { -var _this = this; - -if (!opts.tags) opts.tags = { options: [], tags: [] }; -if (!opts.tags.options) opts.tags.options = []; -if (!opts.tags.tags) opts.tags.tags = []; - -var handleClickOutside = function handleClickOutside(e) { - if (!_this.root.contains(e.target)) _this.close(); - _this.update(); -}; - -var applyFieldText = function applyFieldText() { - _this.selectfield.value = ''; - for (var i = 0; i < opts.tags.options.length; i++) { - var item = opts.tags.options[i]; - item.selected = false; - } -}; - -this.filterOptions = function () { - _this.options = opts.tags.options; - if (opts.tags.filter) _this.options = _this.options.filter(function (option) { - var attr = option[opts.tags.filter]; - return attr && attr.toLowerCase().indexOf(_this.selectfield.value.toLowerCase()) > -1; - }); - _this.trigger('filter', _this.selectfield.value); -}; - -function getWindowDimensions() { - var w = window, - d = document, - e = d.documentElement, - g = d.getElementsByTagName('body')[0], - x = w.innerWidth || e.clientWidth || g.clientWidth, - y = w.innerHeight || e.clientHeight || g.clientHeight; - return { width: x, height: y }; -} - -var positionDropdown = function positionDropdown() { - var w = getWindowDimensions(); - var m = _this.root.querySelector('.menu'); - if (!m) return; - if (!opts.tags.isvisible) { - m.style.marginTop = ''; - m.style.marginLeft = ''; - return; - } - var pos = m.getBoundingClientRect(); - if (w.width < pos.left + pos.width) { - m.style.marginLeft = w.width - (pos.left + pos.width) - 20 + 'px'; - } - if (pos.left < 0) { - m.style.marginLeft = '20px'; - } - if (w.height < pos.top + pos.height) { - m.style.marginTop = w.height - (pos.top + pos.height) - 20 + 'px'; - } -}; - -this.navigate = function (e) { - if ([13, 38, 40].indexOf(e.keyCode) > -1 && !opts.tags.isvisible) { - e.preventDefault(); - _this.open(); - return true; - } - var length = _this.options.length; - if (length > 0 && [13, 38, 40].indexOf(e.keyCode) > -1) { - e.preventDefault(); - - var activeIndex = null; - for (var i = 0; i < length; i++) { - var item = _this.options[i]; - if (item.active) { - activeIndex = i; - break; - } - } - - if (activeIndex != null) _this.options[activeIndex].active = false; - - if (e.keyCode == 38) { - if (activeIndex == null || activeIndex == 0) _this.options[length - 1].active = true;else _this.options[activeIndex - 1].active = true; - } else if (e.keyCode == 40) { - if (activeIndex == null || activeIndex == length - 1) _this.options[0].active = true;else _this.options[activeIndex + 1].active = true; - } else if (e.keyCode == 13 && activeIndex != null) { - _this.select({ - item: _this.options[activeIndex] - }); - } - } - return true; -}; - -this.open = function () { - opts.tags.isvisible = true; - _this.trigger('open'); -}; - -this.close = function () { - if (opts.tags.isvisible) { - opts.tags.isvisible = false; - _this.trigger('close'); - } -}; - -this.select = function (e) { - opts.tags.options.forEach(function (i) { - return i.selected = false; - }); - e.item.selected = true; - _this.addTag(e.item); - applyFieldText(); - _this.filterOptions(); - _this.trigger('select', e.item); -}; - -this.addTag = function (item) { - if (opts.tags.tags.indexOf(item) == -1) { - opts.tags.tags.push(item); - } -}; - -this.removeTag = function (e) { - opts.tags.tags = opts.tags.tags.filter(function (tag) { - if (tag._id != e.item._id) return tag; - }); -}; - -this.on('mount', function () { - applyFieldText(); - _this.filterOptions(); - document.addEventListener('click', handleClickOutside); - _this.update(); -}); - -this.on('update', function () { - opts.tags.options.forEach(function (item) { - item._id = item._id || (Math.floor(Math.random() * 60466175) + 1679615).toString(36); - }); - opts.tags.tags.forEach(function (tag) { - tag._id = tag._id || (Math.floor(Math.random() * 60466175) + 1679615).toString(36); - }); - - if (!opts.tags.filter) applyFieldText(); - positionDropdown(); -}); - -this.on('unmount', function () { - document.removeEventListener('click', handleClickOutside); -}); +riot.tag("rg-tags", + '
'+ + ' '+ + ' '+ + ' '+ + '
'+ + ' '+ + '
    '+ + '
  • {text}'+ + '
  • '+ + '
'+ + '
'+ + '
', + 'rg-tags .c-card--menu,[riot-tag="rg-tags"] .c-card--menu,[data-is="rg-tags"] .c-card--menu{ position: relative; }', "", + function(opts) { + var _this = this; + + if (!opts.tags) opts.tags = { + options: [], + tags: [] + } + else { + if (!opts.tags.type) + opts.tags.type = "default" ; + } // else..if + + if (!opts.tags.options) opts.tags.options = []; + if (!opts.tags.tags) opts.tags.tags = []; + + if (opts.type) + opts.tags.type = opts.type ; + + if (opts.placeholder) + opts.tags.placeholder = opts.placeholder ; + + if (opts.filter) + if (typeof opts.filter === "boolean" || typeof opts.filter === "string") + if (opts.filter === "true" || Boolean(opts.filter) === true) + if (opts.filter==="true") + opts.tags.filter = "text" ; + else + opts.tags.filter = undefined ; + + + var defType = opts.tags.type ; + + for (i = 0 ; i < opts.tags.options.length ; i++) { + if (!opts.tags.options[i].type) + opts.tags.options[i].type = defType; + } // for + + for (i = 0 ; i < opts.tags.tags.length ; i++) { + if (!opts.tags.tags[i].type) + opts.tags.tags[i].type = defType; + } // for + + + var handleClickOutside = function handleClickOutside(e) { + if (!_this.root.contains(e.target)) _this.close(); + _this.update() + }; + + + var applyFieldText = function applyFieldText() { + _this.refs.selectfield.value = ""; + for (var i = 0; i < opts.tags.options.length; i++) { + var item = opts.tags.options[i]; + item.selected = false + } + }; + + this.filterOptions = function() { + _this.options = opts.tags.options; + if (opts.tags.filter) _this.options = _this.options.filter(function(option) { + var attr = option[opts.tags.filter]; + return attr && attr.toLowerCase().indexOf(_this.refs.selectfield.value.toLowerCase()) > -1 + }); + _this.trigger("filter", _this.refs.selectfield.value) + }; + + + function getWindowDimensions() { + var w = window, + d = document, + e = d.documentElement, + g = d.getElementsByTagName("body")[0], + x = w.innerWidth || e.clientWidth || g.clientWidth, + y = w.innerHeight || e.clientHeight || g.clientHeight; + return { + width: x, + height: y + } + } + + var positionDropdown = function positionDropdown() { + var w = getWindowDimensions(); + var m = _this.root.querySelector(".c-card--menu"); + if (!m) return; + if (!opts.tags.isvisible) { + m.style.marginTop = ""; + m.style.marginLeft = ""; + return + } + var pos = m.getBoundingClientRect(); + if (w.width < pos.left + pos.width) { + m.style.marginLeft = w.width - (pos.left + pos.width) - 20 + "px" + } + if (pos.left < 0) { + m.style.marginLeft = "20px" + } + if (w.height < pos.top + pos.height) { + m.style.marginTop = w.height - (pos.top + pos.height) - 20 + "px" + } + }; + + this.navigate = function(e) { + if ([13, 38, 40].indexOf(e.keyCode) > -1 && !opts.tags.isvisible) { + e.preventDefault(); + _this.open(); + return true + } + + var length = _this.options.length; + + if (length > 0 && [13, 38, 40].indexOf(e.keyCode) > -1) { + e.preventDefault(); + var activeIndex = null; + for (var i = 0; i < length; i++) { + var item = _this.options[i]; + if (item.active) { + activeIndex = i; + break + } + } + + if (activeIndex != null) _this.options[activeIndex].active = false; + + if (e.keyCode == 38) { + if (activeIndex == null || activeIndex == 0) _this.options[length - 1].active = true; + else _this.options[activeIndex - 1].active = true + } else if (e.keyCode == 40) { + if (activeIndex == null || activeIndex == length - 1) _this.options[0].active = true; + else _this.options[activeIndex + 1].active = true + } else if (e.keyCode == 13 && activeIndex != null) { + _this.select({ + item: _this.options[activeIndex] + }) + } + } + return true + }; + + + this.open = function() { + opts.tags.isvisible = true; + _this.trigger("open") + }; + + + this.close = function() { + if (opts.tags.isvisible) { + opts.tags.isvisible = false; + _this.trigger("close") + } + }; + + + this.select = function(e) { + opts.tags.options.forEach(function(i) { + return i.selected = false + }); + e.item.selected = true; + _this.addTag(e.item); + applyFieldText(); + _this.filterOptions(); + _this.trigger("select", e.item) + }; + + + this.addTag = function(item) { + if (opts.tags.tags.indexOf(item) == -1) { + opts.tags.tags.push(item) + } + }; + + + this.removeTag = function(e) { + opts.tags.tags = opts.tags.tags.filter(function(tag) { + if (tag._id != e.item._id) return tag + }) + }; + + + this.on("mount", function() { + applyFieldText(); + _this.filterOptions(); + document.addEventListener("click", handleClickOutside); + _this.update() + }); + + + this.on("update", function() { + opts.tags.options.forEach(function(item) { + item._id = item._id || (Math.floor(Math.random() * 60466175) + 1679615).toString(36) + }); + opts.tags.tags.forEach(function(tag) { + tag._id = tag._id || (Math.floor(Math.random() * 60466175) + 1679615).toString(36) + }); + if (!opts.tags.filter) applyFieldText(); + positionDropdown() + }); + + + this.on("unmount", function() { + document.removeEventListener("click", handleClickOutside) + }) }); From b3519ca1fcc3276365f9dd6eb2fd36d7b770bb09 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Thu, 23 Feb 2017 23:10:58 +0800 Subject: [PATCH 35/67] 3.5.9 Converted to Blaze CSS, it works, but the timing and some of the toasts don't show. HTML: Script: var tags = riot.mount('rg-toasts', { toasts: { position: 'bottomleft', // 'bottomright|bottomleft|topleft|topright', toasts: [{ type: 'info', text: 'Made you look!', sticky: true // Turn off timeout }, { type: 'warning', text: 'Careful now...' }, { type: 'success', text: 'You did it!' }, { type: 'error', text: 'Oops!', timeout: 3000 // Default to 6000 if not set }] } }) tags[0].on('close', function (toast) { console.log("toasted", toast) }) .on('select', function (toast) { console.log("selected toast ", toast) }) --- dist/rg-toast/rg-toasts.js | 74 +++++++++++++++++++++----------------- 1 file changed, 41 insertions(+), 33 deletions(-) diff --git a/dist/rg-toast/rg-toasts.js b/dist/rg-toast/rg-toasts.js index 453b147..e978a1c 100644 --- a/dist/rg-toast/rg-toasts.js +++ b/dist/rg-toast/rg-toasts.js @@ -1,37 +1,45 @@ -riot.tag2('rg-toasts', '
{text}
', '', '', function(opts) { -var _this = this; +riot.tag("rg-toasts", + '
'+ + '
{text}
'+ + '
', "", "", + function(opts) { + var _this = this; -this.toastClicked = function (e) { - var toast = e.item; - window.clearTimeout(toast.timer); - toast.isvisible = false; - _this.trigger('select', toast); -}; + this.toastClicked = function(e) { + var toast = e.item; + window.clearTimeout(toast.timer); + toast.isvisible = false; + _this.trigger("select", toast) + }; -var _uid = 1; -var uid = function uid() { - return _uid++; -}; + var _uid = 1; -this.on('update', function () { - if (!opts.toasts || !Array.isArray(opts.toasts.toasts)) return; - opts.toasts.position = opts.toasts.position || 'bottomright'; - opts.toasts.toasts.forEach(function (toast) { - if (typeof toast.isvisible == 'undefined') toast.isvisible = true; - toast.id = toast.id || uid(); - if (!toast.timer && !toast.sticky) { - toast.startTimer = function () { - toast.timer = window.setTimeout(function () { - toast.isvisible = false; - _this.trigger('close', toast); - _this.update(); - }, toast.timeout || 6000); - }; - toast.startTimer(); - } - }); - opts.toasts.isvisible = opts.toasts.toasts.filter(function (toast) { - return toast.isvisible; - }).length > 0; -}); + var uid = function uid() { + return _uid++ + }; + + this.on("mount", function() { + if (!opts.toasts || !Array.isArray(opts.toasts.toasts)) return; + + opts.toasts.position = opts.toasts.position || "bottomright"; + + opts.toasts.toasts.forEach(function(toast) { + if (typeof toast.isvisible == "undefined") toast.isvisible = true; + toast.id = toast.id || uid(); + if (!toast.timer && !toast.sticky) { + toast.startTimer = function() { + toast.timer = window.setTimeout(function() { + toast.isvisible = false; + _this.trigger("close", toast); + _this.update() + }, toast.timeout || 6e3) + }; + toast.startTimer() + } + }); + + opts.toasts.isvisible = opts.toasts.toasts.filter(function(toast) { + return toast.isvisible + }).length > 0 + }) }); From 9037a37055e0d039c740570ae5cfbd9e69547a16 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Thu, 23 Feb 2017 23:12:21 +0800 Subject: [PATCH 36/67] 3.6.0 inclusive of toasts - credit-card still buggy --- dist/rg.js | 341 +++++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 315 insertions(+), 26 deletions(-) diff --git a/dist/rg.js b/dist/rg.js index 8f5e51a..2b9303c 100644 --- a/dist/rg.js +++ b/dist/rg.js @@ -1028,33 +1028,78 @@ riot.tag("rg-modal", }); - -riot.tag2("rg-pagination", '', "", "", function(opts) { +riot.tag("rg-pagination", +'
'+ +'
'+ +' '+ +' '+ +'
'+ +'
'+ +' '+ +' '+ +' '+ +' '+ +' …'+ +' '+ +'
'+ +'
'+ +' '+ +' '+ +'
'+ +'
' + , "", "", + function(opts) { var _this = this; - this.on("update", function() { - if (!opts.pagination) opts.pagination = { - pages: 1, + + this.on("before-mount", function(){ + if (!opts.pagination){ + pagination = { + pages: 10, page: 1 + } + } + + if (opts.page && opts.pages) { + + opts.page = Number(opts.page) ; + opts.pages = Number(opts.pages) ; + + if (opts.page > opts.pages) + opts.page = opts.pages; + } - }); + + if (opts.page) + opts.pagination.page = Number(opts.page) ; + + if (opts.pages) + opts.pagination.pages = Number(opts.pages) ; + + + }) ; + this.on("page", function() { var btns = _this.root.querySelectorAll("button"); for (var i = 0; i < btns.length; i++) { btns[i].blur() } }); + this.forward = function() { opts.pagination.page++; _this.trigger("page", opts.pagination.page) }; + this.back = function() { opts.pagination.page--; _this.trigger("page", opts.pagination.page) }; + this.first = function() { opts.pagination.page = 1; _this.trigger("page", opts.pagination.page) }; + this.last = function() { opts.pagination.page = opts.pagination.pages; _this.trigger("page", opts.pagination.page) @@ -1063,9 +1108,68 @@ riot.tag2("rg-pagination", '', "", "", function(opts) { +riot.tag("rg-tabs", + '
'+ + '
'+ + '
{heading}'+ + '
'+ + '
'+ + '
'+ + '
{text}
{include.responseText}'+ + '
'+ + '
'+ + '
', "", "", + function(opts) { var _this = this; + var fetch = function fetch(tab) { var req = new XMLHttpRequest; req.onload = function(resp) { - var activeTab = _this.root.querySelector(".tabs__tab--active"); + var activeTab = _this.root.querySelector(".c-tabs__tab--active"); if (activeTab) activeTab.innerHTML = req.responseText; _this.trigger("loaded", tab) }; @@ -1228,6 +1413,8 @@ riot.tag2("rg-tabs", '
', 'rg-tags .menu,[riot-tag="rg-tags"] .menu,[data-is="rg-tags"] .menu{ position: absolute; }', "", function(opts) { +riot.tag("rg-tags", + '
'+ + ' '+ + ' '+ + ' '+ + '
'+ + ' '+ + '
    '+ + '
  • {text}'+ + '
  • '+ + '
'+ + '
'+ + '
', + 'rg-tags .c-card--menu,[riot-tag="rg-tags"] .c-card--menu,[data-is="rg-tags"] .c-card--menu{ position: relative; }', "", + function(opts) { var _this = this; + if (!opts.tags) opts.tags = { options: [], tags: [] - }; + } + else { + if (!opts.tags.type) + opts.tags.type = "default" ; + } // else..if + if (!opts.tags.options) opts.tags.options = []; if (!opts.tags.tags) opts.tags.tags = []; + + if (opts.type) + opts.tags.type = opts.type ; + + if (opts.placeholder) + opts.tags.placeholder = opts.placeholder ; + + if (opts.filter) + if (typeof opts.filter === "boolean" || typeof opts.filter === "string") + if (opts.filter === "true" || Boolean(opts.filter) === true) + if (opts.filter==="true") + opts.tags.filter = "text" ; + else + opts.tags.filter = undefined ; + + + var defType = opts.tags.type ; + + for (i = 0 ; i < opts.tags.options.length ; i++) { + if (!opts.tags.options[i].type) + opts.tags.options[i].type = defType; + } // for + + for (i = 0 ; i < opts.tags.tags.length ; i++) { + if (!opts.tags.tags[i].type) + opts.tags.tags[i].type = defType; + } // for + + var handleClickOutside = function handleClickOutside(e) { if (!_this.root.contains(e.target)) _this.close(); _this.update() }; + + var applyFieldText = function applyFieldText() { - _this.selectfield.value = ""; + _this.refs.selectfield.value = ""; for (var i = 0; i < opts.tags.options.length; i++) { var item = opts.tags.options[i]; item.selected = false } }; + this.filterOptions = function() { _this.options = opts.tags.options; if (opts.tags.filter) _this.options = _this.options.filter(function(option) { var attr = option[opts.tags.filter]; - return attr && attr.toLowerCase().indexOf(_this.selectfield.value.toLowerCase()) > -1 + return attr && attr.toLowerCase().indexOf(_this.refs.selectfield.value.toLowerCase()) > -1 }); - _this.trigger("filter", _this.selectfield.value) + _this.trigger("filter", _this.refs.selectfield.value) }; + function getWindowDimensions() { var w = window, d = document, @@ -1291,9 +1547,10 @@ riot.tag2("rg-tags", '
', "", "", function(opts) { +riot.tag("rg-toasts", + '
'+ + '
{text}
'+ + '
', "", "", + function(opts) { var _this = this; + this.toastClicked = function(e) { var toast = e.item; window.clearTimeout(toast.timer); toast.isvisible = false; _this.trigger("select", toast) }; + var _uid = 1; + var uid = function uid() { return _uid++ }; - this.on("update", function() { + + this.on("mount", function() { if (!opts.toasts || !Array.isArray(opts.toasts.toasts)) return; + opts.toasts.position = opts.toasts.position || "bottomright"; + opts.toasts.toasts.forEach(function(toast) { if (typeof toast.isvisible == "undefined") toast.isvisible = true; toast.id = toast.id || uid(); @@ -1425,6 +1713,7 @@ riot.tag2("rg-toasts", '
{text}
',"","",function(t){var e=this;this.on("update",function(){t.alerts&&t.alerts.forEach(function(t){"undefined"==typeof t.isvisible&&(t.isvisible=!0),t.timeout&&(t.startTimer=function(){t.timer=setTimeout(function(){e.dismiss({item:t})},t.timeout)},t.startTimer())})}),this.dismiss=function(t){var a=t.item;a.isvisible=!1,clearTimeout(a.timer),e.trigger("dismiss",a),e.update()},this.select=function(t){var a=t.item;a.onclick&&a.onclick(a),e.trigger("select",a)}}),riot.tag2("rg-bubble",'
{opts.bubble.text}
','rg-bubble .context,[riot-tag="rg-bubble"] .context,[data-is="rg-bubble"] .context,rg-bubble .content,[riot-tag="rg-bubble"] .content,[data-is="rg-bubble"] .content{ display: inline-block; position: relative; } rg-bubble .bubble,[riot-tag="rg-bubble"] .bubble,[data-is="rg-bubble"] .bubble{ position: absolute; top: -70px; left: 50%; transform: translate3d(-50%, 0, 0); }',"",function(t){var e=this;this.showBubble=function(){clearTimeout(e._timer),e.isvisible=!0},this.hideBubble=function(){e._timer=setTimeout(function(){e.isvisible=!1,e.update()},1e3)},this.toggleBubble=function(){e.isvisible=!e.isvisible}}),riot.tag2("rg-chart","",'rg-chart,[riot-tag="rg-chart"],[data-is="rg-chart"]{ display: inline-block; width: 100%; }',"",function(t){var e=this;Chart.defaults.global.responsive=!0,this.on("mount",function(){a()}),this.on("loaded",function(t){e.on("unmount",function(){t.destroy()})});var a=function(){t.chart||(t.chart={});var a=e.root.querySelector("canvas").getContext("2d"),i=new Chart(a),o=null;switch(t.chart.type){case"line":o=i.Line(t.chart.data,t.chart.options);break;case"radar":o=i.Radar(t.chart.data,t.chart.options);break;case"polar":o=i.PolarArea(t.chart.data,t.chart.options);break;case"pie":o=i.Pie(t.chart.data,t.chart.options);break;case"doughnut":o=i.Doughnut(t.chart.data,t.chart.options);break;default:o=i.Bar(t.chart.data,t.chart.options)}e.trigger("loaded",o)}}),riot.tag2("rg-code",'
','rg-code .editor,[riot-tag="rg-code"] .editor,[data-is="rg-code"] .editor{ position: absolute; top: 0; right: 0; bottom: 0; left: 0; }',"",function(t){var e=this;t.editor||(t.editor={code:""});var a=void 0,i=function(){a.setTheme("ace/theme/"+(t.editor.theme||"monokai")),a.getSession().setMode("ace/mode/"+(t.editor.mode||"html")),a.getSession().setTabSize(t.editor.tabsize||2),a.getSession().setUseSoftTabs(t.editor.softtabs),a.getSession().setUseWrapMode(t.editor.wordwrap),a.setReadOnly(t.editor.readonly)};this.on("mount",function(){if(a=ace.edit(e.root.querySelector(".editor")),a.$blockScrolling=1/0,e.on("update",function(){i(),t.editor.code!=a.getValue()&&a.setValue(t.editor.code,1)}),t.url){var o=new XMLHttpRequest;o.onload=function(a){t.editor.code=a,e.update()},o.open("get",t.url,!0),o.send()}a.setValue(t.editor.code,1),a.getSession().on("change",function(i){t.editor.code=a.getValue(),e.trigger("onchange",a.getValue())}),i(),e.update()})}),riot.tag2("rg-credit-card-number",'','rg-credit-card-number .card-no,[riot-tag="rg-credit-card-number"] .card-no,[data-is="rg-credit-card-number"] .card-no{ padding-right: 60px; background-repeat: no-repeat; background-position: right center; background-size: 60px; } rg-credit-card-number .amex,[riot-tag="rg-credit-card-number"] .amex,[data-is="rg-credit-card-number"] .amex{ background-image: url(img/amex.png); } rg-credit-card-number .diners_club,[riot-tag="rg-credit-card-number"] .diners_club,[data-is="rg-credit-card-number"] .diners_club{ background-image: url(img/diners_club.png); } rg-credit-card-number .discover,[riot-tag="rg-credit-card-number"] .discover,[data-is="rg-credit-card-number"] .discover{ background-image: url(img/discover.png); } rg-credit-card-number .jcb,[riot-tag="rg-credit-card-number"] .jcb,[data-is="rg-credit-card-number"] .jcb{ background-image: url(img/jcb.png); } rg-credit-card-number .mastercard,[riot-tag="rg-credit-card-number"] .mastercard,[data-is="rg-credit-card-number"] .mastercard{ background-image: url(img/mastercard.png); } rg-credit-card-number .visa,[riot-tag="rg-credit-card-number"] .visa,[data-is="rg-credit-card-number"] .visa{ background-image: url(img/visa.png); }',"",function(t){function e(t){var e,a,i,o,n,r,s,d,l,c,g,u,p=[].indexOf||function(t){for(var e=0,a=this.length;a>e;e++)if(e in this&&this[e]===t)return e;return-1};i=[{name:"amex",icon:"images/amex.png",pattern:/^3[47]/,valid_length:[15]},{name:"diners_club",icon:"images/diners_club.png",pattern:/^30[0-5]/,valid_length:[14]},{name:"diners_club",icon:"images/diners_club.png",pattern:/^36/,valid_length:[14]},{name:"jcb",icon:"images/jcb.png",pattern:/^35(2[89]|[3-8][0-9])/,valid_length:[16]},{name:"laser",pattern:/^(6304|670[69]|6771)/,valid_length:[16,17,18,19]},{name:"visa_electron",pattern:/^(4026|417500|4508|4844|491(3|7))/,valid_length:[16]},{name:"visa",icon:"images/visa.png",pattern:/^4/,valid_length:[16]},{name:"mastercard",icon:"images/mastercard.png",pattern:/^5[1-5]/,valid_length:[16]},{name:"maestro",pattern:/^(5018|5020|5038|6304|6759|676[1-3])/,valid_length:[12,13,14,15,16,17,18,19]},{name:"discover",icon:"images/discover.png",pattern:/^(6011|622(12[6-9]|1[3-9][0-9]|[2-8][0-9]{2}|9[0-1][0-9]|92[0-5]|64[4-9])|65)/,valid_length:[16]}];var m={};for(null==m.accept&&(m.accept=function(){var t,a,o;for(o=[],t=0,a=i.length;a>t;t++)e=i[t],o.push(e.name);return o}()),u=m.accept,c=0,g=u.length;g>c;c++)if(a=u[c],p.call(function(){var t,a,o;for(o=[],t=0,a=i.length;a>t;t++)e=i[t],o.push(e.name);return o}(),a)<0)throw"Credit card type '"+a+"' is not supported";return o=function(t){var o,n,r;for(r=function(){var t,a,o,n;for(n=[],t=0,a=i.length;a>t;t++)e=i[t],o=e.name,p.call(m.accept,o)>=0&&n.push(e);return n}(),o=0,n=r.length;n>o;o++)if(a=r[o],t.match(a.pattern))return a;return null},r=function(t){var e,a,i,o,n,r;for(i=0,r=t.split("").reverse(),a=o=0,n=r.length;n>o;a=++o)e=r[a],e=+e,a%2?(e*=2,i+=10>e?e:e-9):i+=e;return i%10===0},n=function(t,e){var a;return a=t.length,p.call(e.valid_length,a)>=0},l=function(t){return function(t){var e,i;return a=o(t),i=!1,e=!1,null!=a&&(i=r(t),e=n(t,a)),{card_type:a,valid:i&&e,luhn_valid:i,length_valid:e}}}(this),s=function(t){return t.replace(/[ -]/g,"")},(d=function(e){return function(){return l(s(t))}}(this))(t)}var a=this;t.card||(t.card={cardnumber:""}),this.on("update",function(){a.cardnumber.value!=t.card.cardnumber&&(a.cardnumber.value=t.card.cardnumber),a.validate()}),this.validate=function(){t.card.cardnumber=a.cardnumber.value;var i=e(t.card.cardnumber);t.card.valid=i.valid,a.icon=t.card.valid?i.card_type.name:""}}),riot.tag2("rg-date",'
{opts.date.date.format(yearFormat)}
{opts.date.date.format(monthFormat)}
Mo
Tu
We
Th
Fr
Sa
Su
','rg-date .container,[riot-tag="rg-date"] .container,[data-is="rg-date"] .container{ position: relative; display: inline-block; cursor: pointer; } rg-date .calendar,[riot-tag="rg-date"] .calendar,[data-is="rg-date"] .calendar{ position: absolute; min-width: 300px; margin-top: .5em; left: 0; }',"",function(t){function e(){var t=window,e=document,a=e.documentElement,i=e.getElementsByTagName("body")[0],o=t.innerWidth||a.clientWidth||i.clientWidth,n=t.innerHeight||a.clientHeight||i.clientHeight;return{width:o,height:n}}var a=this,i=function(t){return moment.isMoment(t)||(t=moment(t)),t.isValid()?t:moment()},o=function(t){a.root.contains(t.target)||a.close(),a.update()},n=function(e){var a=e||moment();return{date:a,selected:t.date.date.isSame(e,"day"),today:moment().isSame(e,"day"),disabled:t.date.min&&t.date.min.isAfter(e)||t.date.max&&t.date.max.isBefore(e)}},r=function(){a.format="LL",a.yearFormat="YYYY",a.monthFormat="MMMM",a.dayFormat="DD",a.days=[],a.startBuffer=[],a.endBuffer=[];for(var e=moment(t.date.date).startOf("month"),i=moment(t.date.date).daysInMonth(),o=moment(t.date.date).endOf("month"),r=e.isoWeekday()-1;r>0;r-=1){var s=moment(e).subtract(r,"days");a.startBuffer.push(n(s))}for(var r=0;i>r;r++){var d=moment(e).add(r,"days");a.days.push(n(d))}for(var r=o.isoWeekday()+1;7>=r;r++){var s=moment(o).add(r-o.isoWeekday(),"days");a.endBuffer.push(n(s))}};this.on("mount",function(){t.date||(t.date={date:moment()}),t.date.date||(t.date.date=moment()),t.date.date=i(t.date.date),t.date.min&&(t.date.min=i(t.date.min),t.date.min.isAfter(moment(),"day")&&(t.date.date=moment(t.date.min))),t.date.max&&(t.date.max=i(t.date.max),t.date.max.isBefore(moment(),"day")&&(t.date.date=moment(t.date.max))),a.on("update",function(){t.date.date=i(t.date.date),r(),s()}),document.addEventListener("click",o),a.update()}),this.on("unmount",function(){document.removeEventListener("click",o)}),this.open=function(){t.date.isvisible=!0,a.trigger("open")},this.close=function(){t.date.isvisible&&(t.date.isvisible=!1,a.trigger("close"))},this.select=function(e){t.date.date=e.item.day.date,a.trigger("select",t.date.date)},this.setToday=function(){t.date.date=moment(),a.trigger("select",t.date.date)},this.prevYear=function(){t.date.date=t.date.date.subtract(1,"year")},this.nextYear=function(){t.date.date=t.date.date.add(1,"year")},this.prevMonth=function(){t.date.date=t.date.date.subtract(1,"month")},this.nextMonth=function(){t.date.date=t.date.date.add(1,"month")};var s=function(){var i=e(),o=a.root.querySelector(".calendar");if(o){if(!t.date.isvisible)return o.style.marginTop="",void(o.style.marginLeft="");var n=o.getBoundingClientRect();i.width

{opts.drawer.header}

',"","",function(t){var e=this;this.on("mount",function(){t.drawer||(t.drawer={})}),this.close=function(){t.drawer.isvisible=!1,e.trigger("close")},this.select=function(a){t.drawer.items.forEach(function(t){return t.active=!1}),a.item.active=!0,e.trigger("select",a.item)}}),riot.tag2("rg-ga","","","",function(t){!function(t,e,a,i,o,n,r){t.GoogleAnalyticsObject=o,t[o]=t[o]||function(){(t[o].q=t[o].q||[]).push(arguments)},t[o].l=1*new Date,n=e.createElement(a),r=e.getElementsByTagName(a)[0],n.async=1,n.src=i,r.parentNode.insertBefore(n,r)}(window,document,"script","//www.google-analytics.com/analytics.js","ga"),ga("create",t.property,"auto"),ga("send","pageview")}),riot.tag2("rg-iframify",'
','rg-iframify .iframify,[riot-tag="rg-iframify"] .iframify,[data-is="rg-iframify"] .iframify{ margin: 0; padding: 0; } rg-iframify iframe,[riot-tag="rg-iframify"] iframe,[data-is="rg-iframify"] iframe{ position: relative; width: 100%; border: 0; }',"",function(t){var e=this;this.on("mount",function(){iframify(e.root.querySelector(".frame"),e.opts)})}),riot.tag2("rg-include","
{responseText}
","","",function(t){var e=this,a=function(){var a=new XMLHttpRequest;a.onload=function(i){t.include.unsafe?e.root.innerHTML=a.responseText:e.responseText=a.responseText,e.update(),e.trigger("loaded")},a.open("get",t.include.url,!0),a.send(),e.trigger("loading")};this.on("mount",function(){a()})}),riot.tag2("rg-map",'
','rg-map .rg-map,[riot-tag="rg-map"] .rg-map,[data-is="rg-map"] .rg-map{ margin: 0; padding: 0; width: 100%; height: 100%; } rg-map .rg-map img,[riot-tag="rg-map"] .rg-map img,[data-is="rg-map"] .rg-map img{ max-width: inherit; }',"",function(t){var e=this;window.rg=window.rg||{},window.rg.gmap=riot.observable({initialize:function(){window.rg.gmap.trigger("initialize")}}),this.on("mount",function(){if(t.map||(t.map={center:{lat:53.806,lng:-1.535},zoom:7}),rg.gmap.on("initialize",function(){t.map.mapObj=new google.maps.Map(e.root.querySelector(".rg-map"),t.map),e.trigger("loaded",t.map.mapObj)}),!document.getElementById("gmap_script")){var a=document.createElement("script");a.setAttribute("id","gmap_script"),a.type="text/javascript",a.src="https://maps.googleapis.com/maps/api/js?callback=window.rg.gmap.initialize",document.body.appendChild(a)}})}),riot.tag2("rg-markdown","","","",function(t){var e=this;commonmark&&(this.reader=new commonmark.Parser,this.writer=new commonmark.HtmlRenderer),this.on("update",function(){t.markdown||(t.markdown={}),t.markdown.content?e.root.innerHTML=e.writer.render(e.reader.parse(t.markdown.content)):t.markdown.url&&!function(){var a=new XMLHttpRequest;a.onload=function(t){e.root.innerHTML=e.writer.render(e.reader.parse(a.responseText)),e.trigger("loaded")},a.open("get",t.markdown.url,!0),a.send(),e.trigger("loading")}()})}),riot.tag2("rg-modal",'
','rg-modal .modal--ghost .modal__footer .button,[riot-tag="rg-modal"] .modal--ghost .modal__footer .button,[data-is="rg-modal"] .modal--ghost .modal__footer .button{ margin: 0 .5em 0 0; }',"",function(t){var e=this;this.on("mount",function(){t.modal||(t.modal={})}),this.close=function(){t.modal.dismissable&&(t.modal.isvisible=!1,e.trigger("close"))}}),riot.tag2("rg-pagination",'',"","",function(t){var e=this;this.on("update",function(){t.pagination||(t.pagination={pages:1,page:1})}),this.on("page",function(){for(var t=e.root.querySelectorAll("button"),a=0;a
','rg-phone-sim .emulator,[riot-tag="rg-phone-sim"] .emulator,[data-is="rg-phone-sim"] .emulator{ position: relative; width: 365px; height: 792px; background-image: url(\'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAW0AAAMYCAMAAAA3r0ZLAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAwBQTFRFMDk6+vr6KTM0lJucMz4/PklKJS8wLTg5Qk1OxsjILzo7gomJ2NvbdH5/ho2O9fb2KzY3ztHRPEdIOkVGZWxtjJSVOEJDkpeYWGRluL2+KTQ1vcHBoaWlPUZHcnp6nKKjOkRF1NfXqa2tp62tZnBxanV2VmFiZ29wVl1eaXJzbXR04uTktbq7QElK1tnZipKTi5CRTlZXpKioo6mqXmlqUVlaOEFCSVFSUFxdISssT1tcTlpbJC4vIiwtTVlaJjAxIy0uTFhZS1dYJzEyKDIzSlZXPUhJOURFO0ZHSVVWKzU2P0pLKjQ1OENEND0+QEtMLDY3SFRVN0JDQ05PLTc4ND9ANUBBQUxNNkFCR1NUMTo7RE9QLjg5N0BBR1JTRlJTLzk6RVFSMjs8RVBRRlFSNj9AMzw9SFNUMj0+IissMTs8MDo7SVRVRFBRMDs8MTw9IiwsMz0+Mjw9SlVWQ09QLjk6NT4/S1ZXND4/JC4uQU1OIy0tQk5PTFdYTVhZQExNTllaJS8vJzIyP0tMLzg5LDc4KDMzNT9AKjU1N0FCNkBBJjAwIywtMDs7Mj09NkFBJjExLjk5LDc3N0JCNUBAKjU2MTw8LDU2Ljc4OUNEKDEyQU1NPEhIPEhJO0dHOkZGND8/Qk5ORFBQQ09PLTY3OUREPkpKPkpLPUlJT1pbP0tLJTAwPUlKJzAxKjM07u/vKTIzsbW2YGprtLm50tXWPkhJo6endn+A3d/f6uvreoOEg4yN2tvc/Pz8n6am8/T0VFtcm6CgJS4v4OLi5ufnYGdncnt8dHp7gYaHJC0uu8DAjJGRQkxNxMfHKzQ1YGtsS1NUaXN0bnh5yMzMyszMy83Oy8/PdoCAKDIy7O3tT1dYuLu70NTUbXd46Onq6erreoCA2dzc8PHx8vPz5OXlnaSkn6Wmqq6ucHZ2t7y8o6eoeoSEkJaWm5+gW2ZnZG5vqa+wOEFB09bWtru7qrCwcXd4t7u83eDgzM7O7/DwNT4+7e7uwMPDwcPEeH5/////70wnUQAAAQB0Uk5T////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AFP3ByUAAA+NSURBVHja7N13nBTlGcDxEQI5AmJQBAkcnqhEDIhoWMt5iogmQbOaYNrqYrJh16gplmTVkILJpYCmF+DSE1JIcjRR7L333ntPYjQxvTl55tnr7N7t7uw+vDP3+/0x3G3hs5+vr++8M7s7eH75Xb5x+rOjN017aeq+tO++U1+atmn0s9M3Xl6BoFfm466ZOPROhIt259CJ19RS++7LdgW133a97O7aaI/a+VE0y+jRnUeF1p6wqfvvaz6+YVjT0jMyJ3rkeSdmzljaNKzh+OZuoE0TQmmvv67zLzrwmMY8wkXLNx5zYCfTdeur1p6wdeegblgKar8tbegc4lv/rirtjTMLT99/UVMKzgFLNS3avwA2c2Pl2n8tPHV1QxLJMks2rC6g/alC7ScvKozrhhyIFZRrKIzvi56sRHt94b/RIsZ1xeN7UYFuffna4/UJB68Er4rGHax648vUfmqkPnxBBrmqyixQv5FPlaP9Dz2eWdIEW9U1LdFjnQsG1n5ETz4dyowdavY+VE9XPTKQ9phddPfICjvk6lt3lruM6V97j132l26BK3S3BJAv79Gf9jN3BY85HKsadHhAedebSmtf+ofgEcOQqknDAsyLLi2pPTq4/0icatSRAefoUto7Bvc2oFSzGgLQHYtr3xTct5DVSA1XJgsD0puKaa99s9wzlwPImh5WzhXTl/5TRHt7uaN5GUI1bVmzqL64ufZfgkF/GD417rCA9e99tf8VzCPHoVPzjhPXaVv10d5bblzCyZE6nDIJ5pKde2u/Egz487Cp1zHlHr20h8otp50ETT2WgaeL7dCe2vcF/uOQqUsrA9z7emgHQ3thdEZLLpeL0kHYwq7BrdqjAv2ofEAnlU0EZaPjvTTgHdWlvXeEhnYu0VkuUoN7707tbW6X35oiciyc6C4yZxmaxPf2bTq0z5VfTo/IC8/20M5GZnAHy5JzO7Tvj85bCKlEzyIzdQdvLNxf0L4wmMQjMgnmemlHZubOBcQXqvb0CO0jk720o3OmIdhPTlft4FTrth5ju55tK8bbq/YG+emUiLzqTC/t6Lz1cYoYbwi0r47QisTz0j2w0xE6ngxWJVeLdrD+WxCZVx3J9ba0QNeAnj9T/twuOi87GcF9pLSdKM8U7Q2rV6+O0jcQMoXJJB2t96tzorzB99Y2NzfPjdQL9zLJZDJynw2YK85rvZ1ku9Cjuq+4xXknb4Js+XxU/WsQ5wnec7LlDcn6d544P+ddLFu+zlT/Vorzxd5k2fIJqfq3TJwney/Lls+RGBwniPPL3g6y5aOWBstWcd7BmypbLjhS/1LiPNWTTTMWBik02mijTWijTWijjTbFVTuZTqSTRW8OUzqJdpGyxT89mU2ELYv25kO4+LvnyUT4kmj3LV38YzjpGmin3dReIm2pF9BlU+LmMDmnrdBbUntQje0trj2o5m2FPlBiTWKQQm9R7cG03nZAexCFNtpoE9poE9poo01oo01oo01oo4021VT7MxIUBik02mijTeG1D5agMEih0UYbbUIbbUIbbbQJbbQJbbQJbbTRplppf1qCwiCFRhtttCm89lwJCoMUGm200Sa00Sa00Uab0Eab0Eab0EY73tqnS1AYpNBoo402hdc+VILCIIVGG220CW20CW200Sa00Sa00aYC9GkSFAYpNNpoo01oR0v7bRIUBik02mijTWijTWijjTahjTah7bL2hyUoDFJotNFGm9BGm0ppv0OCwiCFRhtttAlttAlttNEmtOOhfbwEhUEKjTbaaBPaaBPaLmi/T4LCIIVGG220CW20CW200ab6aS+UoDBIodFGG21CG21C2wXt4yQoDFJotNFGm9BGm9BGe7BpL5KgMEih0UYbbUIbbULbBe0PSFAYpNBoo402oY02oY32YNP+oASFQQqNNtpoE9poE9poDzbtj0hQGKTQaKONNqGNNpXS/qkEhUEKfYwEhUEKjTbaaBPaaBPaaA827Y9LUBik0GijjTahHS3tn0lQGKTQCyQoDFJotNFGm9BGm9BGG22qn/anJCgMUmi00Uabwmv/RILCIIVukKAwSKHRRhttQhttQhtttKl+2p+UoDBIodFGG20Kr/09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\'); background-repeat: no-repeat; background-position: center; background-size: cover; } rg-phone-sim .screen,[riot-tag="rg-phone-sim"] .screen,[data-is="rg-phone-sim"] .screen{ position: absolute; top: 105px; left: 22px; background-color: white; width: 320px; height: 568px; border: 0; }',"",function(t){}),riot.tag2("rg-placeholdit",'',"","",function(t){this.on("update",function(){t.placeholdit||(t.placeholdit={}),t.placeholdit.width=t.placeholdit.width||450,t.placeholdit.height=t.placeholdit.height||250,t.placeholdit.background=t.placeholdit.background||"000",t.placeholdit.color=t.placeholdit.color||"fff",t.placeholdit.text=t.placeholdit.text||t.placeholdit.width+" x "+t.placeholdit.height,t.placeholdit.textsize=t.placeholdit.textsize||30,t.placeholdit.format=t.placeholdit.format||"png"})}),riot.tag2("rg-raw","","","",function(t){this.on("mount update",function(){this.root.innerHTML=t.content||""})}),riot.tag2("rg-select",' ','rg-select .menu,[riot-tag="rg-select"] .menu,[data-is="rg-select"] .menu{ position: absolute; }',"",function(t){function e(){var t=window,e=document,a=e.documentElement,i=e.getElementsByTagName("body")[0],o=t.innerWidth||a.clientWidth||i.clientWidth,n=t.innerHeight||a.clientHeight||i.clientHeight;return{width:o,height:n}}var a=this;t.select||(t.select={options:[]});var i=function(t){a.root.contains(t.target)||a.close(),a.update()},o=function(){for(var e=0;e-1})),a.trigger("filter",a.selectfield.value)};var n=function(){var i=e(),o=a.root.querySelector(".menu");if(o){if(!t.select.isvisible)return o.style.marginTop="",void(o.style.marginLeft="");var n=o.getBoundingClientRect();i.width-1&&!t.select.isvisible)return e.preventDefault(),a.open(),!0;var i=a.options.length;if(i>0&&[13,38,40].indexOf(e.keyCode)>-1){e.preventDefault();for(var o=null,n=0;i>n;n++){var r=a.options[n];if(r.active){o=n;break}}null!=o&&(a.options[o].active=!1),38==e.keyCode?null==o||0==o?a.options[i-1].active=!0:a.options[o-1].active=!0:40==e.keyCode?null==o||o==i-1?a.options[0].active=!0:a.options[o+1].active=!0:13==e.keyCode&&null!=o&&a.select({item:a.options[o]})}return!0},this.open=function(){t.select.isvisible=!0,a.trigger("open")},this.close=function(){t.select.isvisible&&(t.select.isvisible=!1,a.trigger("close"))},this.select=function(e){t.select.options.forEach(function(t){return t.selected=!1}),e.item.selected=!0,o(),a.filterOptions(),t.select.isvisible=!1,a.trigger("select",e.item)},this.on("mount",function(){o(),a.filterOptions(),document.addEventListener("click",i),a.update()}),this.on("update",function(){t.select.filter||o(),n()}),this.on("unmount",function(){document.removeEventListener("click",i)})}),riot.tag2("rg-tabs",'
{heading}
{text}
{include.responseText}
',"","",function(t){var e=this,a=function(t){var a=new XMLHttpRequest;a.onload=function(i){var o=e.root.querySelector(".tabs__tab--active");o&&(o.innerHTML=a.responseText),e.trigger("loaded",t)},a.open("get",t.include,!0),a.send(),e.trigger("loading",t)};this.open=function(a){var i=a.item;i.disabled||i.active||(t.tabs.tabs.forEach(function(t){t.active=!1}),e.trigger("open",i),i.active=!0)},this.on("update",function(){t.tabs||(t.tabs={}),Array.isArray(t.tabs.tabs)&&t.tabs.tabs.forEach(function(t){!t.disabled&&t.active&&t.include&&a(t)})})}),riot.tag2("rg-tags",'
','rg-tags .menu,[riot-tag="rg-tags"] .menu,[data-is="rg-tags"] .menu{ position: absolute; }',"",function(t){function e(){var t=window,e=document,a=e.documentElement,i=e.getElementsByTagName("body")[0],o=t.innerWidth||a.clientWidth||i.clientWidth,n=t.innerHeight||a.clientHeight||i.clientHeight;return{width:o,height:n}}var a=this;t.tags||(t.tags={options:[],tags:[]}),t.tags.options||(t.tags.options=[]),t.tags.tags||(t.tags.tags=[]);var i=function(t){a.root.contains(t.target)||a.close(),a.update()},o=function(){a.selectfield.value="";for(var e=0;e-1; -})),a.trigger("filter",a.selectfield.value)};var n=function(){var i=e(),o=a.root.querySelector(".menu");if(o){if(!t.tags.isvisible)return o.style.marginTop="",void(o.style.marginLeft="");var n=o.getBoundingClientRect();i.width-1&&!t.tags.isvisible)return e.preventDefault(),a.open(),!0;var i=a.options.length;if(i>0&&[13,38,40].indexOf(e.keyCode)>-1){e.preventDefault();for(var o=null,n=0;i>n;n++){var r=a.options[n];if(r.active){o=n;break}}null!=o&&(a.options[o].active=!1),38==e.keyCode?null==o||0==o?a.options[i-1].active=!0:a.options[o-1].active=!0:40==e.keyCode?null==o||o==i-1?a.options[0].active=!0:a.options[o+1].active=!0:13==e.keyCode&&null!=o&&a.select({item:a.options[o]})}return!0},this.open=function(){t.tags.isvisible=!0,a.trigger("open")},this.close=function(){t.tags.isvisible&&(t.tags.isvisible=!1,a.trigger("close"))},this.select=function(e){t.tags.options.forEach(function(t){return t.selected=!1}),e.item.selected=!0,a.addTag(e.item),o(),a.filterOptions(),a.trigger("select",e.item)},this.addTag=function(e){-1==t.tags.tags.indexOf(e)&&t.tags.tags.push(e)},this.removeTag=function(e){t.tags.tags=t.tags.tags.filter(function(t){return t._id!=e.item._id?t:void 0})},this.on("mount",function(){o(),a.filterOptions(),document.addEventListener("click",i),a.update()}),this.on("update",function(){t.tags.options.forEach(function(t){t._id=t._id||(Math.floor(60466175*Math.random())+1679615).toString(36)}),t.tags.tags.forEach(function(t){t._id=t._id||(Math.floor(60466175*Math.random())+1679615).toString(36)}),t.tags.filter||o(),n()}),this.on("unmount",function(){document.removeEventListener("click",i)})}),riot.tag2("rg-toasts",'
{text}
',"","",function(t){var e=this;this.toastClicked=function(t){var a=t.item;window.clearTimeout(a.timer),a.isvisible=!1,e.trigger("select",a)};var a=1,i=function(){return a++};this.on("update",function(){t.toasts&&Array.isArray(t.toasts.toasts)&&(t.toasts.position=t.toasts.position||"bottomright",t.toasts.toasts.forEach(function(t){"undefined"==typeof t.isvisible&&(t.isvisible=!0),t.id=t.id||i(),t.timer||t.sticky||(t.startTimer=function(){t.timer=window.setTimeout(function(){t.isvisible=!1,e.trigger("close",t),e.update()},t.timeout||6e3)},t.startTimer())}),t.toasts.isvisible=t.toasts.toasts.filter(function(t){return t.isvisible}).length>0)})}),riot.tag2("rg-toggle",'
',"","",function(t){var e=this;this.on("mount",function(){t.toggle||(t.toggle={checked:!1})}),this.toggle=function(){t.toggle.checked=!t.toggle.checked,e.trigger("toggle",t.toggle.checked)}}),riot.tag2("rg-unsplash",'',"","",function(t){var e=this;this.on("update",function(){e.options="",t.unsplash||(t.unsplash={}),t.unsplash.width=t.unsplash.width||450,t.unsplash.height=t.unsplash.height||250,t.unsplash.greyscale&&(t.unsplash.greyscale="g/"),t.unsplash.random&&(e.options+="random&"),t.unsplash.blur&&(e.options+="blur&"),t.unsplash.image&&(e.options+="image="+t.unsplash.image+"&"),"undefined"!=typeof t.unsplash.gravity&&(e.options+="gravity="+t.unsplash.gravity)})}); \ No newline at end of file +var rg_date_cdn_momentjs="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/moment.min.js";var rg_credit_card_payment_fonts="https://cdnjs.cloudflare.com/ajax/libs/paymentfont/1.1.2/css/paymentfont.min.css";var rg_markdown_cdn_markdown="https://cdnjs.cloudflare.com/ajax/libs/markdown-it/8.3.0/markdown-it.min.js";function sleep(time){return new Promise((resolve)=>setTimeout(resolve,time))} +function loadJS(file,callback){var script=document.createElement("script");script.type="application/javascript";script.src=file;script.onload=callback;script.onreadystatechange=callback;document.head.appendChild(script)} +riot.tag("rg-alert",'
{opts.text}
',"","",function(opts){var _this=this;this.on("mount",function(){if(this.opts.dismissable) +this.refs.closeButton.hidden=!1;else this.refs.closeButton.hidden=!0;this.update()});if(typeof opts.dismissable=="string"){opts.dismissable=Boolean(opts.dismissable)} +if(typeof this.opts.dismissable!="boolean"){this.opts.dismissable=!0} +if(typeof opts.timeout=="string") +opts.timeout=Number(opts.timeout);if(typeof opts.timeout=="number"&&opts.timeout>0){this.startTimer=function(){this.timer=setTimeout(function(){_this.dismiss()},opts.timeout)};this.startTimer()} +this.dismiss=function(e){if(this.opts.timeout) +clearTimeout(this.startTimer);this.unmount()}});riot.tag("rg-alerts",'
'+'
',"","",function(){});riot.tag("rg-bubble",'
{opts.bubble.text}
'+'
','rg-bubble .context,[riot-tag="rg-bubble"] .context,[data-is="rg-bubble"] .context,rg-bubble .content,[riot-tag="rg-bubble"]'+' .content,[data-is="rg-bubble"] .content{ display: inline-block; position: relative; } rg-bubble .c-bubble,[riot-tag="rg-bubble"]'+' .c-bubble,[data-is="rg-bubble"] .c-bubble{ position: absolute; top: -70px; left: 50%; transform: translate3d(-50%, 0, 0); }',"",function(opts){var _this=this;this.showBubble=function(){clearTimeout(_this._timer);_this.isvisible=!0};this.hideBubble=function(){_this._timer=setTimeout(function(){_this.isvisible=!1;_this.update()},1e3)};this.toggleBubble=function(){_this.isvisible=!_this.isvisible}});riot.tag("rg-chart","",'rg-chart,[riot-tag="rg-chart"],[data-is="rg-chart"]{ display: inline-block; width: 100%; }',"",function(opts){var _this=this;Chart.defaults.global.responsive=!0;this.on("mount",function(){drawChart()});this.on("loaded",function(c){_this.on("unmount",function(){c.destroy()})});var drawChart=function drawChart(){if(!opts.chart)opts.chart={};var ctx=_this.root.querySelector("canvas").getContext("2d");var chart=new Chart(ctx);var c=null;switch(opts.chart.type){case "line":c=chart.Line(opts.chart.data,opts.chart.options);break;case "radar":c=chart.Radar(opts.chart.data,opts.chart.options);break;case "polar":c=chart.PolarArea(opts.chart.data,opts.chart.options);break;case "pie":c=chart.Pie(opts.chart.data,opts.chart.options);break;case "doughnut":c=chart.Doughnut(opts.chart.data,opts.chart.options);break;default:c=chart.Bar(opts.chart.data,opts.chart.options);break} +_this.trigger("loaded",c)}});riot.tag2("rg-code",'
','rg-code .editor,[riot-tag="rg-code"] .editor,[data-is="rg-code"] '+'.editor{ position: absolute; top: 0; right: 0; bottom: 0; left: 0; }',"",function(opts){var _this=this;if(!opts.editor)opts.editor={code:""};var editor=undefined;var setupEditor=function setupEditor(){editor.setTheme("ace/theme/"+(opts.editor.theme||"monokai"));editor.getSession().setMode("ace/mode/"+(opts.editor.mode||"html"));editor.getSession().setTabSize(opts.editor.tabsize||2);editor.getSession().setUseSoftTabs(opts.editor.softtabs);editor.getSession().setUseWrapMode(opts.editor.wordwrap);editor.setReadOnly(opts.editor.readonly)};this.on("mount",function(){editor=ace.edit(_this.root.querySelector(".editor"));editor.$blockScrolling=Infinity;_this.on("update",function(stuff){setupEditor();if(opts.editor.code!=editor.getValue())editor.setValue(opts.editor.code,1)});if(opts.url){var req=new XMLHttpRequest;req.onload=function(resp){opts.editor.code=resp;_this.update()};req.open("get",opts.url,!0);req.send()} +editor.setValue(opts.editor.code,1);editor.getSession().on("change",function(e){opts.editor.code=editor.getValue();_this.trigger("onchange",editor.getValue())});setupEditor();_this.update()})});riot.tag("rg-credit-card-number",'','rg-credit-card-number .card-no,[riot-tag="rg-credit-card-number"] '+'.card-no,[data-is="rg-credit-card-number"] .card-no{ padding-right: 60px; '+'background-repeat: no-repeat; background-position: right center; background-size: 60px; } '+'rg-credit-card-number .amex,[riot-tag="rg-credit-card-number"] .amex,[data-is="rg-credit-card-number"]'+' .amex{ background-image: url(img/amex.png); } rg-credit-card-number .diners_club,[riot-tag="rg-credit-card-number"]'+' .diners_club,[data-is="rg-credit-card-number"] .diners_club{ background-image: url(img/diners_club.png); }'+' rg-credit-card-number .discover,[riot-tag="rg-credit-card-number"]'+' .discover,[data-is="rg-credit-card-number"] .discover{ background-image: url(img/discover.png); } rg-credit-card-number'+' .jcb,[riot-tag="rg-credit-card-number"] .jcb,[data-is="rg-credit-card-number"] .jcb{ background-image: url(img/jcb.png); }'+' rg-credit-card-number .mastercard,[riot-tag="rg-credit-card-number"]'+' .mastercard,[data-is="rg-credit-card-number"] .mastercard{ background-image: url(img/mastercard.png); } rg-credit-card-number '+'.visa,[riot-tag="rg-credit-card-number"] .visa,[data-is="rg-credit-card-number"] .visa{ background-image: url(img/visa.png); }',"",function(opts){var _this2=this;this.on("update",function(){if(_this2.refs.cardinput.value!=opts.cardnumber)_this2.refs.cardinput.value=opts.cardnumber;_this2.validate()});this.validate=function(){opts.cardnumber=this.refs.cardinput.value;var res=validateCreditCard(opts.cardnumber);opts.valid=res.valid;_this2.icon=opts.valid?res.card_type.name:""};function validateCreditCard(input){var __indexOf=[].indexOf||function(item){for(var i=0,l=this.length;i=0){_results.push(card)}} +return _results}();for(_j=0,_len1=_ref1.length;_j<_len1;_j++){card_type=_ref1[_j];if(number.match(card_type.pattern)){return card_type}} +return null};is_valid_luhn=function(number){var digit,n,sum,_j,_len1,_ref1;sum=0;_ref1=number.split("").reverse();for(n=_j=0,_len1=_ref1.length;_j<_len1;n=++_j){digit=_ref1[n];digit=+digit;if(n%2){digit*=2;if(digit<10){sum+=digit}else{sum+=digit-9}}else{sum+=digit}} +return sum%10===0};is_valid_length=function(number,card_type){var _ref1;return _ref1=number.length,__indexOf.call(card_type.valid_length,_ref1)>=0};validate_number=function(_this){return function(number){var length_valid,luhn_valid;card_type=get_card_type(number);luhn_valid=!1;length_valid=!1;if(card_type!=null){luhn_valid=is_valid_luhn(number);length_valid=is_valid_length(number,card_type)} +return{card_type:card_type,valid:luhn_valid&&length_valid,luhn_valid:luhn_valid,length_valid:length_valid}}}(this);normalize=function(number){return number.replace(/[ -]/g,"")};validate=function(_this){return function(){return validate_number(normalize(input))}}(this);return validate(input)}});riot.tag("rg-date",'
'+' '+'
'+' '+'
{opts.date.date.format(yearFormat)}
'+' '+' '+'
{opts.date.date.format(monthFormat)}
'+' '+'
Mo
Tu
We
'+'
Th
Fr
'+'
Sa
Su
'+' '+' '+' '+' '+'
','rg-date .container,[riot-tag="rg-date"] .container,[data-is="rg-date"] .container{ position: relative; display: inline-block; cursor: pointer; }'+' rg-date .c-calendar,[riot-tag="rg-date"] .c-calendar,[data-is="rg-date"] .c-calendar{ position: absolute; min-width: 300px; margin-top: .5em; left: 0; }',"",function(opts){var _this=this;var callbackUsed=!1;var toMoment=function toMoment(d){if(!moment.isMoment(d))d=moment(d);if(d.isValid())return d;return moment()};var handleClickOutside=function handleClickOutside(e){if(!_this.root.contains(e.target))_this.close();_this.update()};var dayObj=function dayObj(dayDate){var dateObj=dayDate||moment();return{date:dateObj,selected:opts.date.date.isSame(dayDate,"day"),today:moment().isSame(dayDate,"day"),disabled:opts.date.min&&opts.date.min.isAfter(dayDate)||opts.date.max&&opts.date.max.isBefore(dayDate)}};var buildCalendar=function buildCalendar(){_this.format="ddd D MMM YYYY";_this.yearFormat="YYYY";_this.monthFormat="MMMM";_this.dayFormat="D";_this.days=[];_this.startBuffer=[];_this.endBuffer=[];var begin=moment(opts.date.date).startOf("month");var daysInMonth=moment(opts.date.date).daysInMonth();var end=moment(opts.date.date).endOf("month");for(var i=begin.isoWeekday()-1;i>0;i-=1){var d=moment(begin).subtract(i,"days");_this.startBuffer.push(dayObj(d))} +for(var i=0;i
'+'
'+'
'+'
'+'

{opts.drawer.header}'+'
{opts.drawer.subheading}
'+'

'+'
'+'
  • {text}
'+'
'+'
'+'
',"","",function(opts){var _this=this;this.on("before-mount",function(){if(!opts.drawer){opts.drawer={header:"Notice",subheading:undefined,position:"top",isvisible:!0,footer:[]}} +if(!opts.drawer.footer){footer:[]} +if(opts.header) +opts.drawer.header=opts.header;if(opts.subheading) +opts.drawer.subheading=opts.subheading;if(opts.position) +opts.drawer.position=opts.position}) +this.close=function(){opts.drawer.isvisible=!1;_this.trigger('close')};this.select=function(e){opts.drawer.items.forEach(function(item){return item.active=!1});e.item.active=!0;_this.trigger("select",e.item)}});riot.tag("rg-ga","","","",function(opts){(function(i,s,o,g,r,a,m){i.GoogleAnalyticsObject=r;i[r]=i[r]||function(){(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date;a=s.createElement(o),m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)})(window,document,"script","//www.google-analytics.com/analytics.js","ga");ga("create",opts.property,"auto");ga("send","pageview")});riot.tag2("rg-iframify",'
','rg-iframify .iframify,[riot-tag="rg-iframify"] .iframify,[data-is="rg-iframify"] .iframify{ margin: 0; padding: 0; }'+' rg-iframify iframe,[riot-tag="rg-iframify"] iframe,[data-is="rg-iframify"] iframe{ position: relative; width: 100%; border: 0; }',"",function(opts){var _this=this;this.on("mount",function(){iframify(_this.root.querySelector(".frame"),_this.opts)})});riot.tag("rg-include","
{responseText}
","","",function(opts){var _this=this;var fetch=function fetch(){var req=new XMLHttpRequest;req.onload=function(resp){if(opts.unsafe)_this.root.innerHTML=req.responseText;else _this.responseText=req.responseText;_this.update();_this.trigger("loaded")};req.open("get",opts.url,!0);req.send();_this.trigger("loading")};this.on("mount",function(){fetch()})});riot.tag("rg-map",'
','rg-map .rg-map,[riot-tag="rg-map"] .rg-map,[data-is="rg-map"] .rg-map{ margin: 0; padding: 0; width: 100%; height: 100%; } rg-map .rg-map img,[riot-tag="rg-map"] .rg-map img,[data-is="rg-map"] .rg-map img{ max-width: inherit; }',"",function(opts){var _this=this;var _script_id="rg_map_script_unqiue";window.rg=window.rg||{};window.rg.gmap=riot.observable({initialize:function initialize(){window.rg.gmap.trigger("initialize")}});this.on("before-mount",function(){if(!opts.map) +opts.map={center:{lat:(opts.lat?Number(opts.lat):-34.397),lng:(opts.lng?Number(opts.lng):50.644)},zoom:7} +if(!opts.id) +opts.id="rg_map_id_"+Date.now();if(opts.apikey&&!opts.map.apikey) +opts.map.apikey=opts.apikey;if(opts.lat&&opts.map&&opts.map.center.lat) +opts.map.center.lat=(opts.lat?Number(opts.lat):opts.map.center.lat);if(opts.lng&&opts.map&&opts.map.center.lng) +opts.map.center.lng=(opts.lng?Number(opts.lng):opts.map.center.lng);if(opts.zoom&&opts.map) +opts.map.zoom=(opts.zoom?Number(opts.zoom):(opts.map.zoom?opts.map.zoom:8));if(opts.type&&opts.map) +opts.map.mapTypeId=(opts.type?opts.type:(opts.map.mapTypeId?opts.map.mapTypeId:"roadmap"));if(opts.tilt&&opts.map) +opts.map.tilt=(opts.tilt?Number(opts.tilt):(opts.map.tilt?opts.map.tilt:45));if(opts.heading&&opts.map) +opts.map.heading=(opts.heading?Number(opts.heading):(opts.map.heading?opts.map.heading:90))});this.on("mount",function(){rg.gmap.on("initialize",function(){e1=_this.root.querySelector(".rg-map");e2=_this.refs[0];opts.map.mapObj=new google.maps.Map(e1,opts.map);_this.trigger("loaded",opts.map.mapObj)});if(!document.getElementById(_script_id)){var script=document.createElement("script");script.setAttribute("id",_script_id);script.type="text/javascript";script.src="https://maps.googleapis.com/maps/api/js?key="+opts.apikey+"&callback=window.rg.gmap.initialize";document.body.appendChild(script)}})});riot.tag("rg-markdown","","","",function(opts){var _this=this;var md;var callback=function callback(){if(markdownit){} +if(!opts.markdown)opts.markdown={};if(opts.markdown.content){md=markdownit({html:!0,linkify:!0,typographer:!0});_this.root.innerHTML=md.render(opts.markdown.content)}else if(opts.markdown.url){(function(){var req=new XMLHttpRequest;req.onload=function(resp){_this.root.innerHTML=md.render(req.responseText);_this.trigger("loaded")};req.open("get",opts.markdown.url,!0);req.send();_this.trigger("loading")})()}} +this.on("before-mount",function(){if(!opts.markdown){opts.markdown={content:(opts.content?opts.content:"")}} +if(opts.content){opts.markdown.content=opts.content} +if(this.__.innerHTML) +opts.markdown.content=this.__.innerHTML});this.on("mount",function(){if(typeof markdownit==="undefined") +loadJS(rg_markdown_cdn_markdown,callback);else callback()})});riot.tag("rg-modal",'
'+'
'+'
'+'
'+'
'+''+'

{opts.modal.heading}

'+'
'+'
'+''+'
'+'
'+'
'+''+'
'+'
'+'
'+'
','rg-modal .o-modal--ghost .o-modal__footer .c-button,[riot-tag="rg-modal"] .o-modal--ghost .c-card__footer'+' .c-button,[data-is="rg-modal"] .o-modal--ghost .c-card__footer .c-button{ margin: 0 .5em 0 0; }',"",function(opts){var _this=this;this.on("before-mount",function(){if(!opts.modal) +opts.modal={isvisible:!0,dismissable:!0,full:!1,ghost:!1,heading:(opts.heading?opts.heading:'Note'),buttons:[{text:'Close',type:'brand',action:function(){this.close()}}],blockbuttons:!0}});this.close=function(){if(opts.modal.dismissable){opts.modal.isvisible=!1;_this.trigger("close")}}});riot.tag("rg-pagination",'
'+'
'+' '+' '+'
'+'
'+' '+' '+' '+' '+' …'+' '+'
'+'
'+' '+' '+'
'+'
',"","",function(opts){var _this=this;this.on("before-mount",function(){if(!opts.pagination){pagination={pages:10,page:1}} +if(opts.page&&opts.pages){opts.page=Number(opts.page);opts.pages=Number(opts.pages);if(opts.page>opts.pages) +opts.page=opts.pages} +if(opts.page) +opts.pagination.page=Number(opts.page);if(opts.pages) +opts.pagination.pages=Number(opts.pages)});this.on("page",function(){var btns=_this.root.querySelectorAll("button");for(var i=0;i
','rg-phone-sim .emulator,[riot-tag="rg-phone-sim"] .emulator,[data-is="rg-phone-sim"] .emulator{ position: relative; width: 365px; height: 792px; background-image:'+'url(\'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAW0AAAMYCAMAAAA3r0ZLAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAwBQTFRFMDk6+vr6KTM0lJucMz4/PklKJS8wLTg5Qk1O'+'xsjILzo7gomJ2NvbdH5/ho2O9fb2KzY3ztHRPEdIOkVGZWxtjJSVOEJDkpeYWGRluL2+KTQ1vcHBoaWlPUZHcnp6nKKjOkRF1NfXqa2tp62tZnBxanV2VmFiZ29wVl1eaXJzbXR04uTktbq7QElK1tnZipKTi5CRTlZXpKioo'+'6mqXmlqUVlaOEFCSVFSUFxdISssT1tcTlpbJC4vIiwtTVlaJjAxIy0uTFhZS1dYJzEyKDIzSlZXPUhJOURFO0ZHSVVWKzU2P0pLKjQ1OENEND0+QEtMLDY3SFRVN0JDQ05PLTc4ND9ANUBBQUxNNkFCR1NUMTo7RE9QLjg5'+'N0BBR1JTRlJTLzk6RVFSMjs8RVBRRlFSNj9AMzw9SFNUMj0+IissMTs8MDo7SVRVRFBRMDs8MTw9IiwsMz0+Mjw9SlVWQ09QLjk6NT4/S1ZXND4/JC4uQU1OIy0tQk5PTFdYTVhZQExNTllaJS8vJzIyP0tMLzg5LDc4KDMzNT'+'9AKjU1N0FCNkBBJjAwIywtMDs7Mj09NkFBJjExLjk5LDc3N0JCNUBAKjU2MTw8LDU2Ljc4OUNEKDEyQU1NPEhIPEhJO0dHOkZGND8/Qk5ORFBQQ09PLTY3OUREPkpKPkpLPUlJT1pbP0tLJTAwPUlKJzAxKjM07u/vKTIzsbW2YGprtLm'+'50tXWPkhJo6endn+A3d/f6uvreoOEg4yN2tvc/Pz8n6am8/T0VFtcm6CgJS4v4OLi5ufnYGdncnt8dHp7gYaHJC0uu8DAjJGRQkxNxMfHKzQ1YGtsS1NUaXN0bnh5yMzMyszMy83Oy8/PdoCAKDIy7O3tT1dYuLu70NTUbXd46Onq6erreoC'+'A2dzc8PHx8vPz5OXlnaSkn6Wmqq6ucHZ2t7y8o6eoeoSEkJaWm5+gW2ZnZG5vqa+wOEFB09bWtru7qrCwcXd4t7u83eDgzM7O7/DwNT4+7e7uwMPDwcPEeH5/////70wnUQAAAQB0Uk5T'+'//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////'+'//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////'+'AFP3ByUAAA+NSURBVHja7N13nBTlGcDxEQI5AmJQBAkcnqhEDIhoWMt5iogmQbOaYNrqYrJh16gplmTVkILJpYCmF+DSE1JIcjRR7L333ntPYjQxvTl55tnr7N7t7uw+vDP3+/0x3G3hs5+vr++8M7s7eH75Xb5x+rOjN017aeq+tO++U'+'1+atmn0s9M3Xl6BoFfm466ZOPROhIt259CJ19RS++7LdgW133a97O7aaI/a+VE0y+jRnUeF1p6wqfvvaz6+YVjT0jMyJ3rkeSdmzljaNKzh+OZuoE0TQmmvv67zLzrwmMY8wkXLNx5zYCfTdeur1p6wdeegblgKar8tbegc4lv/rirtjTMLT99'+'/UVMKzgFLNS3avwA2c2Pl2n8tPHV1QxLJMks2rC6g/alC7ScvKozrhhyIFZRrKIzvi56sRHt94b/RIsZ1xeN7UYFuffna4/UJB68Er4rGHax648vUfmqkPnxBBrmqyixQv5FPlaP9Dz2eWdIEW9U1LdFjnQsG1n5ETz4dyowdavY+VE9XPTKQ9phddP'+'fICjvk6lt3lruM6V97j132l26BK3S3BJAv79Gf9jN3BY85HKsadHhAedebSmtf+ofgEcOQqknDAsyLLi2pPTq4/0icatSRAefoUto7Bvc2oFSzGgLQHYtr3xTct5DVSA1XJgsD0puKaa99s9wzlwPImh5WzhXTl/5TRHt7uaN5GUI1bVmzqL64ufZfgkF/GD'+'417rCA9e99tf8VzCPHoVPzjhPXaVv10d5bblzCyZE6nDIJ5pKde2u/Egz487Cp1zHlHr20h8otp50ETT2WgaeL7dCe2vcF/uOQqUsrA9z7emgHQ3thdEZLLpeL0kHYwq7BrdqjAv2ofEAnlU0EZaPjvTTgHdWlvXeEhnYu0VkuUoN7707tbW6X35oiciyc6C4y'+'ZxmaxPf2bTq0z5VfTo/IC8/20M5GZnAHy5JzO7Tvj85bCKlEzyIzdQdvLNxf0L4wmMQjMgnmemlHZubOBcQXqvb0CO0jk720o3OmIdhPTlft4FTrth5ju55tK8bbq/YG+emUiLzqTC/t6Lz1cYoYbwi0r47QisTz0j2w0xE6ngxWJVeLdrD+WxCZVx3J9ba0QNeAnj'+'9T/twuOi87GcF9pLSdKM8U7Q2rV6+O0jcQMoXJJB2t96tzorzB99Y2NzfPjdQL9zLJZDJynw2YK85rvZ1ku9Cjuq+4xXknb4Js+XxU/WsQ5wnec7LlDcn6d544P+ddLFu+zlT/Vorzxd5k2fIJqfq3TJwney/Lls+RGBwniPPL3g6y5aOWBstWcd7BmypbLjhS/1Li'+'PNWTTTMWBik02mijTWijTWijjTbFVTuZTqSTRW8OUzqJdpGyxT89mU2ELYv25kO4+LvnyUT4kmj3LV38YzjpGmin3dReIm2pF9BlU+LmMDmnrdBbUntQje0trj2o5m2FPlBiTWKQQm9R7cG03nZAexCFNtpoE9poE9poo01oo01oo01oo4021VT7MxIUBik02mijTeG1D'+'5agMEih0UYbbUIbbUIbbbQJbbQJbbQJbbTRplppf1qCwiCFRhtttCm89lwJCoMUGm200Sa00Sa00Uab0Eab0Eab0EY73tqnS1AYpNBoo402hdc+VILCIIVGG220CW20CW200Sa00Sa00aYC9GkSFAYpNNpoo01oR0v7bRIUBik02mijTWijTWijjTahjTah7bL2hyUoDFJot'+'NFGm9BGm0ppv0OCwiCFRhtttAlttAlttNEmtOOhfbwEhUEKjTbaaBPaaBPaLmi/T4LCIIVGG220CW20CW200ab6aS+UoDBIodFGG21CG21C2wXt4yQoDFJotNFGm9BGm9BGe7BpL5KgMEih0UYbbUIbbULbBe0PSFAYpNBoo402oY02oY32YNP+oASFQQqNNtpoE9poE9poDzbtj'+'0hQGKTQaKONNqGNNpXS/qkEhUEKfYwEhUEKjTbaaBPaaBPaaA827Y9LUBik0GijjTahHS3tn0lQGKTQCyQoDFJotNFGm9BGm9BGG22qn/anJCgMUmi00Uabwmv/RILCIIVukKAwSKHRRhttQhttQhtttKl+2p+UoDBIodFGG20Kr/09CQqDFPo9EhQGKTTaaKNNaKNNaKONNtVP+7'+'MSFAYpNNpoo03htY+UoDBIodFGG21CG21CG220Ce14aH9egsIghUYb7bhq/1qCwiCFPlyCwiCFRhtttAlttAlttNEmtNGmSrV/KUFhkEL/QoLCIIUeJkFhkEKjjTbahDbahDbaaBPaaFOl2r+VoDBIoX8lQWGQQh8mQWGQQqONNtqENtqENtpoE9poE9oua/9AgsIghf6+BIVBCr2tBIV'+'BCo022mgT2mgT2mijTWijTWi7rP1DCQqDFPqtEhQGKTTaaKNNaKNNaKONNqGNNqHtsvaPJCgMUujtJCgMUmi00Uab0Eab0EYbbUIbbUIbbSpAv0WCwiCFRhtttAlttAlttNEmtNEmtF3W/rkEhUEKvVKCwiCFfrsEhUEKjTbaaBPaaBPaaKNNaKNNaLusPU6CwiCFfqcEhUEKjTbaaBPaa'+'BPaaKNNaMdD+1sSFAYpNNqW2kslKAxSaLQttd8rQWGQQqONNtqENtqENtpoU/20vyZBYZBCo22pvUyCwiCFRttS+90SFAYpNNpoo01oo01oo4021U/72xIUBik02pbaX5KgMEih0UY7rtrvkqAwSKHRRhttQhttQhtttKl+2j+WoDBIoc+QoDBIodFGG20Kr/0aCQqDFBpttNEmtNEmtNF'+'Gm+qnfYoEhUEKjTbaaBPa0dL+kASFQQqNNtpoE9poE9ouaH9VgsIghUbbUvtUCQqDFBpttNEmtKOl/TEJCoMUGm200Sa00aZS2t+VoDBIodG21D5RgsIghUYbbbQJbbSplPZHJSgMUmi00Uab0EabSml/RYLCIIVG21L7JAkKgxQabbTRJrTRplLar5OgMEih0UYbbUIbbULbBe33S1AYpNB'+'oo402oY02oY32YNP+hASFQQqNNtpoE9rR0v6GBIVBCo22pfaxEhQGKTTaaKNNaKNNaKM92LRfK0FhkEKjjTbahDbaVEr7aAkKgxQabbTRJrTRJrTRRpvqp/0FCQqDFBpttOOq/U0JCoMUGm1L7aMkKAxSaLTRRpvQRpvQRhttQjse2q+XoDBIodFGG21CO1ra8yUoDFJotNFGm9BGm9BGG21'+'CG22qVPs7EhQGKTTaltpflqAwSKHRRjuu2kdIUBik0GijjTahjTahjTbahDbaVKn2GyQoDFJotNFGm8JrD5GgMEih0UYbbUIbbUIbbbQJbbQJbbSpAP1FCQqDFBpttNGm8NrzJCgMUmi00Uab0Eab0EYbbUIbbUIbbULbXvtzEhQGKTTaaMdV+xAJCoMUGm200Sa00Sa00Uab0Eab0Eab'+'0EY73tpfl6AwSKHRttQ+SILCIIVGG220CW20CW200Sa00Sa00Sa00UabaqV9tgSFQQqNtqX2byQoDFLo4RIUBik02mijTWijTWijjTahjTahjTZFVTuVymQyqRTa9S6TzGcTnaWz+VwK7TqVyyc2L5tMoV376SOZTpQom4uO9lmS+9b5RH+lo+Ct0FHQTiYGKptCu0a7xj5zSDqdzmbT'+'fSeWZCS0D5AiM7DT+Vyme3rJJLMRGt4K7bp2D9B8psjOs8f9GbRD7h67MUst9TLdD8mhHQq7a3bO9zNP5CIxebuvnS5v1HYvEHNoh56z8wPuAHPuz92ua+crmB+6uFNoV3depKLJuPPRabSr2kNWuOfrfHwe7eon7WTF/y9k0K52HslW/pQ02tUu/ira6SVdXnW7rJ2sav2cdnhwu6ydrnge'+'0aN4hwe3w9q5Knd4eXcHt8Pa2SoXcxl3lyXuaqeqRss7u+Z2VztZ1azdY3C7qn2m5OhEUtUJvbSrU4lCO6kd4gRT3tVVibPamaonknDPHZzayTDj09WJW6HnSK69sHyY92HSjp7mVmgXtbNh9nRZR3eTzmqHGp55R9+gRBvtsDu6pKNLQLTRRjt687aj2kfJppW9ZN1rFeflau6adhzX2606'+'hzTKdgXHknXvWHFu9GbJ9mjOk9S9o8V5lje2MJ84VRzPAS4X57HeaNmucXMJGKvz22vEebQ3RbbzXHtpMXzvZp44T/Huka1zl82N4fuSB4nzPd7jsnXubeAYvud+gDg/7vnjHFxwx+/zJMFye5zv+bvLn/Nde3Gx+6zUfFHeXbQnLV68+AHnXl3cPgf4gChPEu1R8qd7372O22dczxLlUaLt/1'+'l+aHV0cMfl89utYvxvP9B+QX66zbnXF6/vJtwmxrur9vnyk4MX84/V927O1mk70H7mHMm9qSRO3ylrDYifUW3/CvlxjefqXBKH70uuEeEr/IL2pJaWFhe/DVLVd4Gd/P7eASI8qUP76YT8stzBF1nF99ydvKzAcvFNPN2h7d8sv7l44bRUxddwcPPLe8PF92a/U3uM/NayymnuKF+fZFXAO6Z'+'L23/C0cEdj2vvBEP7Cb9be2KLozN3HK4rFczaLRN7aPuvOros8WJwzbRgQfKq31N7ROC/xs1Xu/n1ALNRuh7gkID23l7a/p5y05xjPfeHd9Sudblijsi+6PfWvjApNzr7z3pG+DquB4nrjG36aPu/d3gu8aJ7jeI1Aetefl9t/wVXF91dy+piAzzt9vW3dan9N39z7cdODdYlrS6/9shdW741'+'WI+c+lgRbf/5FlePcfpMKtH5dxOC45qW5/1i2v7I4L42j2pVWwA60i+u7Y8N7l2HUo1aF3CO9Utpb7VbcP8QnGp3WLPbViW1/Uv2gbum2Ptc4pfW9v/ZGDxmHlahmxdANt7r96ft/0+521vhCrf0a1fs//r9a/u3zjhZumoFYmFOjlwVIM641R9I239ldvDIxcsxq7rliwPC2a/4A2v7D14bPPbk'+'NmaTKmeRNvW79kG/HG3fn6wPP5PhXdXAPlP1JheDLartX6lPOPlsZu+KZ+z2At2Vfvna/pjdTtCYTiqcRApsV6z3K9H2/fGF553Txvgue1y3nVNAG18KtaS2P2Ja4akntDN/lzVft3d4vXGEX7m27+81q+P5N7atQrPfVrXd2GE1a69+RPvTlr3lHft11NJ+BFNKiQnkiPaWTqY7/tivZ//av'+'n/+7P26ahl+yJD5q1a0sufUPWLrilXzhxwyvKUbaPb5A2gOpC3z956N+9HANe05YkDLgbWlh0fOQLPfZox8uBzIsrSlC6Zcj3gJ6eunXFCmYrnaQWtHTLph7EONresQlta1Nj409oZJI9ZWIPh/AQYA2whzWlA9R/cAAAAASUVORK5CYII=\');'+' background-repeat: no-repeat; background-position: center; background-size: cover; } rg-phone-sim .screen,[riot-tag="rg-phone-sim"] .screen,[data-is="rg-phone-sim"] .screen{ position: absolute; top: 105px; left: 22px; background-color: white; width: 320px; height: 568px; border: 0; }',"",function(opts){this.on("before-mount",function(){if(!opts.phonesim) +opts.phonesim={url:undefined} +if(opts.url) +opts.phonesim.url=opts.url})});riot.tag("rg-placeholdit",'',"","",function(opts){this.on("before-mount",function(){if(!opts.placeholdit)opts.placeholdit={};opts.placeholdit.width=opts.placeholdit.width||450;opts.placeholdit.height=opts.placeholdit.height||250;opts.placeholdit.background=opts.placeholdit.background||"000";opts.placeholdit.color=opts.placeholdit.color||"fff";opts.placeholdit.text=opts.placeholdit.text||opts.placeholdit.width+" x "+opts.placeholdit.height;opts.placeholdit.textsize=opts.placeholdit.textsize||30;opts.placeholdit.format=opts.placeholdit.format||"png" +if(opts.width) +opts.placeholdit.width=Number(opts.width);if(opts.height) +opts.placeholdit.height=Number(opts.height);if(opts.background) +opts.placeholdit.background=opts.background;if(opts.color) +opts.placeholdit.color=opts.color;if(opts.text) +opts.placeholdit.text=opts.text;if(opts.textsize) +opts.placeholdit.textsize=Number(opts.textsize);if(opts.format) +opts.placeholdit.text=opts.format})});riot.tag2("rg-raw","","","",function(opts){this.on("mount update",function(){this.root.innerHTML=opts.content||""})});riot.tag("rg-select",''+'
    '+'
  • {text}'+'
  • '+'
','rg-select .c-card--menu,[riot-tag="rg-select"] .c-card--menu,[data-is="rg-select"] .c-card--menu{ position: relative; }',"",function(opts){var _this=this;if(!opts.select)opts.select={options:[]};var handleClickOutside=function handleClickOutside(e){if(!_this.root.contains(e.target))_this.close();_this.update()};var applyFieldText=function applyFieldText(){for(var i=0;i-1});_this.trigger("filter",_this.refs.selectfield.value)};function getWindowDimensions(){var w=window,d=document,e=d.documentElement,g=d.getElementsByTagName("body")[0],x=w.innerWidth||e.clientWidth||g.clientWidth,y=w.innerHeight||e.clientHeight||g.clientHeight;return{width:x,height:y}};var positionDropdown=function positionDropdown(){var w=getWindowDimensions();var m=_this.root.querySelector(".c-card--menu");if(!m)return;if(!opts.select.isvisible){m.style.marginTop="";m.style.marginLeft="";return};var pos=m.getBoundingClientRect();if(w.width-1&&!opts.select.isvisible){e.preventDefault();_this.open();return!0} +var length=_this.options.length;if(length>0&&[13,38,40].indexOf(e.keyCode)>-1){e.preventDefault();var activeIndex=null;for(var i=0;i'+'
'+'
{heading}'+'
'+'
'+'
'+'
{text}
{include.responseText}'+'
'+'
'+'
',"","",function(opts){var _this=this;var fetch=function fetch(tab){var req=new XMLHttpRequest;req.onload=function(resp){var activeTab=_this.root.querySelector(".c-tabs__tab--active");if(activeTab)activeTab.innerHTML=req.responseText;_this.trigger("loaded",tab)};req.open("get",tab.include,!0);req.send();_this.trigger("loading",tab)};this.open=function(e){var tab=e.item;if(!tab.disabled&&!tab.active){opts.tabs.tabs.forEach(function(tab){tab.active=!1});_this.trigger("open",tab);tab.active=!0}};this.on("before-mount",function(){if(!opts.tabs) +opts.tabs={type:'default',tabs:[]};if(opts.type) +opts.tabs.type=opts.type});this.on("update",function(){if(!opts.tabs)opts.tabs={};if(!Array.isArray(opts.tabs.tabs))return;opts.tabs.tabs.forEach(function(tab){if(!tab.disabled&&tab.active&&tab.include){fetch(tab)}})})});riot.tag("rg-tags",'
'+' '+' '+' '+'
'+' '+'
    '+'
  • {text}'+'
  • '+'
'+'
'+'
','rg-tags .c-card--menu,[riot-tag="rg-tags"] .c-card--menu,[data-is="rg-tags"] .c-card--menu{ position: relative; }',"",function(opts){var _this=this;if(!opts.tags)opts.tags={options:[],tags:[]} +else{if(!opts.tags.type) +opts.tags.type="default"} +if(!opts.tags.options)opts.tags.options=[];if(!opts.tags.tags)opts.tags.tags=[];if(opts.type) +opts.tags.type=opts.type;if(opts.placeholder) +opts.tags.placeholder=opts.placeholder;if(opts.filter) +if(typeof opts.filter==="boolean"||typeof opts.filter==="string") +if(opts.filter==="true"||Boolean(opts.filter)===!0) +if(opts.filter==="true") +opts.tags.filter="text";else opts.tags.filter=undefined;var defType=opts.tags.type;for(i=0;i-1});_this.trigger("filter",_this.refs.selectfield.value)};function getWindowDimensions(){var w=window,d=document,e=d.documentElement,g=d.getElementsByTagName("body")[0],x=w.innerWidth||e.clientWidth||g.clientWidth,y=w.innerHeight||e.clientHeight||g.clientHeight;return{width:x,height:y}} +var positionDropdown=function positionDropdown(){var w=getWindowDimensions();var m=_this.root.querySelector(".c-card--menu");if(!m)return;if(!opts.tags.isvisible){m.style.marginTop="";m.style.marginLeft="";return} +var pos=m.getBoundingClientRect();if(w.width-1&&!opts.tags.isvisible){e.preventDefault();_this.open();return!0} +var length=_this.options.length;if(length>0&&[13,38,40].indexOf(e.keyCode)>-1){e.preventDefault();var activeIndex=null;for(var i=0;i'+'
{text}
'+'
',"","",function(opts){var _this=this;this.toastClicked=function(e){var toast=e.item;window.clearTimeout(toast.timer);toast.isvisible=!1;_this.trigger("select",toast)};var _uid=1;var uid=function uid(){return _uid++};this.on("mount",function(){if(!opts.toasts||!Array.isArray(opts.toasts.toasts))return;opts.toasts.position=opts.toasts.position||"bottomright";opts.toasts.toasts.forEach(function(toast){if(typeof toast.isvisible=="undefined")toast.isvisible=!0;toast.id=toast.id||uid();if(!toast.timer&&!toast.sticky){toast.startTimer=function(){toast.timer=window.setTimeout(function(){toast.isvisible=!1;_this.trigger("close",toast);_this.update()},toast.timeout||6e3)};toast.startTimer()}});opts.toasts.isvisible=opts.toasts.toasts.filter(function(toast){return toast.isvisible}).length>0})});riot.tag2("rg-toggle",'
',"","",function(opts){var _this=this;this.on("mount",function(){if(!opts.toggle)opts.toggle={checked:!1}});this.toggle=function(){opts.toggle.checked=!opts.toggle.checked;_this.trigger("toggle",opts.toggle.checked)}});riot.tag2("rg-unsplash",'',"","",function(opts){var _this=this;this.on("update",function(){_this.options="";if(!opts.unsplash)opts.unsplash={};opts.unsplash.width=opts.unsplash.width||450;opts.unsplash.height=opts.unsplash.height||250;if(opts.unsplash.greyscale)opts.unsplash.greyscale="g/";if(opts.unsplash.random)_this.options+="random&";if(opts.unsplash.blur)_this.options+="blur&";if(opts.unsplash.image)_this.options+="image="+opts.unsplash.image+"&";if(typeof opts.unsplash.gravity!=="undefined")_this.options+="gravity="+opts.unsplash.gravity})}) From 5bbe323d3923751c57693808f35ed075eb06cbb9 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Thu, 23 Feb 2017 23:18:19 +0800 Subject: [PATCH 38/67] 3.6.0 including toasts, credit card still buggy --- dist/rg.min.js | 107 +------------------------------------------------ 1 file changed, 2 insertions(+), 105 deletions(-) diff --git a/dist/rg.min.js b/dist/rg.min.js index 661ed2a..2771e11 100644 --- a/dist/rg.min.js +++ b/dist/rg.min.js @@ -1,105 +1,2 @@ -var rg_date_cdn_momentjs="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/moment.min.js";var rg_credit_card_payment_fonts="https://cdnjs.cloudflare.com/ajax/libs/paymentfont/1.1.2/css/paymentfont.min.css";var rg_markdown_cdn_markdown="https://cdnjs.cloudflare.com/ajax/libs/markdown-it/8.3.0/markdown-it.min.js";function sleep(time){return new Promise((resolve)=>setTimeout(resolve,time))} -function loadJS(file,callback){var script=document.createElement("script");script.type="application/javascript";script.src=file;script.onload=callback;script.onreadystatechange=callback;document.head.appendChild(script)} -riot.tag("rg-alert",'
{opts.text}
',"","",function(opts){var _this=this;this.on("mount",function(){if(this.opts.dismissable) -this.refs.closeButton.hidden=!1;else this.refs.closeButton.hidden=!0;this.update()});if(typeof opts.dismissable=="string"){opts.dismissable=Boolean(opts.dismissable)} -if(typeof this.opts.dismissable!="boolean"){this.opts.dismissable=!0} -if(typeof opts.timeout=="string") -opts.timeout=Number(opts.timeout);if(typeof opts.timeout=="number"&&opts.timeout>0){this.startTimer=function(){this.timer=setTimeout(function(){_this.dismiss()},opts.timeout)};this.startTimer()} -this.dismiss=function(e){if(this.opts.timeout) -clearTimeout(this.startTimer);this.unmount()}});riot.tag("rg-alerts",'
'+'
',"","",function(){});riot.tag("rg-bubble",'
{opts.bubble.text}
'+'
','rg-bubble .context,[riot-tag="rg-bubble"] .context,[data-is="rg-bubble"] .context,rg-bubble .content,[riot-tag="rg-bubble"]'+' .content,[data-is="rg-bubble"] .content{ display: inline-block; position: relative; } rg-bubble .c-bubble,[riot-tag="rg-bubble"]'+' .c-bubble,[data-is="rg-bubble"] .c-bubble{ position: absolute; top: -70px; left: 50%; transform: translate3d(-50%, 0, 0); }',"",function(opts){var _this=this;this.showBubble=function(){clearTimeout(_this._timer);_this.isvisible=!0};this.hideBubble=function(){_this._timer=setTimeout(function(){_this.isvisible=!1;_this.update()},1e3)};this.toggleBubble=function(){_this.isvisible=!_this.isvisible}});riot.tag("rg-chart","",'rg-chart,[riot-tag="rg-chart"],[data-is="rg-chart"]{ display: inline-block; width: 100%; }',"",function(opts){var _this=this;Chart.defaults.global.responsive=!0;this.on("mount",function(){drawChart()});this.on("loaded",function(c){_this.on("unmount",function(){c.destroy()})});var drawChart=function drawChart(){if(!opts.chart)opts.chart={};var ctx=_this.root.querySelector("canvas").getContext("2d");var chart=new Chart(ctx);var c=null;switch(opts.chart.type){case "line":c=chart.Line(opts.chart.data,opts.chart.options);break;case "radar":c=chart.Radar(opts.chart.data,opts.chart.options);break;case "polar":c=chart.PolarArea(opts.chart.data,opts.chart.options);break;case "pie":c=chart.Pie(opts.chart.data,opts.chart.options);break;case "doughnut":c=chart.Doughnut(opts.chart.data,opts.chart.options);break;default:c=chart.Bar(opts.chart.data,opts.chart.options);break} -_this.trigger("loaded",c)}});riot.tag2("rg-code",'
','rg-code .editor,[riot-tag="rg-code"] .editor,[data-is="rg-code"] '+'.editor{ position: absolute; top: 0; right: 0; bottom: 0; left: 0; }',"",function(opts){var _this=this;if(!opts.editor)opts.editor={code:""};var editor=undefined;var setupEditor=function setupEditor(){editor.setTheme("ace/theme/"+(opts.editor.theme||"monokai"));editor.getSession().setMode("ace/mode/"+(opts.editor.mode||"html"));editor.getSession().setTabSize(opts.editor.tabsize||2);editor.getSession().setUseSoftTabs(opts.editor.softtabs);editor.getSession().setUseWrapMode(opts.editor.wordwrap);editor.setReadOnly(opts.editor.readonly)};this.on("mount",function(){editor=ace.edit(_this.root.querySelector(".editor"));editor.$blockScrolling=Infinity;_this.on("update",function(stuff){setupEditor();if(opts.editor.code!=editor.getValue())editor.setValue(opts.editor.code,1)});if(opts.url){var req=new XMLHttpRequest;req.onload=function(resp){opts.editor.code=resp;_this.update()};req.open("get",opts.url,!0);req.send()} -editor.setValue(opts.editor.code,1);editor.getSession().on("change",function(e){opts.editor.code=editor.getValue();_this.trigger("onchange",editor.getValue())});setupEditor();_this.update()})});riot.tag("rg-credit-card-number",'','rg-credit-card-number .card-no,[riot-tag="rg-credit-card-number"] '+'.card-no,[data-is="rg-credit-card-number"] .card-no{ padding-right: 60px; '+'background-repeat: no-repeat; background-position: right center; background-size: 60px; } '+'rg-credit-card-number .amex,[riot-tag="rg-credit-card-number"] .amex,[data-is="rg-credit-card-number"]'+' .amex{ background-image: url(img/amex.png); } rg-credit-card-number .diners_club,[riot-tag="rg-credit-card-number"]'+' .diners_club,[data-is="rg-credit-card-number"] .diners_club{ background-image: url(img/diners_club.png); }'+' rg-credit-card-number .discover,[riot-tag="rg-credit-card-number"]'+' .discover,[data-is="rg-credit-card-number"] .discover{ background-image: url(img/discover.png); } rg-credit-card-number'+' .jcb,[riot-tag="rg-credit-card-number"] .jcb,[data-is="rg-credit-card-number"] .jcb{ background-image: url(img/jcb.png); }'+' rg-credit-card-number .mastercard,[riot-tag="rg-credit-card-number"]'+' .mastercard,[data-is="rg-credit-card-number"] .mastercard{ background-image: url(img/mastercard.png); } rg-credit-card-number '+'.visa,[riot-tag="rg-credit-card-number"] .visa,[data-is="rg-credit-card-number"] .visa{ background-image: url(img/visa.png); }',"",function(opts){var _this2=this;this.on("update",function(){if(_this2.refs.cardinput.value!=opts.cardnumber)_this2.refs.cardinput.value=opts.cardnumber;_this2.validate()});this.validate=function(){opts.cardnumber=this.refs.cardinput.value;var res=validateCreditCard(opts.cardnumber);opts.valid=res.valid;_this2.icon=opts.valid?res.card_type.name:""};function validateCreditCard(input){var __indexOf=[].indexOf||function(item){for(var i=0,l=this.length;i=0){_results.push(card)}} -return _results}();for(_j=0,_len1=_ref1.length;_j<_len1;_j++){card_type=_ref1[_j];if(number.match(card_type.pattern)){return card_type}} -return null};is_valid_luhn=function(number){var digit,n,sum,_j,_len1,_ref1;sum=0;_ref1=number.split("").reverse();for(n=_j=0,_len1=_ref1.length;_j<_len1;n=++_j){digit=_ref1[n];digit=+digit;if(n%2){digit*=2;if(digit<10){sum+=digit}else{sum+=digit-9}}else{sum+=digit}} -return sum%10===0};is_valid_length=function(number,card_type){var _ref1;return _ref1=number.length,__indexOf.call(card_type.valid_length,_ref1)>=0};validate_number=function(_this){return function(number){var length_valid,luhn_valid;card_type=get_card_type(number);luhn_valid=!1;length_valid=!1;if(card_type!=null){luhn_valid=is_valid_luhn(number);length_valid=is_valid_length(number,card_type)} -return{card_type:card_type,valid:luhn_valid&&length_valid,luhn_valid:luhn_valid,length_valid:length_valid}}}(this);normalize=function(number){return number.replace(/[ -]/g,"")};validate=function(_this){return function(){return validate_number(normalize(input))}}(this);return validate(input)}});riot.tag("rg-date",'
'+' '+'
'+' '+'
{opts.date.date.format(yearFormat)}
'+' '+' '+'
{opts.date.date.format(monthFormat)}
'+' '+'
Mo
Tu
We
'+'
Th
Fr
'+'
Sa
Su
'+' '+' '+' '+' '+'
','rg-date .container,[riot-tag="rg-date"] .container,[data-is="rg-date"] .container{ position: relative; display: inline-block; cursor: pointer; }'+' rg-date .c-calendar,[riot-tag="rg-date"] .c-calendar,[data-is="rg-date"] .c-calendar{ position: absolute; min-width: 300px; margin-top: .5em; left: 0; }',"",function(opts){var _this=this;var callbackUsed=!1;var toMoment=function toMoment(d){if(!moment.isMoment(d))d=moment(d);if(d.isValid())return d;return moment()};var handleClickOutside=function handleClickOutside(e){if(!_this.root.contains(e.target))_this.close();_this.update()};var dayObj=function dayObj(dayDate){var dateObj=dayDate||moment();return{date:dateObj,selected:opts.date.date.isSame(dayDate,"day"),today:moment().isSame(dayDate,"day"),disabled:opts.date.min&&opts.date.min.isAfter(dayDate)||opts.date.max&&opts.date.max.isBefore(dayDate)}};var buildCalendar=function buildCalendar(){_this.format="ddd D MMM YYYY";_this.yearFormat="YYYY";_this.monthFormat="MMMM";_this.dayFormat="D";_this.days=[];_this.startBuffer=[];_this.endBuffer=[];var begin=moment(opts.date.date).startOf("month");var daysInMonth=moment(opts.date.date).daysInMonth();var end=moment(opts.date.date).endOf("month");for(var i=begin.isoWeekday()-1;i>0;i-=1){var d=moment(begin).subtract(i,"days");_this.startBuffer.push(dayObj(d))} -for(var i=0;i
'+'
'+'
'+'
'+'

{opts.drawer.header}'+'
{opts.drawer.subheading}
'+'

'+'
'+'
  • {text}
'+'
'+'
'+'
',"","",function(opts){var _this=this;this.on("before-mount",function(){if(!opts.drawer){opts.drawer={header:"Notice",subheading:undefined,position:"top",isvisible:!0,footer:[]}} -if(!opts.drawer.footer){footer:[]} -if(opts.header) -opts.drawer.header=opts.header;if(opts.subheading) -opts.drawer.subheading=opts.subheading;if(opts.position) -opts.drawer.position=opts.position}) -this.close=function(){opts.drawer.isvisible=!1;_this.trigger('close')};this.select=function(e){opts.drawer.items.forEach(function(item){return item.active=!1});e.item.active=!0;_this.trigger("select",e.item)}});riot.tag("rg-ga","","","",function(opts){(function(i,s,o,g,r,a,m){i.GoogleAnalyticsObject=r;i[r]=i[r]||function(){(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date;a=s.createElement(o),m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)})(window,document,"script","//www.google-analytics.com/analytics.js","ga");ga("create",opts.property,"auto");ga("send","pageview")});riot.tag2("rg-iframify",'
','rg-iframify .iframify,[riot-tag="rg-iframify"] .iframify,[data-is="rg-iframify"] .iframify{ margin: 0; padding: 0; }'+' rg-iframify iframe,[riot-tag="rg-iframify"] iframe,[data-is="rg-iframify"] iframe{ position: relative; width: 100%; border: 0; }',"",function(opts){var _this=this;this.on("mount",function(){iframify(_this.root.querySelector(".frame"),_this.opts)})});riot.tag("rg-include","
{responseText}
","","",function(opts){var _this=this;var fetch=function fetch(){var req=new XMLHttpRequest;req.onload=function(resp){if(opts.unsafe)_this.root.innerHTML=req.responseText;else _this.responseText=req.responseText;_this.update();_this.trigger("loaded")};req.open("get",opts.url,!0);req.send();_this.trigger("loading")};this.on("mount",function(){fetch()})});riot.tag("rg-map",'
','rg-map .rg-map,[riot-tag="rg-map"] .rg-map,[data-is="rg-map"] .rg-map{ margin: 0; padding: 0; width: 100%; height: 100%; } rg-map .rg-map img,[riot-tag="rg-map"] .rg-map img,[data-is="rg-map"] .rg-map img{ max-width: inherit; }',"",function(opts){var _this=this;var _script_id="rg_map_script_unqiue";window.rg=window.rg||{};window.rg.gmap=riot.observable({initialize:function initialize(){window.rg.gmap.trigger("initialize")}});this.on("before-mount",function(){if(!opts.map) -opts.map={center:{lat:(opts.lat?Number(opts.lat):-34.397),lng:(opts.lng?Number(opts.lng):50.644)},zoom:7} -if(!opts.id) -opts.id="rg_map_id_"+Date.now();if(opts.apikey&&!opts.map.apikey) -opts.map.apikey=opts.apikey;if(opts.lat&&opts.map&&opts.map.center.lat) -opts.map.center.lat=(opts.lat?Number(opts.lat):opts.map.center.lat);if(opts.lng&&opts.map&&opts.map.center.lng) -opts.map.center.lng=(opts.lng?Number(opts.lng):opts.map.center.lng);if(opts.zoom&&opts.map) -opts.map.zoom=(opts.zoom?Number(opts.zoom):(opts.map.zoom?opts.map.zoom:8));if(opts.type&&opts.map) -opts.map.mapTypeId=(opts.type?opts.type:(opts.map.mapTypeId?opts.map.mapTypeId:"roadmap"));if(opts.tilt&&opts.map) -opts.map.tilt=(opts.tilt?Number(opts.tilt):(opts.map.tilt?opts.map.tilt:45));if(opts.heading&&opts.map) -opts.map.heading=(opts.heading?Number(opts.heading):(opts.map.heading?opts.map.heading:90))});this.on("mount",function(){rg.gmap.on("initialize",function(){e1=_this.root.querySelector(".rg-map");e2=_this.refs[0];opts.map.mapObj=new google.maps.Map(e1,opts.map);_this.trigger("loaded",opts.map.mapObj)});if(!document.getElementById(_script_id)){var script=document.createElement("script");script.setAttribute("id",_script_id);script.type="text/javascript";script.src="https://maps.googleapis.com/maps/api/js?key="+opts.apikey+"&callback=window.rg.gmap.initialize";document.body.appendChild(script)}})});riot.tag("rg-markdown","","","",function(opts){var _this=this;var md;var callback=function callback(){if(markdownit){} -if(!opts.markdown)opts.markdown={};if(opts.markdown.content){md=markdownit({html:!0,linkify:!0,typographer:!0});_this.root.innerHTML=md.render(opts.markdown.content)}else if(opts.markdown.url){(function(){var req=new XMLHttpRequest;req.onload=function(resp){_this.root.innerHTML=md.render(req.responseText);_this.trigger("loaded")};req.open("get",opts.markdown.url,!0);req.send();_this.trigger("loading")})()}} -this.on("before-mount",function(){if(!opts.markdown){opts.markdown={content:(opts.content?opts.content:"")}} -if(opts.content){opts.markdown.content=opts.content} -if(this.__.innerHTML) -opts.markdown.content=this.__.innerHTML});this.on("mount",function(){if(typeof markdownit==="undefined") -loadJS(rg_markdown_cdn_markdown,callback);else callback()})});riot.tag("rg-modal",'
'+'
'+'
'+'
'+'
'+''+'

{opts.modal.heading}

'+'
'+'
'+''+'
'+'
'+'
'+''+'
'+'
'+'
'+'
','rg-modal .o-modal--ghost .o-modal__footer .c-button,[riot-tag="rg-modal"] .o-modal--ghost .c-card__footer'+' .c-button,[data-is="rg-modal"] .o-modal--ghost .c-card__footer .c-button{ margin: 0 .5em 0 0; }',"",function(opts){var _this=this;this.on("before-mount",function(){if(!opts.modal) -opts.modal={isvisible:!0,dismissable:!0,full:!1,ghost:!1,heading:(opts.heading?opts.heading:'Note'),buttons:[{text:'Close',type:'brand',action:function(){this.close()}}],blockbuttons:!0}});this.close=function(){if(opts.modal.dismissable){opts.modal.isvisible=!1;_this.trigger("close")}}});riot.tag("rg-pagination",'
'+'
'+' '+' '+'
'+'
'+' '+' '+' '+' '+' …'+' '+'
'+'
'+' '+' '+'
'+'
',"","",function(opts){var _this=this;this.on("before-mount",function(){if(!opts.pagination){pagination={pages:10,page:1}} -if(opts.page&&opts.pages){opts.page=Number(opts.page);opts.pages=Number(opts.pages);if(opts.page>opts.pages) -opts.page=opts.pages} -if(opts.page) -opts.pagination.page=Number(opts.page);if(opts.pages) -opts.pagination.pages=Number(opts.pages)});this.on("page",function(){var btns=_this.root.querySelectorAll("button");for(var i=0;i
','rg-phone-sim .emulator,[riot-tag="rg-phone-sim"] .emulator,[data-is="rg-phone-sim"] .emulator{ position: relative; width: 365px; height: 792px; background-image:'+'url(\'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAW0AAAMYCAMAAAA3r0ZLAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAwBQTFRFMDk6+vr6KTM0lJucMz4/PklKJS8wLTg5Qk1O'+'xsjILzo7gomJ2NvbdH5/ho2O9fb2KzY3ztHRPEdIOkVGZWxtjJSVOEJDkpeYWGRluL2+KTQ1vcHBoaWlPUZHcnp6nKKjOkRF1NfXqa2tp62tZnBxanV2VmFiZ29wVl1eaXJzbXR04uTktbq7QElK1tnZipKTi5CRTlZXpKioo'+'6mqXmlqUVlaOEFCSVFSUFxdISssT1tcTlpbJC4vIiwtTVlaJjAxIy0uTFhZS1dYJzEyKDIzSlZXPUhJOURFO0ZHSVVWKzU2P0pLKjQ1OENEND0+QEtMLDY3SFRVN0JDQ05PLTc4ND9ANUBBQUxNNkFCR1NUMTo7RE9QLjg5'+'N0BBR1JTRlJTLzk6RVFSMjs8RVBRRlFSNj9AMzw9SFNUMj0+IissMTs8MDo7SVRVRFBRMDs8MTw9IiwsMz0+Mjw9SlVWQ09QLjk6NT4/S1ZXND4/JC4uQU1OIy0tQk5PTFdYTVhZQExNTllaJS8vJzIyP0tMLzg5LDc4KDMzNT'+'9AKjU1N0FCNkBBJjAwIywtMDs7Mj09NkFBJjExLjk5LDc3N0JCNUBAKjU2MTw8LDU2Ljc4OUNEKDEyQU1NPEhIPEhJO0dHOkZGND8/Qk5ORFBQQ09PLTY3OUREPkpKPkpLPUlJT1pbP0tLJTAwPUlKJzAxKjM07u/vKTIzsbW2YGprtLm'+'50tXWPkhJo6endn+A3d/f6uvreoOEg4yN2tvc/Pz8n6am8/T0VFtcm6CgJS4v4OLi5ufnYGdncnt8dHp7gYaHJC0uu8DAjJGRQkxNxMfHKzQ1YGtsS1NUaXN0bnh5yMzMyszMy83Oy8/PdoCAKDIy7O3tT1dYuLu70NTUbXd46Onq6erreoC'+'A2dzc8PHx8vPz5OXlnaSkn6Wmqq6ucHZ2t7y8o6eoeoSEkJaWm5+gW2ZnZG5vqa+wOEFB09bWtru7qrCwcXd4t7u83eDgzM7O7/DwNT4+7e7uwMPDwcPEeH5/////70wnUQAAAQB0Uk5T'+'//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////'+'//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////'+'AFP3ByUAAA+NSURBVHja7N13nBTlGcDxEQI5AmJQBAkcnqhEDIhoWMt5iogmQbOaYNrqYrJh16gplmTVkILJpYCmF+DSE1JIcjRR7L333ntPYjQxvTl55tnr7N7t7uw+vDP3+/0x3G3hs5+vr++8M7s7eH75Xb5x+rOjN017aeq+tO++U'+'1+atmn0s9M3Xl6BoFfm466ZOPROhIt259CJ19RS++7LdgW133a97O7aaI/a+VE0y+jRnUeF1p6wqfvvaz6+YVjT0jMyJ3rkeSdmzljaNKzh+OZuoE0TQmmvv67zLzrwmMY8wkXLNx5zYCfTdeur1p6wdeegblgKar8tbegc4lv/rirtjTMLT99'+'/UVMKzgFLNS3avwA2c2Pl2n8tPHV1QxLJMks2rC6g/alC7ScvKozrhhyIFZRrKIzvi56sRHt94b/RIsZ1xeN7UYFuffna4/UJB68Er4rGHax648vUfmqkPnxBBrmqyixQv5FPlaP9Dz2eWdIEW9U1LdFjnQsG1n5ETz4dyowdavY+VE9XPTKQ9phddP'+'fICjvk6lt3lruM6V97j132l26BK3S3BJAv79Gf9jN3BY85HKsadHhAedebSmtf+ofgEcOQqknDAsyLLi2pPTq4/0icatSRAefoUto7Bvc2oFSzGgLQHYtr3xTct5DVSA1XJgsD0puKaa99s9wzlwPImh5WzhXTl/5TRHt7uaN5GUI1bVmzqL64ufZfgkF/GD'+'417rCA9e99tf8VzCPHoVPzjhPXaVv10d5bblzCyZE6nDIJ5pKde2u/Egz487Cp1zHlHr20h8otp50ETT2WgaeL7dCe2vcF/uOQqUsrA9z7emgHQ3thdEZLLpeL0kHYwq7BrdqjAv2ofEAnlU0EZaPjvTTgHdWlvXeEhnYu0VkuUoN7707tbW6X35oiciyc6C4y'+'ZxmaxPf2bTq0z5VfTo/IC8/20M5GZnAHy5JzO7Tvj85bCKlEzyIzdQdvLNxf0L4wmMQjMgnmemlHZubOBcQXqvb0CO0jk720o3OmIdhPTlft4FTrth5ju55tK8bbq/YG+emUiLzqTC/t6Lz1cYoYbwi0r47QisTz0j2w0xE6ngxWJVeLdrD+WxCZVx3J9ba0QNeAnj'+'9T/twuOi87GcF9pLSdKM8U7Q2rV6+O0jcQMoXJJB2t96tzorzB99Y2NzfPjdQL9zLJZDJynw2YK85rvZ1ku9Cjuq+4xXknb4Js+XxU/WsQ5wnec7LlDcn6d544P+ddLFu+zlT/Vorzxd5k2fIJqfq3TJwney/Lls+RGBwniPPL3g6y5aOWBstWcd7BmypbLjhS/1Li'+'PNWTTTMWBik02mijTWijTWijjTbFVTuZTqSTRW8OUzqJdpGyxT89mU2ELYv25kO4+LvnyUT4kmj3LV38YzjpGmin3dReIm2pF9BlU+LmMDmnrdBbUntQje0trj2o5m2FPlBiTWKQQm9R7cG03nZAexCFNtpoE9poE9poo01oo01oo01oo4021VT7MxIUBik02mijTeG1D'+'5agMEih0UYbbUIbbUIbbbQJbbQJbbQJbbTRplppf1qCwiCFRhtttCm89lwJCoMUGm200Sa00Sa00Uab0Eab0Eab0EY73tqnS1AYpNBoo402hdc+VILCIIVGG220CW20CW200Sa00Sa00aYC9GkSFAYpNNpoo01oR0v7bRIUBik02mijTWijTWijjTahjTah7bL2hyUoDFJot'+'NFGm9BGm0ppv0OCwiCFRhtttAlttAlttNEmtOOhfbwEhUEKjTbaaBPaaBPaLmi/T4LCIIVGG220CW20CW200ab6aS+UoDBIodFGG21CG21C2wXt4yQoDFJotNFGm9BGm9BGe7BpL5KgMEih0UYbbUIbbULbBe0PSFAYpNBoo402oY02oY32YNP+oASFQQqNNtpoE9poE9poDzbtj'+'0hQGKTQaKONNqGNNpXS/qkEhUEKfYwEhUEKjTbaaBPaaBPaaA827Y9LUBik0GijjTahHS3tn0lQGKTQCyQoDFJotNFGm9BGm9BGG22qn/anJCgMUmi00Uabwmv/RILCIIVukKAwSKHRRhttQhttQhtttKl+2p+UoDBIodFGG20Kr/09CQqDFPo9EhQGKTTaaKNNaKNNaKONNtVP+7'+'MSFAYpNNpoo03htY+UoDBIodFGG21CG21CG220Ce14aH9egsIghUYb7bhq/1qCwiCFPlyCwiCFRhtttAlttAlttNEmtNGmSrV/KUFhkEL/QoLCIIUeJkFhkEKjjTbahDbahDbaaBPaaFOl2r+VoDBIoX8lQWGQQh8mQWGQQqONNtqENtqENtpoE9poE9oua/9AgsIghf6+BIVBCr2tBIV'+'BCo022mgT2mgT2mijTWijTWi7rP1DCQqDFPqtEhQGKTTaaKNNaKNNaKONNqGNNqHtsvaPJCgMUujtJCgMUmi00Uab0Eab0EYbbUIbbUIbbSpAv0WCwiCFRhtttAlttAlttNEmtNEmtF3W/rkEhUEKvVKCwiCFfrsEhUEKjTbaaBPaaBPaaKNNaKNNaLusPU6CwiCFfqcEhUEKjTbaaBPaa'+'BPaaKNNaMdD+1sSFAYpNNqW2kslKAxSaLQttd8rQWGQQqONNtqENtqENtpoU/20vyZBYZBCo22pvUyCwiCFRttS+90SFAYpNNpoo01oo01oo4021U/72xIUBik02pbaX5KgMEih0UY7rtrvkqAwSKHRRhttQhttQhtttKl+2j+WoDBIoc+QoDBIodFGG20Kr/0aCQqDFBpttNEmtNEmtNF'+'Gm+qnfYoEhUEKjTbaaBPa0dL+kASFQQqNNtpoE9poE9ouaH9VgsIghUbbUvtUCQqDFBpttNEmtKOl/TEJCoMUGm200Sa00aZS2t+VoDBIodG21D5RgsIghUYbbbQJbbSplPZHJSgMUmi00Uab0EabSml/RYLCIIVG21L7JAkKgxQabbTRJrTRplLar5OgMEih0UYbbUIbbULbBe33S1AYpNB'+'oo402oY02oY32YNP+hASFQQqNNtpoE9rR0v6GBIVBCo22pfaxEhQGKTTaaKNNaKNNaKM92LRfK0FhkEKjjTbahDbaVEr7aAkKgxQabbTRJrTRJrTRRpvqp/0FCQqDFBpttOOq/U0JCoMUGm1L7aMkKAxSaLTRRpvQRpvQRhttQjse2q+XoDBIodFGG21CO1ra8yUoDFJotNFGm9BGm9BGG21'+'CG22qVPs7EhQGKTTaltpflqAwSKHRRjuu2kdIUBik0GijjTahjTahjTbahDbaVKn2GyQoDFJotNFGm8JrD5GgMEih0UYbbUIbbUIbbbQJbbQJbbSpAP1FCQqDFBpttNGm8NrzJCgMUmi00Uab0Eab0EYbbUIbbUIbbULbXvtzEhQGKTTaaMdV+xAJCoMUGm200Sa00Sa00Uab0Eab0Eab'+'0EY73tpfl6AwSKHRttQ+SILCIIVGG220CW20CW200Sa00Sa00Sa00UabaqV9tgSFQQqNtqX2byQoDFLo4RIUBik02mijTWijTWijjTahjTahjTZFVTuVymQyqRTa9S6TzGcTnaWz+VwK7TqVyyc2L5tMoV376SOZTpQom4uO9lmS+9b5RH+lo+Ct0FHQTiYGKptCu0a7xj5zSDqdzmbT'+'fSeWZCS0D5AiM7DT+Vyme3rJJLMRGt4K7bp2D9B8psjOs8f9GbRD7h67MUst9TLdD8mhHQq7a3bO9zNP5CIxebuvnS5v1HYvEHNoh56z8wPuAHPuz92ua+crmB+6uFNoV3depKLJuPPRabSr2kNWuOfrfHwe7eon7WTF/y9k0K52HslW/pQ02tUu/ira6SVdXnW7rJ2sav2cdnhwu6ydrnge'+'0aN4hwe3w9q5Knd4eXcHt8Pa2SoXcxl3lyXuaqeqRss7u+Z2VztZ1azdY3C7qn2m5OhEUtUJvbSrU4lCO6kd4gRT3tVVibPamaonknDPHZzayTDj09WJW6HnSK69sHyY92HSjp7mVmgXtbNh9nRZR3eTzmqHGp55R9+gRBvtsDu6pKNLQLTRRjt687aj2kfJppW9ZN1rFeflau6adhzX2606'+'hzTKdgXHknXvWHFu9GbJ9mjOk9S9o8V5lje2MJ84VRzPAS4X57HeaNmucXMJGKvz22vEebQ3RbbzXHtpMXzvZp44T/Huka1zl82N4fuSB4nzPd7jsnXubeAYvud+gDg/7vnjHFxwx+/zJMFye5zv+bvLn/Nde3Gx+6zUfFHeXbQnLV68+AHnXl3cPgf4gChPEu1R8qd7372O22dczxLlUaLt/1'+'l+aHV0cMfl89utYvxvP9B+QX66zbnXF6/vJtwmxrur9vnyk4MX84/V927O1mk70H7mHMm9qSRO3ylrDYifUW3/CvlxjefqXBKH70uuEeEr/IL2pJaWFhe/DVLVd4Gd/P7eASI8qUP76YT8stzBF1nF99ydvKzAcvFNPN2h7d8sv7l44bRUxddwcPPLe8PF92a/U3uM/NayymnuKF+fZFXAO6Z'+'L23/C0cEdj2vvBEP7Cb9be2KLozN3HK4rFczaLRN7aPuvOros8WJwzbRgQfKq31N7ROC/xs1Xu/n1ALNRuh7gkID23l7a/p5y05xjPfeHd9Sudblijsi+6PfWvjApNzr7z3pG+DquB4nrjG36aPu/d3gu8aJ7jeI1Aetefl9t/wVXF91dy+piAzzt9vW3dan9N39z7cdODdYlrS6/9shdW741'+'WI+c+lgRbf/5FlePcfpMKtH5dxOC45qW5/1i2v7I4L42j2pVWwA60i+u7Y8N7l2HUo1aF3CO9Utpb7VbcP8QnGp3WLPbViW1/Uv2gbum2Ptc4pfW9v/ZGDxmHlahmxdANt7r96ft/0+521vhCrf0a1fs//r9a/u3zjhZumoFYmFOjlwVIM641R9I239ldvDIxcsxq7rliwPC2a/4A2v7D14bPPbk'+'NmaTKmeRNvW79kG/HG3fn6wPP5PhXdXAPlP1JheDLartX6lPOPlsZu+KZ+z2At2Vfvna/pjdTtCYTiqcRApsV6z3K9H2/fGF553Txvgue1y3nVNAG18KtaS2P2Ja4akntDN/lzVft3d4vXGEX7m27+81q+P5N7atQrPfVrXd2GE1a69+RPvTlr3lHft11NJ+BFNKiQnkiPaWTqY7/tivZ//av'+'n/+7P26ahl+yJD5q1a0sufUPWLrilXzhxwyvKUbaPb5A2gOpC3z956N+9HANe05YkDLgbWlh0fOQLPfZox8uBzIsrSlC6Zcj3gJ6eunXFCmYrnaQWtHTLph7EONresQlta1Nj409oZJI9ZWIPh/AQYA2whzWlA9R/cAAAAASUVORK5CYII=\');'+' background-repeat: no-repeat; background-position: center; background-size: cover; } rg-phone-sim .screen,[riot-tag="rg-phone-sim"] .screen,[data-is="rg-phone-sim"] .screen{ position: absolute; top: 105px; left: 22px; background-color: white; width: 320px; height: 568px; border: 0; }',"",function(opts){this.on("before-mount",function(){if(!opts.phonesim) -opts.phonesim={url:undefined} -if(opts.url) -opts.phonesim.url=opts.url})});riot.tag("rg-placeholdit",'',"","",function(opts){this.on("before-mount",function(){if(!opts.placeholdit)opts.placeholdit={};opts.placeholdit.width=opts.placeholdit.width||450;opts.placeholdit.height=opts.placeholdit.height||250;opts.placeholdit.background=opts.placeholdit.background||"000";opts.placeholdit.color=opts.placeholdit.color||"fff";opts.placeholdit.text=opts.placeholdit.text||opts.placeholdit.width+" x "+opts.placeholdit.height;opts.placeholdit.textsize=opts.placeholdit.textsize||30;opts.placeholdit.format=opts.placeholdit.format||"png" -if(opts.width) -opts.placeholdit.width=Number(opts.width);if(opts.height) -opts.placeholdit.height=Number(opts.height);if(opts.background) -opts.placeholdit.background=opts.background;if(opts.color) -opts.placeholdit.color=opts.color;if(opts.text) -opts.placeholdit.text=opts.text;if(opts.textsize) -opts.placeholdit.textsize=Number(opts.textsize);if(opts.format) -opts.placeholdit.text=opts.format})});riot.tag2("rg-raw","","","",function(opts){this.on("mount update",function(){this.root.innerHTML=opts.content||""})});riot.tag("rg-select",''+'
    '+'
  • {text}'+'
  • '+'
','rg-select .c-card--menu,[riot-tag="rg-select"] .c-card--menu,[data-is="rg-select"] .c-card--menu{ position: relative; }',"",function(opts){var _this=this;if(!opts.select)opts.select={options:[]};var handleClickOutside=function handleClickOutside(e){if(!_this.root.contains(e.target))_this.close();_this.update()};var applyFieldText=function applyFieldText(){for(var i=0;i-1});_this.trigger("filter",_this.refs.selectfield.value)};function getWindowDimensions(){var w=window,d=document,e=d.documentElement,g=d.getElementsByTagName("body")[0],x=w.innerWidth||e.clientWidth||g.clientWidth,y=w.innerHeight||e.clientHeight||g.clientHeight;return{width:x,height:y}};var positionDropdown=function positionDropdown(){var w=getWindowDimensions();var m=_this.root.querySelector(".c-card--menu");if(!m)return;if(!opts.select.isvisible){m.style.marginTop="";m.style.marginLeft="";return};var pos=m.getBoundingClientRect();if(w.width-1&&!opts.select.isvisible){e.preventDefault();_this.open();return!0} -var length=_this.options.length;if(length>0&&[13,38,40].indexOf(e.keyCode)>-1){e.preventDefault();var activeIndex=null;for(var i=0;i'+'
'+'
{heading}'+'
'+'
'+'
'+'
{text}
{include.responseText}'+'
'+'
'+'
',"","",function(opts){var _this=this;var fetch=function fetch(tab){var req=new XMLHttpRequest;req.onload=function(resp){var activeTab=_this.root.querySelector(".c-tabs__tab--active");if(activeTab)activeTab.innerHTML=req.responseText;_this.trigger("loaded",tab)};req.open("get",tab.include,!0);req.send();_this.trigger("loading",tab)};this.open=function(e){var tab=e.item;if(!tab.disabled&&!tab.active){opts.tabs.tabs.forEach(function(tab){tab.active=!1});_this.trigger("open",tab);tab.active=!0}};this.on("before-mount",function(){if(!opts.tabs) -opts.tabs={type:'default',tabs:[]};if(opts.type) -opts.tabs.type=opts.type});this.on("update",function(){if(!opts.tabs)opts.tabs={};if(!Array.isArray(opts.tabs.tabs))return;opts.tabs.tabs.forEach(function(tab){if(!tab.disabled&&tab.active&&tab.include){fetch(tab)}})})});riot.tag("rg-tags",'
'+' '+' '+' '+'
'+' '+'
    '+'
  • {text}'+'
  • '+'
'+'
'+'
','rg-tags .c-card--menu,[riot-tag="rg-tags"] .c-card--menu,[data-is="rg-tags"] .c-card--menu{ position: relative; }',"",function(opts){var _this=this;if(!opts.tags)opts.tags={options:[],tags:[]} -else{if(!opts.tags.type) -opts.tags.type="default"} -if(!opts.tags.options)opts.tags.options=[];if(!opts.tags.tags)opts.tags.tags=[];if(opts.type) -opts.tags.type=opts.type;if(opts.placeholder) -opts.tags.placeholder=opts.placeholder;if(opts.filter) -if(typeof opts.filter==="boolean"||typeof opts.filter==="string") -if(opts.filter==="true"||Boolean(opts.filter)===!0) -if(opts.filter==="true") -opts.tags.filter="text";else opts.tags.filter=undefined;var defType=opts.tags.type;for(i=0;i-1});_this.trigger("filter",_this.refs.selectfield.value)};function getWindowDimensions(){var w=window,d=document,e=d.documentElement,g=d.getElementsByTagName("body")[0],x=w.innerWidth||e.clientWidth||g.clientWidth,y=w.innerHeight||e.clientHeight||g.clientHeight;return{width:x,height:y}} -var positionDropdown=function positionDropdown(){var w=getWindowDimensions();var m=_this.root.querySelector(".c-card--menu");if(!m)return;if(!opts.tags.isvisible){m.style.marginTop="";m.style.marginLeft="";return} -var pos=m.getBoundingClientRect();if(w.width-1&&!opts.tags.isvisible){e.preventDefault();_this.open();return!0} -var length=_this.options.length;if(length>0&&[13,38,40].indexOf(e.keyCode)>-1){e.preventDefault();var activeIndex=null;for(var i=0;i'+'
{text}
'+'
',"","",function(opts){var _this=this;this.toastClicked=function(e){var toast=e.item;window.clearTimeout(toast.timer);toast.isvisible=!1;_this.trigger("select",toast)};var _uid=1;var uid=function uid(){return _uid++};this.on("mount",function(){if(!opts.toasts||!Array.isArray(opts.toasts.toasts))return;opts.toasts.position=opts.toasts.position||"bottomright";opts.toasts.toasts.forEach(function(toast){if(typeof toast.isvisible=="undefined")toast.isvisible=!0;toast.id=toast.id||uid();if(!toast.timer&&!toast.sticky){toast.startTimer=function(){toast.timer=window.setTimeout(function(){toast.isvisible=!1;_this.trigger("close",toast);_this.update()},toast.timeout||6e3)};toast.startTimer()}});opts.toasts.isvisible=opts.toasts.toasts.filter(function(toast){return toast.isvisible}).length>0})});riot.tag2("rg-toggle",'
',"","",function(opts){var _this=this;this.on("mount",function(){if(!opts.toggle)opts.toggle={checked:!1}});this.toggle=function(){opts.toggle.checked=!opts.toggle.checked;_this.trigger("toggle",opts.toggle.checked)}});riot.tag2("rg-unsplash",'',"","",function(opts){var _this=this;this.on("update",function(){_this.options="";if(!opts.unsplash)opts.unsplash={};opts.unsplash.width=opts.unsplash.width||450;opts.unsplash.height=opts.unsplash.height||250;if(opts.unsplash.greyscale)opts.unsplash.greyscale="g/";if(opts.unsplash.random)_this.options+="random&";if(opts.unsplash.blur)_this.options+="blur&";if(opts.unsplash.image)_this.options+="image="+opts.unsplash.image+"&";if(typeof opts.unsplash.gravity!=="undefined")_this.options+="gravity="+opts.unsplash.gravity})}) +function loadJS(a,b){var c=document.createElement("script");c.type="application/javascript",c.src=a,c.onload=b,c.onreadystatechange=b,document.head.appendChild(c)}var rg_date_cdn_momentjs="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/moment.min.js",rg_credit_card_payment_fonts="https://cdnjs.cloudflare.com/ajax/libs/paymentfont/1.1.2/css/paymentfont.min.css",rg_markdown_cdn_markdown="https://cdnjs.cloudflare.com/ajax/libs/markdown-it/8.3.0/markdown-it.min.js";riot.tag("rg-alert",'
{opts.text}
',"","",function(a){var b=this;this.on("mount",function(){this.opts.dismissable?this.refs.closeButton.hidden=!1:this.refs.closeButton.hidden=!0,this.update()}),"string"==typeof a.dismissable&&(a.dismissable=Boolean(a.dismissable)),"boolean"!=typeof this.opts.dismissable&&(this.opts.dismissable=!0),"string"==typeof a.timeout&&(a.timeout=Number(a.timeout)),"number"==typeof a.timeout&&a.timeout>0&&(this.startTimer=function(){this.timer=setTimeout(function(){b.dismiss()},a.timeout)},this.startTimer()),this.dismiss=function(a){this.opts.timeout&&clearTimeout(this.startTimer),this.unmount()}}),riot.tag("rg-alerts",'
',"","",function(){}),riot.tag("rg-bubble",'
{opts.bubble.text}
','rg-bubble .context,[riot-tag="rg-bubble"] .context,[data-is="rg-bubble"] .context,rg-bubble .content,[riot-tag="rg-bubble"] .content,[data-is="rg-bubble"] .content{ display: inline-block; position: relative; } rg-bubble .c-bubble,[riot-tag="rg-bubble"] .c-bubble,[data-is="rg-bubble"] .c-bubble{ position: absolute; top: -70px; left: 50%; transform: translate3d(-50%, 0, 0); }',"",function(a){var b=this;this.showBubble=function(){clearTimeout(b._timer),b.isvisible=!0},this.hideBubble=function(){b._timer=setTimeout(function(){b.isvisible=!1,b.update()},1e3)},this.toggleBubble=function(){b.isvisible=!b.isvisible}}),riot.tag("rg-chart","",'rg-chart,[riot-tag="rg-chart"],[data-is="rg-chart"]{ display: inline-block; width: 100%; }',"",function(a){var b=this;Chart.defaults.global.responsive=!0,this.on("mount",function(){c()}),this.on("loaded",function(a){b.on("unmount",function(){a.destroy()})});var c=function(){a.chart||(a.chart={});var d=b.root.querySelector("canvas").getContext("2d"),e=new Chart(d),f=null;switch(a.chart.type){case"line":f=e.Line(a.chart.data,a.chart.options);break;case"radar":f=e.Radar(a.chart.data,a.chart.options);break;case"polar":f=e.PolarArea(a.chart.data,a.chart.options);break;case"pie":f=e.Pie(a.chart.data,a.chart.options);break;case"doughnut":f=e.Doughnut(a.chart.data,a.chart.options);break;default:f=e.Bar(a.chart.data,a.chart.options)}b.trigger("loaded",f)}}),riot.tag2("rg-code",'
','rg-code .editor,[riot-tag="rg-code"] .editor,[data-is="rg-code"] .editor{ position: absolute; top: 0; right: 0; bottom: 0; left: 0; }',"",function(a){var b=this;a.editor||(a.editor={code:""});var c=void 0,d=function(){c.setTheme("ace/theme/"+(a.editor.theme||"monokai")),c.getSession().setMode("ace/mode/"+(a.editor.mode||"html")),c.getSession().setTabSize(a.editor.tabsize||2),c.getSession().setUseSoftTabs(a.editor.softtabs),c.getSession().setUseWrapMode(a.editor.wordwrap),c.setReadOnly(a.editor.readonly)};this.on("mount",function(){if(c=ace.edit(b.root.querySelector(".editor")),c.$blockScrolling=1/0,b.on("update",function(b){d(),a.editor.code!=c.getValue()&&c.setValue(a.editor.code,1)}),a.url){var e=new XMLHttpRequest;e.onload=function(c){a.editor.code=c,b.update()},e.open("get",a.url,!0),e.send()}c.setValue(a.editor.code,1),c.getSession().on("change",function(d){a.editor.code=c.getValue(),b.trigger("onchange",c.getValue())}),d(),b.update()})}),riot.tag("rg-credit-card-number",'','rg-credit-card-number .card-no,[riot-tag="rg-credit-card-number"] .card-no,[data-is="rg-credit-card-number"] .card-no{ padding-right: 60px; background-repeat: no-repeat; background-position: right center; background-size: 60px; } rg-credit-card-number .amex,[riot-tag="rg-credit-card-number"] .amex,[data-is="rg-credit-card-number"] .amex{ background-image: url(img/amex.png); } rg-credit-card-number .diners_club,[riot-tag="rg-credit-card-number"] .diners_club,[data-is="rg-credit-card-number"] .diners_club{ background-image: url(img/diners_club.png); } rg-credit-card-number .discover,[riot-tag="rg-credit-card-number"] .discover,[data-is="rg-credit-card-number"] .discover{ background-image: url(img/discover.png); } rg-credit-card-number .jcb,[riot-tag="rg-credit-card-number"] .jcb,[data-is="rg-credit-card-number"] .jcb{ background-image: url(img/jcb.png); } rg-credit-card-number .mastercard,[riot-tag="rg-credit-card-number"] .mastercard,[data-is="rg-credit-card-number"] .mastercard{ background-image: url(img/mastercard.png); } rg-credit-card-number .visa,[riot-tag="rg-credit-card-number"] .visa,[data-is="rg-credit-card-number"] .visa{ background-image: url(img/visa.png); }',"",function(a){function c(a){var c,d,e,f,g,h,i,j,k,l,m,n,b=[].indexOf||function(a){for(var b=0,c=this.length;b=0&&g.push(c);return g}(),f=0,g=h.length;f=0},k=function(a){return function(a){var b,c;return d=f(a),c=!1,b=!1,null!=d&&(c=h(a),b=g(a,d)),{card_type:d,valid:c&&b,luhn_valid:c,length_valid:b}}}(this),i=function(a){return a.replace(/[ -]/g,"")},(j=function(b){return function(){return k(i(a))}}(this))(a)}var b=this;this.on("update",function(){b.refs.cardinput.value!=a.cardnumber&&(b.refs.cardinput.value=a.cardnumber),b.validate()}),this.validate=function(){a.cardnumber=this.refs.cardinput.value;var d=c(a.cardnumber);a.valid=d.valid,b.icon=a.valid?d.card_type.name:""}}),riot.tag("rg-date",'
{opts.date.date.format(yearFormat)}
{opts.date.date.format(monthFormat)}
Mo
Tu
We
Th
Fr
Sa
Su
','rg-date .container,[riot-tag="rg-date"] .container,[data-is="rg-date"] .container{ position: relative; display: inline-block; cursor: pointer; } rg-date .c-calendar,[riot-tag="rg-date"] .c-calendar,[data-is="rg-date"] .c-calendar{ position: absolute; min-width: 300px; margin-top: .5em; left: 0; }',"",function(a){function i(){var a=window,b=document,c=b.documentElement,d=b.getElementsByTagName("body")[0],e=a.innerWidth||c.clientWidth||d.clientWidth,f=a.innerHeight||c.clientHeight||d.clientHeight;return{width:e,height:f}}var b=this,c=!1,d=function(b){return moment.isMoment(b)||(b=moment(b)),b.isValid()?b:moment()},e=function(c){b.root.contains(c.target)||b.close(),b.update()},f=function(c){var d=c||moment();return{date:d,selected:a.date.date.isSame(c,"day"),today:moment().isSame(c,"day"),disabled:a.date.min&&a.date.min.isAfter(c)||a.date.max&&a.date.max.isBefore(c)}},g=function(){b.format="ddd D MMM YYYY",b.yearFormat="YYYY",b.monthFormat="MMMM",b.dayFormat="D",b.days=[],b.startBuffer=[],b.endBuffer=[];for(var d=moment(a.date.date).startOf("month"),e=moment(a.date.date).daysInMonth(),g=moment(a.date.date).endOf("month"),h=d.isoWeekday()-1;h>0;h-=1){var i=moment(d).subtract(h,"days");b.startBuffer.push(f(i))}for(var h=0;h

{opts.drawer.header}
{opts.drawer.subheading}

  • {text}
',"","",function(a){var b=this;this.on("before-mount",function(){a.drawer||(a.drawer={header:"Notice",subheading:void 0,position:"top",isvisible:!0,footer:[]}),!a.drawer.footer,a.header&&(a.drawer.header=a.header),a.subheading&&(a.drawer.subheading=a.subheading),a.position&&(a.drawer.position=a.position)}),this.close=function(){a.drawer.isvisible=!1,b.trigger("close")},this.select=function(c){a.drawer.items.forEach(function(a){return a.active=!1}),c.item.active=!0,b.trigger("select",c.item)}}),riot.tag("rg-ga","","","",function(a){!function(a,b,c,d,e,f,g){a.GoogleAnalyticsObject=e,a[e]=a[e]||function(){(a[e].q=a[e].q||[]).push(arguments)},a[e].l=1*new Date,f=b.createElement(c),g=b.getElementsByTagName(c)[0],f.async=1,f.src=d,g.parentNode.insertBefore(f,g)}(window,document,"script","//www.google-analytics.com/analytics.js","ga"),ga("create",a.property,"auto"),ga("send","pageview")}),riot.tag2("rg-iframify",'
','rg-iframify .iframify,[riot-tag="rg-iframify"] .iframify,[data-is="rg-iframify"] .iframify{ margin: 0; padding: 0; } rg-iframify iframe,[riot-tag="rg-iframify"] iframe,[data-is="rg-iframify"] iframe{ position: relative; width: 100%; border: 0; }',"",function(a){var b=this;this.on("mount",function(){iframify(b.root.querySelector(".frame"),b.opts)})}),riot.tag("rg-include","
{responseText}
","","",function(a){var b=this,c=function(){var d=new XMLHttpRequest;d.onload=function(c){a.unsafe?b.root.innerHTML=d.responseText:b.responseText=d.responseText,b.update(),b.trigger("loaded")},d.open("get",a.url,!0),d.send(),b.trigger("loading")};this.on("mount",function(){c()})}),riot.tag("rg-map",'
','rg-map .rg-map,[riot-tag="rg-map"] .rg-map,[data-is="rg-map"] .rg-map{ margin: 0; padding: 0; width: 100%; height: 100%; } rg-map .rg-map img,[riot-tag="rg-map"] .rg-map img,[data-is="rg-map"] .rg-map img{ max-width: inherit; }',"",function(a){var b=this,c="rg_map_script_unqiue";window.rg=window.rg||{},window.rg.gmap=riot.observable({initialize:function(){window.rg.gmap.trigger("initialize")}}),this.on("before-mount",function(){a.map||(a.map={center:{lat:a.lat?Number(a.lat):-34.397,lng:a.lng?Number(a.lng):50.644},zoom:7}),a.id||(a.id="rg_map_id_"+Date.now()),a.apikey&&!a.map.apikey&&(a.map.apikey=a.apikey),a.lat&&a.map&&a.map.center.lat&&(a.map.center.lat=a.lat?Number(a.lat):a.map.center.lat),a.lng&&a.map&&a.map.center.lng&&(a.map.center.lng=a.lng?Number(a.lng):a.map.center.lng),a.zoom&&a.map&&(a.map.zoom=a.zoom?Number(a.zoom):a.map.zoom?a.map.zoom:8),a.type&&a.map&&(a.map.mapTypeId=a.type?a.type:a.map.mapTypeId?a.map.mapTypeId:"roadmap"),a.tilt&&a.map&&(a.map.tilt=a.tilt?Number(a.tilt):a.map.tilt?a.map.tilt:45),a.heading&&a.map&&(a.map.heading=a.heading?Number(a.heading):a.map.heading?a.map.heading:90)}),this.on("mount",function(){if(rg.gmap.on("initialize",function(){e1=b.root.querySelector(".rg-map"),e2=b.refs[0],a.map.mapObj=new google.maps.Map(e1,a.map),b.trigger("loaded",a.map.mapObj)}),!document.getElementById(c)){var d=document.createElement("script");d.setAttribute("id",c),d.type="text/javascript",d.src="https://maps.googleapis.com/maps/api/js?key="+a.apikey+"&callback=window.rg.gmap.initialize",document.body.appendChild(d)}})}),riot.tag("rg-markdown","","","",function(a){var c,b=this,d=function(){markdownit,a.markdown||(a.markdown={}),a.markdown.content?(c=markdownit({html:!0,linkify:!0,typographer:!0}),b.root.innerHTML=c.render(a.markdown.content)):a.markdown.url&&!function(){var d=new XMLHttpRequest;d.onload=function(a){b.root.innerHTML=c.render(d.responseText),b.trigger("loaded")},d.open("get",a.markdown.url,!0),d.send(),b.trigger("loading")}()};this.on("before-mount",function(){a.markdown||(a.markdown={content:a.content?a.content:""}),a.content&&(a.markdown.content=a.content),this.__.innerHTML&&(a.markdown.content=this.__.innerHTML)}),this.on("mount",function(){"undefined"==typeof markdownit?loadJS(rg_markdown_cdn_markdown,d):d()})}),riot.tag("rg-modal",'

{opts.modal.heading}

','rg-modal .o-modal--ghost .o-modal__footer .c-button,[riot-tag="rg-modal"] .o-modal--ghost .c-card__footer .c-button,[data-is="rg-modal"] .o-modal--ghost .c-card__footer .c-button{ margin: 0 .5em 0 0; }',"",function(a){var b=this;this.on("before-mount",function(){a.modal||(a.modal={isvisible:!0,dismissable:!0,full:!1,ghost:!1,heading:a.heading?a.heading:"Note",buttons:[{text:"Close",type:"brand",action:function(){this.close()}}],blockbuttons:!0})}),this.close=function(){a.modal.dismissable&&(a.modal.isvisible=!1,b.trigger("close"))}}),riot.tag("rg-pagination",'
',"","",function(a){var b=this;this.on("before-mount",function(){a.pagination||(pagination={pages:10,page:1}),a.page&&a.pages&&(a.page=Number(a.page),a.pages=Number(a.pages),a.page>a.pages&&(a.page=a.pages)),a.page&&(a.pagination.page=Number(a.page)),a.pages&&(a.pagination.pages=Number(a.pages))}),this.on("page",function(){for(var a=b.root.querySelectorAll("button"),c=0;c
','rg-phone-sim .emulator,[riot-tag="rg-phone-sim"] .emulator,[data-is="rg-phone-sim"] .emulator{ position: relative; width: 365px; height: 792px; background-image:url(\'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAW0AAAMYCAMAAAA3r0ZLAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAwBQTFRFMDk6+vr6KTM0lJucMz4/PklKJS8wLTg5Qk1OxsjILzo7gomJ2NvbdH5/ho2O9fb2KzY3ztHRPEdIOkVGZWxtjJSVOEJDkpeYWGRluL2+KTQ1vcHBoaWlPUZHcnp6nKKjOkRF1NfXqa2tp62tZnBxanV2VmFiZ29wVl1eaXJzbXR04uTktbq7QElK1tnZipKTi5CRTlZXpKioo6mqXmlqUVlaOEFCSVFSUFxdISssT1tcTlpbJC4vIiwtTVlaJjAxIy0uTFhZS1dYJzEyKDIzSlZXPUhJOURFO0ZHSVVWKzU2P0pLKjQ1OENEND0+QEtMLDY3SFRVN0JDQ05PLTc4ND9ANUBBQUxNNkFCR1NUMTo7RE9QLjg5N0BBR1JTRlJTLzk6RVFSMjs8RVBRRlFSNj9AMzw9SFNUMj0+IissMTs8MDo7SVRVRFBRMDs8MTw9IiwsMz0+Mjw9SlVWQ09QLjk6NT4/S1ZXND4/JC4uQU1OIy0tQk5PTFdYTVhZQExNTllaJS8vJzIyP0tMLzg5LDc4KDMzNT9AKjU1N0FCNkBBJjAwIywtMDs7Mj09NkFBJjExLjk5LDc3N0JCNUBAKjU2MTw8LDU2Ljc4OUNEKDEyQU1NPEhIPEhJO0dHOkZGND8/Qk5ORFBQQ09PLTY3OUREPkpKPkpLPUlJT1pbP0tLJTAwPUlKJzAxKjM07u/vKTIzsbW2YGprtLm50tXWPkhJo6endn+A3d/f6uvreoOEg4yN2tvc/Pz8n6am8/T0VFtcm6CgJS4v4OLi5ufnYGdncnt8dHp7gYaHJC0uu8DAjJGRQkxNxMfHKzQ1YGtsS1NUaXN0bnh5yMzMyszMy83Oy8/PdoCAKDIy7O3tT1dYuLu70NTUbXd46Onq6erreoCA2dzc8PHx8vPz5OXlnaSkn6Wmqq6ucHZ2t7y8o6eoeoSEkJaWm5+gW2ZnZG5vqa+wOEFB09bWtru7qrCwcXd4t7u83eDgzM7O7/DwNT4+7e7uwMPDwcPEeH5/////70wnUQAAAQB0Uk5T////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AFP3ByUAAA+NSURBVHja7N13nBTlGcDxEQI5AmJQBAkcnqhEDIhoWMt5iogmQbOaYNrqYrJh16gplmTVkILJpYCmF+DSE1JIcjRR7L333ntPYjQxvTl55tnr7N7t7uw+vDP3+/0x3G3hs5+vr++8M7s7eH75Xb5x+rOjN017aeq+tO++U1+atmn0s9M3Xl6BoFfm466ZOPROhIt259CJ19RS++7LdgW133a97O7aaI/a+VE0y+jRnUeF1p6wqfvvaz6+YVjT0jMyJ3rkeSdmzljaNKzh+OZuoE0TQmmvv67zLzrwmMY8wkXLNx5zYCfTdeur1p6wdeegblgKar8tbegc4lv/rirtjTMLT99/UVMKzgFLNS3avwA2c2Pl2n8tPHV1QxLJMks2rC6g/alC7ScvKozrhhyIFZRrKIzvi56sRHt94b/RIsZ1xeN7UYFuffna4/UJB68Er4rGHax648vUfmqkPnxBBrmqyixQv5FPlaP9Dz2eWdIEW9U1LdFjnQsG1n5ETz4dyowdavY+VE9XPTKQ9phddPfICjvk6lt3lruM6V97j132l26BK3S3BJAv79Gf9jN3BY85HKsadHhAedebSmtf+ofgEcOQqknDAsyLLi2pPTq4/0icatSRAefoUto7Bvc2oFSzGgLQHYtr3xTct5DVSA1XJgsD0puKaa99s9wzlwPImh5WzhXTl/5TRHt7uaN5GUI1bVmzqL64ufZfgkF/GD417rCA9e99tf8VzCPHoVPzjhPXaVv10d5bblzCyZE6nDIJ5pKde2u/Egz487Cp1zHlHr20h8otp50ETT2WgaeL7dCe2vcF/uOQqUsrA9z7emgHQ3thdEZLLpeL0kHYwq7BrdqjAv2ofEAnlU0EZaPjvTTgHdWlvXeEhnYu0VkuUoN7707tbW6X35oiciyc6C4yZxmaxPf2bTq0z5VfTo/IC8/20M5GZnAHy5JzO7Tvj85bCKlEzyIzdQdvLNxf0L4wmMQjMgnmemlHZubOBcQXqvb0CO0jk720o3OmIdhPTlft4FTrth5ju55tK8bbq/YG+emUiLzqTC/t6Lz1cYoYbwi0r47QisTz0j2w0xE6ngxWJVeLdrD+WxCZVx3J9ba0QNeAnj9T/twuOi87GcF9pLSdKM8U7Q2rV6+O0jcQMoXJJB2t96tzorzB99Y2NzfPjdQL9zLJZDJynw2YK85rvZ1ku9Cjuq+4xXknb4Js+XxU/WsQ5wnec7LlDcn6d544P+ddLFu+zlT/Vorzxd5k2fIJqfq3TJwney/Lls+RGBwniPPL3g6y5aOWBstWcd7BmypbLjhS/1LiPNWTTTMWBik02mijTWijTWijjTbFVTuZTqSTRW8OUzqJdpGyxT89mU2ELYv25kO4+LvnyUT4kmj3LV38YzjpGmin3dReIm2pF9BlU+LmMDmnrdBbUntQje0trj2o5m2FPlBiTWKQQm9R7cG03nZAexCFNtpoE9poE9poo01oo01oo01oo4021VT7MxIUBik02mijTeG1D5agMEih0UYbbUIbbUIbbbQJbbQJbbQJbbTRplppf1qCwiCFRhtttCm89lwJCoMUGm200Sa00Sa00Uab0Eab0Eab0EY73tqnS1AYpNBoo402hdc+VILCIIVGG220CW20CW200Sa00Sa00aYC9GkSFAYpNNpoo01oR0v7bRIUBik02mijTWijTWijjTahjTah7bL2hyUoDFJotNFGm9BGm0ppv0OCwiCFRhtttAlttAlttNEmtOOhfbwEhUEKjTbaaBPaaBPaLmi/T4LCIIVGG220CW20CW200ab6aS+UoDBIodFGG21CG21C2wXt4yQoDFJotNFGm9BGm9BGe7BpL5KgMEih0UYbbUIbbULbBe0PSFAYpNBoo402oY02oY32YNP+oASFQQqNNtpoE9poE9poDzbtj0hQGKTQaKONNqGNNpXS/qkEhUEKfYwEhUEKjTbaaBPaaBPaaA827Y9LUBik0GijjTahHS3tn0lQGKTQCyQoDFJotNFGm9BGm9BGG22qn/anJCgMUmi00Uabwmv/RILCIIVukKAwSKHRRhttQhttQhtttKl+2p+UoDBIodFGG20Kr/09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\'); background-repeat: no-repeat; background-position: center; background-size: cover; } rg-phone-sim .screen,[riot-tag="rg-phone-sim"] .screen,[data-is="rg-phone-sim"] .screen{ position: absolute; top: 105px; left: 22px; background-color: white; width: 320px; height: 568px; border: 0; }',"",function(a){this.on("before-mount",function(){a.phonesim||(a.phonesim={url:void 0}),a.url&&(a.phonesim.url=a.url)})}),riot.tag("rg-placeholdit",'',"","",function(a){this.on("before-mount",function(){a.placeholdit||(a.placeholdit={}),a.placeholdit.width=a.placeholdit.width||450,a.placeholdit.height=a.placeholdit.height||250,a.placeholdit.background=a.placeholdit.background||"000",a.placeholdit.color=a.placeholdit.color||"fff",a.placeholdit.text=a.placeholdit.text||a.placeholdit.width+" x "+a.placeholdit.height,a.placeholdit.textsize=a.placeholdit.textsize||30,a.placeholdit.format=a.placeholdit.format||"png",a.width&&(a.placeholdit.width=Number(a.width)),a.height&&(a.placeholdit.height=Number(a.height)),a.background&&(a.placeholdit.background=a.background),a.color&&(a.placeholdit.color=a.color),a.text&&(a.placeholdit.text=a.text),a.textsize&&(a.placeholdit.textsize=Number(a.textsize)),a.format&&(a.placeholdit.text=a.format)})}),riot.tag2("rg-raw","","","",function(a){this.on("mount update",function(){this.root.innerHTML=a.content||""})}),riot.tag("rg-select",'
  • {text}
','rg-select .c-card--menu,[riot-tag="rg-select"] .c-card--menu,[data-is="rg-select"] .c-card--menu{ position: relative; }',"",function(a){function e(){var a=window,b=document,c=b.documentElement,d=b.getElementsByTagName("body")[0],e=a.innerWidth||c.clientWidth||d.clientWidth,f=a.innerHeight||c.clientHeight||d.clientHeight;return{width:e,height:f}}var b=this;a.select||(a.select={options:[]});var c=function(c){b.root.contains(c.target)||b.close(),b.update()},d=function(){for(var d=0;d-1; +})),b.trigger("filter",b.refs.selectfield.value)};var f=function(){var d=e(),f=b.root.querySelector(".c-card--menu");if(f){if(!a.select.isvisible)return f.style.marginTop="",void(f.style.marginLeft="");var g=f.getBoundingClientRect();d.width-1&&!a.select.isvisible)return c.preventDefault(),b.open(),!0;var d=b.options.length;if(d>0&&[13,38,40].indexOf(c.keyCode)>-1){c.preventDefault();for(var e=null,f=0;f
{heading}
{text}
{include.responseText}
',"","",function(a){var b=this,c=function(c){var d=new XMLHttpRequest;d.onload=function(a){var e=b.root.querySelector(".c-tabs__tab--active");e&&(e.innerHTML=d.responseText),b.trigger("loaded",c)},d.open("get",c.include,!0),d.send(),b.trigger("loading",c)};this.open=function(c){var d=c.item;d.disabled||d.active||(a.tabs.tabs.forEach(function(a){a.active=!1}),b.trigger("open",d),d.active=!0)},this.on("before-mount",function(){a.tabs||(a.tabs={type:"default",tabs:[]}),a.type&&(a.tabs.type=a.type)}),this.on("update",function(){a.tabs||(a.tabs={}),Array.isArray(a.tabs.tabs)&&a.tabs.tabs.forEach(function(a){!a.disabled&&a.active&&a.include&&c(a)})})}),riot.tag("rg-tags",'
  • {text}
",'rg-tags .c-card--menu,[riot-tag="rg-tags"] .c-card--menu,[data-is="rg-tags"] .c-card--menu{ position: relative; }',"",function(a){function f(){var a=window,b=document,c=b.documentElement,d=b.getElementsByTagName("body")[0],e=a.innerWidth||c.clientWidth||d.clientWidth,f=a.innerHeight||c.clientHeight||d.clientHeight;return{width:e,height:f}}var b=this;a.tags?a.tags.type||(a.tags.type="default"):a.tags={options:[],tags:[]},a.tags.options||(a.tags.options=[]),a.tags.tags||(a.tags.tags=[]),a.type&&(a.tags.type=a.type),a.placeholder&&(a.tags.placeholder=a.placeholder),a.filter&&("boolean"!=typeof a.filter&&"string"!=typeof a.filter||"true"!==a.filter&&Boolean(a.filter)!==!0||("true"===a.filter?a.tags.filter="text":a.tags.filter=void 0));var c=a.tags.type;for(i=0;i-1})),b.trigger("filter",b.refs.selectfield.value)};var g=function(){var d=f(),e=b.root.querySelector(".c-card--menu");if(e){if(!a.tags.isvisible)return e.style.marginTop="",void(e.style.marginLeft="");var g=e.getBoundingClientRect();d.width-1&&!a.tags.isvisible)return c.preventDefault(),b.open(),!0;var d=b.options.length;if(d>0&&[13,38,40].indexOf(c.keyCode)>-1){c.preventDefault();for(var e=null,f=0;f
{text}
',"","",function(a){var b=this;this.toastClicked=function(a){var c=a.item;window.clearTimeout(c.timer),c.isvisible=!1,b.trigger("select",c)};var c=1,d=function(){return c++};this.on("mount",function(){a.toasts&&Array.isArray(a.toasts.toasts)&&(a.toasts.position=a.toasts.position||"bottomright",a.toasts.toasts.forEach(function(a){"undefined"==typeof a.isvisible&&(a.isvisible=!0),a.id=a.id||d(),a.timer||a.sticky||(a.startTimer=function(){a.timer=window.setTimeout(function(){a.isvisible=!1,b.trigger("close",a),b.update()},a.timeout||6e3)},a.startTimer())}),a.toasts.isvisible=a.toasts.toasts.filter(function(a){return a.isvisible}).length>0)})}),riot.tag2("rg-toggle",'
',"","",function(a){var b=this;this.on("mount",function(){a.toggle||(a.toggle={checked:!1})}),this.toggle=function(){a.toggle.checked=!a.toggle.checked,b.trigger("toggle",a.toggle.checked)}}),riot.tag2("rg-unsplash",'',"","",function(a){var b=this;this.on("update",function(){b.options="",a.unsplash||(a.unsplash={}),a.unsplash.width=a.unsplash.width||450,a.unsplash.height=a.unsplash.height||250,a.unsplash.greyscale&&(a.unsplash.greyscale="g/"),a.unsplash.random&&(b.options+="random&"),a.unsplash.blur&&(b.options+="blur&"),a.unsplash.image&&(b.options+="image="+a.unsplash.image+"&"),"undefined"!=typeof a.unsplash.gravity&&(b.options+="gravity="+a.unsplash.gravity)})}); From d42332e72f4ada0897605eca62cda6fcae64f172 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Thu, 23 Feb 2017 23:44:54 +0800 Subject: [PATCH 39/67] 3.6.0 HTML: Script: var tags = riot.mount('rg-toggle', { toggle: { text: 'My Thang', type: 'success', checked: false } }) tags[0].on('toggle', function (checked) { console.log("state", checked) }) --- dist/rg-toggle/rg-toggle.js | 54 +++++++++++++++++++++++++++++-------- 1 file changed, 43 insertions(+), 11 deletions(-) diff --git a/dist/rg-toggle/rg-toggle.js b/dist/rg-toggle/rg-toggle.js index 1e22954..74b5b62 100644 --- a/dist/rg-toggle/rg-toggle.js +++ b/dist/rg-toggle/rg-toggle.js @@ -1,14 +1,46 @@ -riot.tag2('rg-toggle', '
', '', '', function(opts) { -var _this = this; +riot.tag("rg-toggle", + '
'+ + ' '+ + ' {opts.toggle.text}'+ + '
', ".c-toggle{padding-top: 0.5vh;}", "", + function(opts) { + var _this = this; -this.on('mount', function () { - if (!opts.toggle) opts.toggle = { - checked: false - }; -}); + if (!opts.toggle) { + opts.toggle = { + type: "default" + } + } + + if (opts.text) + opts.toggle.text = opts.text ; + + if (opts.type) + opts.toggle.type = opts.type ; + + if (opts.checked) + if (typeof opts.checked === "string") + if (opts.checked.toLowerCase() === "true" || opts.checked.toLowerCase() === "false") + if (opts.checked.toLowerCase() ==="true") + opts.toggle.checked = true ; + else + opts.toggle.checked = false ; + + + + this.on("mount", function() { + if (!opts.toggle) opts.toggle = { + checked: false + } + }); -this.toggle = function () { - opts.toggle.checked = !opts.toggle.checked; - _this.trigger('toggle', opts.toggle.checked); -}; + this.toggle = function() { + opts.toggle.checked = !opts.toggle.checked; + _this.trigger("toggle", opts.toggle.checked) + } }); From 474458891820d1ad6f5757b8de5609f8389a2beb Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Thu, 23 Feb 2017 23:46:19 +0800 Subject: [PATCH 40/67] 3.6.0 - credit card still buggy, all else OK --- dist/rg.js | 43 +++++++++++++++++++++++++++++++++++-------- 1 file changed, 35 insertions(+), 8 deletions(-) diff --git a/dist/rg.js b/dist/rg.js index 2b9303c..3b3fa6d 100644 --- a/dist/rg.js +++ b/dist/rg.js @@ -3,13 +3,6 @@ var rg_date_cdn_momentjs = "https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.1 var rg_credit_card_payment_fonts = "https://cdnjs.cloudflare.com/ajax/libs/paymentfont/1.1.2/css/paymentfont.min.css" ; var rg_markdown_cdn_markdown = "https://cdnjs.cloudflare.com/ajax/libs/markdown-it/8.3.0/markdown-it.min.js" ; -// Tools used in the library generally. -// https://zeit.co/blog/async-and-await -function sleep(time) { - return new Promise((resolve) => setTimeout(resolve, time)); -} - - function loadJS(file, callback) { // DOM: Create the script element var script = document.createElement("script"); @@ -1721,13 +1714,47 @@ riot.tag("rg-toasts", }); -riot.tag2("rg-toggle", '
', "", "", function(opts) { +riot.tag("rg-toggle", + '
'+ + ' '+ + ' {opts.toggle.text}'+ + '
', ".c-toggle{padding-top: 0.5vh;}", "", + function(opts) { var _this = this; + + if (!opts.toggle) { + opts.toggle = { + type: "default" + } + } + + if (opts.text) + opts.toggle.text = opts.text ; + + if (opts.type) + opts.toggle.type = opts.type ; + + if (opts.checked) + if (typeof opts.checked === "string") + if (opts.checked.toLowerCase() === "true" || opts.checked.toLowerCase() === "false") + if (opts.checked.toLowerCase() ==="true") + opts.toggle.checked = true ; + else + opts.toggle.checked = false ; + + + this.on("mount", function() { if (!opts.toggle) opts.toggle = { checked: false } }); + this.toggle = function() { opts.toggle.checked = !opts.toggle.checked; _this.trigger("toggle", opts.toggle.checked) From 86c3a3d5bf7ed72af01493c420918e220d3b28da Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Thu, 23 Feb 2017 23:48:36 +0800 Subject: [PATCH 41/67] 3.6.0 - credit card still buggy. --- dist/rg.min.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dist/rg.min.js b/dist/rg.min.js index 2771e11..7d4740a 100644 --- a/dist/rg.min.js +++ b/dist/rg.min.js @@ -1,2 +1,2 @@ function loadJS(a,b){var c=document.createElement("script");c.type="application/javascript",c.src=a,c.onload=b,c.onreadystatechange=b,document.head.appendChild(c)}var rg_date_cdn_momentjs="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/moment.min.js",rg_credit_card_payment_fonts="https://cdnjs.cloudflare.com/ajax/libs/paymentfont/1.1.2/css/paymentfont.min.css",rg_markdown_cdn_markdown="https://cdnjs.cloudflare.com/ajax/libs/markdown-it/8.3.0/markdown-it.min.js";riot.tag("rg-alert",'
{opts.text}
',"","",function(a){var b=this;this.on("mount",function(){this.opts.dismissable?this.refs.closeButton.hidden=!1:this.refs.closeButton.hidden=!0,this.update()}),"string"==typeof a.dismissable&&(a.dismissable=Boolean(a.dismissable)),"boolean"!=typeof this.opts.dismissable&&(this.opts.dismissable=!0),"string"==typeof a.timeout&&(a.timeout=Number(a.timeout)),"number"==typeof a.timeout&&a.timeout>0&&(this.startTimer=function(){this.timer=setTimeout(function(){b.dismiss()},a.timeout)},this.startTimer()),this.dismiss=function(a){this.opts.timeout&&clearTimeout(this.startTimer),this.unmount()}}),riot.tag("rg-alerts",'
',"","",function(){}),riot.tag("rg-bubble",'
{opts.bubble.text}
','rg-bubble .context,[riot-tag="rg-bubble"] .context,[data-is="rg-bubble"] .context,rg-bubble .content,[riot-tag="rg-bubble"] .content,[data-is="rg-bubble"] .content{ display: inline-block; position: relative; } rg-bubble .c-bubble,[riot-tag="rg-bubble"] .c-bubble,[data-is="rg-bubble"] .c-bubble{ position: absolute; top: -70px; left: 50%; transform: translate3d(-50%, 0, 0); }',"",function(a){var b=this;this.showBubble=function(){clearTimeout(b._timer),b.isvisible=!0},this.hideBubble=function(){b._timer=setTimeout(function(){b.isvisible=!1,b.update()},1e3)},this.toggleBubble=function(){b.isvisible=!b.isvisible}}),riot.tag("rg-chart","",'rg-chart,[riot-tag="rg-chart"],[data-is="rg-chart"]{ display: inline-block; width: 100%; }',"",function(a){var b=this;Chart.defaults.global.responsive=!0,this.on("mount",function(){c()}),this.on("loaded",function(a){b.on("unmount",function(){a.destroy()})});var c=function(){a.chart||(a.chart={});var d=b.root.querySelector("canvas").getContext("2d"),e=new Chart(d),f=null;switch(a.chart.type){case"line":f=e.Line(a.chart.data,a.chart.options);break;case"radar":f=e.Radar(a.chart.data,a.chart.options);break;case"polar":f=e.PolarArea(a.chart.data,a.chart.options);break;case"pie":f=e.Pie(a.chart.data,a.chart.options);break;case"doughnut":f=e.Doughnut(a.chart.data,a.chart.options);break;default:f=e.Bar(a.chart.data,a.chart.options)}b.trigger("loaded",f)}}),riot.tag2("rg-code",'
','rg-code .editor,[riot-tag="rg-code"] .editor,[data-is="rg-code"] .editor{ position: absolute; top: 0; right: 0; bottom: 0; left: 0; }',"",function(a){var b=this;a.editor||(a.editor={code:""});var c=void 0,d=function(){c.setTheme("ace/theme/"+(a.editor.theme||"monokai")),c.getSession().setMode("ace/mode/"+(a.editor.mode||"html")),c.getSession().setTabSize(a.editor.tabsize||2),c.getSession().setUseSoftTabs(a.editor.softtabs),c.getSession().setUseWrapMode(a.editor.wordwrap),c.setReadOnly(a.editor.readonly)};this.on("mount",function(){if(c=ace.edit(b.root.querySelector(".editor")),c.$blockScrolling=1/0,b.on("update",function(b){d(),a.editor.code!=c.getValue()&&c.setValue(a.editor.code,1)}),a.url){var e=new XMLHttpRequest;e.onload=function(c){a.editor.code=c,b.update()},e.open("get",a.url,!0),e.send()}c.setValue(a.editor.code,1),c.getSession().on("change",function(d){a.editor.code=c.getValue(),b.trigger("onchange",c.getValue())}),d(),b.update()})}),riot.tag("rg-credit-card-number",'','rg-credit-card-number .card-no,[riot-tag="rg-credit-card-number"] .card-no,[data-is="rg-credit-card-number"] .card-no{ padding-right: 60px; background-repeat: no-repeat; background-position: right center; background-size: 60px; } rg-credit-card-number .amex,[riot-tag="rg-credit-card-number"] .amex,[data-is="rg-credit-card-number"] .amex{ background-image: url(img/amex.png); } rg-credit-card-number .diners_club,[riot-tag="rg-credit-card-number"] .diners_club,[data-is="rg-credit-card-number"] .diners_club{ background-image: url(img/diners_club.png); } rg-credit-card-number .discover,[riot-tag="rg-credit-card-number"] .discover,[data-is="rg-credit-card-number"] .discover{ background-image: url(img/discover.png); } rg-credit-card-number .jcb,[riot-tag="rg-credit-card-number"] .jcb,[data-is="rg-credit-card-number"] .jcb{ background-image: url(img/jcb.png); } rg-credit-card-number .mastercard,[riot-tag="rg-credit-card-number"] .mastercard,[data-is="rg-credit-card-number"] .mastercard{ background-image: url(img/mastercard.png); } rg-credit-card-number .visa,[riot-tag="rg-credit-card-number"] .visa,[data-is="rg-credit-card-number"] .visa{ background-image: url(img/visa.png); }',"",function(a){function c(a){var c,d,e,f,g,h,i,j,k,l,m,n,b=[].indexOf||function(a){for(var b=0,c=this.length;b=0&&g.push(c);return g}(),f=0,g=h.length;f=0},k=function(a){return function(a){var b,c;return d=f(a),c=!1,b=!1,null!=d&&(c=h(a),b=g(a,d)),{card_type:d,valid:c&&b,luhn_valid:c,length_valid:b}}}(this),i=function(a){return a.replace(/[ -]/g,"")},(j=function(b){return function(){return k(i(a))}}(this))(a)}var b=this;this.on("update",function(){b.refs.cardinput.value!=a.cardnumber&&(b.refs.cardinput.value=a.cardnumber),b.validate()}),this.validate=function(){a.cardnumber=this.refs.cardinput.value;var d=c(a.cardnumber);a.valid=d.valid,b.icon=a.valid?d.card_type.name:""}}),riot.tag("rg-date",'
{opts.date.date.format(yearFormat)}
{opts.date.date.format(monthFormat)}
Mo
Tu
We
Th
Fr
Sa
Su
','rg-date .container,[riot-tag="rg-date"] .container,[data-is="rg-date"] .container{ position: relative; display: inline-block; cursor: pointer; } rg-date .c-calendar,[riot-tag="rg-date"] .c-calendar,[data-is="rg-date"] .c-calendar{ position: absolute; min-width: 300px; margin-top: .5em; left: 0; }',"",function(a){function i(){var a=window,b=document,c=b.documentElement,d=b.getElementsByTagName("body")[0],e=a.innerWidth||c.clientWidth||d.clientWidth,f=a.innerHeight||c.clientHeight||d.clientHeight;return{width:e,height:f}}var b=this,c=!1,d=function(b){return moment.isMoment(b)||(b=moment(b)),b.isValid()?b:moment()},e=function(c){b.root.contains(c.target)||b.close(),b.update()},f=function(c){var d=c||moment();return{date:d,selected:a.date.date.isSame(c,"day"),today:moment().isSame(c,"day"),disabled:a.date.min&&a.date.min.isAfter(c)||a.date.max&&a.date.max.isBefore(c)}},g=function(){b.format="ddd D MMM YYYY",b.yearFormat="YYYY",b.monthFormat="MMMM",b.dayFormat="D",b.days=[],b.startBuffer=[],b.endBuffer=[];for(var d=moment(a.date.date).startOf("month"),e=moment(a.date.date).daysInMonth(),g=moment(a.date.date).endOf("month"),h=d.isoWeekday()-1;h>0;h-=1){var i=moment(d).subtract(h,"days");b.startBuffer.push(f(i))}for(var h=0;h

{opts.drawer.header}
{opts.drawer.subheading}

  • {text}
',"","",function(a){var b=this;this.on("before-mount",function(){a.drawer||(a.drawer={header:"Notice",subheading:void 0,position:"top",isvisible:!0,footer:[]}),!a.drawer.footer,a.header&&(a.drawer.header=a.header),a.subheading&&(a.drawer.subheading=a.subheading),a.position&&(a.drawer.position=a.position)}),this.close=function(){a.drawer.isvisible=!1,b.trigger("close")},this.select=function(c){a.drawer.items.forEach(function(a){return a.active=!1}),c.item.active=!0,b.trigger("select",c.item)}}),riot.tag("rg-ga","","","",function(a){!function(a,b,c,d,e,f,g){a.GoogleAnalyticsObject=e,a[e]=a[e]||function(){(a[e].q=a[e].q||[]).push(arguments)},a[e].l=1*new Date,f=b.createElement(c),g=b.getElementsByTagName(c)[0],f.async=1,f.src=d,g.parentNode.insertBefore(f,g)}(window,document,"script","//www.google-analytics.com/analytics.js","ga"),ga("create",a.property,"auto"),ga("send","pageview")}),riot.tag2("rg-iframify",'
','rg-iframify .iframify,[riot-tag="rg-iframify"] .iframify,[data-is="rg-iframify"] .iframify{ margin: 0; padding: 0; } rg-iframify iframe,[riot-tag="rg-iframify"] iframe,[data-is="rg-iframify"] iframe{ position: relative; width: 100%; border: 0; }',"",function(a){var b=this;this.on("mount",function(){iframify(b.root.querySelector(".frame"),b.opts)})}),riot.tag("rg-include","
{responseText}
","","",function(a){var b=this,c=function(){var d=new XMLHttpRequest;d.onload=function(c){a.unsafe?b.root.innerHTML=d.responseText:b.responseText=d.responseText,b.update(),b.trigger("loaded")},d.open("get",a.url,!0),d.send(),b.trigger("loading")};this.on("mount",function(){c()})}),riot.tag("rg-map",'
','rg-map .rg-map,[riot-tag="rg-map"] .rg-map,[data-is="rg-map"] .rg-map{ margin: 0; padding: 0; width: 100%; height: 100%; } rg-map .rg-map img,[riot-tag="rg-map"] .rg-map img,[data-is="rg-map"] .rg-map img{ max-width: inherit; }',"",function(a){var b=this,c="rg_map_script_unqiue";window.rg=window.rg||{},window.rg.gmap=riot.observable({initialize:function(){window.rg.gmap.trigger("initialize")}}),this.on("before-mount",function(){a.map||(a.map={center:{lat:a.lat?Number(a.lat):-34.397,lng:a.lng?Number(a.lng):50.644},zoom:7}),a.id||(a.id="rg_map_id_"+Date.now()),a.apikey&&!a.map.apikey&&(a.map.apikey=a.apikey),a.lat&&a.map&&a.map.center.lat&&(a.map.center.lat=a.lat?Number(a.lat):a.map.center.lat),a.lng&&a.map&&a.map.center.lng&&(a.map.center.lng=a.lng?Number(a.lng):a.map.center.lng),a.zoom&&a.map&&(a.map.zoom=a.zoom?Number(a.zoom):a.map.zoom?a.map.zoom:8),a.type&&a.map&&(a.map.mapTypeId=a.type?a.type:a.map.mapTypeId?a.map.mapTypeId:"roadmap"),a.tilt&&a.map&&(a.map.tilt=a.tilt?Number(a.tilt):a.map.tilt?a.map.tilt:45),a.heading&&a.map&&(a.map.heading=a.heading?Number(a.heading):a.map.heading?a.map.heading:90)}),this.on("mount",function(){if(rg.gmap.on("initialize",function(){e1=b.root.querySelector(".rg-map"),e2=b.refs[0],a.map.mapObj=new google.maps.Map(e1,a.map),b.trigger("loaded",a.map.mapObj)}),!document.getElementById(c)){var d=document.createElement("script");d.setAttribute("id",c),d.type="text/javascript",d.src="https://maps.googleapis.com/maps/api/js?key="+a.apikey+"&callback=window.rg.gmap.initialize",document.body.appendChild(d)}})}),riot.tag("rg-markdown","","","",function(a){var c,b=this,d=function(){markdownit,a.markdown||(a.markdown={}),a.markdown.content?(c=markdownit({html:!0,linkify:!0,typographer:!0}),b.root.innerHTML=c.render(a.markdown.content)):a.markdown.url&&!function(){var d=new XMLHttpRequest;d.onload=function(a){b.root.innerHTML=c.render(d.responseText),b.trigger("loaded")},d.open("get",a.markdown.url,!0),d.send(),b.trigger("loading")}()};this.on("before-mount",function(){a.markdown||(a.markdown={content:a.content?a.content:""}),a.content&&(a.markdown.content=a.content),this.__.innerHTML&&(a.markdown.content=this.__.innerHTML)}),this.on("mount",function(){"undefined"==typeof markdownit?loadJS(rg_markdown_cdn_markdown,d):d()})}),riot.tag("rg-modal",'

{opts.modal.heading}

','rg-modal .o-modal--ghost .o-modal__footer .c-button,[riot-tag="rg-modal"] .o-modal--ghost .c-card__footer .c-button,[data-is="rg-modal"] .o-modal--ghost .c-card__footer .c-button{ margin: 0 .5em 0 0; }',"",function(a){var b=this;this.on("before-mount",function(){a.modal||(a.modal={isvisible:!0,dismissable:!0,full:!1,ghost:!1,heading:a.heading?a.heading:"Note",buttons:[{text:"Close",type:"brand",action:function(){this.close()}}],blockbuttons:!0})}),this.close=function(){a.modal.dismissable&&(a.modal.isvisible=!1,b.trigger("close"))}}),riot.tag("rg-pagination",'
',"","",function(a){var b=this;this.on("before-mount",function(){a.pagination||(pagination={pages:10,page:1}),a.page&&a.pages&&(a.page=Number(a.page),a.pages=Number(a.pages),a.page>a.pages&&(a.page=a.pages)),a.page&&(a.pagination.page=Number(a.page)),a.pages&&(a.pagination.pages=Number(a.pages))}),this.on("page",function(){for(var a=b.root.querySelectorAll("button"),c=0;c
','rg-phone-sim .emulator,[riot-tag="rg-phone-sim"] .emulator,[data-is="rg-phone-sim"] .emulator{ position: relative; width: 365px; height: 792px; background-image:url(\'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAW0AAAMYCAMAAAA3r0ZLAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAwBQTFRFMDk6+vr6KTM0lJucMz4/PklKJS8wLTg5Qk1OxsjILzo7gomJ2NvbdH5/ho2O9fb2KzY3ztHRPEdIOkVGZWxtjJSVOEJDkpeYWGRluL2+KTQ1vcHBoaWlPUZHcnp6nKKjOkRF1NfXqa2tp62tZnBxanV2VmFiZ29wVl1eaXJzbXR04uTktbq7QElK1tnZipKTi5CRTlZXpKioo6mqXmlqUVlaOEFCSVFSUFxdISssT1tcTlpbJC4vIiwtTVlaJjAxIy0uTFhZS1dYJzEyKDIzSlZXPUhJOURFO0ZHSVVWKzU2P0pLKjQ1OENEND0+QEtMLDY3SFRVN0JDQ05PLTc4ND9ANUBBQUxNNkFCR1NUMTo7RE9QLjg5N0BBR1JTRlJTLzk6RVFSMjs8RVBRRlFSNj9AMzw9SFNUMj0+IissMTs8MDo7SVRVRFBRMDs8MTw9IiwsMz0+Mjw9SlVWQ09QLjk6NT4/S1ZXND4/JC4uQU1OIy0tQk5PTFdYTVhZQExNTllaJS8vJzIyP0tMLzg5LDc4KDMzNT9AKjU1N0FCNkBBJjAwIywtMDs7Mj09NkFBJjExLjk5LDc3N0JCNUBAKjU2MTw8LDU2Ljc4OUNEKDEyQU1NPEhIPEhJO0dHOkZGND8/Qk5ORFBQQ09PLTY3OUREPkpKPkpLPUlJT1pbP0tLJTAwPUlKJzAxKjM07u/vKTIzsbW2YGprtLm50tXWPkhJo6endn+A3d/f6uvreoOEg4yN2tvc/Pz8n6am8/T0VFtcm6CgJS4v4OLi5ufnYGdncnt8dHp7gYaHJC0uu8DAjJGRQkxNxMfHKzQ1YGtsS1NUaXN0bnh5yMzMyszMy83Oy8/PdoCAKDIy7O3tT1dYuLu70NTUbXd46Onq6erreoCA2dzc8PHx8vPz5OXlnaSkn6Wmqq6ucHZ2t7y8o6eoeoSEkJaWm5+gW2ZnZG5vqa+wOEFB09bWtru7qrCwcXd4t7u83eDgzM7O7/DwNT4+7e7uwMPDwcPEeH5/////70wnUQAAAQB0Uk5T////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AFP3ByUAAA+NSURBVHja7N13nBTlGcDxEQI5AmJQBAkcnqhEDIhoWMt5iogmQbOaYNrqYrJh16gplmTVkILJpYCmF+DSE1JIcjRR7L333ntPYjQxvTl55tnr7N7t7uw+vDP3+/0x3G3hs5+vr++8M7s7eH75Xb5x+rOjN017aeq+tO++U1+atmn0s9M3Xl6BoFfm466ZOPROhIt259CJ19RS++7LdgW133a97O7aaI/a+VE0y+jRnUeF1p6wqfvvaz6+YVjT0jMyJ3rkeSdmzljaNKzh+OZuoE0TQmmvv67zLzrwmMY8wkXLNx5zYCfTdeur1p6wdeegblgKar8tbegc4lv/rirtjTMLT99/UVMKzgFLNS3avwA2c2Pl2n8tPHV1QxLJMks2rC6g/alC7ScvKozrhhyIFZRrKIzvi56sRHt94b/RIsZ1xeN7UYFuffna4/UJB68Er4rGHax648vUfmqkPnxBBrmqyixQv5FPlaP9Dz2eWdIEW9U1LdFjnQsG1n5ETz4dyowdavY+VE9XPTKQ9phddPfICjvk6lt3lruM6V97j132l26BK3S3BJAv79Gf9jN3BY85HKsadHhAedebSmtf+ofgEcOQqknDAsyLLi2pPTq4/0icatSRAefoUto7Bvc2oFSzGgLQHYtr3xTct5DVSA1XJgsD0puKaa99s9wzlwPImh5WzhXTl/5TRHt7uaN5GUI1bVmzqL64ufZfgkF/GD417rCA9e99tf8VzCPHoVPzjhPXaVv10d5bblzCyZE6nDIJ5pKde2u/Egz487Cp1zHlHr20h8otp50ETT2WgaeL7dCe2vcF/uOQqUsrA9z7emgHQ3thdEZLLpeL0kHYwq7BrdqjAv2ofEAnlU0EZaPjvTTgHdWlvXeEhnYu0VkuUoN7707tbW6X35oiciyc6C4yZxmaxPf2bTq0z5VfTo/IC8/20M5GZnAHy5JzO7Tvj85bCKlEzyIzdQdvLNxf0L4wmMQjMgnmemlHZubOBcQXqvb0CO0jk720o3OmIdhPTlft4FTrth5ju55tK8bbq/YG+emUiLzqTC/t6Lz1cYoYbwi0r47QisTz0j2w0xE6ngxWJVeLdrD+WxCZVx3J9ba0QNeAnj9T/twuOi87GcF9pLSdKM8U7Q2rV6+O0jcQMoXJJB2t96tzorzB99Y2NzfPjdQL9zLJZDJynw2YK85rvZ1ku9Cjuq+4xXknb4Js+XxU/WsQ5wnec7LlDcn6d544P+ddLFu+zlT/Vorzxd5k2fIJqfq3TJwney/Lls+RGBwniPPL3g6y5aOWBstWcd7BmypbLjhS/1LiPNWTTTMWBik02mijTWijTWijjTbFVTuZTqSTRW8OUzqJdpGyxT89mU2ELYv25kO4+LvnyUT4kmj3LV38YzjpGmin3dReIm2pF9BlU+LmMDmnrdBbUntQje0trj2o5m2FPlBiTWKQQm9R7cG03nZAexCFNtpoE9poE9poo01oo01oo01oo4021VT7MxIUBik02mijTeG1D5agMEih0UYbbUIbbUIbbbQJbbQJbbQJbbTRplppf1qCwiCFRhtttCm89lwJCoMUGm200Sa00Sa00Uab0Eab0Eab0EY73tqnS1AYpNBoo402hdc+VILCIIVGG220CW20CW200Sa00Sa00aYC9GkSFAYpNNpoo01oR0v7bRIUBik02mijTWijTWijjTahjTah7bL2hyUoDFJotNFGm9BGm0ppv0OCwiCFRhtttAlttAlttNEmtOOhfbwEhUEKjTbaaBPaaBPaLmi/T4LCIIVGG220CW20CW200ab6aS+UoDBIodFGG21CG21C2wXt4yQoDFJotNFGm9BGm9BGe7BpL5KgMEih0UYbbUIbbULbBe0PSFAYpNBoo402oY02oY32YNP+oASFQQqNNtpoE9poE9poDzbtj0hQGKTQaKONNqGNNpXS/qkEhUEKfYwEhUEKjTbaaBPaaBPaaA827Y9LUBik0GijjTahHS3tn0lQGKTQCyQoDFJotNFGm9BGm9BGG22qn/anJCgMUmi00Uabwmv/RILCIIVukKAwSKHRRhttQhttQhtttKl+2p+UoDBIodFGG20Kr/09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\'); background-repeat: no-repeat; background-position: center; background-size: cover; } rg-phone-sim .screen,[riot-tag="rg-phone-sim"] .screen,[data-is="rg-phone-sim"] .screen{ position: absolute; top: 105px; left: 22px; background-color: white; width: 320px; height: 568px; border: 0; }',"",function(a){this.on("before-mount",function(){a.phonesim||(a.phonesim={url:void 0}),a.url&&(a.phonesim.url=a.url)})}),riot.tag("rg-placeholdit",'',"","",function(a){this.on("before-mount",function(){a.placeholdit||(a.placeholdit={}),a.placeholdit.width=a.placeholdit.width||450,a.placeholdit.height=a.placeholdit.height||250,a.placeholdit.background=a.placeholdit.background||"000",a.placeholdit.color=a.placeholdit.color||"fff",a.placeholdit.text=a.placeholdit.text||a.placeholdit.width+" x "+a.placeholdit.height,a.placeholdit.textsize=a.placeholdit.textsize||30,a.placeholdit.format=a.placeholdit.format||"png",a.width&&(a.placeholdit.width=Number(a.width)),a.height&&(a.placeholdit.height=Number(a.height)),a.background&&(a.placeholdit.background=a.background),a.color&&(a.placeholdit.color=a.color),a.text&&(a.placeholdit.text=a.text),a.textsize&&(a.placeholdit.textsize=Number(a.textsize)),a.format&&(a.placeholdit.text=a.format)})}),riot.tag2("rg-raw","","","",function(a){this.on("mount update",function(){this.root.innerHTML=a.content||""})}),riot.tag("rg-select",'
  • {text}
','rg-select .c-card--menu,[riot-tag="rg-select"] .c-card--menu,[data-is="rg-select"] .c-card--menu{ position: relative; }',"",function(a){function e(){var a=window,b=document,c=b.documentElement,d=b.getElementsByTagName("body")[0],e=a.innerWidth||c.clientWidth||d.clientWidth,f=a.innerHeight||c.clientHeight||d.clientHeight;return{width:e,height:f}}var b=this;a.select||(a.select={options:[]});var c=function(c){b.root.contains(c.target)||b.close(),b.update()},d=function(){for(var d=0;d-1; -})),b.trigger("filter",b.refs.selectfield.value)};var f=function(){var d=e(),f=b.root.querySelector(".c-card--menu");if(f){if(!a.select.isvisible)return f.style.marginTop="",void(f.style.marginLeft="");var g=f.getBoundingClientRect();d.width-1&&!a.select.isvisible)return c.preventDefault(),b.open(),!0;var d=b.options.length;if(d>0&&[13,38,40].indexOf(c.keyCode)>-1){c.preventDefault();for(var e=null,f=0;f
{heading}
{text}
{include.responseText}
',"","",function(a){var b=this,c=function(c){var d=new XMLHttpRequest;d.onload=function(a){var e=b.root.querySelector(".c-tabs__tab--active");e&&(e.innerHTML=d.responseText),b.trigger("loaded",c)},d.open("get",c.include,!0),d.send(),b.trigger("loading",c)};this.open=function(c){var d=c.item;d.disabled||d.active||(a.tabs.tabs.forEach(function(a){a.active=!1}),b.trigger("open",d),d.active=!0)},this.on("before-mount",function(){a.tabs||(a.tabs={type:"default",tabs:[]}),a.type&&(a.tabs.type=a.type)}),this.on("update",function(){a.tabs||(a.tabs={}),Array.isArray(a.tabs.tabs)&&a.tabs.tabs.forEach(function(a){!a.disabled&&a.active&&a.include&&c(a)})})}),riot.tag("rg-tags",'
  • {text}
",'rg-tags .c-card--menu,[riot-tag="rg-tags"] .c-card--menu,[data-is="rg-tags"] .c-card--menu{ position: relative; }',"",function(a){function f(){var a=window,b=document,c=b.documentElement,d=b.getElementsByTagName("body")[0],e=a.innerWidth||c.clientWidth||d.clientWidth,f=a.innerHeight||c.clientHeight||d.clientHeight;return{width:e,height:f}}var b=this;a.tags?a.tags.type||(a.tags.type="default"):a.tags={options:[],tags:[]},a.tags.options||(a.tags.options=[]),a.tags.tags||(a.tags.tags=[]),a.type&&(a.tags.type=a.type),a.placeholder&&(a.tags.placeholder=a.placeholder),a.filter&&("boolean"!=typeof a.filter&&"string"!=typeof a.filter||"true"!==a.filter&&Boolean(a.filter)!==!0||("true"===a.filter?a.tags.filter="text":a.tags.filter=void 0));var c=a.tags.type;for(i=0;i-1})),b.trigger("filter",b.refs.selectfield.value)};var g=function(){var d=f(),e=b.root.querySelector(".c-card--menu");if(e){if(!a.tags.isvisible)return e.style.marginTop="",void(e.style.marginLeft="");var g=e.getBoundingClientRect();d.width-1&&!a.tags.isvisible)return c.preventDefault(),b.open(),!0;var d=b.options.length;if(d>0&&[13,38,40].indexOf(c.keyCode)>-1){c.preventDefault();for(var e=null,f=0;f
{text}
',"","",function(a){var b=this;this.toastClicked=function(a){var c=a.item;window.clearTimeout(c.timer),c.isvisible=!1,b.trigger("select",c)};var c=1,d=function(){return c++};this.on("mount",function(){a.toasts&&Array.isArray(a.toasts.toasts)&&(a.toasts.position=a.toasts.position||"bottomright",a.toasts.toasts.forEach(function(a){"undefined"==typeof a.isvisible&&(a.isvisible=!0),a.id=a.id||d(),a.timer||a.sticky||(a.startTimer=function(){a.timer=window.setTimeout(function(){a.isvisible=!1,b.trigger("close",a),b.update()},a.timeout||6e3)},a.startTimer())}),a.toasts.isvisible=a.toasts.toasts.filter(function(a){return a.isvisible}).length>0)})}),riot.tag2("rg-toggle",'
',"","",function(a){var b=this;this.on("mount",function(){a.toggle||(a.toggle={checked:!1})}),this.toggle=function(){a.toggle.checked=!a.toggle.checked,b.trigger("toggle",a.toggle.checked)}}),riot.tag2("rg-unsplash",'',"","",function(a){var b=this;this.on("update",function(){b.options="",a.unsplash||(a.unsplash={}),a.unsplash.width=a.unsplash.width||450,a.unsplash.height=a.unsplash.height||250,a.unsplash.greyscale&&(a.unsplash.greyscale="g/"),a.unsplash.random&&(b.options+="random&"),a.unsplash.blur&&(b.options+="blur&"),a.unsplash.image&&(b.options+="image="+a.unsplash.image+"&"),"undefined"!=typeof a.unsplash.gravity&&(b.options+="gravity="+a.unsplash.gravity)})}); +})),b.trigger("filter",b.refs.selectfield.value)};var f=function(){var d=e(),f=b.root.querySelector(".c-card--menu");if(f){if(!a.select.isvisible)return f.style.marginTop="",void(f.style.marginLeft="");var g=f.getBoundingClientRect();d.width-1&&!a.select.isvisible)return c.preventDefault(),b.open(),!0;var d=b.options.length;if(d>0&&[13,38,40].indexOf(c.keyCode)>-1){c.preventDefault();for(var e=null,f=0;f
{heading}
{text}
{include.responseText}
',"","",function(a){var b=this,c=function(c){var d=new XMLHttpRequest;d.onload=function(a){var e=b.root.querySelector(".c-tabs__tab--active");e&&(e.innerHTML=d.responseText),b.trigger("loaded",c)},d.open("get",c.include,!0),d.send(),b.trigger("loading",c)};this.open=function(c){var d=c.item;d.disabled||d.active||(a.tabs.tabs.forEach(function(a){a.active=!1}),b.trigger("open",d),d.active=!0)},this.on("before-mount",function(){a.tabs||(a.tabs={type:"default",tabs:[]}),a.type&&(a.tabs.type=a.type)}),this.on("update",function(){a.tabs||(a.tabs={}),Array.isArray(a.tabs.tabs)&&a.tabs.tabs.forEach(function(a){!a.disabled&&a.active&&a.include&&c(a)})})}),riot.tag("rg-tags",'
  • {text}
",'rg-tags .c-card--menu,[riot-tag="rg-tags"] .c-card--menu,[data-is="rg-tags"] .c-card--menu{ position: relative; }',"",function(a){function f(){var a=window,b=document,c=b.documentElement,d=b.getElementsByTagName("body")[0],e=a.innerWidth||c.clientWidth||d.clientWidth,f=a.innerHeight||c.clientHeight||d.clientHeight;return{width:e,height:f}}var b=this;a.tags?a.tags.type||(a.tags.type="default"):a.tags={options:[],tags:[]},a.tags.options||(a.tags.options=[]),a.tags.tags||(a.tags.tags=[]),a.type&&(a.tags.type=a.type),a.placeholder&&(a.tags.placeholder=a.placeholder),a.filter&&("boolean"!=typeof a.filter&&"string"!=typeof a.filter||"true"!==a.filter&&Boolean(a.filter)!==!0||("true"===a.filter?a.tags.filter="text":a.tags.filter=void 0));var c=a.tags.type;for(i=0;i-1})),b.trigger("filter",b.refs.selectfield.value)};var g=function(){var d=f(),e=b.root.querySelector(".c-card--menu");if(e){if(!a.tags.isvisible)return e.style.marginTop="",void(e.style.marginLeft="");var g=e.getBoundingClientRect();d.width-1&&!a.tags.isvisible)return c.preventDefault(),b.open(),!0;var d=b.options.length;if(d>0&&[13,38,40].indexOf(c.keyCode)>-1){c.preventDefault();for(var e=null,f=0;f
{text}
',"","",function(a){var b=this;this.toastClicked=function(a){var c=a.item;window.clearTimeout(c.timer),c.isvisible=!1,b.trigger("select",c)};var c=1,d=function(){return c++};this.on("mount",function(){a.toasts&&Array.isArray(a.toasts.toasts)&&(a.toasts.position=a.toasts.position||"bottomright",a.toasts.toasts.forEach(function(a){"undefined"==typeof a.isvisible&&(a.isvisible=!0),a.id=a.id||d(),a.timer||a.sticky||(a.startTimer=function(){a.timer=window.setTimeout(function(){a.isvisible=!1,b.trigger("close",a),b.update()},a.timeout||6e3)},a.startTimer())}),a.toasts.isvisible=a.toasts.toasts.filter(function(a){return a.isvisible}).length>0)})}),riot.tag("rg-toggle",'
{opts.toggle.text}
',".c-toggle{padding-top: 0.5vh;}","",function(a){var b=this;a.toggle||(a.toggle={type:"default"}),a.text&&(a.toggle.text=a.text),a.type&&(a.toggle.type=a.type),a.checked&&"string"==typeof a.checked&&("true"!==a.checked.toLowerCase()&&"false"!==a.checked.toLowerCase()||("true"===a.checked.toLowerCase()?a.toggle.checked=!0:a.toggle.checked=!1)),this.on("mount",function(){a.toggle||(a.toggle={checked:!1})}),this.toggle=function(){a.toggle.checked=!a.toggle.checked,b.trigger("toggle",a.toggle.checked)}}),riot.tag2("rg-unsplash",'',"","",function(a){var b=this;this.on("update",function(){b.options="",a.unsplash||(a.unsplash={}),a.unsplash.width=a.unsplash.width||450,a.unsplash.height=a.unsplash.height||250,a.unsplash.greyscale&&(a.unsplash.greyscale="g/"),a.unsplash.random&&(b.options+="random&"),a.unsplash.blur&&(b.options+="blur&"),a.unsplash.image&&(b.options+="image="+a.unsplash.image+"&"),"undefined"!=typeof a.unsplash.gravity&&(b.options+="gravity="+a.unsplash.gravity)})}); From d61fc902e12a18069689b7bc05f7e3c1a852b551 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Fri, 24 Feb 2017 08:06:21 +0800 Subject: [PATCH 42/67] 3.6.0 --- dist/rg-unsplash/rg-unsplash.js | 34 +++++++++++++++++++-------------- 1 file changed, 20 insertions(+), 14 deletions(-) diff --git a/dist/rg-unsplash/rg-unsplash.js b/dist/rg-unsplash/rg-unsplash.js index 7299a0a..bdefa50 100644 --- a/dist/rg-unsplash/rg-unsplash.js +++ b/dist/rg-unsplash/rg-unsplash.js @@ -1,15 +1,21 @@ -riot.tag2('rg-unsplash', '', '', '', function(opts) { -var _this = this; - -this.on('update', function () { - _this.options = ''; - if (!opts.unsplash) opts.unsplash = {}; - opts.unsplash.width = opts.unsplash.width || 450; - opts.unsplash.height = opts.unsplash.height || 250; - if (opts.unsplash.greyscale) opts.unsplash.greyscale = 'g/'; - if (opts.unsplash.random) _this.options += 'random&'; - if (opts.unsplash.blur) _this.options += 'blur&'; - if (opts.unsplash.image) _this.options += 'image=' + opts.unsplash.image + '&'; - if (typeof opts.unsplash.gravity !== 'undefined') _this.options += 'gravity=' + opts.unsplash.gravity; -}); +riot.tag2("rg-unsplash", + '', "", "", + function(opts) { + var _this = this; + + + this.on("before-mount", function() { + _this.options = ""; + + if (!opts.unsplash) opts.unsplash = {}; + opts.unsplash.width = opts.unsplash.width || 450; + opts.unsplash.height = opts.unsplash.height || 250; + if (opts.unsplash.greyscale) opts.unsplash.greyscale = "g/"; + if (opts.unsplash.random) _this.options += "random&"; + if (opts.unsplash.blur) _this.options += "blur&"; + if (opts.unsplash.image) _this.options += "image=" + opts.unsplash.image + "&"; + if (typeof opts.unsplash.gravity !== "undefined") _this.options += "gravity=" + opts.unsplash.gravity + + }) }); From d90c8f4c4c8b5d404d1a12d012230fa25d74e4c1 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Fri, 24 Feb 2017 08:27:15 +0800 Subject: [PATCH 43/67] 3.6.0 Note! Depends on rg-utils.js. HTML: Script: var tags = riot.mount('rg-select', { select: { placeholder: 'Please select a card', filter: 'text', // <-- this enables filtering on the 'text' property options: [{ id: 0, text: 'Visa' }, { id: 1, text: 'MasterCard' //selected: true }, { id: 2, text: 'American Express' }, { id: 3, text: 'Discover' }] } }) tags[0].on('open', function () {console.log("open") }) .on('close', function () { console.log("close") }) .on('select', function (item) { console.log("item=", item) }) --- dist/rg-select/rg-select.js | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/dist/rg-select/rg-select.js b/dist/rg-select/rg-select.js index 7cb7c82..9be45ef 100644 --- a/dist/rg-select/rg-select.js +++ b/dist/rg-select/rg-select.js @@ -76,3 +76,39 @@ function(opts) { m.style.marginTop = w.height - (pos.top + pos.height) - 20 + "px" } }; + + + this.navigate = function(e) { + if ([13, 38, 40].indexOf(e.keyCode) > -1 && !opts.select.isvisible) { + e.preventDefault(); + _this.open(); + return true + } + + var length = _this.options.length; + + if (length > 0 && [13, 38, 40].indexOf(e.keyCode) > -1) { + e.preventDefault(); + var activeIndex = null; + for (var i = 0; i < length; i++) { + var item = _this.options[i]; + if (item.active) { + activeIndex = i; + break + } + } + if (activeIndex != null) _this.options[activeIndex].active = false; + if (e.keyCode == 38) { + if (activeIndex == null || activeIndex == 0) _this.options[length - 1].active = true; + else _this.options[activeIndex - 1].active = true + } else if (e.keyCode == 40) { + if (activeIndex == null || activeIndex == length - 1) _this.options[0].active = true; + else _this.options[activeIndex + 1].active = true; + } else if (e.keyCode == 13 && activeIndex != null) { + _this.select({ + item: _this.options[activeIndex] + }) + } + } + return true + }; From 19bdfd7f8600d1097ba304c447004bd2c24b854e Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Fri, 24 Feb 2017 08:30:12 +0800 Subject: [PATCH 44/67] 3.6.0 - depends on rg-utils.js Note! Depends on rg-utils.js HTML: Script: var tags = riot.mount('rg-tags', { tags: { type: "brand", placeholder: 'Choose a country', filter: 'text', // <-- this enables filtering on the 'text' property options: [{ text: 'England', type: 'info' }, { text: 'Scotland', }, { text: 'Ireland', type: 'warning' }, { text: 'Wales', type: 'success' }], tags: [{ text: 'United States', }] } }) tags[0].on('open', function () { console.log("open") }) .on('close', function () { console.log("close") }) .on('select', function (item) { console.log("select", item) }) --- dist/rg-tags/rg-tags.js | 80 ++++------------------------------------- 1 file changed, 7 insertions(+), 73 deletions(-) diff --git a/dist/rg-tags/rg-tags.js b/dist/rg-tags/rg-tags.js index 21c0689..40c3d32 100644 --- a/dist/rg-tags/rg-tags.js +++ b/dist/rg-tags/rg-tags.js @@ -38,14 +38,14 @@ riot.tag("rg-tags", if (opts.placeholder) opts.tags.placeholder = opts.placeholder ; - if (opts.filter) - if (typeof opts.filter === "boolean" || typeof opts.filter === "string") - if (opts.filter === "true" || Boolean(opts.filter) === true) - if (opts.filter==="true") - opts.tags.filter = "text" ; - else - opts.tags.filter = undefined ; + if (opts.filter) { + filter = toBoolean (opts.filter) ; + if (filter) + opts.tags.filter = "text"; + else + opts.tags.filter = undefined ; + } var defType = opts.tags.type ; @@ -154,69 +154,3 @@ riot.tag("rg-tags", } return true }; - - - this.open = function() { - opts.tags.isvisible = true; - _this.trigger("open") - }; - - - this.close = function() { - if (opts.tags.isvisible) { - opts.tags.isvisible = false; - _this.trigger("close") - } - }; - - - this.select = function(e) { - opts.tags.options.forEach(function(i) { - return i.selected = false - }); - e.item.selected = true; - _this.addTag(e.item); - applyFieldText(); - _this.filterOptions(); - _this.trigger("select", e.item) - }; - - - this.addTag = function(item) { - if (opts.tags.tags.indexOf(item) == -1) { - opts.tags.tags.push(item) - } - }; - - - this.removeTag = function(e) { - opts.tags.tags = opts.tags.tags.filter(function(tag) { - if (tag._id != e.item._id) return tag - }) - }; - - - this.on("mount", function() { - applyFieldText(); - _this.filterOptions(); - document.addEventListener("click", handleClickOutside); - _this.update() - }); - - - this.on("update", function() { - opts.tags.options.forEach(function(item) { - item._id = item._id || (Math.floor(Math.random() * 60466175) + 1679615).toString(36) - }); - opts.tags.tags.forEach(function(tag) { - tag._id = tag._id || (Math.floor(Math.random() * 60466175) + 1679615).toString(36) - }); - if (!opts.tags.filter) applyFieldText(); - positionDropdown() - }); - - - this.on("unmount", function() { - document.removeEventListener("click", handleClickOutside) - }) -}); From b25542ddd260abc1a30f6347b5efa23a60667ac8 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Fri, 24 Feb 2017 08:31:58 +0800 Subject: [PATCH 45/67] 3.6.0 - depends on rg-utils.js Note! Depends on rg-utils.js HTML: Script: var tags = riot.mount('rg-select', { select: { placeholder: 'Please select a card', filter: 'text', // <-- this enables filtering on the 'text' property options: [{ id: 0, text: 'Visa' }, { id: 1, text: 'MasterCard' //selected: true }, { id: 2, text: 'American Express' }, { id: 3, text: 'Discover' }] } }) tags[0].on('open', function () {console.log("open") }) .on('close', function () { console.log("close") }) .on('select', function (item) { console.log("item=", item) }) From a297252e7c573438c67f1a8088c3acab60bb3460 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Fri, 24 Feb 2017 08:33:24 +0800 Subject: [PATCH 46/67] 3.6.0 - depends on rg-utils.js Note! Depends on rg-utils.js HTML: Script: var tags = riot.mount('rg-select', { select: { placeholder: 'Please select a card', filter: 'text', // <-- this enables filtering on the 'text' property options: [{ id: 0, text: 'Visa' }, { id: 1, text: 'MasterCard' //selected: true }, { id: 2, text: 'American Express' }, { id: 3, text: 'Discover' }] } }) tags[0].on('open', function () {console.log("open") }) .on('close', function () { console.log("close") }) .on('select', function (item) { console.log("item=", item) }) --- dist/rg-select/rg-select.js | 1 - 1 file changed, 1 deletion(-) diff --git a/dist/rg-select/rg-select.js b/dist/rg-select/rg-select.js index 9be45ef..5c68fd6 100644 --- a/dist/rg-select/rg-select.js +++ b/dist/rg-select/rg-select.js @@ -30,7 +30,6 @@ function(opts) { } }; - this.filterOptions = function() { _this.options = opts.select.options; if (opts.select.filter) _this.options = _this.options.filter(function(option) { From 5aab2e6bfcf781a91ad4fdb8b17682dff0ca9996 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Fri, 24 Feb 2017 08:36:20 +0800 Subject: [PATCH 47/67] 3.6.0 - depends on rg-utils.js Note! Depends on rg-utils.js HTML: Script: var tags = riot.mount('rg-toggle', { toggle: { text: 'My Thang', type: 'success', checked: false } }) tags[0].on('toggle', function (checked) { console.log("state", checked) }) From cd2149779ea078b9569e01987d1d2beb57e66002 Mon Sep 17 00:00:00 2001 From: Anthony Davie Date: Fri, 24 Feb 2017 08:40:21 +0800 Subject: [PATCH 48/67] 3.6.0 - includes rg-utils code as well All tags with 3.6.0 are tested and ready. Anything with 3.5.9 release is still buggy. 3.5.0 code - e.g. charts works as advertised and has not been updated yet. --- dist/rg.js | 163 +++++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 140 insertions(+), 23 deletions(-) diff --git a/dist/rg.js b/dist/rg.js index 3b3fa6d..72df033 100644 --- a/dist/rg.js +++ b/dist/rg.js @@ -17,6 +17,23 @@ function loadJS(file, callback) { } +function toBoolean (bool) { + if (bool) { + if (typeof bool === "string") { + if (bool.toLowerCase() === "true" || bool.toLowerCase() === "false") + if (bool.toLowerCase() ==="true") + return true ; + else + return false ; + } + else if (typeof bool == "boolean") + return bool ; + } + else + return undefined ; + +} + // Single Alert riot.tag("rg-alert", '