Uji Countdown - Version 2.1.3

Version Description

  • Compatibility fixes
  • Added redirect URL information in blocks
Download this release

Release Info

Developer ujimoto
Plugin Icon 128x128 Uji Countdown
Version 2.1.3
Comparing to
See all releases

Code changes from version 2.1.2 to 2.1.3

README.txt CHANGED
@@ -3,8 +3,8 @@ Contributors: ujimoto
3
  Donate link: http://www.wpmanage.com/uji-countdown
4
  Tags: countdown timer, countdown, counter, js countdown, animated countdown, countdown timer, count down, countdown clock, jQuery countdown, clock, timer, recurring timer
5
  Requires at least: 3.0
6
- Tested up to: 5.4
7
- Stable tag: 2.1.2
8
 
9
  Uji Countdown - Customizable Countdown Timer
10
 
@@ -23,8 +23,8 @@ List of features:
23
  * Server Time or User Time option
24
  * Set the texts for date, time
25
  * Create unlimited styles
26
- * Simple using shortcode
27
- * Multilanguage support for date
28
  * Add countdown timers from Widgets area
29
  * Translate Labels in your Language
30
  * Redirect to URL option after expiry
@@ -51,6 +51,10 @@ Please feel free to visit our [demo site](http://wpmanage.com/project/ujicountdo
51
 
52
  == Changelog ==
53
 
 
 
 
 
54
  = 2.1.2 =
55
  * Fixed redirect URL input field encode issue
56
  * Fixed redirect link issue when page expired
3
  Donate link: http://www.wpmanage.com/uji-countdown
4
  Tags: countdown timer, countdown, counter, js countdown, animated countdown, countdown timer, count down, countdown clock, jQuery countdown, clock, timer, recurring timer
5
  Requires at least: 3.0
6
+ Tested up to: 5.9
7
+ Stable tag: 2.1.3
8
 
9
  Uji Countdown - Customizable Countdown Timer
10
 
23
  * Server Time or User Time option
24
  * Set the texts for date, time
25
  * Create unlimited styles
26
+ * Simple using Shortcode
27
+ * Multi-language support for date
28
  * Add countdown timers from Widgets area
29
  * Translate Labels in your Language
30
  * Redirect to URL option after expiry
51
 
52
  == Changelog ==
53
 
54
+ = 2.1.3 =
55
+ * Compatibility fixes
56
+ * Added redirect URL information in blocks
57
+
58
  = 2.1.2 =
59
  * Fixed redirect URL input field encode issue
60
  * Fixed redirect link issue when page expired
classes/class-uji-countdown-admin.php CHANGED
@@ -715,7 +715,9 @@ class Uji_Countdown_Admin {
715
  $labels = self::ujic_labels();
716
 
717
  foreach ( $labels as $v => $n ) {
718
- $cnt .= $this->cform_input( __( $n . ':', 'ujicountdown' ), $v, $vars[$v], 'default-text' );
 
 
719
  }
720
  $cnt .= get_submit_button( __( "Save Changes", 'ujicountdown' ), 'primary', 'submit_ujic', true );
721
 
715
  $labels = self::ujic_labels();
716
 
717
  foreach ( $labels as $v => $n ) {
718
+ $val = ( isset($vars[$v]) ) ? $vars[$v] : '';
719
+ $cnt .= $this->cform_input( __( $n . ':', 'ujicountdown' ), $v, $val, 'default-text' );
720
+
721
  }
722
  $cnt .= get_submit_button( __( "Save Changes", 'ujicountdown' ), 'primary', 'submit_ujic', true );
723
 
classes/class-uji-countdown.php CHANGED
@@ -588,21 +588,15 @@ class Uji_Countdown extends Uji_Countdown_Admin
588
  wp_register_script( 'ujiCountRedirect', UJICOUNTDOWN_URL . 'js/uji-count-expired.js', array( 'jquery' ), $this->version, true );
589
  //Extend enqueues css and js
590
  $extent_scripts = apply_filters( 'ujic_scripts_extend', true);
591
- // _ar($extent_scripts);
592
  if(!empty($extent_scripts)){
593
  if( !empty($extent_scripts['css']) ){
594
  foreach ($extent_scripts['css'] as $nm => $css){
595
- // _ec($nm);
596
- // _ec($css['url']);
597
- // _ec($css['ver']);
598
  wp_register_style( $nm, $css['url'], array(), $css['ver'] );
599
  }
600
  }
601
  if( !empty($extent_scripts['js']) ){
602
  foreach ($extent_scripts['js'] as $nm => $js){
603
- // _ec($nm);
604
- // _ec($js['url']);
605
- // _ec($js['ver']);
606
  wp_register_script( $nm, $js['url'], array( 'jquery' ), $js['ver'] );
607
  }
608
  }
588
  wp_register_script( 'ujiCountRedirect', UJICOUNTDOWN_URL . 'js/uji-count-expired.js', array( 'jquery' ), $this->version, true );
589
  //Extend enqueues css and js
590
  $extent_scripts = apply_filters( 'ujic_scripts_extend', true);
591
+
592
  if(!empty($extent_scripts)){
593
  if( !empty($extent_scripts['css']) ){
594
  foreach ($extent_scripts['css'] as $nm => $css){
 
 
 
595
  wp_register_style( $nm, $css['url'], array(), $css['ver'] );
596
  }
597
  }
598
  if( !empty($extent_scripts['js']) ){
599
  foreach ($extent_scripts['js'] as $nm => $js){
 
 
 
600
  wp_register_script( $nm, $js['url'], array( 'jquery' ), $js['ver'] );
601
  }
602
  }
dist/style-ujicount.css ADDED
@@ -0,0 +1,190 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*!*********************************************************************************************************************************************************************************************************************************************!*\
2
+ !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[3].use[3]!./src/block/style.scss ***!
3
+ \*********************************************************************************************************************************************************************************************************************************************/
4
+ /**
5
+ * SCSS Variables.
6
+ *
7
+ * Please use variables from this sheet to ensure consistency across the UI.
8
+ * Don't add to this sheet unless you're pretty sure the value will be reused in many places.
9
+ * For example, don't add rules to this sheet that affect block visuals. It's purely for UI.
10
+ */
11
+ /**
12
+ * Colors
13
+ */
14
+ /**
15
+ * Fonts & basic variables.
16
+ */
17
+ /**
18
+ * Grid System.
19
+ * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/
20
+ */
21
+ /**
22
+ * Dimensions.
23
+ */
24
+ /**
25
+ * Shadows.
26
+ */
27
+ /**
28
+ * Editor widths.
29
+ */
30
+ /**
31
+ * Block & Editor UI.
32
+ */
33
+ /**
34
+ * Block paddings.
35
+ */
36
+ /**
37
+ * React Native specific.
38
+ * These variables do not appear to be used anywhere else.
39
+ */
40
+ /**
41
+ * Colors
42
+ */
43
+ /**
44
+ * Converts a hex value into the rgb equivalent.
45
+ *
46
+ * @param {string} hex - the hexadecimal value to convert
47
+ * @return {string} comma separated rgb values
48
+ */
49
+ /**
50
+ * Breakpoint mixins
51
+ */
52
+ /**
53
+ * Long content fade mixin
54
+ *
55
+ * Creates a fading overlay to signify that the content is longer
56
+ * than the space allows.
57
+ */
58
+ /**
59
+ * Focus styles.
60
+ */
61
+ /**
62
+ * Applies editor left position to the selector passed as argument
63
+ */
64
+ /**
65
+ * Styles that are reused verbatim in a few places
66
+ */
67
+ /**
68
+ * Allows users to opt-out of animations via OS-level preferences.
69
+ */
70
+ /**
71
+ * Reset default styles for JavaScript UI based pages.
72
+ * This is a WP-admin agnostic reset
73
+ */
74
+ /**
75
+ * Reset the WP Admin page styles for Gutenberg-like pages.
76
+ */
77
+ /**
78
+ * Breakpoints & Media Queries
79
+ */
80
+ /**
81
+ * #.# Common SCSS
82
+ *
83
+ * Can include things like variables and mixins
84
+ * that are used across the project.
85
+ */
86
+ /**
87
+ * #.# Styles
88
+ *
89
+ * CSS for both Frontend+Backend.
90
+ */
91
+ .wp-block-urc-block {
92
+ background: #f0ecff;
93
+ border: 0.1rem solid #a698d8;
94
+ color: #4e38b1;
95
+ margin: 0 auto;
96
+ padding: 1rem;
97
+ }
98
+
99
+ .wp-block-urc-block-uji-countdown-2020 time {
100
+ font-family: "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
101
+ font-size: 1.2rem;
102
+ }
103
+
104
+ .wp-block-span {
105
+ display: block;
106
+ font-size: 1rem;
107
+ }
108
+
109
+ .wp-block-ujicount-datetime {
110
+ color: #732db6;
111
+ }
112
+
113
+ .components-datetime {
114
+ padding: 0;
115
+ }
116
+
117
+ .urc-component .spaceInp {
118
+ width: 55px;
119
+ display: inline-block;
120
+ }
121
+
122
+ .urc-component input[type=number] {
123
+ text-align: center;
124
+ }
125
+
126
+ .urc-component input[type=number]::-webkit-inner-spin-button,
127
+ .urc-component input[type=number]::-webkit-outer-spin-button {
128
+ -webkit-appearance: none;
129
+ margin: 0;
130
+ }
131
+
132
+ .urc-component-time {
133
+ margin-bottom: 15px;
134
+ }
135
+
136
+ .components-time-field-hours-input {
137
+ width: 23%;
138
+ display: inline-block;
139
+ margin-right: 0.5rem;
140
+ position: relative;
141
+ top: 3px;
142
+ margin-bottom: 0 !important;
143
+ }
144
+
145
+ .urc-border {
146
+ border-top: 1px solid #e2e4e7;
147
+ padding: 10px 0;
148
+ }
149
+
150
+ .components-time-field-hours-select {
151
+ width: 35%;
152
+ display: inline-block;
153
+ }
154
+
155
+ .components-repeat-field-input {
156
+ width: 23%;
157
+ display: inline-block;
158
+ margin-bottom: 0 !important;
159
+ }
160
+
161
+ .urc-component .components-base-control {
162
+ display: inline-block;
163
+ }
164
+
165
+ .urc-component i {
166
+ margin-left: 58px;
167
+ display: block;
168
+ }
169
+
170
+ .urc-time-separator {
171
+ padding: 0 0.5rem 0 0;
172
+ display: inline-block;
173
+ }
174
+
175
+ .urc-component-time h4,
176
+ .urc-border h4 {
177
+ margin: 0.8em 0;
178
+ }
179
+
180
+ .urc-flex {
181
+ display: flex;
182
+ align-items: normal;
183
+ }
184
+
185
+ .urc-flex .components-input-control__container {
186
+ min-width: 90px;
187
+ top: 3px;
188
+ }
189
+
190
+ /*# sourceMappingURL=style-ujicount.css.map*/
dist/style-ujicount.css.map ADDED
@@ -0,0 +1 @@
 
1
+ {"version":3,"file":"style-ujicount.css","mappings":";;;AAAA;;;;;;EAAA;ACAA;;EAAA;ADUA;;EAAA;AAeA;;;EAAA;AAgBA;;EAAA;AAmBA;;EAAA;AAQA;;EAAA;AAUA;;EAAA;AAkBA;;EAAA;AASA;;;EAAA;ACzGA;;EAAA;ACAA;;;;;CAAA;ACEA;;EAAA;AAqDA;;;;;EAAA;AA8DA;;EAAA;AA8BA;;EAAA;AAqCA;;EAAA;AAqBA;;EAAA;AAyKA;;;EAAA;AAcA;;EAAA;ACpYA;;EAAA;ACKA;;;;;CAAA;ACJA;;;;EAAA;AAMC;EACC,mBDWS;ECVT;EACA,cDQK;ECPL;EAEA;AAgFF;;AA7EA;EACI;EACA;AAgFJ;;AA7EA;EACI;EACA;AAgFJ;;AA7EA;EACE;AAgFF;;AA7EA;EACE;AAgFF;;AA7EA;EACE;EACA;AAgFF;;AA7EA;EACI;AAgFJ;;AA7EA;;EAEE;EACA;AAgFF;;AA7EA;EACI;AAgFJ;;AA7EA;EACI;EACA;EACA;EACA;EACA;EACA;AAgFJ;;AA7EA;EACI;EACA;AAgFJ;;AA7EA;EACI;EACA;AAgFJ;;AA7EA;EACI;EACA;EACA;AAgFJ;;AA7EA;EACI;AAgFJ;;AA7EA;EACE;EACA;AAgFF;;AA7EA;EACE;EACA;AAgFF;;AA7EA;;EAEE;AAgFF;;AA5EA;EACI;EACA;AA+EJ;;AA5EA;EACI;EACA;AA+EJ,C","sources":["webpack://uji-countdown/./node_modules/@wordpress/base-styles/_variables.scss","webpack://uji-countdown/./node_modules/@wordpress/base-styles/_colors.scss","webpack://uji-countdown/./node_modules/@wordpress/base-styles/_functions.scss","webpack://uji-countdown/./node_modules/@wordpress/base-styles/_mixins.scss","webpack://uji-countdown/./node_modules/@wordpress/base-styles/_breakpoints.scss","webpack://uji-countdown/./src/common.scss","webpack://uji-countdown/./src/block/style.scss"],"sourcesContent":["/**\n * SCSS Variables.\n *\n * Please use variables from this sheet to ensure consistency across the UI.\n * Don't add to this sheet unless you're pretty sure the value will be reused in many places.\n * For example, don't add rules to this sheet that affect block visuals. It's purely for UI.\n */\n\n@import \"./colors\";\n\n/**\n * Fonts & basic variables.\n */\n\n$default-font: -apple-system, BlinkMacSystemFont,\"Segoe UI\", Roboto, Oxygen-Sans, Ubuntu, Cantarell,\"Helvetica Neue\", sans-serif;\n$default-font-size: 13px;\n$default-line-height: 1.4;\n$editor-html-font: Menlo, Consolas, monaco, monospace;\n$editor-font-size: 16px;\n$default-block-margin: 28px; // This value provides a consistent, contiguous spacing between blocks.\n$text-editor-font-size: 15px;\n$editor-line-height: 1.8;\n$mobile-text-min-font-size: 16px; // Any font size below 16px will cause Mobile Safari to \"zoom in\".\n\n\n/**\n * Grid System.\n * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/\n */\n\n$grid-unit: 8px;\n$grid-unit-05: 0.5 * $grid-unit;\t// 4px\n$grid-unit-10: 1 * $grid-unit;\t\t// 8px\n$grid-unit-15: 1.5 * $grid-unit;\t// 12px\n$grid-unit-20: 2 * $grid-unit;\t\t// 16px\n$grid-unit-30: 3 * $grid-unit;\t\t// 24px\n$grid-unit-40: 4 * $grid-unit;\t\t// 32px\n$grid-unit-50: 5 * $grid-unit;\t\t// 40px\n$grid-unit-60: 6 * $grid-unit;\t\t// 48px\n\n\n/**\n * Dimensions.\n */\n\n$icon-size: 24px;\n$button-size: 36px;\n$button-size-small: 24px;\n$header-height: 60px;\n$panel-header-height: $grid-unit-60;\n$nav-sidebar-width: 300px;\n$admin-bar-height: 32px;\n$admin-bar-height-big: 46px;\n$admin-sidebar-width: 160px;\n$admin-sidebar-width-big: 190px;\n$admin-sidebar-width-collapsed: 36px;\n$modal-min-width: 360px;\n$spinner-size: 18px;\n\n\n/**\n * Shadows.\n */\n\n$shadow-popover: 0 2px 6px rgba($black, 0.05);\n$shadow-modal: 0 10px 10px rgba($black, 0.25);\n\n\n/**\n * Editor widths.\n */\n\n$sidebar-width: 280px;\n$content-width: 840px;\n$wide-content-width: 1100px;\n$widget-area-width: 700px;\n\n\n/**\n * Block & Editor UI.\n */\n\n$block-toolbar-height: $grid-unit-60;\n$border-width: 1px;\n$border-width-focus: 2px; // This exists as a fallback, and is ideally overridden by var(--wp-admin-border-width-focus) unless in some SASS math cases.\n$border-width-tab: 4px;\n$helptext-font-size: 12px;\n$radius-round: 50%;\n$radius-block-ui: 2px;\n$radio-input-size: 20px;\n$radio-input-size-sm: 24px; // Width & height for small viewports.\n\n// Deprecated, please avoid using these.\n$block-padding: 14px; // Used to define space between block footprint and surrouding borders.\n\n\n/**\n * Block paddings.\n */\n\n// Padding for blocks with a background color (e.g. paragraph or group).\n$block-bg-padding--v: 1.25em;\n$block-bg-padding--h: 2.375em;\n\n\n/**\n * React Native specific.\n * These variables do not appear to be used anywhere else.\n */\n\n// Dimensions.\n$mobile-header-toolbar-height: 44px;\n$mobile-floating-toolbar-height: 44px;\n$mobile-floating-toolbar-margin: 8px;\n$mobile-color-swatch: 48px;\n\n// Block UI.\n$mobile-block-toolbar-height: 44px;\n$dimmed-opacity: 1;\n$block-edge-to-content: 16px;\n$solid-border-space: 12px;\n$dashed-border-space: 6px;\n$block-selected-margin: 3px;\n$block-selected-border-width: 1px;\n$block-selected-padding: 0;\n$block-selected-child-margin: 5px;\n$block-selected-to-content: $block-edge-to-content - $block-selected-margin - $block-selected-border-width;\n","/**\n * Colors\n */\n\n// WordPress grays.\n$black: #000;\t\t\t// Use only when you truly need pure black. For UI, use $gray-900.\n$gray-900: #1e1e1e;\n$gray-800: #2f2f2f;\n$gray-700: #757575;\t\t// Meets 4.6:1 text contrast against white.\n$gray-600: #949494;\t\t// Meets 3:1 UI or large text contrast against white.\n$gray-400: #ccc;\n$gray-300: #ddd;\t\t// Used for most borders.\n$gray-200: #e0e0e0;\t\t// Used sparingly for light borders.\n$gray-100: #f0f0f0;\t\t// Used for light gray backgrounds.\n$white: #fff;\n\n// Opacities & additional colors.\n$dark-theme-focus: $white;\t// Focus color when the theme is dark.\n$dark-gray-placeholder: rgba($gray-900, 0.62);\n$medium-gray-placeholder: rgba($gray-900, 0.55);\n$light-gray-placeholder: rgba($white, 0.65);\n\n// Alert colors.\n$alert-yellow: #f0b849;\n$alert-red: #cc1818;\n$alert-green: #4ab866;\n","/**\n* Converts a hex value into the rgb equivalent.\n*\n* @param {string} hex - the hexadecimal value to convert\n* @return {string} comma separated rgb values\n*/\n@function hex-to-rgb($hex) {\n\t@return red($hex), green($hex), blue($hex);\n}\n","@import \"./functions\";\n\n/**\n * Breakpoint mixins\n */\n\n@mixin break-huge() {\n\t@media (min-width: #{ ($break-huge) }) {\n\t\t@content;\n\t}\n}\n\n@mixin break-wide() {\n\t@media (min-width: #{ ($break-wide) }) {\n\t\t@content;\n\t}\n}\n\n@mixin break-xlarge() {\n\t@media (min-width: #{ ($break-xlarge) }) {\n\t\t@content;\n\t}\n}\n\n@mixin break-large() {\n\t@media (min-width: #{ ($break-large) }) {\n\t\t@content;\n\t}\n}\n\n@mixin break-medium() {\n\t@media (min-width: #{ ($break-medium) }) {\n\t\t@content;\n\t}\n}\n\n@mixin break-small() {\n\t@media (min-width: #{ ($break-small) }) {\n\t\t@content;\n\t}\n}\n\n@mixin break-mobile() {\n\t@media (min-width: #{ ($break-mobile) }) {\n\t\t@content;\n\t}\n}\n\n@mixin break-zoomed-in() {\n\t@media (min-width: #{ ($break-zoomed-in) }) {\n\t\t@content;\n\t}\n}\n\n\n/**\n * Long content fade mixin\n *\n * Creates a fading overlay to signify that the content is longer\n * than the space allows.\n */\n\n@mixin long-content-fade($direction: right, $size: 20%, $color: #fff, $edge: 0, $z-index: false) {\n\tcontent: \"\";\n\tdisplay: block;\n\tposition: absolute;\n\t-webkit-touch-callout: none;\n\t-webkit-user-select: none;\n\t-khtml-user-select: none;\n\t-moz-user-select: none;\n\t-ms-user-select: none;\n\tuser-select: none;\n\tpointer-events: none;\n\n\t@if $z-index {\n\t\tz-index: $z-index;\n\t}\n\n\t@if $direction == \"bottom\" {\n\t\tbackground: linear-gradient(to top, rgba($color, 0), $color 90%);\n\t\tleft: $edge;\n\t\tright: $edge;\n\t\ttop: $edge;\n\t\tbottom: calc(100% - $size);\n\t\twidth: auto;\n\t}\n\n\t@if $direction == \"top\" {\n\t\tbackground: linear-gradient(to bottom, rgba($color, 0), $color 90%);\n\t\ttop: calc(100% - $size);\n\t\tleft: $edge;\n\t\tright: $edge;\n\t\tbottom: $edge;\n\t\twidth: auto;\n\t}\n\n\t@if $direction == \"left\" {\n\t\tbackground: linear-gradient(to left, rgba($color, 0), $color 90%);\n\t\ttop: $edge;\n\t\tleft: $edge;\n\t\tbottom: $edge;\n\t\tright: auto;\n\t\twidth: $size;\n\t\theight: auto;\n\t}\n\n\t@if $direction == \"right\" {\n\t\tbackground: linear-gradient(to right, rgba($color, 0), $color 90%);\n\t\ttop: $edge;\n\t\tbottom: $edge;\n\t\tright: $edge;\n\t\tleft: auto;\n\t\twidth: $size;\n\t\theight: auto;\n\t}\n}\n\n/**\n * Focus styles.\n */\n\n@mixin block-toolbar-button-style__focus() {\n\tbox-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 0 0 4px $white;\n\n\t// Windows High Contrast mode will show this outline, but not the box-shadow.\n\toutline: 2px solid transparent;\n}\n\n// Tabs, Inputs, Square buttons.\n@mixin input-style__neutral() {\n\tbox-shadow: 0 0 0 transparent;\n\ttransition: box-shadow 0.1s linear;\n\tborder-radius: $radius-block-ui;\n\tborder: $border-width solid $gray-700;\n\t@include reduce-motion(\"transition\");\n}\n\n\n@mixin input-style__focus() {\n\tborder-color: var(--wp-admin-theme-color);\n\tbox-shadow: 0 0 0 ($border-width-focus - $border-width) var(--wp-admin-theme-color);\n\n\t// Windows High Contrast mode will show this outline, but not the box-shadow.\n\toutline: 2px solid transparent;\n}\n\n\n/**\n * Applies editor left position to the selector passed as argument\n */\n\n@mixin editor-left($selector) {\n\t#{$selector} { /* Set left position when auto-fold is not on the body element. */\n\t\tleft: 0;\n\n\t\t@media (min-width: #{ ($break-medium + 1) }) {\n\t\t\tleft: $admin-sidebar-width;\n\t\t}\n\t}\n\n\t.auto-fold #{$selector} { /* Auto fold is when on smaller breakpoints, nav menu auto collapses. */\n\t\t@media (min-width: #{ ($break-medium + 1) }) {\n\t\t\tleft: $admin-sidebar-width-collapsed;\n\t\t}\n\n\t\t@media (min-width: #{ ($break-large + 1) }) {\n\t\t\tleft: $admin-sidebar-width;\n\t\t}\n\t}\n\n\t/* Sidebar manually collapsed. */\n\t.folded #{$selector} {\n\t\tleft: 0;\n\n\t\t@media (min-width: #{ ($break-medium + 1) }) {\n\t\t\tleft: $admin-sidebar-width-collapsed;\n\t\t}\n\t}\n\n\tbody.is-fullscreen-mode #{$selector} {\n\t\tleft: 0 !important;\n\t}\n}\n\n/**\n * Styles that are reused verbatim in a few places\n */\n\n// These are additional styles for all captions, when the theme opts in to block styles.\n@mixin caption-style() {\n\tmargin-top: 0.5em;\n\tmargin-bottom: 1em;\n}\n\n@mixin caption-style-theme() {\n\tcolor: #555;\n\tfont-size: $default-font-size;\n\ttext-align: center;\n\n\t.is-dark-theme & {\n\t\tcolor: $light-gray-placeholder;\n\t}\n}\n\n\n/**\n * Allows users to opt-out of animations via OS-level preferences.\n */\n\n@mixin reduce-motion($property: \"\") {\n\n\t@if $property == \"transition\" {\n\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\ttransition-duration: 0s;\n\t\t\ttransition-delay: 0s;\n\t\t}\n\t}\n\n\t@else if $property == \"animation\" {\n\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\tanimation-duration: 1ms;\n\t\t\tanimation-delay: 0s;\n\t\t}\n\t}\n\n\t@else {\n\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\ttransition-duration: 0s;\n\t\t\ttransition-delay: 0s;\n\t\t\tanimation-duration: 1ms;\n\t\t\tanimation-delay: 0s;\n\t\t}\n\t}\n\n}\n\n@mixin input-control {\n\tfont-family: $default-font;\n\tpadding: 6px 8px;\n\t@include input-style__neutral();\n\n\t/* Fonts smaller than 16px causes mobile safari to zoom. */\n\tfont-size: $mobile-text-min-font-size;\n\t/* Override core line-height. To be reviewed. */\n\tline-height: normal;\n\t@include break-small {\n\t\tfont-size: $default-font-size;\n\t\t/* Override core line-height. To be reviewed. */\n\t\tline-height: normal;\n\t}\n\n\t&:focus {\n\t\t@include input-style__focus();\n\t}\n\n\t// Use opacity to work in various editor styles.\n\t&::-webkit-input-placeholder {\n\t\tcolor: $dark-gray-placeholder;\n\t}\n\n\t&::-moz-placeholder {\n\t\topacity: 1; // Necessary because Firefox reduces this from 1.\n\t\tcolor: $dark-gray-placeholder;\n\t}\n\n\t&:-ms-input-placeholder {\n\t\tcolor: $dark-gray-placeholder;\n\t}\n}\n\n@mixin checkbox-control {\n\t@include input-control;\n\tborder: $border-width solid $gray-900;\n\tmargin-right: $grid-unit-15;\n\ttransition: none;\n\tborder-radius: $radius-block-ui;\n\n\t&:focus {\n\t\tbox-shadow: 0 0 0 ($border-width * 2) $white, 0 0 0 ($border-width * 2 + $border-width-focus) var(--wp-admin-theme-color);\n\n\t\t// Only visible in Windows High Contrast mode.\n\t\toutline: 2px solid transparent;\n\t}\n\n\t&:checked {\n\t\tbackground: var(--wp-admin-theme-color);\n\t\tborder-color: var(--wp-admin-theme-color);\n\n\t\t// Hide default checkbox styles in IE.\n\t\t&::-ms-check {\n\t\t\topacity: 0;\n\t\t}\n\t}\n\n\t&:checked::before,\n\t&[aria-checked=\"mixed\"]::before {\n\t\tmargin: -3px -5px;\n\t\tcolor: $white;\n\n\t\t@include break-medium() {\n\t\t\tmargin: -4px 0 0 -5px;\n\t\t}\n\t}\n\n\t&[aria-checked=\"mixed\"] {\n\t\tbackground: var(--wp-admin-theme-color);\n\t\tborder-color: var(--wp-admin-theme-color);\n\n\t\t&::before {\n\t\t\t// Inherited from `forms.css`.\n\t\t\t// See: https://github.com/WordPress/wordpress-develop/tree/5.1.1/src/wp-admin/css/forms.css#L122-L132\n\t\t\tcontent: \"\\f460\";\n\t\t\tfloat: left;\n\t\t\tdisplay: inline-block;\n\t\t\tvertical-align: middle;\n\t\t\twidth: 16px;\n\t\t\t/* stylelint-disable */\n\t\t\tfont: normal 30px/1 dashicons;\n\t\t\t/* stylelint-enable */\n\t\t\tspeak: none;\n\t\t\t-webkit-font-smoothing: antialiased;\n\t\t\t-moz-osx-font-smoothing: grayscale;\n\n\t\t\t@include break-medium() {\n\t\t\t\tfloat: none;\n\t\t\t\tfont-size: 21px;\n\t\t\t}\n\t\t}\n\t}\n}\n\n@mixin radio-control {\n\t@include input-control;\n\tborder: $border-width solid $gray-900;\n\tmargin-right: $grid-unit-15;\n\ttransition: none;\n\tborder-radius: $radius-round;\n\twidth: $radio-input-size-sm;\n\theight: $radio-input-size-sm;\n\n\t@include break-small() {\n\t\theight: $radio-input-size;\n\t\twidth: $radio-input-size;\n\t}\n\n\t&:checked::before {\n\t\tbox-sizing: inherit;\n\t\twidth: 8px;\n\t\theight: 8px;\n\t\ttransform: translate(7px, 7px);\n\t\tmargin: 0;\n\t\tbackground-color: $white;\n\n\t\t// This border serves as a background color in Windows High Contrast mode.\n\t\tborder: 4px solid $white;\n\n\t\t@include break-small() {\n\t\t\ttransform: translate(5px, 5px);\n\t\t}\n\t}\n\n\t&:focus {\n\t\tbox-shadow: 0 0 0 ($border-width * 2) $white, 0 0 0 ($border-width * 2 + $border-width-focus) var(--wp-admin-theme-color);\n\n\t\t// Only visible in Windows High Contrast mode.\n\t\toutline: 2px solid transparent;\n\t}\n\n\t&:checked {\n\t\tbackground: var(--wp-admin-theme-color);\n\t\tborder-color: var(--wp-admin-theme-color);\n\t}\n}\n\n/**\n * Reset default styles for JavaScript UI based pages.\n * This is a WP-admin agnostic reset\n */\n@mixin reset {\n\tbox-sizing: border-box;\n\n\t*,\n\t*::before,\n\t*::after {\n\t\tbox-sizing: inherit;\n\t}\n}\n\n/**\n * Reset the WP Admin page styles for Gutenberg-like pages.\n */\n@mixin wp-admin-reset( $content-container ) {\n\tbackground: $white;\n\n\t#wpcontent {\n\t\tpadding-left: 0;\n\t}\n\n\t#wpbody-content {\n\t\tpadding-bottom: 0;\n\t}\n\n\t/* We hide legacy notices in Gutenberg Based Pages, because they were not designed in a way that scaled well.\n\t Plugins can use Gutenberg notices if they need to pass on information to the user when they are editing. */\n\t#wpbody-content > div:not(#{ $content-container }):not(#screen-meta) {\n\t\tdisplay: none;\n\t}\n\n\t#wpfooter {\n\t\tdisplay: none;\n\t}\n\n\t.a11y-speak-region {\n\t\tleft: -1px;\n\t\ttop: -1px;\n\t}\n\n\tul#adminmenu a.wp-has-current-submenu::after,\n\tul#adminmenu > li.current > a.current::after {\n\t\tborder-right-color: $white;\n\t}\n\n\t.media-frame select.attachment-filters:last-of-type {\n\t\twidth: auto;\n\t\tmax-width: 100%;\n\t}\n}\n\n@mixin admin-scheme($color-primary) {\n\t// Define RGB equivalents for use in rgba function.\n\t// Hexadecimal css vars do not work in the rgba function.\n\t--wp-admin-theme-color: #{$color-primary};\n\t--wp-admin-theme-color--rgb: #{hex-to-rgb($color-primary)};\n\t// Darker shades.\n\t--wp-admin-theme-color-darker-10: #{darken($color-primary, 5%)};\n\t--wp-admin-theme-color-darker-10--rgb: #{hex-to-rgb(darken($color-primary, 5%))};\n\t--wp-admin-theme-color-darker-20: #{darken($color-primary, 10%)};\n\t--wp-admin-theme-color-darker-20--rgb: #{hex-to-rgb(darken($color-primary, 10%))};\n\n\t// Focus style width.\n\t// Avoid rounding issues by showing a whole 2px for 1x screens, and 1.5px on high resolution screens.\n\t--wp-admin-border-width-focus: 2px;\n\t@media ( -webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {\n\t\t--wp-admin-border-width-focus: 1.5px;\n\t}\n}\n\n@mixin wordpress-admin-schemes() {\n\tbody.admin-color-light {\n\t\t@include admin-scheme(#0085ba);\n\t}\n\n\tbody.admin-color-modern {\n\t\t@include admin-scheme(#3858e9);\n\t}\n\n\tbody.admin-color-blue {\n\t\t@include admin-scheme(#096484);\n\t}\n\n\tbody.admin-color-coffee {\n\t\t@include admin-scheme(#46403c);\n\t}\n\n\tbody.admin-color-ectoplasm {\n\t\t@include admin-scheme(#523f6d);\n\t}\n\n\tbody.admin-color-midnight {\n\t\t@include admin-scheme(#e14d43);\n\t}\n\n\tbody.admin-color-ocean {\n\t\t@include admin-scheme(#627c83);\n\t}\n\n\tbody.admin-color-sunrise {\n\t\t@include admin-scheme(#dd823b);\n\t}\n}\n\n// Deprecated from UI, kept for back-compat.\n@mixin background-colors-deprecated() {\n\t.has-very-light-gray-background-color {\n\t\tbackground-color: #eee;\n\t}\n\n\t.has-very-dark-gray-background-color {\n\t\tbackground-color: #313131;\n\t}\n}\n\n// Deprecated from UI, kept for back-compat.\n@mixin foreground-colors-deprecated() {\n\t.has-very-light-gray-color {\n\t\tcolor: #eee;\n\t}\n\n\t.has-very-dark-gray-color {\n\t\tcolor: #313131;\n\t}\n}\n\n// Deprecated from UI, kept for back-compat.\n@mixin gradient-colors-deprecated() {\n\t/*\n\t * Our classes uses the same values we set for gradient value attributes,\n\t * and we can not use spacing because of WP multi site kses rule.\n\t */\n\n\t/* stylelint-disable function-comma-space-after */\n\t.has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background {\n\t\tbackground: linear-gradient(135deg,rgba(0,208,132,1) 0%,rgba(6,147,227,1) 100%);\n\t}\n\n\t.has-purple-crush-gradient-background {\n\t\tbackground: linear-gradient(135deg,rgb(52,226,228) 0%,rgb(71,33,251) 50%,rgb(171,29,254) 100%);\n\t}\n\n\t.has-hazy-dawn-gradient-background {\n\t\tbackground: linear-gradient(135deg,rgb(250,172,168) 0%,rgb(218,208,236) 100%);\n\t}\n\n\t.has-subdued-olive-gradient-background {\n\t\tbackground: linear-gradient(135deg,rgb(250,250,225) 0%,rgb(103,166,113) 100%);\n\t}\n\n\t.has-atomic-cream-gradient-background {\n\t\tbackground: linear-gradient(135deg,rgb(253,215,154) 0%,rgb(0,74,89) 100%);\n\t}\n\n\t.has-nightshade-gradient-background {\n\t\tbackground: linear-gradient(135deg,rgb(51,9,104) 0%,rgb(49,205,207) 100%);\n\t}\n\n\t.has-midnight-gradient-background {\n\t\tbackground: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);\n\t}\n\t/* stylelint-enable function-comma-space-after */\n}\n","/**\n * Breakpoints & Media Queries\n */\n\n// Most used breakpoints\n$break-huge: 1440px;\n$break-wide: 1280px;\n$break-xlarge: 1080px;\n$break-large: 960px;\t// admin sidebar auto folds\n$break-medium: 782px;\t// adminbar goes big\n$break-small: 600px;\n$break-mobile: 480px;\n$break-zoomed-in: 280px;\n\n// All media queries currently in WordPress:\n//\n// min-width: 2000px\n// min-width: 1680px\n// min-width: 1250px\n// max-width: 1120px *\n// max-width: 1000px\n// min-width: 769px and max-width: 1000px\n// max-width: 960px *\n// max-width: 900px\n// max-width: 850px\n// min-width: 800px and max-width: 1499px\n// max-width: 800px\n// max-width: 799px\n// max-width: 782px *\n// max-width: 768px\n// max-width: 640px *\n// max-width: 600px *\n// max-width: 520px\n// max-width: 500px\n// max-width: 480px *\n// max-width: 400px *\n// max-width: 380px\n// max-width: 320px *\n//\n// Those marked * seem to be more commonly used than the others.\n// Let's try and use as few of these as possible, and be mindful about adding new ones, so we don't make the situation worse\n","@import \"node_modules/@wordpress/base-styles/variables\";\n@import \"node_modules/@wordpress/base-styles/colors\";\n@import \"node_modules/@wordpress/base-styles/mixins\";\n@import \"node_modules/@wordpress/base-styles/breakpoints\";\n\n/**\n * #.# Common SCSS\n *\n * Can include things like variables and mixins\n * that are used across the project.\n*/\n\n// Colors.\n$black: rgb(41, 41, 41);\n$white: #f4f4f4;\n$gray: #dedede;\n$green: #bada55;\n$red: orangered;\n$blue: rgb(78, 56, 177);\n$lightblu: #f0ecff;\n$midblu:#a698d8;\n","@import \"../common.scss\";\r\n/**\r\n * #.# Styles\r\n *\r\n * CSS for both Frontend+Backend.\r\n */\r\n\r\n .wp-block-urc-block {\r\n background: $lightblu;\r\n border: 0.1rem solid $midblu;\r\n color: $blue;\r\n margin: 0 auto;\r\n \r\n padding: 1rem;\r\n}\r\n\r\n.wp-block-urc-block-uji-countdown-2020 time{\r\n font-family: \"Segoe UI\",Roboto,Oxygen-Sans,Ubuntu,Cantarell,\"Helvetica Neue\",sans-serif;\r\n font-size: 1.2rem;\r\n}\r\n\r\n.wp-block-span{\r\n display: block;\r\n font-size: 1rem;\r\n}\r\n\r\n.wp-block-ujicount-datetime{\r\n color: rgb(115, 45, 182);\r\n}\r\n\r\n.components-datetime{\r\n padding: 0;\r\n}\r\n\r\n.urc-component .spaceInp{\r\n width: 55px;\r\n display: inline-block;\r\n}\r\n\r\n.urc-component input[type=number]{\r\n text-align: center;\r\n}\r\n\r\n.urc-component input[type=number]::-webkit-inner-spin-button, \r\n.urc-component input[type=number]::-webkit-outer-spin-button { \r\n -webkit-appearance: none; \r\n margin: 0; \r\n}\r\n\r\n.urc-component-time{\r\n margin-bottom: 15px;\r\n}\r\n\r\n.components-time-field-hours-input{\r\n width: 23%;\r\n display: inline-block;\r\n margin-right: 0.5rem;\r\n position: relative;\r\n top: 3px;\r\n margin-bottom: 0!important;\r\n}\r\n\r\n.urc-border{\r\n border-top: 1px solid #e2e4e7;\r\n padding: 10px 0;\r\n}\r\n\r\n.components-time-field-hours-select{\r\n width: 35%;\r\n display: inline-block;\r\n}\r\n\r\n.components-repeat-field-input{\r\n width: 23%;\r\n display: inline-block;\r\n margin-bottom: 0!important;\r\n}\r\n\r\n.urc-component .components-base-control{\r\n display: inline-block;\r\n}\r\n\r\n.urc-component i{\r\n margin-left: 58px;\r\n display: block;\r\n}\r\n\r\n.urc-time-separator{\r\n padding: 0 0.5rem 0 0;\r\n display: inline-block;\r\n}\r\n\r\n.urc-component-time h4,\r\n.urc-border h4{\r\n margin: 0.8em 0;\r\n}\r\n\r\n\r\n.urc-flex {\r\n display: flex;\r\n align-items: normal;\r\n}\r\n\r\n.urc-flex .components-input-control__container {\r\n min-width: 90px;\r\n top: 3px;\r\n}"],"names":[],"sourceRoot":""}
dist/ujicount.asset.php ADDED
@@ -0,0 +1 @@
 
1
+ <?php return array('dependencies' => array('wp-block-editor', 'wp-components', 'wp-element', 'wp-i18n'), 'version' => '2a40740f1f9ede637dac79ed610eef60');
dist/ujicount.css ADDED
@@ -0,0 +1,101 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*!**********************************************************************************************************************************************************************************************************************************************!*\
2
+ !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[3].use[3]!./src/block/editor.scss ***!
3
+ \**********************************************************************************************************************************************************************************************************************************************/
4
+ /**
5
+ * SCSS Variables.
6
+ *
7
+ * Please use variables from this sheet to ensure consistency across the UI.
8
+ * Don't add to this sheet unless you're pretty sure the value will be reused in many places.
9
+ * For example, don't add rules to this sheet that affect block visuals. It's purely for UI.
10
+ */
11
+ /**
12
+ * Colors
13
+ */
14
+ /**
15
+ * Fonts & basic variables.
16
+ */
17
+ /**
18
+ * Grid System.
19
+ * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/
20
+ */
21
+ /**
22
+ * Dimensions.
23
+ */
24
+ /**
25
+ * Shadows.
26
+ */
27
+ /**
28
+ * Editor widths.
29
+ */
30
+ /**
31
+ * Block & Editor UI.
32
+ */
33
+ /**
34
+ * Block paddings.
35
+ */
36
+ /**
37
+ * React Native specific.
38
+ * These variables do not appear to be used anywhere else.
39
+ */
40
+ /**
41
+ * Colors
42
+ */
43
+ /**
44
+ * Converts a hex value into the rgb equivalent.
45
+ *
46
+ * @param {string} hex - the hexadecimal value to convert
47
+ * @return {string} comma separated rgb values
48
+ */
49
+ /**
50
+ * Breakpoint mixins
51
+ */
52
+ /**
53
+ * Long content fade mixin
54
+ *
55
+ * Creates a fading overlay to signify that the content is longer
56
+ * than the space allows.
57
+ */
58
+ /**
59
+ * Focus styles.
60
+ */
61
+ /**
62
+ * Applies editor left position to the selector passed as argument
63
+ */
64
+ /**
65
+ * Styles that are reused verbatim in a few places
66
+ */
67
+ /**
68
+ * Allows users to opt-out of animations via OS-level preferences.
69
+ */
70
+ /**
71
+ * Reset default styles for JavaScript UI based pages.
72
+ * This is a WP-admin agnostic reset
73
+ */
74
+ /**
75
+ * Reset the WP Admin page styles for Gutenberg-like pages.
76
+ */
77
+ /**
78
+ * Breakpoints & Media Queries
79
+ */
80
+ /**
81
+ * #.# Common SCSS
82
+ *
83
+ * Can include things like variables and mixins
84
+ * that are used across the project.
85
+ */
86
+ /**
87
+ * #.# Editor Styles
88
+ *
89
+ * CSS for just Backend enqueued after style.scss
90
+ * which makes it higher in priority.
91
+ */
92
+ .wp-block-cgb-block-uji-countdown-2020 {
93
+ background: #bada55;
94
+ border: 0.2rem solid #292929;
95
+ color: #292929;
96
+ margin: 0 auto;
97
+ max-width: 740px;
98
+ padding: 2rem;
99
+ }
100
+
101
+ /*# sourceMappingURL=ujicount.css.map*/
dist/ujicount.css.map ADDED
@@ -0,0 +1 @@
 
1
+ {"version":3,"file":"ujicount.css","mappings":";;;AAAA;;;;;;EAAA;ACAA;;EAAA;ADUA;;EAAA;AAeA;;;EAAA;AAgBA;;EAAA;AAmBA;;EAAA;AAQA;;EAAA;AAUA;;EAAA;AAkBA;;EAAA;AASA;;;EAAA;ACzGA;;EAAA;ACAA;;;;;CAAA;ACEA;;EAAA;AAqDA;;;;;EAAA;AA8DA;;EAAA;AA8BA;;EAAA;AAqCA;;EAAA;AAqBA;;EAAA;AAyKA;;;EAAA;AAcA;;EAAA;ACpYA;;EAAA;ACKA;;;;;CAAA;ACJA;;;;;EAAA;AAOA;EACE,mBDOM;ECNN;EACA,cDEM;ECDN;EACA;EACA;AAiFF,C","sources":["webpack://uji-countdown/./node_modules/@wordpress/base-styles/_variables.scss","webpack://uji-countdown/./node_modules/@wordpress/base-styles/_colors.scss","webpack://uji-countdown/./node_modules/@wordpress/base-styles/_functions.scss","webpack://uji-countdown/./node_modules/@wordpress/base-styles/_mixins.scss","webpack://uji-countdown/./node_modules/@wordpress/base-styles/_breakpoints.scss","webpack://uji-countdown/./src/common.scss","webpack://uji-countdown/./src/block/editor.scss"],"sourcesContent":["/**\n * SCSS Variables.\n *\n * Please use variables from this sheet to ensure consistency across the UI.\n * Don't add to this sheet unless you're pretty sure the value will be reused in many places.\n * For example, don't add rules to this sheet that affect block visuals. It's purely for UI.\n */\n\n@import \"./colors\";\n\n/**\n * Fonts & basic variables.\n */\n\n$default-font: -apple-system, BlinkMacSystemFont,\"Segoe UI\", Roboto, Oxygen-Sans, Ubuntu, Cantarell,\"Helvetica Neue\", sans-serif;\n$default-font-size: 13px;\n$default-line-height: 1.4;\n$editor-html-font: Menlo, Consolas, monaco, monospace;\n$editor-font-size: 16px;\n$default-block-margin: 28px; // This value provides a consistent, contiguous spacing between blocks.\n$text-editor-font-size: 15px;\n$editor-line-height: 1.8;\n$mobile-text-min-font-size: 16px; // Any font size below 16px will cause Mobile Safari to \"zoom in\".\n\n\n/**\n * Grid System.\n * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/\n */\n\n$grid-unit: 8px;\n$grid-unit-05: 0.5 * $grid-unit;\t// 4px\n$grid-unit-10: 1 * $grid-unit;\t\t// 8px\n$grid-unit-15: 1.5 * $grid-unit;\t// 12px\n$grid-unit-20: 2 * $grid-unit;\t\t// 16px\n$grid-unit-30: 3 * $grid-unit;\t\t// 24px\n$grid-unit-40: 4 * $grid-unit;\t\t// 32px\n$grid-unit-50: 5 * $grid-unit;\t\t// 40px\n$grid-unit-60: 6 * $grid-unit;\t\t// 48px\n\n\n/**\n * Dimensions.\n */\n\n$icon-size: 24px;\n$button-size: 36px;\n$button-size-small: 24px;\n$header-height: 60px;\n$panel-header-height: $grid-unit-60;\n$nav-sidebar-width: 300px;\n$admin-bar-height: 32px;\n$admin-bar-height-big: 46px;\n$admin-sidebar-width: 160px;\n$admin-sidebar-width-big: 190px;\n$admin-sidebar-width-collapsed: 36px;\n$modal-min-width: 360px;\n$spinner-size: 18px;\n\n\n/**\n * Shadows.\n */\n\n$shadow-popover: 0 2px 6px rgba($black, 0.05);\n$shadow-modal: 0 10px 10px rgba($black, 0.25);\n\n\n/**\n * Editor widths.\n */\n\n$sidebar-width: 280px;\n$content-width: 840px;\n$wide-content-width: 1100px;\n$widget-area-width: 700px;\n\n\n/**\n * Block & Editor UI.\n */\n\n$block-toolbar-height: $grid-unit-60;\n$border-width: 1px;\n$border-width-focus: 2px; // This exists as a fallback, and is ideally overridden by var(--wp-admin-border-width-focus) unless in some SASS math cases.\n$border-width-tab: 4px;\n$helptext-font-size: 12px;\n$radius-round: 50%;\n$radius-block-ui: 2px;\n$radio-input-size: 20px;\n$radio-input-size-sm: 24px; // Width & height for small viewports.\n\n// Deprecated, please avoid using these.\n$block-padding: 14px; // Used to define space between block footprint and surrouding borders.\n\n\n/**\n * Block paddings.\n */\n\n// Padding for blocks with a background color (e.g. paragraph or group).\n$block-bg-padding--v: 1.25em;\n$block-bg-padding--h: 2.375em;\n\n\n/**\n * React Native specific.\n * These variables do not appear to be used anywhere else.\n */\n\n// Dimensions.\n$mobile-header-toolbar-height: 44px;\n$mobile-floating-toolbar-height: 44px;\n$mobile-floating-toolbar-margin: 8px;\n$mobile-color-swatch: 48px;\n\n// Block UI.\n$mobile-block-toolbar-height: 44px;\n$dimmed-opacity: 1;\n$block-edge-to-content: 16px;\n$solid-border-space: 12px;\n$dashed-border-space: 6px;\n$block-selected-margin: 3px;\n$block-selected-border-width: 1px;\n$block-selected-padding: 0;\n$block-selected-child-margin: 5px;\n$block-selected-to-content: $block-edge-to-content - $block-selected-margin - $block-selected-border-width;\n","/**\n * Colors\n */\n\n// WordPress grays.\n$black: #000;\t\t\t// Use only when you truly need pure black. For UI, use $gray-900.\n$gray-900: #1e1e1e;\n$gray-800: #2f2f2f;\n$gray-700: #757575;\t\t// Meets 4.6:1 text contrast against white.\n$gray-600: #949494;\t\t// Meets 3:1 UI or large text contrast against white.\n$gray-400: #ccc;\n$gray-300: #ddd;\t\t// Used for most borders.\n$gray-200: #e0e0e0;\t\t// Used sparingly for light borders.\n$gray-100: #f0f0f0;\t\t// Used for light gray backgrounds.\n$white: #fff;\n\n// Opacities & additional colors.\n$dark-theme-focus: $white;\t// Focus color when the theme is dark.\n$dark-gray-placeholder: rgba($gray-900, 0.62);\n$medium-gray-placeholder: rgba($gray-900, 0.55);\n$light-gray-placeholder: rgba($white, 0.65);\n\n// Alert colors.\n$alert-yellow: #f0b849;\n$alert-red: #cc1818;\n$alert-green: #4ab866;\n","/**\n* Converts a hex value into the rgb equivalent.\n*\n* @param {string} hex - the hexadecimal value to convert\n* @return {string} comma separated rgb values\n*/\n@function hex-to-rgb($hex) {\n\t@return red($hex), green($hex), blue($hex);\n}\n","@import \"./functions\";\n\n/**\n * Breakpoint mixins\n */\n\n@mixin break-huge() {\n\t@media (min-width: #{ ($break-huge) }) {\n\t\t@content;\n\t}\n}\n\n@mixin break-wide() {\n\t@media (min-width: #{ ($break-wide) }) {\n\t\t@content;\n\t}\n}\n\n@mixin break-xlarge() {\n\t@media (min-width: #{ ($break-xlarge) }) {\n\t\t@content;\n\t}\n}\n\n@mixin break-large() {\n\t@media (min-width: #{ ($break-large) }) {\n\t\t@content;\n\t}\n}\n\n@mixin break-medium() {\n\t@media (min-width: #{ ($break-medium) }) {\n\t\t@content;\n\t}\n}\n\n@mixin break-small() {\n\t@media (min-width: #{ ($break-small) }) {\n\t\t@content;\n\t}\n}\n\n@mixin break-mobile() {\n\t@media (min-width: #{ ($break-mobile) }) {\n\t\t@content;\n\t}\n}\n\n@mixin break-zoomed-in() {\n\t@media (min-width: #{ ($break-zoomed-in) }) {\n\t\t@content;\n\t}\n}\n\n\n/**\n * Long content fade mixin\n *\n * Creates a fading overlay to signify that the content is longer\n * than the space allows.\n */\n\n@mixin long-content-fade($direction: right, $size: 20%, $color: #fff, $edge: 0, $z-index: false) {\n\tcontent: \"\";\n\tdisplay: block;\n\tposition: absolute;\n\t-webkit-touch-callout: none;\n\t-webkit-user-select: none;\n\t-khtml-user-select: none;\n\t-moz-user-select: none;\n\t-ms-user-select: none;\n\tuser-select: none;\n\tpointer-events: none;\n\n\t@if $z-index {\n\t\tz-index: $z-index;\n\t}\n\n\t@if $direction == \"bottom\" {\n\t\tbackground: linear-gradient(to top, rgba($color, 0), $color 90%);\n\t\tleft: $edge;\n\t\tright: $edge;\n\t\ttop: $edge;\n\t\tbottom: calc(100% - $size);\n\t\twidth: auto;\n\t}\n\n\t@if $direction == \"top\" {\n\t\tbackground: linear-gradient(to bottom, rgba($color, 0), $color 90%);\n\t\ttop: calc(100% - $size);\n\t\tleft: $edge;\n\t\tright: $edge;\n\t\tbottom: $edge;\n\t\twidth: auto;\n\t}\n\n\t@if $direction == \"left\" {\n\t\tbackground: linear-gradient(to left, rgba($color, 0), $color 90%);\n\t\ttop: $edge;\n\t\tleft: $edge;\n\t\tbottom: $edge;\n\t\tright: auto;\n\t\twidth: $size;\n\t\theight: auto;\n\t}\n\n\t@if $direction == \"right\" {\n\t\tbackground: linear-gradient(to right, rgba($color, 0), $color 90%);\n\t\ttop: $edge;\n\t\tbottom: $edge;\n\t\tright: $edge;\n\t\tleft: auto;\n\t\twidth: $size;\n\t\theight: auto;\n\t}\n}\n\n/**\n * Focus styles.\n */\n\n@mixin block-toolbar-button-style__focus() {\n\tbox-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 0 0 4px $white;\n\n\t// Windows High Contrast mode will show this outline, but not the box-shadow.\n\toutline: 2px solid transparent;\n}\n\n// Tabs, Inputs, Square buttons.\n@mixin input-style__neutral() {\n\tbox-shadow: 0 0 0 transparent;\n\ttransition: box-shadow 0.1s linear;\n\tborder-radius: $radius-block-ui;\n\tborder: $border-width solid $gray-700;\n\t@include reduce-motion(\"transition\");\n}\n\n\n@mixin input-style__focus() {\n\tborder-color: var(--wp-admin-theme-color);\n\tbox-shadow: 0 0 0 ($border-width-focus - $border-width) var(--wp-admin-theme-color);\n\n\t// Windows High Contrast mode will show this outline, but not the box-shadow.\n\toutline: 2px solid transparent;\n}\n\n\n/**\n * Applies editor left position to the selector passed as argument\n */\n\n@mixin editor-left($selector) {\n\t#{$selector} { /* Set left position when auto-fold is not on the body element. */\n\t\tleft: 0;\n\n\t\t@media (min-width: #{ ($break-medium + 1) }) {\n\t\t\tleft: $admin-sidebar-width;\n\t\t}\n\t}\n\n\t.auto-fold #{$selector} { /* Auto fold is when on smaller breakpoints, nav menu auto collapses. */\n\t\t@media (min-width: #{ ($break-medium + 1) }) {\n\t\t\tleft: $admin-sidebar-width-collapsed;\n\t\t}\n\n\t\t@media (min-width: #{ ($break-large + 1) }) {\n\t\t\tleft: $admin-sidebar-width;\n\t\t}\n\t}\n\n\t/* Sidebar manually collapsed. */\n\t.folded #{$selector} {\n\t\tleft: 0;\n\n\t\t@media (min-width: #{ ($break-medium + 1) }) {\n\t\t\tleft: $admin-sidebar-width-collapsed;\n\t\t}\n\t}\n\n\tbody.is-fullscreen-mode #{$selector} {\n\t\tleft: 0 !important;\n\t}\n}\n\n/**\n * Styles that are reused verbatim in a few places\n */\n\n// These are additional styles for all captions, when the theme opts in to block styles.\n@mixin caption-style() {\n\tmargin-top: 0.5em;\n\tmargin-bottom: 1em;\n}\n\n@mixin caption-style-theme() {\n\tcolor: #555;\n\tfont-size: $default-font-size;\n\ttext-align: center;\n\n\t.is-dark-theme & {\n\t\tcolor: $light-gray-placeholder;\n\t}\n}\n\n\n/**\n * Allows users to opt-out of animations via OS-level preferences.\n */\n\n@mixin reduce-motion($property: \"\") {\n\n\t@if $property == \"transition\" {\n\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\ttransition-duration: 0s;\n\t\t\ttransition-delay: 0s;\n\t\t}\n\t}\n\n\t@else if $property == \"animation\" {\n\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\tanimation-duration: 1ms;\n\t\t\tanimation-delay: 0s;\n\t\t}\n\t}\n\n\t@else {\n\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\ttransition-duration: 0s;\n\t\t\ttransition-delay: 0s;\n\t\t\tanimation-duration: 1ms;\n\t\t\tanimation-delay: 0s;\n\t\t}\n\t}\n\n}\n\n@mixin input-control {\n\tfont-family: $default-font;\n\tpadding: 6px 8px;\n\t@include input-style__neutral();\n\n\t/* Fonts smaller than 16px causes mobile safari to zoom. */\n\tfont-size: $mobile-text-min-font-size;\n\t/* Override core line-height. To be reviewed. */\n\tline-height: normal;\n\t@include break-small {\n\t\tfont-size: $default-font-size;\n\t\t/* Override core line-height. To be reviewed. */\n\t\tline-height: normal;\n\t}\n\n\t&:focus {\n\t\t@include input-style__focus();\n\t}\n\n\t// Use opacity to work in various editor styles.\n\t&::-webkit-input-placeholder {\n\t\tcolor: $dark-gray-placeholder;\n\t}\n\n\t&::-moz-placeholder {\n\t\topacity: 1; // Necessary because Firefox reduces this from 1.\n\t\tcolor: $dark-gray-placeholder;\n\t}\n\n\t&:-ms-input-placeholder {\n\t\tcolor: $dark-gray-placeholder;\n\t}\n}\n\n@mixin checkbox-control {\n\t@include input-control;\n\tborder: $border-width solid $gray-900;\n\tmargin-right: $grid-unit-15;\n\ttransition: none;\n\tborder-radius: $radius-block-ui;\n\n\t&:focus {\n\t\tbox-shadow: 0 0 0 ($border-width * 2) $white, 0 0 0 ($border-width * 2 + $border-width-focus) var(--wp-admin-theme-color);\n\n\t\t// Only visible in Windows High Contrast mode.\n\t\toutline: 2px solid transparent;\n\t}\n\n\t&:checked {\n\t\tbackground: var(--wp-admin-theme-color);\n\t\tborder-color: var(--wp-admin-theme-color);\n\n\t\t// Hide default checkbox styles in IE.\n\t\t&::-ms-check {\n\t\t\topacity: 0;\n\t\t}\n\t}\n\n\t&:checked::before,\n\t&[aria-checked=\"mixed\"]::before {\n\t\tmargin: -3px -5px;\n\t\tcolor: $white;\n\n\t\t@include break-medium() {\n\t\t\tmargin: -4px 0 0 -5px;\n\t\t}\n\t}\n\n\t&[aria-checked=\"mixed\"] {\n\t\tbackground: var(--wp-admin-theme-color);\n\t\tborder-color: var(--wp-admin-theme-color);\n\n\t\t&::before {\n\t\t\t// Inherited from `forms.css`.\n\t\t\t// See: https://github.com/WordPress/wordpress-develop/tree/5.1.1/src/wp-admin/css/forms.css#L122-L132\n\t\t\tcontent: \"\\f460\";\n\t\t\tfloat: left;\n\t\t\tdisplay: inline-block;\n\t\t\tvertical-align: middle;\n\t\t\twidth: 16px;\n\t\t\t/* stylelint-disable */\n\t\t\tfont: normal 30px/1 dashicons;\n\t\t\t/* stylelint-enable */\n\t\t\tspeak: none;\n\t\t\t-webkit-font-smoothing: antialiased;\n\t\t\t-moz-osx-font-smoothing: grayscale;\n\n\t\t\t@include break-medium() {\n\t\t\t\tfloat: none;\n\t\t\t\tfont-size: 21px;\n\t\t\t}\n\t\t}\n\t}\n}\n\n@mixin radio-control {\n\t@include input-control;\n\tborder: $border-width solid $gray-900;\n\tmargin-right: $grid-unit-15;\n\ttransition: none;\n\tborder-radius: $radius-round;\n\twidth: $radio-input-size-sm;\n\theight: $radio-input-size-sm;\n\n\t@include break-small() {\n\t\theight: $radio-input-size;\n\t\twidth: $radio-input-size;\n\t}\n\n\t&:checked::before {\n\t\tbox-sizing: inherit;\n\t\twidth: 8px;\n\t\theight: 8px;\n\t\ttransform: translate(7px, 7px);\n\t\tmargin: 0;\n\t\tbackground-color: $white;\n\n\t\t// This border serves as a background color in Windows High Contrast mode.\n\t\tborder: 4px solid $white;\n\n\t\t@include break-small() {\n\t\t\ttransform: translate(5px, 5px);\n\t\t}\n\t}\n\n\t&:focus {\n\t\tbox-shadow: 0 0 0 ($border-width * 2) $white, 0 0 0 ($border-width * 2 + $border-width-focus) var(--wp-admin-theme-color);\n\n\t\t// Only visible in Windows High Contrast mode.\n\t\toutline: 2px solid transparent;\n\t}\n\n\t&:checked {\n\t\tbackground: var(--wp-admin-theme-color);\n\t\tborder-color: var(--wp-admin-theme-color);\n\t}\n}\n\n/**\n * Reset default styles for JavaScript UI based pages.\n * This is a WP-admin agnostic reset\n */\n@mixin reset {\n\tbox-sizing: border-box;\n\n\t*,\n\t*::before,\n\t*::after {\n\t\tbox-sizing: inherit;\n\t}\n}\n\n/**\n * Reset the WP Admin page styles for Gutenberg-like pages.\n */\n@mixin wp-admin-reset( $content-container ) {\n\tbackground: $white;\n\n\t#wpcontent {\n\t\tpadding-left: 0;\n\t}\n\n\t#wpbody-content {\n\t\tpadding-bottom: 0;\n\t}\n\n\t/* We hide legacy notices in Gutenberg Based Pages, because they were not designed in a way that scaled well.\n\t Plugins can use Gutenberg notices if they need to pass on information to the user when they are editing. */\n\t#wpbody-content > div:not(#{ $content-container }):not(#screen-meta) {\n\t\tdisplay: none;\n\t}\n\n\t#wpfooter {\n\t\tdisplay: none;\n\t}\n\n\t.a11y-speak-region {\n\t\tleft: -1px;\n\t\ttop: -1px;\n\t}\n\n\tul#adminmenu a.wp-has-current-submenu::after,\n\tul#adminmenu > li.current > a.current::after {\n\t\tborder-right-color: $white;\n\t}\n\n\t.media-frame select.attachment-filters:last-of-type {\n\t\twidth: auto;\n\t\tmax-width: 100%;\n\t}\n}\n\n@mixin admin-scheme($color-primary) {\n\t// Define RGB equivalents for use in rgba function.\n\t// Hexadecimal css vars do not work in the rgba function.\n\t--wp-admin-theme-color: #{$color-primary};\n\t--wp-admin-theme-color--rgb: #{hex-to-rgb($color-primary)};\n\t// Darker shades.\n\t--wp-admin-theme-color-darker-10: #{darken($color-primary, 5%)};\n\t--wp-admin-theme-color-darker-10--rgb: #{hex-to-rgb(darken($color-primary, 5%))};\n\t--wp-admin-theme-color-darker-20: #{darken($color-primary, 10%)};\n\t--wp-admin-theme-color-darker-20--rgb: #{hex-to-rgb(darken($color-primary, 10%))};\n\n\t// Focus style width.\n\t// Avoid rounding issues by showing a whole 2px for 1x screens, and 1.5px on high resolution screens.\n\t--wp-admin-border-width-focus: 2px;\n\t@media ( -webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {\n\t\t--wp-admin-border-width-focus: 1.5px;\n\t}\n}\n\n@mixin wordpress-admin-schemes() {\n\tbody.admin-color-light {\n\t\t@include admin-scheme(#0085ba);\n\t}\n\n\tbody.admin-color-modern {\n\t\t@include admin-scheme(#3858e9);\n\t}\n\n\tbody.admin-color-blue {\n\t\t@include admin-scheme(#096484);\n\t}\n\n\tbody.admin-color-coffee {\n\t\t@include admin-scheme(#46403c);\n\t}\n\n\tbody.admin-color-ectoplasm {\n\t\t@include admin-scheme(#523f6d);\n\t}\n\n\tbody.admin-color-midnight {\n\t\t@include admin-scheme(#e14d43);\n\t}\n\n\tbody.admin-color-ocean {\n\t\t@include admin-scheme(#627c83);\n\t}\n\n\tbody.admin-color-sunrise {\n\t\t@include admin-scheme(#dd823b);\n\t}\n}\n\n// Deprecated from UI, kept for back-compat.\n@mixin background-colors-deprecated() {\n\t.has-very-light-gray-background-color {\n\t\tbackground-color: #eee;\n\t}\n\n\t.has-very-dark-gray-background-color {\n\t\tbackground-color: #313131;\n\t}\n}\n\n// Deprecated from UI, kept for back-compat.\n@mixin foreground-colors-deprecated() {\n\t.has-very-light-gray-color {\n\t\tcolor: #eee;\n\t}\n\n\t.has-very-dark-gray-color {\n\t\tcolor: #313131;\n\t}\n}\n\n// Deprecated from UI, kept for back-compat.\n@mixin gradient-colors-deprecated() {\n\t/*\n\t * Our classes uses the same values we set for gradient value attributes,\n\t * and we can not use spacing because of WP multi site kses rule.\n\t */\n\n\t/* stylelint-disable function-comma-space-after */\n\t.has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background {\n\t\tbackground: linear-gradient(135deg,rgba(0,208,132,1) 0%,rgba(6,147,227,1) 100%);\n\t}\n\n\t.has-purple-crush-gradient-background {\n\t\tbackground: linear-gradient(135deg,rgb(52,226,228) 0%,rgb(71,33,251) 50%,rgb(171,29,254) 100%);\n\t}\n\n\t.has-hazy-dawn-gradient-background {\n\t\tbackground: linear-gradient(135deg,rgb(250,172,168) 0%,rgb(218,208,236) 100%);\n\t}\n\n\t.has-subdued-olive-gradient-background {\n\t\tbackground: linear-gradient(135deg,rgb(250,250,225) 0%,rgb(103,166,113) 100%);\n\t}\n\n\t.has-atomic-cream-gradient-background {\n\t\tbackground: linear-gradient(135deg,rgb(253,215,154) 0%,rgb(0,74,89) 100%);\n\t}\n\n\t.has-nightshade-gradient-background {\n\t\tbackground: linear-gradient(135deg,rgb(51,9,104) 0%,rgb(49,205,207) 100%);\n\t}\n\n\t.has-midnight-gradient-background {\n\t\tbackground: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);\n\t}\n\t/* stylelint-enable function-comma-space-after */\n}\n","/**\n * Breakpoints & Media Queries\n */\n\n// Most used breakpoints\n$break-huge: 1440px;\n$break-wide: 1280px;\n$break-xlarge: 1080px;\n$break-large: 960px;\t// admin sidebar auto folds\n$break-medium: 782px;\t// adminbar goes big\n$break-small: 600px;\n$break-mobile: 480px;\n$break-zoomed-in: 280px;\n\n// All media queries currently in WordPress:\n//\n// min-width: 2000px\n// min-width: 1680px\n// min-width: 1250px\n// max-width: 1120px *\n// max-width: 1000px\n// min-width: 769px and max-width: 1000px\n// max-width: 960px *\n// max-width: 900px\n// max-width: 850px\n// min-width: 800px and max-width: 1499px\n// max-width: 800px\n// max-width: 799px\n// max-width: 782px *\n// max-width: 768px\n// max-width: 640px *\n// max-width: 600px *\n// max-width: 520px\n// max-width: 500px\n// max-width: 480px *\n// max-width: 400px *\n// max-width: 380px\n// max-width: 320px *\n//\n// Those marked * seem to be more commonly used than the others.\n// Let's try and use as few of these as possible, and be mindful about adding new ones, so we don't make the situation worse\n","@import \"node_modules/@wordpress/base-styles/variables\";\n@import \"node_modules/@wordpress/base-styles/colors\";\n@import \"node_modules/@wordpress/base-styles/mixins\";\n@import \"node_modules/@wordpress/base-styles/breakpoints\";\n\n/**\n * #.# Common SCSS\n *\n * Can include things like variables and mixins\n * that are used across the project.\n*/\n\n// Colors.\n$black: rgb(41, 41, 41);\n$white: #f4f4f4;\n$gray: #dedede;\n$green: #bada55;\n$red: orangered;\n$blue: rgb(78, 56, 177);\n$lightblu: #f0ecff;\n$midblu:#a698d8;\n","@import \"../common.scss\";\n/**\n * #.# Editor Styles\n *\n * CSS for just Backend enqueued after style.scss\n * which makes it higher in priority.\n */\n\n.wp-block-cgb-block-uji-countdown-2020 {\n background: $green;\n border: 0.2rem solid $black;\n color: $black;\n margin: 0 auto;\n max-width: 740px;\n padding: 2rem;\n}"],"names":[],"sourceRoot":""}
dist/ujicount.js ADDED
@@ -0,0 +1,799 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /******/ (function() { // webpackBootstrap
2
+ /******/ "use strict";
3
+ /******/ var __webpack_modules__ = ({
4
+
5
+ /***/ "./src/block/block.js":
6
+ /*!****************************!*\
7
+ !*** ./src/block/block.js ***!
8
+ \****************************/
9
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
10
+
11
+ __webpack_require__.r(__webpack_exports__);
12
+ /* harmony import */ var _block_json__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./block.json */ "./src/block/block.json");
13
+ /* harmony import */ var _edit__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./edit */ "./src/block/edit.js");
14
+ /* harmony import */ var _save__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./save */ "./src/block/save.js");
15
+ /**
16
+ * BLOCK: uji-countdown-2020
17
+ *
18
+ * Registering a basic block with Gutenberg.
19
+ * Simple block, renders and saves the same content without any interactivity.
20
+ */
21
+ // Import CSS.
22
+ //import './editor.scss';
23
+ //import './style.scss';
24
+
25
+
26
+
27
+ const {
28
+ __
29
+ } = wp.i18n; // Import __() from wp.i18n
30
+
31
+ const {
32
+ registerBlockType
33
+ } = wp.blocks; // Import registerBlockType() from wp.blocks
34
+
35
+ const {
36
+ name,
37
+ category,
38
+ attributes
39
+ } = _block_json__WEBPACK_IMPORTED_MODULE_0__;
40
+ /**
41
+ * Register: aa Gutenberg Block.
42
+ *
43
+ * Registers a new block provided a unique name and an object defining its
44
+ * behavior. Once registered, the block is made editor as an option to any
45
+ * editor interface where blocks are implemented.
46
+ *
47
+ * @link https://wordpress.org/gutenberg/handbook/block-api/
48
+ * @param {string} name Block name.
49
+ * @param {Object} settings Block settings.
50
+ * @return {?WPBlock} The block, if it has been successfully
51
+ * registered; otherwise `undefined`.
52
+ */
53
+
54
+ registerBlockType(name, {
55
+ // Block name. Block names must be string that contains a namespace prefix. Example: my-plugin/my-custom-block.
56
+ title: __('Uji Countdown'),
57
+ // Block title.
58
+ icon: 'clock',
59
+ // Block icon from Dashicons → https://developer.wordpress.org/resource/dashicons/.
60
+ category,
61
+ // Block category — Group blocks together based on common traits E.g. common, formatting, layout widgets, embed.
62
+ keywords: [__('Uji Countdown'), __('Countdown Timer'), __('uji-countdown')],
63
+ attributes,
64
+
65
+ /**
66
+ * The edit function describes the structure of your block in the context of the editor.
67
+ * This represents what the editor will render when the block is used.
68
+ *
69
+ * The "edit" property must be a valid function.
70
+ *
71
+ * @link https://wordpress.org/gutenberg/handbook/block-api/block-edit-save/
72
+ *
73
+ * @param {Object} props Props.
74
+ * @returns {Mixed} JSX Component.
75
+ */
76
+ edit: _edit__WEBPACK_IMPORTED_MODULE_1__["default"],
77
+
78
+ /**
79
+ * The save function defines the way in which the different attributes should be combined
80
+ * into the final markup, which is then serialized by Gutenberg into post_content.
81
+ *
82
+ * The "save" property must be specified and must be a valid function.
83
+ *
84
+ * @link https://wordpress.org/gutenberg/handbook/block-api/block-edit-save/
85
+ *
86
+ * @param {Object} props Props.
87
+ * @returns {Mixed} JSX Frontend HTML.
88
+ */
89
+ save: _save__WEBPACK_IMPORTED_MODULE_2__["default"]
90
+ });
91
+
92
+ /***/ }),
93
+
94
+ /***/ "./src/block/edit.js":
95
+ /*!***************************!*\
96
+ !*** ./src/block/edit.js ***!
97
+ \***************************/
98
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
99
+
100
+ __webpack_require__.r(__webpack_exports__);
101
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/element */ "@wordpress/element");
102
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
103
+ /* harmony import */ var _icons__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./icons */ "./src/block/icons.js");
104
+ /* harmony import */ var _inspector__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./inspector */ "./src/block/inspector.js");
105
+ /* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
106
+ /* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__);
107
+
108
+
109
+ /**
110
+ * WordPress dependencies
111
+ */
112
+
113
+
114
+ // import { DateTimePicker } from '@wordpress/components';
115
+ // import { __experimentalGetSettings } from '@wordpress/date';
116
+ // import { withState } from '@wordpress/compose';
117
+
118
+
119
+
120
+ class UjiCountEdit extends _wordpress_element__WEBPACK_IMPORTED_MODULE_0__.Component {
121
+ render() {
122
+ const {
123
+ attributes
124
+ } = this.props;
125
+ const {
126
+ datetime,
127
+ timerType,
128
+ thour,
129
+ tmin,
130
+ tsec,
131
+ url,
132
+ hide,
133
+ blank
134
+ } = attributes;
135
+ const isStyles = typeof ujic_short_vars !== 'undefined' ? true : null;
136
+
137
+ const convertDigit = num => {
138
+ return num.length == 1 ? '0' + num : num;
139
+ };
140
+
141
+ if (isStyles) {
142
+ return (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_inspector__WEBPACK_IMPORTED_MODULE_2__["default"], this.props), timerType === 'onetime' && (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
143
+ className: "wp-block-urc-block"
144
+ }, (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__.__)('Expire on:', 'ujicountdown'), ' ', (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("strong", null, ' ', (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("time", null, datetime), ' '), !hide && (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
145
+ className: "wp-block-span"
146
+ }, (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__.__)('Redirect to:', 'ujicountdown'), ' ', (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("strong", null, " ", url, " "))), timerType === 'repeat' && (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
147
+ className: "wp-block-urc-block"
148
+ }, (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__.__)('Countdown time:', 'ujicountdown'), ' ', (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("strong", null, ' ', (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("time", null, convertDigit(thour), " : ", convertDigit(tmin), ' ', ": ", convertDigit(tsec), ' '), ' '), !hide && (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
149
+ className: "wp-block-span"
150
+ }, (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__.__)('Redirect to:', 'ujicountdown'), ' ', (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("strong", null, " ", url, " "))));
151
+ }
152
+
153
+ return (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_inspector__WEBPACK_IMPORTED_MODULE_2__["default"], this.props), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
154
+ className: "wp-block-urc-block"
155
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("h5", {
156
+ style: {
157
+ color: 'red',
158
+ textAlign: 'center'
159
+ }
160
+ }, (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__.__)('Plese create a countdown style first.', 'ujicountdown'))));
161
+ }
162
+
163
+ }
164
+
165
+ /* harmony default export */ __webpack_exports__["default"] = (UjiCountEdit);
166
+
167
+ /***/ }),
168
+
169
+ /***/ "./src/block/icons.js":
170
+ /*!****************************!*\
171
+ !*** ./src/block/icons.js ***!
172
+ \****************************/
173
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
174
+
175
+ __webpack_require__.r(__webpack_exports__);
176
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/element */ "@wordpress/element");
177
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
178
+ /* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @wordpress/components */ "@wordpress/components");
179
+ /* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_components__WEBPACK_IMPORTED_MODULE_1__);
180
+
181
+
182
+ /**
183
+ * WordPress dependencies
184
+ */
185
+
186
+ /**
187
+ * Block user interface icons
188
+ */
189
+
190
+ const icons = {};
191
+ icons.imageLeft = (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_1__.SVG, {
192
+ xmlns: "http://www.w3.org/2000/svg",
193
+ viewBox: "0 0 20 20"
194
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_1__.Path, {
195
+ d: "m11 15v-10h-10v10zm2-6h6v-2h-6zm0 4h6v-2h-6z"
196
+ }));
197
+ icons.imageRight = (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_1__.SVG, {
198
+ xmlns: "http://www.w3.org/2000/svg",
199
+ viewBox: "0 0 20 20"
200
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_1__.Path, {
201
+ d: "m19 15v-10h-10v10zm-18-6h6v-2h-6zm0 4h6v-2h-6z"
202
+ }));
203
+ icons.styleHorizontalImageRight = (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_1__.SVG, {
204
+ xmlns: "http://www.w3.org/2000/svg",
205
+ viewBox: "0 0 56 26",
206
+ height: "26",
207
+ width: "56"
208
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_1__.Path, {
209
+ d: "m48 11.0910645v-10.00000005h-10v10.00000005zm-40-6.00000005h24v-2h-24zm0 4v-2h18v2zm40 16.00000005h-10v-10h10zm-40-6v-2h24v2zm0 4v-2h18v2z"
210
+ }));
211
+ icons.styleHorizontalImageLeft = (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_1__.SVG, {
212
+ xmlns: "http://www.w3.org/2000/svg",
213
+ viewBox: "0 0 56 26",
214
+ height: "26",
215
+ width: "56"
216
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_1__.Path, {
217
+ d: "m18 11.0910645v-10.00000005h-10v10.00000005zm6-6.00000005h24v-2h-24zm0 4v-2h18v2zm-6 16.00000005h-10v-10h10zm6-6v-2h24v2zm0 4v-2h18v2z"
218
+ }));
219
+ icons.styleStacked = (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_1__.SVG, {
220
+ xmlns: "http://www.w3.org/2000/svg",
221
+ viewBox: "0 0 56 26",
222
+ height: "26",
223
+ width: "56"
224
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_1__.Path, {
225
+ d: "m26 17v-16h-16v16zm-16 4h10v-2h-10zm0 4v-2h10v2zm36-8h-16v-16h16zm-16 4v-2h10v2zm0 4v-2h10v2z"
226
+ }));
227
+ /* harmony default export */ __webpack_exports__["default"] = (icons);
228
+
229
+ /***/ }),
230
+
231
+ /***/ "./src/block/inspector.js":
232
+ /*!********************************!*\
233
+ !*** ./src/block/inspector.js ***!
234
+ \********************************/
235
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
236
+
237
+ __webpack_require__.r(__webpack_exports__);
238
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/element */ "@wordpress/element");
239
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
240
+ /* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
241
+ /* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__);
242
+ /* harmony import */ var _wordpress_block_editor__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @wordpress/block-editor */ "@wordpress/block-editor");
243
+ /* harmony import */ var _wordpress_block_editor__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_2__);
244
+ /* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @wordpress/components */ "@wordpress/components");
245
+ /* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__);
246
+
247
+
248
+ /*global ujicountdownData*/
249
+
250
+
251
+
252
+
253
+
254
+ const optionsStyles = styles => {
255
+ const stypeOpt = [{
256
+ value: '',
257
+ label: 'Select Timer Style'
258
+ }];
259
+
260
+ if (styles !== null) {
261
+ styles.map(val => {
262
+ stypeOpt.push({
263
+ value: val.value,
264
+ label: val.text
265
+ });
266
+ });
267
+ return stypeOpt;
268
+ } else {
269
+ return null;
270
+ }
271
+ };
272
+
273
+ const Inspector = props => {
274
+ const {
275
+ attributes,
276
+ setAttributes
277
+ } = props;
278
+ const {
279
+ countStyles,
280
+ timerType,
281
+ datetime,
282
+ thour,
283
+ tmin,
284
+ tsec,
285
+ hide,
286
+ url,
287
+ unitNum,
288
+ unitTime,
289
+ repeats,
290
+ news
291
+ } = attributes;
292
+
293
+ const onUpdateDate = dateTime => {
294
+ let newDateTime = moment(dateTime).format('YYYY-MM-DD HH:mm');
295
+ setAttributes({
296
+ datetime: newDateTime
297
+ });
298
+ };
299
+
300
+ const optionsTime = [{
301
+ value: 'second',
302
+ label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Second(s)', 'ujicountdown')
303
+ }, {
304
+ value: 'minute',
305
+ label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Minute(s)', 'ujicountdown')
306
+ }, {
307
+ value: 'hour',
308
+ label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Hour(s)', 'ujicountdown')
309
+ }, {
310
+ value: 'day',
311
+ label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Day(s)', 'ujicountdown')
312
+ }, {
313
+ value: 'week',
314
+ label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Week(s)', 'ujicountdown')
315
+ }, {
316
+ value: 'month',
317
+ label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Month(s)', 'ujicountdown')
318
+ }];
319
+ const optionStyles = typeof ujic_short_vars !== 'undefined' ? optionsStyles(ujic_short_vars.ujic_style) : null;
320
+ const isNews = typeof ujic_extend !== 'undefined' ? true : false;
321
+
322
+ if (!optionStyles) {
323
+ return (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_2__.InspectorControls, null, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__.PanelBody, {
324
+ title: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Countdown Settings', 'ujicountdown'),
325
+ initialOpen: true,
326
+ className: 'urc-settings-insp'
327
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
328
+ className: "urc-border"
329
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
330
+ className: "urc-component"
331
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", null, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("strong", {
332
+ style: {
333
+ color: 'red'
334
+ }
335
+ }, "Plese create a countdown style first."), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("p", null, ' ', "Go to:", ' ', (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("strong", null, "Settings/Uji Countdown"), " and create a style first!", ' '))))));
336
+ } else {
337
+ return (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_2__.InspectorControls, null, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__.PanelBody, {
338
+ title: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Countdown Settings', 'ujicountdown'),
339
+ initialOpen: true,
340
+ className: 'urc-settings-insp'
341
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
342
+ className: "urc-border"
343
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("h4", null, "Select Style: "), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
344
+ className: "urc-component"
345
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__.SelectControl, {
346
+ value: countStyles,
347
+ options: optionStyles,
348
+ onChange: value => setAttributes({
349
+ countStyles: value
350
+ }),
351
+ className: "components-style-field-select"
352
+ }))), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
353
+ className: "urc-border"
354
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("h4", null, "Timer Type: "), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
355
+ className: "urc-component"
356
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__.RadioControl, {
357
+ selected: timerType,
358
+ options: [{
359
+ label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('One Time Timer', 'ujicountdown'),
360
+ value: 'onetime'
361
+ }, {
362
+ label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Repeating Timer', 'ujicountdown'),
363
+ value: 'repeat'
364
+ }],
365
+ onChange: value => setAttributes({
366
+ timerType: value
367
+ })
368
+ }))), timerType === 'onetime' && (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
369
+ className: "urc-border"
370
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("h4", null, "Expiration Date and Time: "), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
371
+ className: "urc-component"
372
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__.PanelRow, null, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__.DateTimePicker, {
373
+ currentDate: datetime,
374
+ onChange: val => onUpdateDate(val),
375
+ is12Hour: false
376
+ }))))), timerType === 'repeat' && (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
377
+ className: "urc-component-time"
378
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("h4", null, "Select Time:"), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
379
+ className: "urc-component"
380
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__.TextControl, {
381
+ type: "number",
382
+ label: "Hours",
383
+ className: "components-time-field-hours-input",
384
+ value: thour,
385
+ onChange: value => setAttributes({
386
+ thour: escape(value)
387
+ })
388
+ }), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("span", {
389
+ className: "urc-time-separator"
390
+ }, ":"), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__.TextControl, {
391
+ type: "number",
392
+ label: "Minutes",
393
+ className: "components-time-field-hours-input",
394
+ value: tmin,
395
+ onChange: value => setAttributes({
396
+ tmin: escape(value)
397
+ })
398
+ }), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("span", {
399
+ className: "urc-time-separator"
400
+ }, ":"), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__.TextControl, {
401
+ type: "number",
402
+ label: "Seconds",
403
+ className: "components-time-field-hours-input",
404
+ value: tsec,
405
+ onChange: value => setAttributes({
406
+ tsec: escape(value)
407
+ })
408
+ })), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("i", null, "This countdown will restart on page load"))), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
409
+ className: "urc-border"
410
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("h4", null, "After expiration: "), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
411
+ className: "urc-component"
412
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__.ToggleControl, {
413
+ label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('After expired', 'ujicountdown'),
414
+ checked: hide,
415
+ help: hide ? (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Hide the countdown.', 'ujicountdown') : (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__.__)('Go to URL.', 'ujicountdown'),
416
+ onChange: () => setAttributes({
417
+ hide: !hide
418
+ })
419
+ }), !hide && (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__.TextControl, {
420
+ type: "text",
421
+ label: "Enter web address:",
422
+ placeholder: "https://",
423
+ value: url,
424
+ onChange: value => setAttributes({
425
+ url: value
426
+ })
427
+ })))), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
428
+ className: "urc-border"
429
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("h4", null, "Recurring Time: "), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
430
+ className: "urc-component urc-flex"
431
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("span", {
432
+ className: "spaceInp"
433
+ }, "Every "), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__.TextControl, {
434
+ type: "number",
435
+ className: "components-time-field-hours-input",
436
+ value: unitNum,
437
+ onChange: value => setAttributes({
438
+ unitNum: escape(value)
439
+ })
440
+ }), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__.SelectControl, {
441
+ value: unitTime,
442
+ options: optionsTime,
443
+ onChange: value => setAttributes({
444
+ unitTime: value
445
+ }),
446
+ className: "components-time-field-hours-select"
447
+ })), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
448
+ className: "urc-component"
449
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("span", {
450
+ className: "spaceInp"
451
+ }, "Repeats "), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__.TextControl, {
452
+ type: "number",
453
+ className: "components-repeat-field-input",
454
+ value: repeats,
455
+ onChange: value => setAttributes({
456
+ repeats: escape(value)
457
+ })
458
+ }), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("i", null, "leave it empty for unlimited")))), isNews && (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
459
+ className: "urc-border"
460
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("h4", null, "Newsletter Form: "), (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
461
+ className: "urc-component"
462
+ }, (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__.TextControl, {
463
+ type: "text",
464
+ value: news,
465
+ placeholder: "Enter your campaign name",
466
+ onChange: value => setAttributes({
467
+ news: escape(value)
468
+ })
469
+ }))))));
470
+ }
471
+ };
472
+
473
+ /* harmony default export */ __webpack_exports__["default"] = (Inspector);
474
+
475
+ /***/ }),
476
+
477
+ /***/ "./src/block/save.js":
478
+ /*!***************************!*\
479
+ !*** ./src/block/save.js ***!
480
+ \***************************/
481
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
482
+
483
+ __webpack_require__.r(__webpack_exports__);
484
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/element */ "@wordpress/element");
485
+ /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
486
+
487
+
488
+ /**
489
+ * WordPress dependencies
490
+ */
491
+
492
+
493
+ const save = _ref => {
494
+ let {
495
+ attributes
496
+ } = _ref;
497
+ const {
498
+ countStyles,
499
+ timerType,
500
+ datetime,
501
+ thour,
502
+ tmin,
503
+ tsec,
504
+ hide,
505
+ url,
506
+ unitNum,
507
+ unitTime,
508
+ repeats,
509
+ news
510
+ } = attributes;
511
+ const isHide = hide ? 'true' : 'false';
512
+ const tim = timerType === 'repeat' && thour && tmin && tsec ? true : false;
513
+ const exp = datetime ? datetime.replace(/\//g, '-') : '';
514
+ const expTime = timerType === 'onetime' && exp && !tim ? 'expire="' + exp + '"' : '';
515
+ const timerTime = tim ? 'timer="' + thour + ':' + tmin + ':' + tsec + '"' : '';
516
+ const isNews = news ? ' subscr="' + news : ' subscr="undefined"';
517
+ const rectype = unitNum && repeats ? unitTime : ''; // [ujicountdown id="test" expire="2020/04/30 06:04" hide="true" url="" subscr="undefined" recurring="" rectype="second" repeats=""]
518
+
519
+ const myShortcode = '[ujicountdown id="' + countStyles + '" ' + expTime + ' ' + timerTime + ' hide="' + isHide + '" url="' + url + '"' + isNews + '" recurring="' + repeats + '" rectype="' + rectype + '" repeats="' + repeats + '"]';
520
+ return (0,_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__.RawHTML, null, myShortcode);
521
+ };
522
+
523
+ /* harmony default export */ __webpack_exports__["default"] = (save);
524
+
525
+ /***/ }),
526
+
527
+ /***/ "./src/ujicount.js":
528
+ /*!*************************!*\
529
+ !*** ./src/ujicount.js ***!
530
+ \*************************/
531
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
532
+
533
+ __webpack_require__.r(__webpack_exports__);
534
+ /* harmony import */ var _block_editor_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./block/editor.scss */ "./src/block/editor.scss");
535
+ /* harmony import */ var _block_style_scss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./block/style.scss */ "./src/block/style.scss");
536
+ /* harmony import */ var _block_block_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./block/block.js */ "./src/block/block.js");
537
+ /**
538
+ * Gutenberg Blocks
539
+ *
540
+ * All blocks related JavaScript files should be imported here.
541
+ * You can create a new block folder in this dir and include code
542
+ * for that block here as well.
543
+ *
544
+ * All blocks should be included here since this is the file that
545
+ * Webpack is compiling as the input file.
546
+ */
547
+ // Import CSS.
548
+ //import './common.scss';
549
+
550
+
551
+
552
+
553
+ /***/ }),
554
+
555
+ /***/ "./src/block/editor.scss":
556
+ /*!*******************************!*\
557
+ !*** ./src/block/editor.scss ***!
558
+ \*******************************/
559
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
560
+
561
+ __webpack_require__.r(__webpack_exports__);
562
+ // extracted by mini-css-extract-plugin
563
+
564
+
565
+ /***/ }),
566
+
567
+ /***/ "./src/block/style.scss":
568
+ /*!******************************!*\
569
+ !*** ./src/block/style.scss ***!
570
+ \******************************/
571
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
572
+
573
+ __webpack_require__.r(__webpack_exports__);
574
+ // extracted by mini-css-extract-plugin
575
+
576
+
577
+ /***/ }),
578
+
579
+ /***/ "@wordpress/block-editor":
580
+ /*!*************************************!*\
581
+ !*** external ["wp","blockEditor"] ***!
582
+ \*************************************/
583
+ /***/ (function(module) {
584
+
585
+ module.exports = window["wp"]["blockEditor"];
586
+
587
+ /***/ }),
588
+
589
+ /***/ "@wordpress/components":
590
+ /*!************************************!*\
591
+ !*** external ["wp","components"] ***!
592
+ \************************************/
593
+ /***/ (function(module) {
594
+
595
+ module.exports = window["wp"]["components"];
596
+
597
+ /***/ }),
598
+
599
+ /***/ "@wordpress/element":
600
+ /*!*********************************!*\
601
+ !*** external ["wp","element"] ***!
602
+ \*********************************/
603
+ /***/ (function(module) {
604
+
605
+ module.exports = window["wp"]["element"];
606
+
607
+ /***/ }),
608
+
609
+ /***/ "@wordpress/i18n":
610
+ /*!******************************!*\
611
+ !*** external ["wp","i18n"] ***!
612
+ \******************************/
613
+ /***/ (function(module) {
614
+
615
+ module.exports = window["wp"]["i18n"];
616
+
617
+ /***/ }),
618
+
619
+ /***/ "./src/block/block.json":
620
+ /*!******************************!*\
621
+ !*** ./src/block/block.json ***!
622
+ \******************************/
623
+ /***/ (function(module) {
624
+
625
+ module.exports = JSON.parse('{"name":"urc/block-uji-countdown-2020","category":"common","attributes":{"countStyles":{"type":"string","default":""},"datetime":{"type":"string","default":"2022-01-01 12:00:00"},"timeonly":{"type":"string","default":"12:00"},"isStackedOnMobile":{"type":"boolean","default":false},"timerType":{"type":"string","default":"onetime"},"thour":{"type":"string","default":""},"tmin":{"type":"string","default":""},"tsec":{"type":"string","default":""},"hide":{"type":"boolean","default":true},"url":{"type":"string","default":""},"unitNum":{"type":"string","default":"hou"},"unitTime":{"type":"string","default":"sec"},"repeats":{"type":"string","default":""},"news":{"type":"string","default":""}}}');
626
+
627
+ /***/ })
628
+
629
+ /******/ });
630
+ /************************************************************************/
631
+ /******/ // The module cache
632
+ /******/ var __webpack_module_cache__ = {};
633
+ /******/
634
+ /******/ // The require function
635
+ /******/ function __webpack_require__(moduleId) {
636
+ /******/ // Check if module is in cache
637
+ /******/ var cachedModule = __webpack_module_cache__[moduleId];
638
+ /******/ if (cachedModule !== undefined) {
639
+ /******/ return cachedModule.exports;
640
+ /******/ }
641
+ /******/ // Create a new module (and put it into the cache)
642
+ /******/ var module = __webpack_module_cache__[moduleId] = {
643
+ /******/ // no module.id needed
644
+ /******/ // no module.loaded needed
645
+ /******/ exports: {}
646
+ /******/ };
647
+ /******/
648
+ /******/ // Execute the module function
649
+ /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
650
+ /******/
651
+ /******/ // Return the exports of the module
652
+ /******/ return module.exports;
653
+ /******/ }
654
+ /******/
655
+ /******/ // expose the modules object (__webpack_modules__)
656
+ /******/ __webpack_require__.m = __webpack_modules__;
657
+ /******/
658
+ /************************************************************************/
659
+ /******/ /* webpack/runtime/chunk loaded */
660
+ /******/ !function() {
661
+ /******/ var deferred = [];
662
+ /******/ __webpack_require__.O = function(result, chunkIds, fn, priority) {
663
+ /******/ if(chunkIds) {
664
+ /******/ priority = priority || 0;
665
+ /******/ for(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];
666
+ /******/ deferred[i] = [chunkIds, fn, priority];
667
+ /******/ return;
668
+ /******/ }
669
+ /******/ var notFulfilled = Infinity;
670
+ /******/ for (var i = 0; i < deferred.length; i++) {
671
+ /******/ var chunkIds = deferred[i][0];
672
+ /******/ var fn = deferred[i][1];
673
+ /******/ var priority = deferred[i][2];
674
+ /******/ var fulfilled = true;
675
+ /******/ for (var j = 0; j < chunkIds.length; j++) {
676
+ /******/ if ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {
677
+ /******/ chunkIds.splice(j--, 1);
678
+ /******/ } else {
679
+ /******/ fulfilled = false;
680
+ /******/ if(priority < notFulfilled) notFulfilled = priority;
681
+ /******/ }
682
+ /******/ }
683
+ /******/ if(fulfilled) {
684
+ /******/ deferred.splice(i--, 1)
685
+ /******/ var r = fn();
686
+ /******/ if (r !== undefined) result = r;
687
+ /******/ }
688
+ /******/ }
689
+ /******/ return result;
690
+ /******/ };
691
+ /******/ }();
692
+ /******/
693
+ /******/ /* webpack/runtime/compat get default export */
694
+ /******/ !function() {
695
+ /******/ // getDefaultExport function for compatibility with non-harmony modules
696
+ /******/ __webpack_require__.n = function(module) {
697
+ /******/ var getter = module && module.__esModule ?
698
+ /******/ function() { return module['default']; } :
699
+ /******/ function() { return module; };
700
+ /******/ __webpack_require__.d(getter, { a: getter });
701
+ /******/ return getter;
702
+ /******/ };
703
+ /******/ }();
704
+ /******/
705
+ /******/ /* webpack/runtime/define property getters */
706
+ /******/ !function() {
707
+ /******/ // define getter functions for harmony exports
708
+ /******/ __webpack_require__.d = function(exports, definition) {
709
+ /******/ for(var key in definition) {
710
+ /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
711
+ /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
712
+ /******/ }
713
+ /******/ }
714
+ /******/ };
715
+ /******/ }();
716
+ /******/
717
+ /******/ /* webpack/runtime/hasOwnProperty shorthand */
718
+ /******/ !function() {
719
+ /******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }
720
+ /******/ }();
721
+ /******/
722
+ /******/ /* webpack/runtime/make namespace object */
723
+ /******/ !function() {
724
+ /******/ // define __esModule on exports
725
+ /******/ __webpack_require__.r = function(exports) {
726
+ /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
727
+ /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
728
+ /******/ }
729
+ /******/ Object.defineProperty(exports, '__esModule', { value: true });
730
+ /******/ };
731
+ /******/ }();
732
+ /******/
733
+ /******/ /* webpack/runtime/jsonp chunk loading */
734
+ /******/ !function() {
735
+ /******/ // no baseURI
736
+ /******/
737
+ /******/ // object to store loaded and loading chunks
738
+ /******/ // undefined = chunk not loaded, null = chunk preloaded/prefetched
739
+ /******/ // [resolve, reject, Promise] = chunk loading, 0 = chunk loaded
740
+ /******/ var installedChunks = {
741
+ /******/ "ujicount": 0,
742
+ /******/ "style-ujicount": 0
743
+ /******/ };
744
+ /******/
745
+ /******/ // no chunk on demand loading
746
+ /******/
747
+ /******/ // no prefetching
748
+ /******/
749
+ /******/ // no preloaded
750
+ /******/
751
+ /******/ // no HMR
752
+ /******/
753
+ /******/ // no HMR manifest
754
+ /******/
755
+ /******/ __webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };
756
+ /******/
757
+ /******/ // install a JSONP callback for chunk loading
758
+ /******/ var webpackJsonpCallback = function(parentChunkLoadingFunction, data) {
759
+ /******/ var chunkIds = data[0];
760
+ /******/ var moreModules = data[1];
761
+ /******/ var runtime = data[2];
762
+ /******/ // add "moreModules" to the modules object,
763
+ /******/ // then flag all "chunkIds" as loaded and fire callback
764
+ /******/ var moduleId, chunkId, i = 0;
765
+ /******/ if(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {
766
+ /******/ for(moduleId in moreModules) {
767
+ /******/ if(__webpack_require__.o(moreModules, moduleId)) {
768
+ /******/ __webpack_require__.m[moduleId] = moreModules[moduleId];
769
+ /******/ }
770
+ /******/ }
771
+ /******/ if(runtime) var result = runtime(__webpack_require__);
772
+ /******/ }
773
+ /******/ if(parentChunkLoadingFunction) parentChunkLoadingFunction(data);
774
+ /******/ for(;i < chunkIds.length; i++) {
775
+ /******/ chunkId = chunkIds[i];
776
+ /******/ if(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {
777
+ /******/ installedChunks[chunkId][0]();
778
+ /******/ }
779
+ /******/ installedChunks[chunkId] = 0;
780
+ /******/ }
781
+ /******/ return __webpack_require__.O(result);
782
+ /******/ }
783
+ /******/
784
+ /******/ var chunkLoadingGlobal = self["webpackChunkuji_countdown"] = self["webpackChunkuji_countdown"] || [];
785
+ /******/ chunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));
786
+ /******/ chunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));
787
+ /******/ }();
788
+ /******/
789
+ /************************************************************************/
790
+ /******/
791
+ /******/ // startup
792
+ /******/ // Load entry module and return exports
793
+ /******/ // This entry module depends on other loaded chunks and execution need to be delayed
794
+ /******/ var __webpack_exports__ = __webpack_require__.O(undefined, ["style-ujicount"], function() { return __webpack_require__("./src/ujicount.js"); })
795
+ /******/ __webpack_exports__ = __webpack_require__.O(__webpack_exports__);
796
+ /******/
797
+ /******/ })()
798
+ ;
799
+ //# sourceMappingURL=ujicount.js.map
dist/ujicount.js.map ADDED
@@ -0,0 +1 @@
 
1
+ {"version":3,"file":"ujicount.js","mappings":"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","sources":["webpack://uji-countdown/./src/block/block.js","webpack://uji-countdown/./src/block/edit.js","webpack://uji-countdown/./src/block/icons.js","webpack://uji-countdown/./src/block/inspector.js","webpack://uji-countdown/./src/block/save.js","webpack://uji-countdown/./src/ujicount.js","webpack://uji-countdown/./src/block/editor.scss","webpack://uji-countdown/./src/block/style.scss","webpack://uji-countdown/external window [\"wp\",\"blockEditor\"]","webpack://uji-countdown/external window [\"wp\",\"components\"]","webpack://uji-countdown/external window [\"wp\",\"element\"]","webpack://uji-countdown/external window [\"wp\",\"i18n\"]","webpack://uji-countdown/webpack/bootstrap","webpack://uji-countdown/webpack/runtime/chunk loaded","webpack://uji-countdown/webpack/runtime/compat get default export","webpack://uji-countdown/webpack/runtime/define property getters","webpack://uji-countdown/webpack/runtime/hasOwnProperty shorthand","webpack://uji-countdown/webpack/runtime/make namespace object","webpack://uji-countdown/webpack/runtime/jsonp chunk loading","webpack://uji-countdown/webpack/before-startup","webpack://uji-countdown/webpack/startup","webpack://uji-countdown/webpack/after-startup"],"sourcesContent":["/**\n * BLOCK: uji-countdown-2020\n *\n * Registering a basic block with Gutenberg.\n * Simple block, renders and saves the same content without any interactivity.\n */\n\n// Import CSS.\n\n//import './editor.scss';\n//import './style.scss';\n\nimport metadata from './block.json';\nimport edit from './edit';\nimport save from './save';\n\nconst { __ } = wp.i18n; // Import __() from wp.i18n\nconst { registerBlockType } = wp.blocks; // Import registerBlockType() from wp.blocks\n\nconst { name, category, attributes } = metadata;\n\n/**\n * Register: aa Gutenberg Block.\n *\n * Registers a new block provided a unique name and an object defining its\n * behavior. Once registered, the block is made editor as an option to any\n * editor interface where blocks are implemented.\n *\n * @link https://wordpress.org/gutenberg/handbook/block-api/\n * @param {string} name Block name.\n * @param {Object} settings Block settings.\n * @return {?WPBlock} The block, if it has been successfully\n * registered; otherwise `undefined`.\n */\nregisterBlockType(name, {\n\t// Block name. Block names must be string that contains a namespace prefix. Example: my-plugin/my-custom-block.\n\ttitle: __('Uji Countdown'), // Block title.\n\ticon: 'clock', // Block icon from Dashicons → https://developer.wordpress.org/resource/dashicons/.\n\tcategory, // Block category — Group blocks together based on common traits E.g. common, formatting, layout widgets, embed.\n\tkeywords: [__('Uji Countdown'), __('Countdown Timer'), __('uji-countdown')],\n\n\tattributes,\n\n\t/**\n\t * The edit function describes the structure of your block in the context of the editor.\n\t * This represents what the editor will render when the block is used.\n\t *\n\t * The \"edit\" property must be a valid function.\n\t *\n\t * @link https://wordpress.org/gutenberg/handbook/block-api/block-edit-save/\n\t *\n\t * @param {Object} props Props.\n\t * @returns {Mixed} JSX Component.\n\t */\n\tedit,\n\n\t/**\n\t * The save function defines the way in which the different attributes should be combined\n\t * into the final markup, which is then serialized by Gutenberg into post_content.\n\t *\n\t * The \"save\" property must be specified and must be a valid function.\n\t *\n\t * @link https://wordpress.org/gutenberg/handbook/block-api/block-edit-save/\n\t *\n\t * @param {Object} props Props.\n\t * @returns {Mixed} JSX Frontend HTML.\n\t */\n\tsave,\n});\n","/**\n * WordPress dependencies\n */\n\nimport icons from './icons';\nimport InspectorControls from './inspector';\n\nimport { __ } from '@wordpress/i18n';\n\n// import { DateTimePicker } from '@wordpress/components';\n// import { __experimentalGetSettings } from '@wordpress/date';\n// import { withState } from '@wordpress/compose';\n\nimport { Component, Fragment } from '@wordpress/element';\n\nclass UjiCountEdit extends Component {\n\trender() {\n\t\tconst { attributes } = this.props;\n\n\t\tconst { datetime, timerType, thour, tmin, tsec, url, hide, blank } =\n\t\t\tattributes;\n\n\t\tconst isStyles = typeof ujic_short_vars !== 'undefined' ? true : null;\n\n\t\tconst convertDigit = (num) => {\n\t\t\treturn num.length == 1 ? '0' + num : num;\n\t\t};\n\n\t\tif (isStyles) {\n\t\t\treturn (\n\t\t\t\t<Fragment>\n\t\t\t\t\t<InspectorControls {...this.props} />\n\t\t\t\t\t{timerType === 'onetime' && (\n\t\t\t\t\t\t<div className=\"wp-block-urc-block\">\n\t\t\t\t\t\t\t{__('Expire on:', 'ujicountdown')}{' '}\n\t\t\t\t\t\t\t<strong>\n\t\t\t\t\t\t\t\t{' '}\n\t\t\t\t\t\t\t\t<time>{datetime}</time>{' '}\n\t\t\t\t\t\t\t</strong>\n\t\t\t\t\t\t\t{!hide && (\n\t\t\t\t\t\t\t\t<div className=\"wp-block-span\">\n\t\t\t\t\t\t\t\t\t{__('Redirect to:', 'ujicountdown')}{' '}\n\t\t\t\t\t\t\t\t\t<strong> {url} </strong>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t\t{timerType === 'repeat' && (\n\t\t\t\t\t\t<div className=\"wp-block-urc-block\">\n\t\t\t\t\t\t\t{__('Countdown time:', 'ujicountdown')}{' '}\n\t\t\t\t\t\t\t<strong>\n\t\t\t\t\t\t\t\t{' '}\n\t\t\t\t\t\t\t\t<time>\n\t\t\t\t\t\t\t\t\t{convertDigit(thour)} : {convertDigit(tmin)}{' '}\n\t\t\t\t\t\t\t\t\t: {convertDigit(tsec)}{' '}\n\t\t\t\t\t\t\t\t</time>{' '}\n\t\t\t\t\t\t\t</strong>\n\t\t\t\t\t\t\t{!hide && (\n\t\t\t\t\t\t\t\t<div className=\"wp-block-span\">\n\t\t\t\t\t\t\t\t\t{__('Redirect to:', 'ujicountdown')}{' '}\n\t\t\t\t\t\t\t\t\t<strong> {url} </strong>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</Fragment>\n\t\t\t);\n\t\t}\n\t\treturn (\n\t\t\t<Fragment>\n\t\t\t\t<InspectorControls {...this.props} />\n\t\t\t\t<div className=\"wp-block-urc-block\">\n\t\t\t\t\t<h5 style={{ color: 'red', textAlign: 'center' }}>\n\t\t\t\t\t\t{__(\n\t\t\t\t\t\t\t'Plese create a countdown style first.',\n\t\t\t\t\t\t\t'ujicountdown'\n\t\t\t\t\t\t)}\n\t\t\t\t\t</h5>\n\t\t\t\t</div>\n\t\t\t</Fragment>\n\t\t);\n\t}\n}\n\nexport default UjiCountEdit;\n","/**\n * WordPress dependencies\n */\nimport { SVG, Path } from '@wordpress/components';\n\n/**\n * Block user interface icons\n */\nconst icons = {};\n\nicons.imageLeft = (\n\t<SVG xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\">\n\t\t<Path d=\"m11 15v-10h-10v10zm2-6h6v-2h-6zm0 4h6v-2h-6z\" />\n\t</SVG>\n);\nicons.imageRight = (\n\t<SVG xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\">\n\t\t<Path d=\"m19 15v-10h-10v10zm-18-6h6v-2h-6zm0 4h6v-2h-6z\" />\n\t</SVG>\n);\nicons.styleHorizontalImageRight = (\n\t<SVG\n\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\tviewBox=\"0 0 56 26\"\n\t\theight=\"26\"\n\t\twidth=\"56\"\n\t>\n\t\t<Path d=\"m48 11.0910645v-10.00000005h-10v10.00000005zm-40-6.00000005h24v-2h-24zm0 4v-2h18v2zm40 16.00000005h-10v-10h10zm-40-6v-2h24v2zm0 4v-2h18v2z\" />\n\t</SVG>\n);\nicons.styleHorizontalImageLeft = (\n\t<SVG\n\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\tviewBox=\"0 0 56 26\"\n\t\theight=\"26\"\n\t\twidth=\"56\"\n\t>\n\t\t<Path d=\"m18 11.0910645v-10.00000005h-10v10.00000005zm6-6.00000005h24v-2h-24zm0 4v-2h18v2zm-6 16.00000005h-10v-10h10zm6-6v-2h24v2zm0 4v-2h18v2z\" />\n\t</SVG>\n);\nicons.styleStacked = (\n\t<SVG\n\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\tviewBox=\"0 0 56 26\"\n\t\theight=\"26\"\n\t\twidth=\"56\"\n\t>\n\t\t<Path d=\"m26 17v-16h-16v16zm-16 4h10v-2h-10zm0 4v-2h10v2zm36-8h-16v-16h16zm-16 4v-2h10v2zm0 4v-2h10v2z\" />\n\t</SVG>\n);\n\nexport default icons;\n","/*global ujicountdownData*/\n\nimport { __ } from '@wordpress/i18n';\nimport { Fragment } from '@wordpress/element';\nimport { InspectorControls } from '@wordpress/block-editor';\n\nimport {\n\tPanelBody,\n\tPanelRow,\n\tDateTimePicker,\n\tTextControl,\n\tRadioControl,\n\tToggleControl,\n\tSelectControl,\n} from '@wordpress/components';\n\nconst optionsStyles = (styles) => {\n\tconst stypeOpt = [{ value: '', label: 'Select Timer Style' }];\n\n\tif (styles !== null) {\n\t\tstyles.map((val) => {\n\t\t\tstypeOpt.push({ value: val.value, label: val.text });\n\t\t});\n\t\treturn stypeOpt;\n\t} else {\n\t\treturn null;\n\t}\n};\n\nconst Inspector = (props) => {\n\tconst { attributes, setAttributes } = props;\n\n\tconst {\n\t\tcountStyles,\n\t\ttimerType,\n\t\tdatetime,\n\t\tthour,\n\t\ttmin,\n\t\ttsec,\n\t\thide,\n\t\turl,\n\t\tunitNum,\n\t\tunitTime,\n\t\trepeats,\n\t\tnews,\n\t} = attributes;\n\n\tconst onUpdateDate = (dateTime) => {\n\t\tlet newDateTime = moment(dateTime).format('YYYY-MM-DD HH:mm');\n\t\tsetAttributes({ datetime: newDateTime });\n\t};\n\n\tconst optionsTime = [\n\t\t{ value: 'second', label: __('Second(s)', 'ujicountdown') },\n\t\t{ value: 'minute', label: __('Minute(s)', 'ujicountdown') },\n\t\t{ value: 'hour', label: __('Hour(s)', 'ujicountdown') },\n\t\t{ value: 'day', label: __('Day(s)', 'ujicountdown') },\n\t\t{ value: 'week', label: __('Week(s)', 'ujicountdown') },\n\t\t{ value: 'month', label: __('Month(s)', 'ujicountdown') },\n\t];\n\n\tconst optionStyles =\n\t\ttypeof ujic_short_vars !== 'undefined'\n\t\t\t? optionsStyles(ujic_short_vars.ujic_style)\n\t\t\t: null;\n\tconst isNews = typeof ujic_extend !== 'undefined' ? true : false;\n\n\tif (!optionStyles) {\n\t\treturn (\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody\n\t\t\t\t\ttitle={__('Countdown Settings', 'ujicountdown')}\n\t\t\t\t\tinitialOpen={true}\n\t\t\t\t\tclassName={'urc-settings-insp'}\n\t\t\t\t>\n\t\t\t\t\t<div className=\"urc-border\">\n\t\t\t\t\t\t<div className=\"urc-component\">\n\t\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t\t<strong style={{ color: 'red' }}>\n\t\t\t\t\t\t\t\t\tPlese create a countdown style first.\n\t\t\t\t\t\t\t\t</strong>\n\t\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t\t{' '}\n\t\t\t\t\t\t\t\t\tGo to:{' '}\n\t\t\t\t\t\t\t\t\t<strong>Settings/Uji Countdown</strong> and\n\t\t\t\t\t\t\t\t\tcreate a style first!{' '}\n\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t);\n\t} else {\n\t\treturn (\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody\n\t\t\t\t\ttitle={__('Countdown Settings', 'ujicountdown')}\n\t\t\t\t\tinitialOpen={true}\n\t\t\t\t\tclassName={'urc-settings-insp'}\n\t\t\t\t>\n\t\t\t\t\t<div className=\"urc-border\">\n\t\t\t\t\t\t<h4>Select Style: </h4>\n\t\t\t\t\t\t<div className=\"urc-component\">\n\t\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t\tvalue={countStyles}\n\t\t\t\t\t\t\t\toptions={optionStyles}\n\t\t\t\t\t\t\t\tonChange={(value) =>\n\t\t\t\t\t\t\t\t\tsetAttributes({ countStyles: value })\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tclassName=\"components-style-field-select\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div className=\"urc-border\">\n\t\t\t\t\t\t<h4>Timer Type: </h4>\n\t\t\t\t\t\t<div className=\"urc-component\">\n\t\t\t\t\t\t\t<RadioControl\n\t\t\t\t\t\t\t\tselected={timerType}\n\t\t\t\t\t\t\t\toptions={[\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tlabel: __(\n\t\t\t\t\t\t\t\t\t\t\t'One Time Timer',\n\t\t\t\t\t\t\t\t\t\t\t'ujicountdown'\n\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\tvalue: 'onetime',\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tlabel: __(\n\t\t\t\t\t\t\t\t\t\t\t'Repeating Timer',\n\t\t\t\t\t\t\t\t\t\t\t'ujicountdown'\n\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\tvalue: 'repeat',\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t\t\tonChange={(value) =>\n\t\t\t\t\t\t\t\t\tsetAttributes({ timerType: value })\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t{timerType === 'onetime' && (\n\t\t\t\t\t\t<div className=\"urc-border\">\n\t\t\t\t\t\t\t<h4>Expiration Date and Time: </h4>\n\t\t\t\t\t\t\t<div className=\"urc-component\">\n\t\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t\t<PanelRow>\n\t\t\t\t\t\t\t\t\t\t<DateTimePicker\n\t\t\t\t\t\t\t\t\t\t\tcurrentDate={datetime}\n\t\t\t\t\t\t\t\t\t\t\tonChange={(val) =>\n\t\t\t\t\t\t\t\t\t\t\t\tonUpdateDate(val)\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tis12Hour={false}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</PanelRow>\n\t\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t\t{timerType === 'repeat' && (\n\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t<div className=\"urc-component-time\">\n\t\t\t\t\t\t\t\t<h4>Select Time:</h4>\n\t\t\t\t\t\t\t\t<div className=\"urc-component\">\n\t\t\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t\t\ttype=\"number\"\n\t\t\t\t\t\t\t\t\t\tlabel=\"Hours\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"components-time-field-hours-input\"\n\t\t\t\t\t\t\t\t\t\tvalue={thour}\n\t\t\t\t\t\t\t\t\t\tonChange={(value) =>\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes({\n\t\t\t\t\t\t\t\t\t\t\t\tthour: escape(value),\n\t\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<span className=\"urc-time-separator\">\n\t\t\t\t\t\t\t\t\t\t:\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t\t\ttype=\"number\"\n\t\t\t\t\t\t\t\t\t\tlabel=\"Minutes\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"components-time-field-hours-input\"\n\t\t\t\t\t\t\t\t\t\tvalue={tmin}\n\t\t\t\t\t\t\t\t\t\tonChange={(value) =>\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes({\n\t\t\t\t\t\t\t\t\t\t\t\ttmin: escape(value),\n\t\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<span className=\"urc-time-separator\">\n\t\t\t\t\t\t\t\t\t\t:\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t\t\ttype=\"number\"\n\t\t\t\t\t\t\t\t\t\tlabel=\"Seconds\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"components-time-field-hours-input\"\n\t\t\t\t\t\t\t\t\t\tvalue={tsec}\n\t\t\t\t\t\t\t\t\t\tonChange={(value) =>\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes({\n\t\t\t\t\t\t\t\t\t\t\t\ttsec: escape(value),\n\t\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<i>This countdown will restart on page load</i>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t)}\n\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t<div className=\"urc-border\">\n\t\t\t\t\t\t\t<h4>After expiration: </h4>\n\t\t\t\t\t\t\t<div className=\"urc-component\">\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tlabel={__('After expired', 'ujicountdown')}\n\t\t\t\t\t\t\t\t\tchecked={hide}\n\t\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\t\thide\n\t\t\t\t\t\t\t\t\t\t\t? __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Hide the countdown.',\n\t\t\t\t\t\t\t\t\t\t\t\t\t'ujicountdown'\n\t\t\t\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t\t\t\t: __('Go to URL.', 'ujicountdown')\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tonChange={() =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes({ hide: !hide })\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{!hide && (\n\t\t\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t\t\t\t\tlabel=\"Enter web address:\"\n\t\t\t\t\t\t\t\t\t\tplaceholder=\"https://\"\n\t\t\t\t\t\t\t\t\t\tvalue={url}\n\t\t\t\t\t\t\t\t\t\tonChange={(value) =>\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes({ url: value })\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</Fragment>\n\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t<div className=\"urc-border\">\n\t\t\t\t\t\t\t<h4>Recurring Time: </h4>\n\t\t\t\t\t\t\t<div className=\"urc-component urc-flex\">\n\t\t\t\t\t\t\t\t<span className=\"spaceInp\">Every </span>\n\t\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t\ttype=\"number\"\n\t\t\t\t\t\t\t\t\tclassName=\"components-time-field-hours-input\"\n\t\t\t\t\t\t\t\t\tvalue={unitNum}\n\t\t\t\t\t\t\t\t\tonChange={(value) =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes({\n\t\t\t\t\t\t\t\t\t\t\tunitNum: escape(value),\n\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t\t\tvalue={unitTime}\n\t\t\t\t\t\t\t\t\toptions={optionsTime}\n\t\t\t\t\t\t\t\t\tonChange={(value) =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes({ unitTime: value })\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tclassName=\"components-time-field-hours-select\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div className=\"urc-component\">\n\t\t\t\t\t\t\t\t<span className=\"spaceInp\">Repeats </span>\n\t\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t\ttype=\"number\"\n\t\t\t\t\t\t\t\t\tclassName=\"components-repeat-field-input\"\n\t\t\t\t\t\t\t\t\tvalue={repeats}\n\t\t\t\t\t\t\t\t\tonChange={(value) =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes({\n\t\t\t\t\t\t\t\t\t\t\trepeats: escape(value),\n\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<i>leave it empty for unlimited</i>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</Fragment>\n\t\t\t\t\t{isNews && (\n\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t<div className=\"urc-border\">\n\t\t\t\t\t\t\t\t<h4>Newsletter Form: </h4>\n\t\t\t\t\t\t\t\t<div className=\"urc-component\">\n\t\t\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t\t\t\t\tvalue={news}\n\t\t\t\t\t\t\t\t\t\tplaceholder=\"Enter your campaign name\"\n\t\t\t\t\t\t\t\t\t\tonChange={(value) =>\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes({\n\t\t\t\t\t\t\t\t\t\t\t\tnews: escape(value),\n\t\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t)}\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t);\n\t}\n};\n\nexport default Inspector;\n","/**\n * WordPress dependencies\n */\n\nimport { RawHTML } from '@wordpress/element';\n\nconst save = ({ attributes }) => {\n\tconst {\n\t\tcountStyles,\n\t\ttimerType,\n\t\tdatetime,\n\t\tthour,\n\t\ttmin,\n\t\ttsec,\n\t\thide,\n\t\turl,\n\t\tunitNum,\n\t\tunitTime,\n\t\trepeats,\n\t\tnews,\n\t} = attributes;\n\n\tconst isHide = hide ? 'true' : 'false';\n\n\tconst tim = timerType === 'repeat' && thour && tmin && tsec ? true : false;\n\tconst exp = datetime ? datetime.replace(/\\//g, '-') : '';\n\tconst expTime =\n\t\ttimerType === 'onetime' && exp && !tim ? 'expire=\"' + exp + '\"' : '';\n\tconst timerTime = tim\n\t\t? 'timer=\"' + thour + ':' + tmin + ':' + tsec + '\"'\n\t\t: '';\n\tconst isNews = news ? ' subscr=\"' + news : ' subscr=\"undefined\"';\n\n\tconst rectype = unitNum && repeats ? unitTime : '';\n\n\t// [ujicountdown id=\"test\" expire=\"2020/04/30 06:04\" hide=\"true\" url=\"\" subscr=\"undefined\" recurring=\"\" rectype=\"second\" repeats=\"\"]\n\tconst myShortcode =\n\t\t'[ujicountdown id=\"' +\n\t\tcountStyles +\n\t\t'\" ' +\n\t\texpTime +\n\t\t' ' +\n\t\ttimerTime +\n\t\t' hide=\"' +\n\t\tisHide +\n\t\t'\" url=\"' +\n\t\turl +\n\t\t'\"' +\n\t\tisNews +\n\t\t'\" recurring=\"' +\n\t\trepeats +\n\t\t'\" rectype=\"' +\n\t\trectype +\n\t\t'\" repeats=\"' +\n\t\trepeats +\n\t\t'\"]';\n\n\treturn <RawHTML>{myShortcode}</RawHTML>;\n};\n\nexport default save;\n","/**\n * Gutenberg Blocks\n *\n * All blocks related JavaScript files should be imported here.\n * You can create a new block folder in this dir and include code\n * for that block here as well.\n *\n * All blocks should be included here since this is the file that\n * Webpack is compiling as the input file.\n */\n\n// Import CSS.\n//import './common.scss';\n\nimport './block/editor.scss';\nimport './block/style.scss';\n\nimport './block/block.js';\n","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","module.exports = window[\"wp\"][\"blockEditor\"];","module.exports = window[\"wp\"][\"components\"];","module.exports = window[\"wp\"][\"element\"];","module.exports = window[\"wp\"][\"i18n\"];","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t\"ujicount\": 0,\n\t\"style-ujicount\": 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkuji_countdown\"] = self[\"webpackChunkuji_countdown\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [\"style-ujicount\"], function() { return __webpack_require__(\"./src/ujicount.js\"); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n",""],"names":["metadata","edit","save","__","wp","i18n","registerBlockType","blocks","name","category","attributes","title","icon","keywords","icons","InspectorControls","Component","Fragment","UjiCountEdit","render","props","datetime","timerType","thour","tmin","tsec","url","hide","blank","isStyles","ujic_short_vars","convertDigit","num","length","color","textAlign","SVG","Path","imageLeft","imageRight","styleHorizontalImageRight","styleHorizontalImageLeft","styleStacked","PanelBody","PanelRow","DateTimePicker","TextControl","RadioControl","ToggleControl","SelectControl","optionsStyles","styles","stypeOpt","value","label","map","val","push","text","Inspector","setAttributes","countStyles","unitNum","unitTime","repeats","news","onUpdateDate","dateTime","newDateTime","moment","format","optionsTime","optionStyles","ujic_style","isNews","ujic_extend","escape","RawHTML","isHide","tim","exp","replace","expTime","timerTime","rectype","myShortcode"],"sourceRoot":""}
js/jquery.countdown.js CHANGED
@@ -1 +1 @@
1
- var $jscomp={scope:{}};$jscomp.defineProperty="function"==typeof Object.defineProperties?Object.defineProperty:function(t,e,n){if(n.get||n.set)throw new TypeError("ES3 does not support getters and setters.");t!=Array.prototype&&t!=Object.prototype&&(t[e]=n.value)},$jscomp.getGlobal=function(t){return"undefined"!=typeof window&&window===t?t:"undefined"!=typeof global&&null!=global?global:t},$jscomp.global=$jscomp.getGlobal(this),$jscomp.SYMBOL_PREFIX="jscomp_symbol_",$jscomp.initSymbol=function(){$jscomp.initSymbol=function(){},$jscomp.global.Symbol||($jscomp.global.Symbol=$jscomp.Symbol)},$jscomp.symbolCounter_=0,$jscomp.Symbol=function(t){return $jscomp.SYMBOL_PREFIX+(t||"")+$jscomp.symbolCounter_++},$jscomp.initSymbolIterator=function(){$jscomp.initSymbol();var t=$jscomp.global.Symbol.iterator;t||(t=$jscomp.global.Symbol.iterator=$jscomp.global.Symbol("iterator")),"function"!=typeof Array.prototype[t]&&$jscomp.defineProperty(Array.prototype,t,{configurable:!0,writable:!0,value:function(){return $jscomp.arrayIterator(this)}}),$jscomp.initSymbolIterator=function(){}},$jscomp.arrayIterator=function(t){var e=0;return $jscomp.iteratorPrototype(function(){return e<t.length?{done:!1,value:t[e++]}:{done:!0}})},$jscomp.iteratorPrototype=function(t){return $jscomp.initSymbolIterator(),(t={next:t})[$jscomp.global.Symbol.iterator]=function(){return this},t},$jscomp.array=$jscomp.array||{},$jscomp.iteratorFromArray=function(t,e){$jscomp.initSymbolIterator(),t instanceof String&&(t+="");var n=0,i={next:function(){if(n<t.length){var r=n++;return{value:e(r,t[r]),done:!1}}return i.next=function(){return{done:!0,value:void 0}},i.next()}};return i[Symbol.iterator]=function(){return i},i},$jscomp.polyfill=function(t,e,n,i){if(e){for(n=$jscomp.global,t=t.split("."),i=0;i<t.length-1;i++){var r=t[i];r in n||(n[r]={}),n=n[r]}(e=e(i=n[t=t[t.length-1]]))!=i&&null!=e&&$jscomp.defineProperty(n,t,{configurable:!0,writable:!0,value:e})}},$jscomp.polyfill("Array.prototype.keys",function(t){return t||function(){return $jscomp.iteratorFromArray(this,function(t){return t})}},"es6-impl","es3");var $jscomp$this=this;!function(t,e){"function"==typeof define&&define.amd?define([],e):"object"==typeof module&&module.exports?module.exports=e():t.anime=e()}(this,function(){function t(t){if(!j.col(t))try{return document.querySelectorAll(t)}catch(t){}}function e(t,e){for(var n=t.length,i=2<=arguments.length?arguments[1]:void 0,r=[],o=0;o<n;o++)if(o in t){var s=t[o];e.call(i,s,o,t)&&r.push(s)}return r}function n(t){return t.reduce(function(t,e){return t.concat(j.arr(e)?n(e):e)},[])}function i(e){return j.arr(e)?e:(j.str(e)&&(e=t(e)||e),e instanceof NodeList||e instanceof HTMLCollection?[].slice.call(e):[e])}function r(t,e){return t.some(function(t){return t===e})}function o(t){var e,n={};for(e in t)n[e]=t[e];return n}function s(t,e){var n,i=o(t);for(n in t)i[n]=e.hasOwnProperty(n)?e[n]:t[n];return i}function a(t,e){var n,i=o(t);for(n in e)i[n]=j.und(t[n])?e[n]:t[n];return i}function u(t){if(t=/([\+\-]?[0-9#\.]+)(%|px|pt|em|rem|in|cm|mm|ex|ch|pc|vw|vh|vmin|vmax|deg|rad|turn)?$/.exec(t))return t[2]}function l(t,e){return j.fnc(t)?t(e.target,e.id,e.total):t}function c(t,e){if(e in t.style)return getComputedStyle(t).getPropertyValue(e.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase())||"0"}function p(t,e){return j.dom(t)&&r(T,e)?"transform":j.dom(t)&&(t.getAttribute(e)||j.svg(t)&&t[e])?"attribute":j.dom(t)&&"transform"!==e&&c(t,e)?"css":null!=t[e]?"object":void 0}function d(t,n){switch(p(t,n)){case"transform":return function(t,n){var i=function(t){return-1<t.indexOf("translate")||"perspective"===t?"px":-1<t.indexOf("rotate")||-1<t.indexOf("skew")?"deg":void 0}(n);if(i=-1<n.indexOf("scale")?1:0+i,!(t=t.style.transform))return i;for(var r=[],o=[],s=[],a=/(\w+)\((.+?)\)/g;r=a.exec(t);)o.push(r[1]),s.push(r[2]);return(t=e(s,function(t,e){return o[e]===n})).length?t[0]:i}(t,n);case"css":return c(t,n);case"attribute":return t.getAttribute(n)}return t[n]||0}function f(t,e){var n=/^(\*=|\+=|-=)/.exec(t);if(!n)return t;var i=u(t)||0;switch(e=parseFloat(e),t=parseFloat(t.replace(n[0],"")),n[0][0]){case"+":return e+t+i;case"-":return e-t+i;case"*":return e*t+i}}function h(t,e){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function m(t){t=t.points;for(var e,n=0,i=0;i<t.numberOfItems;i++){var r=t.getItem(i);0<i&&(n+=h(e,r)),e=r}return n}function g(t){if(t.getTotalLength)return t.getTotalLength();switch(t.tagName.toLowerCase()){case"circle":return 2*Math.PI*t.getAttribute("r");case"rect":return 2*t.getAttribute("width")+2*t.getAttribute("height");case"line":return h({x:t.getAttribute("x1"),y:t.getAttribute("y1")},{x:t.getAttribute("x2"),y:t.getAttribute("y2")});case"polyline":return m(t);case"polygon":var e=t.points;return m(t)+h(e.getItem(e.numberOfItems-1),e.getItem(0))}}function _(t,e){function n(n){return n=void 0===n?0:n,t.el.getPointAtLength(1<=e+n?e+n:0)}var i=n(),r=n(-1),o=n(1);switch(t.property){case"x":return i.x;case"y":return i.y;case"angle":return 180*Math.atan2(o.y-r.y,o.x-r.x)/Math.PI}}function y(t,e){var n,i=/-?\d*\.?\d+/g;if(n=j.pth(t)?t.totalLength:t,j.col(n))if(j.rgb(n)){var r=/rgb\((\d+,\s*[\d]+,\s*[\d]+)\)/g.exec(n);n=r?"rgba("+r[1]+",1)":n}else n=j.hex(n)?function(t){t=t.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,function(t,e,n,i){return e+e+n+n+i+i});var e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);return"rgba("+(t=parseInt(e[1],16))+","+parseInt(e[2],16)+","+(e=parseInt(e[3],16))+",1)"}(n):j.hsl(n)?function(t){function e(t,e,n){return 0>n&&(n+=1),1<n&&--n,n<1/6?t+6*(e-t)*n:.5>n?e:n<2/3?t+(e-t)*(2/3-n)*6:t}var n=/hsl\((\d+),\s*([\d.]+)%,\s*([\d.]+)%\)/g.exec(t)||/hsla\((\d+),\s*([\d.]+)%,\s*([\d.]+)%,\s*([\d.]+)\)/g.exec(t);t=parseInt(n[1])/360;var i=parseInt(n[2])/100,r=parseInt(n[3])/100;if(n=n[4]||1,0==i)r=i=t=r;else{var o=.5>r?r*(1+i):r+i-r*i,s=2*r-o;r=e(s,o,t+1/3),i=e(s,o,t),t=e(s,o,t-1/3)}return"rgba("+255*r+","+255*i+","+255*t+","+n+")"}(n):void 0;else r=(r=u(n))?n.substr(0,n.length-r.length):n,n=e&&!/\s/g.test(n)?r+e:r;return{original:n+="",numbers:n.match(i)?n.match(i).map(Number):[0],strings:j.str(t)||e?n.split(i):[]}}function v(t){return e(t=t?n(j.arr(t)?t.map(i):i(t)):[],function(t,e,n){return n.indexOf(t)===e})}function w(t,e){var n=o(e);if(j.arr(t)){var r=t.length;2!==r||j.obj(t[0])?j.fnc(e.duration)||(n.duration=e.duration/r):t={value:t}}return i(t).map(function(t,n){return n=n?0:e.delay,t=j.obj(t)&&!j.pth(t)?t:{value:t},j.und(t.delay)&&(t.delay=n),t}).map(function(t){return a(t,n)})}function b(t,e){var n;return t.tweens.map(function(i){var r=(i=function(t,e){var n,i={};for(n in t){var r=l(t[n],e);j.arr(r)&&1===(r=r.map(function(t){return l(t,e)})).length&&(r=r[0]),i[n]=r}return i.duration=parseFloat(i.duration),i.delay=parseFloat(i.delay),i}(i,e)).value,o=d(e.target,t.name),s=n?n.to.original:o,a=(s=j.arr(r)?r[0]:s,f(j.arr(r)?r[1]:r,s));o=u(a)||u(s)||u(o);return i.from=y(s,o),i.to=y(a,o),i.start=n?n.end:t.offset,i.end=i.start+i.delay+i.duration,i.easing=function(t){return j.arr(t)?k.apply(this,t):I[t]}(i.easing),i.elasticity=(1e3-Math.min(Math.max(i.elasticity,1),999))/1e3,i.isPath=j.pth(r),i.isColor=j.col(i.from.original),i.isColor&&(i.round=1),n=i})}function M(t,e,n,i){var r="delay"===t;return e.length?(r?Math.min:Math.max).apply(Math,e.map(function(e){return e[t]})):r?i.delay:n.offset+i.delay+i.duration}function D(t){var i,r=s(C,t),o=s($,t),u=function(t){var e=v(t);return e.map(function(t,n){return{target:t,id:n,total:e.length}})}(t.targets),l=[],c=a(r,o);for(i in t)c.hasOwnProperty(i)||"targets"===i||l.push({name:i,offset:c.offset,tweens:w(t[i],o)});return t=function(t,i){return e(n(t.map(function(t){return i.map(function(e){var n=p(t.target,e.name);if(n){var i=b(e,t);e={type:n,property:e.name,animatable:t,tweens:i,duration:i[i.length-1].end,delay:i[0].delay}}else e=void 0;return e})})),function(t){return!j.und(t)})}(u,l),a(r,{children:[],animatables:u,animations:t,duration:M("duration",t,r,o),delay:M("delay",t,r,o)})}function S(t){function n(){return window.Promise&&new Promise(function(t){return d=t})}function i(t){return h.reversed?h.duration-t:t}function r(t){for(var n=0,i={},r=h.animations,o=r.length;n<o;){var s=r[n],a=s.animatable,u=(l=s.tweens)[f=l.length-1];f&&(u=e(l,function(e){return t<e.end})[0]||u);for(var l=Math.min(Math.max(t-u.start-u.delay,0),u.duration)/u.duration,p=isNaN(l)?1:u.easing(l,u.elasticity),d=(l=u.to.strings,u.round),f=[],m=void 0,g=(m=u.to.numbers.length,0);g<m;g++){var y=void 0,v=(y=u.to.numbers[g],u.from.numbers[g]);y=u.isPath?_(u.value,p*y):v+p*(y-v);d&&(u.isColor&&2<g||(y=Math.round(y*d)/d)),f.push(y)}if(u=l.length)for(m=l[0],p=0;p<u;p++)d=l[p+1],g=f[p],isNaN(g)||(m=d?m+(g+d):m+(g+" "));else m=f[0];A[s.type](a.target,s.property,m,i,a.id),s.currentValue=m,n++}if(n=Object.keys(i).length)for(r=0;r<n;r++)x||(x=c(document.body,"transform")?"transform":"-webkit-transform"),h.animatables[r].target.style[x]=i[r].join(" ");h.currentTime=t,h.progress=t/h.duration*100}function o(t){h[t]&&h[t](h)}function s(){h.remaining&&!0!==h.remaining&&h.remaining--}function a(t){var e=h.duration,a=h.offset,c=a+h.delay,m=h.currentTime,g=h.reversed,_=i(t);if(h.children.length){var y=h.children,v=y.length;if(_>=h.currentTime)for(var w=0;w<v;w++)y[w].seek(_);else for(;v--;)y[v].seek(_)}(_>=c||!e)&&(h.began||(h.began=!0,o("begin")),o("run")),_>a&&_<e?r(_):(_<=a&&0!==m&&(r(0),g&&s()),(_>=e&&m!==e||!e)&&(r(e),g||s())),o("update"),t>=e&&(h.remaining?(l=u,"alternate"===h.direction&&(h.reversed=!h.reversed)):(h.pause(),h.completed||(h.completed=!0,o("complete"),"Promise"in window&&(d(),f=n()))),p=0)}t=void 0===t?{}:t;var u,l,p=0,d=null,f=n(),h=D(t);return h.reset=function(){var t=h.direction,e=h.loop;for(h.currentTime=0,h.progress=0,h.paused=!0,h.began=!1,h.completed=!1,h.reversed="reverse"===t,h.remaining="alternate"===t&&1===e?2:e,r(0),t=h.children.length;t--;)h.children[t].reset()},h.tick=function(t){u=t,l||(l=u),a((p+u-l)*S.speed)},h.seek=function(t){a(i(t))},h.pause=function(){var t=E.indexOf(h);-1<t&&E.splice(t,1),h.paused=!0},h.play=function(){h.paused&&(h.paused=!1,l=0,p=i(h.currentTime),E.push(h),L||O())},h.reverse=function(){h.reversed=!h.reversed,l=0,p=i(h.currentTime)},h.restart=function(){h.pause(),h.reset(),h.play()},h.finished=f,h.reset(),h.autoplay&&h.play(),h}var x,C={update:void 0,begin:void 0,run:void 0,complete:void 0,loop:1,direction:"normal",autoplay:!0,offset:0},$={duration:1e3,delay:0,easing:"easeOutElastic",elasticity:500,round:0},T="translateX translateY translateZ rotate rotateX rotateY rotateZ scale scaleX scaleY scaleZ skewX skewY perspective".split(" "),j={arr:function(t){return Array.isArray(t)},obj:function(t){return-1<Object.prototype.toString.call(t).indexOf("Object")},pth:function(t){return j.obj(t)&&t.hasOwnProperty("totalLength")},svg:function(t){return t instanceof SVGElement},dom:function(t){return t.nodeType||j.svg(t)},str:function(t){return"string"==typeof t},fnc:function(t){return"function"==typeof t},und:function(t){return void 0===t},hex:function(t){return/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(t)},rgb:function(t){return/^rgb/.test(t)},hsl:function(t){return/^hsl/.test(t)},col:function(t){return j.hex(t)||j.rgb(t)||j.hsl(t)}},k=function(){function t(t,e,n){return(((1-3*n+3*e)*t+(3*n-6*e))*t+3*e)*t}return function(e,n,i,r){if(0<=e&&1>=e&&0<=i&&1>=i){var o=new Float32Array(11);if(e!==n||i!==r)for(var s=0;11>s;++s)o[s]=t(.1*s,e,i);return function(s){if(e===n&&i===r)return s;if(0===s)return 0;if(1===s)return 1;for(var a=0,u=1;10!==u&&o[u]<=s;++u)a+=.1;u=a+(s-o[--u])/(o[u+1]-o[u])*.1;var l=3*(1-3*i+3*e)*u*u+2*(3*i-6*e)*u+3*e;if(.001<=l){for(a=0;4>a&&0!==(l=3*(1-3*i+3*e)*u*u+2*(3*i-6*e)*u+3*e);++a){var c=t(u,e,i)-s;u=u-c/l}s=u}else if(0===l)s=u;else{u=a,a=a+.1;var p=0;do{0<(l=t(c=u+(a-u)/2,e,i)-s)?a=c:u=c}while(1e-7<Math.abs(l)&&10>++p);s=c}return t(s,n,r)}}}}(),I=function(){function t(t,e){return 0===t||1===t?t:-Math.pow(2,10*(t-1))*Math.sin(2*(t-1-e/(2*Math.PI)*Math.asin(1))*Math.PI/e)}var e,n="Quad Cubic Quart Quint Sine Expo Circ Back Elastic".split(" "),i={In:[[.55,.085,.68,.53],[.55,.055,.675,.19],[.895,.03,.685,.22],[.755,.05,.855,.06],[.47,0,.745,.715],[.95,.05,.795,.035],[.6,.04,.98,.335],[.6,-.28,.735,.045],t],Out:[[.25,.46,.45,.94],[.215,.61,.355,1],[.165,.84,.44,1],[.23,1,.32,1],[.39,.575,.565,1],[.19,1,.22,1],[.075,.82,.165,1],[.175,.885,.32,1.275],function(e,n){return 1-t(1-e,n)}],InOut:[[.455,.03,.515,.955],[.645,.045,.355,1],[.77,0,.175,1],[.86,0,.07,1],[.445,.05,.55,.95],[1,0,0,1],[.785,.135,.15,.86],[.68,-.55,.265,1.55],function(e,n){return.5>e?t(2*e,n)/2:1-t(-2*e+2,n)/2}]},r={linear:k(.25,.25,.75,.75)},o={};for(e in i)o.type=e,i[o.type].forEach(function(t){return function(e,i){r["ease"+t.type+n[i]]=j.fnc(e)?e:k.apply($jscomp$this,e)}}(o)),o={type:o.type};return r}(),A={css:function(t,e,n){return t.style[e]=n},attribute:function(t,e,n){return t.setAttribute(e,n)},object:function(t,e,n){return t[e]=n},transform:function(t,e,n,i,r){i[r]||(i[r]=[]),i[r].push(e+"("+n+")")}},E=[],L=0,O=function(){function t(){L=requestAnimationFrame(e)}function e(e){var n=E.length;if(n){for(var i=0;i<n;)E[i]&&E[i].tick(e),i++;t()}else cancelAnimationFrame(L),L=0}return t}();return S.version="2.2.0",S.speed=1,S.running=E,S.remove=function(t){t=v(t);for(var e=E.length;e--;)for(var n=E[e],i=n.animations,o=i.length;o--;)r(t,i[o].animatable.target)&&(i.splice(o,1),i.length||n.pause())},S.getValue=d,S.path=function(e,n){var i=j.str(e)?t(e)[0]:e,r=n||100;return function(t){return{el:i,property:t,totalLength:g(i)*(r/100)}}},S.setDashoffset=function(t){var e=g(t);return t.setAttribute("stroke-dasharray",e),e},S.bezier=k,S.easings=I,S.timeline=function(t){var e=S(t);return e.pause(),e.duration=0,e.add=function(n){return e.children.forEach(function(t){t.began=!0,t.completed=!0}),i(n).forEach(function(n){var i=a(n,s($,t||{}));i.targets=i.targets||t.targets,n=e.duration;var r=i.offset;i.autoplay=!1,i.direction=e.direction,i.offset=j.und(r)?n:f(r,n),e.began=!0,e.completed=!0,e.seek(i.offset),(i=S(i)).began=!0,i.completed=!0,i.duration>n&&(e.duration=i.duration),e.children.push(i)}),e.seek(0),e.reset(),e.autoplay&&e.restart(),e},e},S.random=function(t,e){return Math.floor(Math.random()*(e-t+1))+t},S}),function(){"use strict";var t=!1;window.JQClass=function(){},JQClass.classes={},JQClass.extend=function e(n){var i=this.prototype;t=!0;var r=new this;for(var o in t=!1,n)if("function"==typeof n[o]&&"function"==typeof i[o])r[o]=function(t,e){return function(){var n=this._super;this._super=function(e){return i[t].apply(this,e||[])};var r=e.apply(this,arguments);return this._super=n,r}}(o,n[o]);else if("object"==typeof n[o]&&"object"==typeof i[o]&&"defaultOptions"===o){var s,a=i[o],u=n[o],l={};for(s in a)l[s]=a[s];for(s in u)l[s]=u[s];r[o]=l}else r[o]=n[o];function c(){!t&&this._init&&this._init.apply(this,arguments)}return c.prototype=r,c.prototype.constructor=c,c.extend=e,c}}(),function($){"use strict";function camelCase(t){return t.replace(/-([a-z])/g,function(t,e){return e.toUpperCase()})}JQClass.classes.JQPlugin=JQClass.extend({name:"plugin",defaultOptions:{},regionalOptions:{},deepMerge:!0,_getMarker:function(){return"is-"+this.name},_init:function(){$.extend(this.defaultOptions,this.regionalOptions&&this.regionalOptions[""]||{});var t=camelCase(this.name);$[t]=this,$.fn[t]=function(e){var n=Array.prototype.slice.call(arguments,1),i=this,r=this;return this.each(function(){if("string"==typeof e){if("_"===e[0]||!$[t][e])throw"Unknown method: "+e;var o=$[t][e].apply($[t],[this].concat(n));if(o!==i&&void 0!==o)return r=o,!1}else $[t]._attach(this,e)}),r}},setDefaults:function(t){$.extend(this.defaultOptions,t||{})},_attach:function(t,e){if(!(t=$(t)).hasClass(this._getMarker())){t.addClass(this._getMarker()),e=$.extend(this.deepMerge,{},this.defaultOptions,this._getMetadata(t),e||{});var n=$.extend({name:this.name,elem:t,options:e},this._instSettings(t,e));t.data(this.name,n),this._postAttach(t,n),this.option(t,e)}},_instSettings:function(t,e){return{}},_postAttach:function(t,e){},_getMetadata:function(elem){try{var data=elem.data(this.name.toLowerCase())||"";for(var key in data=data.replace(/(\\?)'/g,function(t,e){return e?"'":'"'}).replace(/([a-zA-Z0-9]+):/g,function(t,e,n){var i=data.substring(0,n).match(/"/g);return i&&i.length%2!=0?e+":":'"'+e+'":'}).replace(/\\:/g,":"),data=$.parseJSON("{"+data+"}"),data)if(data.hasOwnProperty(key)){var value=data[key];"string"==typeof value&&value.match(/^new Date\(([-0-9,\s]*)\)$/)&&(data[key]=eval(value))}return data}catch(t){return{}}},_getInst:function(t){return $(t).data(this.name)||{}},option:function(t,e,n){var i=(t=$(t)).data(this.name),r=e||{};if(!e||"string"==typeof e&&void 0===n)return(r=(i||{}).options)&&e?r[e]:r;t.hasClass(this._getMarker())&&("string"==typeof e&&((r={})[e]=n),this._optionsChanged(t,i,r),$.extend(i.options,r))},_optionsChanged:function(t,e,n){},destroy:function(t){(t=$(t)).hasClass(this._getMarker())&&(this._preDestroy(t,this._getInst(t)),t.removeData(this.name).removeClass(this._getMarker()))},_preDestroy:function(t,e){}}),$.JQPlugin={createPlugin:function(t,e){"object"==typeof t&&(e=t,t="JQPlugin"),t=camelCase(t);var n=camelCase(e.name);JQClass.classes[n]=JQClass.classes[t].extend(e),new JQClass.classes[n]}}}(jQuery),function(t){"use strict";t.JQPlugin.createPlugin({name:"countdown",defaultOptions:{until:null,since:null,timezone:null,serverSync:null,format:"dHMS",layout:"",compact:!1,padZeroes:!1,significant:0,description:"",expiryUrl:"",expiryText:"",alwaysExpire:!1,onExpiry:null,onTick:null,tickInterval:1},regionalOptions:{"":{labels:["Years","Months","Weeks","Days","Hours","Minutes","Seconds"],labels1:["Year","Month","Week","Day","Hour","Minute","Second"],compactLabels:["y","m","w","d"],whichLabels:null,digits:["0","1","2","3","4","5","6","7","8","9"],timeSeparator:":",isRTL:!1}},_rtlClass:"countdown-rtl",_sectionClass:"countdown-section",_amountClass:"countdown-amount",_periodClass:"countdown-period",_rowClass:"countdown-row",_holdingClass:"countdown-holding",_showClass:"countdown-show",_descrClass:"countdown-descr",_timerElems:[],_init:function(){var e=this;this._super(),this._serverSyncs=[];var n="function"==typeof Date.now?Date.now:function(){return(new Date).getTime()},i=window.performance&&"function"==typeof window.performance.now;var r=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||null,o=0;!r||t.noRequestAnimationFrame?(t.noRequestAnimationFrame=null,t.countdown._timer=setInterval(function(){e._updateElems()},1e3)):(o=window.animationStartTime||window.webkitAnimationStartTime||window.mozAnimationStartTime||window.oAnimationStartTime||window.msAnimationStartTime||n(),r(function t(s){var a=s<1e12?i?window.performance.now()+window.performance.timing.navigationStart:n():s||n();a-o>=1e3&&(e._updateElems(),o=a),r(t)}))},UTCDate:function(t,e,n,i,r,o,s,a){"object"==typeof e&&e instanceof Date&&(a=e.getMilliseconds(),s=e.getSeconds(),o=e.getMinutes(),r=e.getHours(),i=e.getDate(),n=e.getMonth(),e=e.getFullYear());var u=new Date;return u.setUTCFullYear(e),u.setUTCDate(1),u.setUTCMonth(n||0),u.setUTCDate(i||1),u.setUTCHours(r||0),u.setUTCMinutes((o||0)-(Math.abs(t)<30?60*t:t)),u.setUTCSeconds(s||0),u.setUTCMilliseconds(a||0),u},periodsToSeconds:function(t){return 31557600*t[0]+2629800*t[1]+604800*t[2]+86400*t[3]+3600*t[4]+60*t[5]+t[6]},resync:function(){var e=this;t("."+this._getMarker()).each(function(){var n=t.data(this,e.name);if(n.options.serverSync){for(var i=null,r=0;r<e._serverSyncs.length;r++)if(e._serverSyncs[r][0]===n.options.serverSync){i=e._serverSyncs[r];break}if(e._eqNull(i[2])){var o=t.isFunction(n.options.serverSync)?n.options.serverSync.apply(this,[]):null;i[2]=(o?(new Date).getTime()-o.getTime():0)-i[1]}n._since&&n._since.setMilliseconds(n._since.getMilliseconds()+i[2]),n._until.setMilliseconds(n._until.getMilliseconds()+i[2])}});for(var n=0;n<e._serverSyncs.length;n++)e._eqNull(e._serverSyncs[n][2])||(e._serverSyncs[n][1]+=e._serverSyncs[n][2],delete e._serverSyncs[n][2])},_instSettings:function(t,e){return{_periods:[0,0,0,0,0,0,0]}},_addElem:function(t){this._hasElem(t)||this._timerElems.push(t)},_hasElem:function(e){return t.inArray(e,this._timerElems)>-1},_removeElem:function(e){this._timerElems=t.map(this._timerElems,function(t){return t===e?null:t})},_updateElems:function(){for(var t=this._timerElems.length-1;t>=0;t--)this._updateCountdown(this._timerElems[t])},_optionsChanged:function(e,n,i){i.layout&&(i.layout=i.layout.replace(/&lt;/g,"<").replace(/&gt;/g,">")),this._resetExtraLabels(n.options,i);var r=n.options.timezone!==i.timezone;t.extend(n.options,i),this._adjustSettings(e,n,!this._eqNull(i.until)||!this._eqNull(i.since)||r);var o=new Date;(n._since&&n._since<o||n._until&&n._until>o)&&this._addElem(e[0]),this._updateCountdown(e,n)},_updateCountdown:function(e,n){if(e=e.jquery?e:t(e),n=n||this._getInst(e)){if(e.html(this._generateHTML(n)).toggleClass(this._rtlClass,n.options.isRTL),"pause"!==n._hold&&t.isFunction(n.options.onTick)){var i="lap"!==n._hold?n._periods:this._calculatePeriods(n,n._show,n.options.significant,new Date);1!==n.options.tickInterval&&this.periodsToSeconds(i)%n.options.tickInterval!=0||n.options.onTick.apply(e[0],[i])}if("pause"!==n._hold&&(n._since?n._now.getTime()<n._since.getTime():n._now.getTime()>=n._until.getTime())&&!n._expiring){if(n._expiring=!0,this._hasElem(e[0])||n.options.alwaysExpire){if(this._removeElem(e[0]),t.isFunction(n.options.onExpiry)&&n.options.onExpiry.apply(e[0],[]),n.options.expiryText){var r=n.options.layout;n.options.layout=n.options.expiryText,this._updateCountdown(e[0],n),n.options.layout=r}n.options.expiryUrl&&(window.location=n.options.expiryUrl)}n._expiring=!1}else"pause"===n._hold&&this._removeElem(e[0])}},_resetExtraLabels:function(t,e){var n=null;for(n in e)n.match(/[Ll]abels[02-9]|compactLabels1/)&&(t[n]=e[n]);for(n in t)n.match(/[Ll]abels[02-9]|compactLabels1/)&&void 0===e[n]&&(t[n]=null)},_eqNull:function(t){return null==t},_adjustSettings:function(e,n,i){for(var r=null,o=0;o<this._serverSyncs.length;o++)if(this._serverSyncs[o][0]===n.options.serverSync){r=this._serverSyncs[o][1];break}var s=null,a=null;if(this._eqNull(r)){var u=t.isFunction(n.options.serverSync)?n.options.serverSync.apply(e[0],[]):null;s=new Date,a=u?s.getTime()-u.getTime():0,this._serverSyncs.push([n.options.serverSync,a])}else s=new Date,a=n.options.serverSync?r:0;var l=n.options.timezone;l=this._eqNull(l)?-s.getTimezoneOffset():l,(i||!i&&this._eqNull(n._until)&&this._eqNull(n._since))&&(n._since=n.options.since,this._eqNull(n._since)||(n._since=this.UTCDate(l,this._determineTime(n._since,null)),n._since&&a&&n._since.setMilliseconds(n._since.getMilliseconds()+a)),n._until=this.UTCDate(l,this._determineTime(n.options.until,s)),a&&n._until.setMilliseconds(n._until.getMilliseconds()+a)),n._show=this._determineShow(n)},_preDestroy:function(t,e){this._removeElem(t[0]),t.empty()},pause:function(t){this._hold(t,"pause")},lap:function(t){this._hold(t,"lap")},resume:function(t){this._hold(t,null)},toggle:function(e){this[(t.data(e,this.name)||{})._hold?"resume":"pause"](e)},toggleLap:function(e){this[(t.data(e,this.name)||{})._hold?"resume":"lap"](e)},_hold:function(e,n){var i=t.data(e,this.name);if(i){if("pause"===i._hold&&!n){i._periods=i._savePeriods;var r=i._since?"-":"+";i[i._since?"_since":"_until"]=this._determineTime(r+i._periods[0]+"y"+r+i._periods[1]+"o"+r+i._periods[2]+"w"+r+i._periods[3]+"d"+r+i._periods[4]+"h"+r+i._periods[5]+"m"+r+i._periods[6]+"s"),this._addElem(e)}i._hold=n,i._savePeriods="pause"===n?i._periods:null,t.data(e,this.name,i),this._updateCountdown(e,i)}},getTimes:function(e){var n=t.data(e,this.name);return n?"pause"===n._hold?n._savePeriods:n._hold?this._calculatePeriods(n,n._show,n.options.significant,new Date):n._periods:null},_determineTime:function(t,e){var n=this,i=this._eqNull(t)?e:"string"==typeof t?function(t){t=t.toLowerCase();for(var e=new Date,i=e.getFullYear(),r=e.getMonth(),o=e.getDate(),s=e.getHours(),a=e.getMinutes(),u=e.getSeconds(),l=/([+-]?[0-9]+)\s*(s|m|h|d|w|o|y)?/g,c=l.exec(t);c;){switch(c[2]||"s"){case"s":u+=parseInt(c[1],10);break;case"m":a+=parseInt(c[1],10);break;case"h":s+=parseInt(c[1],10);break;case"d":o+=parseInt(c[1],10);break;case"w":o+=7*parseInt(c[1],10);break;case"o":r+=parseInt(c[1],10),o=Math.min(o,n._getDaysInMonth(i,r));break;case"y":i+=parseInt(c[1],10),o=Math.min(o,n._getDaysInMonth(i,r))}c=l.exec(t)}return new Date(i,r,o,s,a,u,0)}(t):"number"==typeof t?function(t){var e=new Date;return e.setTime(e.getTime()+1e3*t),e}(t):t;return i&&i.setMilliseconds(0),i},_getDaysInMonth:function(t,e){return 32-new Date(t,e,32).getDate()},_normalLabels:function(t){return t},_generateHTML:function(e){var n=this;e._periods=e._hold?e._periods:this._calculatePeriods(e,e._show,e.options.significant,new Date);var i=!1,r=0,o=e.options.significant,s=t.extend({},e._show),a=null;for(a=0;a<=6;a++)i=i||"?"===e._show[a]&&e._periods[a]>0,s[a]="?"!==e._show[a]||i?e._show[a]:null,r+=s[a]?1:0,o-=e._periods[a]>0?1:0;var u=[!1,!1,!1,!1,!1,!1,!1];for(a=6;a>=0;a--)e._show[a]&&(e._periods[a]?u[a]=!0:(u[a]=o>0,o--));var l=e.options.compact?e.options.compactLabels:e.options.labels,c=e.options.whichLabels||this._normalLabels,p=function(t){var i=e.options["compactLabels"+c(e._periods[t])];return s[t]?n._translateDigits(e,e._periods[t])+(i?i[t]:l[t])+" ":""},d=e.options.padZeroes?2:1,f=function(t){var i=e.options["labels"+c(e._periods[t])];return!e.options.significant&&s[t]||e.options.significant&&u[t]?'<span class="'+n._sectionClass+'"><span class="'+n._amountClass+'">'+n._minDigits(e,e._periods[t],d)+'</span><span class="'+n._periodClass+'">'+(i?i[t]:l[t])+"</span></span>":""};return e.options.layout?this._buildLayout(e,s,e.options.layout,e.options.compact,e.options.significant,u):(e.options.compact?'<span class="'+this._rowClass+" "+this._amountClass+(e._hold?" "+this._holdingClass:"")+'">'+p(0)+p(1)+p(2)+p(3)+(s[4]?this._minDigits(e,e._periods[4],2):"")+(s[5]?(s[4]?e.options.timeSeparator:"")+this._minDigits(e,e._periods[5],2):"")+(s[6]?(s[4]||s[5]?e.options.timeSeparator:"")+this._minDigits(e,e._periods[6],2):""):'<span class="'+this._rowClass+" "+this._showClass+(e.options.significant||r)+(e._hold?" "+this._holdingClass:"")+'">'+f(0)+f(1)+f(2)+f(3)+f(4)+f(5)+f(6))+"</span>"+(e.options.description?'<span class="'+this._rowClass+" "+this._descrClass+'">'+e.options.description+"</span>":"")},_buildLayout:function(e,n,i,r,o,s){for(var a=e.options[r?"compactLabels":"labels"],u=e.options.whichLabels||this._normalLabels,l=function(t){return(e.options[(r?"compactLabels":"labels")+u(e._periods[t])]||a)[t]},c=function(t,n){return e.options.digits[Math.floor(t/n)%10]},p={desc:e.options.description,sep:e.options.timeSeparator,yl:l(0),yn:this._minDigits(e,e._periods[0],1),ynn:this._minDigits(e,e._periods[0],2),ynnn:this._minDigits(e,e._periods[0],3),y1:c(e._periods[0],1),y10:c(e._periods[0],10),y100:c(e._periods[0],100),y1000:c(e._periods[0],1e3),ol:l(1),on:this._minDigits(e,e._periods[1],1),onn:this._minDigits(e,e._periods[1],2),onnn:this._minDigits(e,e._periods[1],3),o1:c(e._periods[1],1),o10:c(e._periods[1],10),o100:c(e._periods[1],100),o1000:c(e._periods[1],1e3),wl:l(2),wn:this._minDigits(e,e._periods[2],1),wnn:this._minDigits(e,e._periods[2],2),wnnn:this._minDigits(e,e._periods[2],3),w1:c(e._periods[2],1),w10:c(e._periods[2],10),w100:c(e._periods[2],100),w1000:c(e._periods[2],1e3),dl:l(3),dn:this._minDigits(e,e._periods[3],1),dnn:this._minDigits(e,e._periods[3],2),dnnn:this._minDigits(e,e._periods[3],3),d1:c(e._periods[3],1),d10:c(e._periods[3],10),d100:c(e._periods[3],100),d1000:c(e._periods[3],1e3),hl:l(4),hn:this._minDigits(e,e._periods[4],1),hnn:this._minDigits(e,e._periods[4],2),hnnn:this._minDigits(e,e._periods[4],3),h1:c(e._periods[4],1),h10:c(e._periods[4],10),h100:c(e._periods[4],100),h1000:c(e._periods[4],1e3),ml:l(5),mn:this._minDigits(e,e._periods[5],1),mnn:this._minDigits(e,e._periods[5],2),mnnn:this._minDigits(e,e._periods[5],3),m1:c(e._periods[5],1),m10:c(e._periods[5],10),m100:c(e._periods[5],100),m1000:c(e._periods[5],1e3),sl:l(6),sn:this._minDigits(e,e._periods[6],1),snn:this._minDigits(e,e._periods[6],2),snnn:this._minDigits(e,e._periods[6],3),s1:c(e._periods[6],1),s10:c(e._periods[6],10),s100:c(e._periods[6],100),s1000:c(e._periods[6],1e3)},d=i,f=0;f<=6;f++){var h="yowdhms".charAt(f),m=new RegExp("\\{"+h+"<\\}([\\s\\S]*)\\{"+h+">\\}","g");d=d.replace(m,!o&&n[f]||o&&s[f]?"$1":"")}return t.each(p,function(t,e){var n=new RegExp("\\{"+t+"\\}","g");d=d.replace(n,e)}),d},_minDigits:function(t,e,n){return(e=""+e).length>=n?this._translateDigits(t,e):(e="0000000000"+e,this._translateDigits(t,e.substr(e.length-n)))},_translateDigits:function(t,e){return(""+e).replace(/[0-9]/g,function(e){return t.options.digits[e]})},_determineShow:function(t){var e=t.options.format,n=[];return n[0]=e.match("y")?"?":e.match("Y")?"!":null,n[1]=e.match("o")?"?":e.match("O")?"!":null,n[2]=e.match("w")?"?":e.match("W")?"!":null,n[3]=e.match("d")?"?":e.match("D")?"!":null,n[4]=e.match("h")?"?":e.match("H")?"!":null,n[5]=e.match("m")?"?":e.match("M")?"!":null,n[6]=e.match("s")?"?":e.match("S")?"!":null,n},_calculatePeriods:function(t,e,n,i){t._now=i,t._now.setMilliseconds(0);var r=new Date(t._now.getTime());t._since?i.getTime()<t._since.getTime()?t._now=i=r:i=t._since:(r.setTime(t._until.getTime()),i.getTime()>t._until.getTime()&&(t._now=i=r));var o=[0,0,0,0,0,0,0];if(e[0]||e[1]){var s=this._getDaysInMonth(i.getFullYear(),i.getMonth()),a=this._getDaysInMonth(r.getFullYear(),r.getMonth()),u=r.getDate()===i.getDate()||r.getDate()>=Math.min(s,a)&&i.getDate()>=Math.min(s,a),l=function(t){return 60*(60*t.getHours()+t.getMinutes())+t.getSeconds()},c=Math.max(0,12*(r.getFullYear()-i.getFullYear())+r.getMonth()-i.getMonth()+(r.getDate()<i.getDate()&&!u||u&&l(r)<l(i)?-1:0));o[0]=e[0]?Math.floor(c/12):0,o[1]=e[1]?c-12*o[0]:0;var p=(i=new Date(i.getTime())).getDate()===s,d=this._getDaysInMonth(i.getFullYear()+o[0],i.getMonth()+o[1]);i.getDate()>d&&i.setDate(d),i.setFullYear(i.getFullYear()+o[0]),i.setMonth(i.getMonth()+o[1]),p&&i.setDate(d)}var f=Math.floor((r.getTime()-i.getTime())/1e3),h=null,m=function(t,n){o[t]=e[t]?Math.floor(f/n):0,f-=o[t]*n};if(m(2,604800),m(3,86400),m(4,3600),m(5,60),m(6,1),f>0&&!t._since){var g=[1,12,4.3482,7,24,60,60],_=6,y=1;for(h=6;h>=0;h--)e[h]&&(o[_]>=y&&(o[_]=0,f=1),f>0&&(o[h]++,f=0,_=h,y=1)),y*=g[h]}if(n)for(h=0;h<=6;h++)n&&o[h]?n--:n||(o[h]=0);return o}})}(jQuery);
1
+ var $jscomp={scope:{}};$jscomp.defineProperty="function"==typeof Object.defineProperties?Object.defineProperty:function(t,e,n){if(n.get||n.set)throw new TypeError("ES3 does not support getters and setters.");t!=Array.prototype&&t!=Object.prototype&&(t[e]=n.value)},$jscomp.getGlobal=function(t){return("undefined"==typeof window||window!==t)&&"undefined"!=typeof global&&null!=global?global:t},$jscomp.global=$jscomp.getGlobal(this),$jscomp.SYMBOL_PREFIX="jscomp_symbol_",$jscomp.initSymbol=function(){$jscomp.initSymbol=function(){},$jscomp.global.Symbol||($jscomp.global.Symbol=$jscomp.Symbol)},$jscomp.symbolCounter_=0,$jscomp.Symbol=function(t){return $jscomp.SYMBOL_PREFIX+(t||"")+$jscomp.symbolCounter_++},$jscomp.initSymbolIterator=function(){$jscomp.initSymbol();var t=(t=$jscomp.global.Symbol.iterator)||($jscomp.global.Symbol.iterator=$jscomp.global.Symbol("iterator"));"function"!=typeof Array.prototype[t]&&$jscomp.defineProperty(Array.prototype,t,{configurable:!0,writable:!0,value:function(){return $jscomp.arrayIterator(this)}}),$jscomp.initSymbolIterator=function(){}},$jscomp.arrayIterator=function(t){var e=0;return $jscomp.iteratorPrototype(function(){return e<t.length?{done:!1,value:t[e++]}:{done:!0}})},$jscomp.iteratorPrototype=function(t){return $jscomp.initSymbolIterator(),(t={next:t})[$jscomp.global.Symbol.iterator]=function(){return this},t},$jscomp.array=$jscomp.array||{},$jscomp.iteratorFromArray=function(e,n){$jscomp.initSymbolIterator(),e instanceof String&&(e+="");var i=0,r={next:function(){if(i<e.length){var t=i++;return{value:n(t,e[t]),done:!1}}return r.next=function(){return{done:!0,value:void 0}},r.next()}};return r[Symbol.iterator]=function(){return r},r},$jscomp.polyfill=function(t,e,n,i){if(e){for(n=$jscomp.global,t=t.split("."),i=0;i<t.length-1;i++){var r=t[i];r in n||(n[r]={}),n=n[r]}(e=e(i=n[t=t[t.length-1]]))!=i&&null!=e&&$jscomp.defineProperty(n,t,{configurable:!0,writable:!0,value:e})}},$jscomp.polyfill("Array.prototype.keys",function(t){return t||function(){return $jscomp.iteratorFromArray(this,function(t){return t})}},"es6-impl","es3");var $jscomp$this=this;!function(t,e){"function"==typeof define&&define.amd?define([],e):"object"==typeof module&&module.exports?module.exports=e():t.anime=e()}(this,function(){function r(t){if(!j.col(t))try{return document.querySelectorAll(t)}catch(t){}}function b(t,e){for(var n,i=t.length,r=2<=arguments.length?e:void 0,o=[],s=0;s<i;s++)s in t&&(n=t[s],e.call(r,n,s,t)&&o.push(n));return o}function l(t){return t.reduce(function(t,e){return t.concat(j.arr(e)?l(e):e)},[])}function c(t){return j.arr(t)?t:(j.str(t)&&(t=r(t)||t),t instanceof NodeList||t instanceof HTMLCollection?[].slice.call(t):[t])}function o(t,e){return t.some(function(t){return t===e})}function p(t){var e,n={};for(e in t)n[e]=t[e];return n}function d(t,e){var n,i=p(t);for(n in t)i[n]=(e.hasOwnProperty(n)?e:t)[n];return i}function f(t,e){var n,i=p(t);for(n in e)i[n]=(j.und(t[n])?e:t)[n];return i}function u(t){if(t=/([\+\-]?[0-9#\.]+)(%|px|pt|em|rem|in|cm|mm|ex|ch|pc|vw|vh|vmin|vmax|deg|rad|turn)?$/.exec(t))return t[2]}function h(t,e){return j.fnc(t)?t(e.target,e.id,e.total):t}function M(t,e){if(e in t.style)return getComputedStyle(t).getPropertyValue(e.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase())||"0"}function m(t,e){return j.dom(t)&&o(T,e)?"transform":j.dom(t)&&(t.getAttribute(e)||j.svg(t)&&t[e])?"attribute":j.dom(t)&&"transform"!==e&&M(t,e)?"css":null!=t[e]?"object":void 0}function g(t,e){switch(m(t,e)){case"transform":return function(t,n){var e=-1<(e=n).indexOf("translate")||"perspective"===e?"px":-1<e.indexOf("rotate")||-1<e.indexOf("skew")?"deg":void 0,e=-1<n.indexOf("scale")?1:0+e;if(!(t=t.style.transform))return e;for(var i,r=[],o=[],s=/(\w+)\((.+?)\)/g;i=s.exec(t);)r.push(i[1]),o.push(i[2]);return(t=b(o,function(t,e){return r[e]===n})).length?t[0]:e}(t,e);case"css":return M(t,e);case"attribute":return t.getAttribute(e)}return t[e]||0}function _(t,e){var n=/^(\*=|\+=|-=)/.exec(t);if(!n)return t;var i=u(t)||0;switch(e=parseFloat(e),t=parseFloat(t.replace(n[0],"")),n[0][0]){case"+":return e+t+i;case"-":return e-t+i;case"*":return e*t+i}}function s(t,e){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function n(t){t=t.points;for(var e,n=0,i=0;i<t.numberOfItems;i++){var r=t.getItem(i);0<i&&(n+=s(e,r)),e=r}return n}function a(t){if(t.getTotalLength)return t.getTotalLength();switch(t.tagName.toLowerCase()){case"circle":return 2*Math.PI*t.getAttribute("r");case"rect":return 2*t.getAttribute("width")+2*t.getAttribute("height");case"line":return s({x:t.getAttribute("x1"),y:t.getAttribute("y1")},{x:t.getAttribute("x2"),y:t.getAttribute("y2")});case"polyline":return n(t);case"polygon":var e=t.points;return n(t)+s(e.getItem(e.numberOfItems-1),e.getItem(0))}}function y(t,e){var n,i,r=/-?\d*\.?\d+/g;return i=j.pth(t)?t.totalLength:t,i=j.col(i)?j.rgb(i)?(n=/rgb\((\d+,\s*[\d]+,\s*[\d]+)\)/g.exec(i))?"rgba("+n[1]+",1)":i:j.hex(i)?function(t){t=t.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,function(t,e,n,i){return e+e+n+n+i+i});var e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);return"rgba("+(t=parseInt(e[1],16))+","+parseInt(e[2],16)+","+(e=parseInt(e[3],16))+",1)"}(i):j.hsl(i)?function(t){function e(t,e,n){return n<0&&(n+=1),1<n&&--n,n<1/6?t+6*(e-t)*n:n<.5?e:n<2/3?t+(e-t)*(2/3-n)*6:t}var n=/hsl\((\d+),\s*([\d.]+)%,\s*([\d.]+)%\)/g.exec(t)||/hsla\((\d+),\s*([\d.]+)%,\s*([\d.]+)%,\s*([\d.]+)\)/g.exec(t);t=parseInt(n[1])/360;var i,r,o=parseInt(n[2])/100,s=parseInt(n[3])/100,n=n[4]||1;return 0==o?s=o=t=s:(s=e(r=2*s-(i=s<.5?s*(1+o):s+o-s*o),i,t+1/3),o=e(r,i,t),t=e(r,i,t-1/3)),"rgba("+255*s+","+255*o+","+255*t+","+n+")"}(i):void 0:(n=(n=u(i))?i.substr(0,i.length-n.length):i,e&&!/\s/g.test(i)?n+e:n),{original:i+="",numbers:i.match(r)?i.match(r).map(Number):[0],strings:j.str(t)||e?i.split(r):[]}}function v(t){return b(t=t?l(j.arr(t)?t.map(c):c(t)):[],function(t,e,n){return n.indexOf(t)===e})}function w(o,s){var a;return o.tweens.map(function(t){var e=(t=function(t,e){var n,i={};for(n in t){var r=h(t[n],e);j.arr(r)&&(1===(r=r.map(function(t){return h(t,e)})).length&&(r=r[0])),i[n]=r}return i.duration=parseFloat(i.duration),i.delay=parseFloat(i.delay),i}(t,s)).value,n=g(s.target,o.name),i=a?a.to.original:n,i=j.arr(e)?e[0]:i,r=_(j.arr(e)?e[1]:e,i),n=u(r)||u(i)||u(n);return t.from=y(i,n),t.to=y(r,n),t.start=a?a.end:o.offset,t.end=t.start+t.delay+t.duration,t.easing=function(t){return j.arr(t)?k.apply(this,t):I[t]}(t.easing),t.elasticity=(1e3-Math.min(Math.max(t.elasticity,1),999))/1e3,t.isPath=j.pth(e),t.isColor=j.col(t.from.original),t.isColor&&(t.round=1),a=t})}function D(e,t,n,i){var r="delay"===e;return t.length?(r?Math.min:Math.max).apply(Math,t.map(function(t){return t[e]})):r?i.delay:n.offset+i.delay+i.duration}function i(t){var e,n,i,r,o=d(C,t),s=d($,t),i=(i=t.targets,(n=v(i)).map(function(t,e){return{target:t,id:e,total:n.length}})),a=[],u=f(o,s);for(e in t)u.hasOwnProperty(e)||"targets"===e||a.push({name:e,offset:u.offset,tweens:function(t,n){var e,i=p(n);return j.arr(t)&&(2!==(e=t.length)||j.obj(t[0])?j.fnc(n.duration)||(i.duration=n.duration/e):t={value:t}),c(t).map(function(t,e){return e=e?0:n.delay,t=j.obj(t)&&!j.pth(t)?t:{value:t},j.und(t.delay)&&(t.delay=e),t}).map(function(t){return f(t,i)})}(t[e],s)});return r=a,f(o,{children:[],animatables:i=i,animations:t=b(l(i.map(function(i){return r.map(function(t){var e,n=m(i.target,t.name);return t=n?(e=w(t,i),{type:n,property:t.name,animatable:i,tweens:e,duration:e[e.length-1].end,delay:e[0].delay}):void 0})})),function(t){return!j.und(t)}),duration:D("duration",t,o,s),delay:D("delay",t,o,s)})}function S(t){function c(){return window.Promise&&new Promise(function(t){return y=t})}function p(t){return w.reversed?w.duration-t:t}function d(e){for(var t=0,n={},i=w.animations,r=i.length;t<r;){var o=i[t],s=o.animatable,a=(u=o.tweens)[p=u.length-1];p&&(a=b(u,function(t){return e<t.end})[0]||a);for(var u=Math.min(Math.max(e-a.start-a.delay,0),a.duration)/a.duration,l=isNaN(u)?1:a.easing(u,a.elasticity),u=a.to.strings,c=a.round,p=[],d=void 0,d=a.to.numbers.length,f=0;f<d;f++){var h=void 0,h=a.to.numbers[f],m=a.from.numbers[f],h=a.isPath?function(e,n){function t(t){return t=void 0===t?0:t,e.el.getPointAtLength(1<=n+t?n+t:0)}var i=t(),r=t(-1),o=t(1);switch(e.property){case"x":return i.x;case"y":return i.y;case"angle":return 180*Math.atan2(o.y-r.y,o.x-r.x)/Math.PI}}(a.value,l*h):m+l*(h-m);c&&(a.isColor&&2<f||(h=Math.round(h*c)/c)),p.push(h)}if(a=u.length)for(d=u[0],l=0;l<a;l++)c=u[l+1],f=p[l],isNaN(f)||(d=c?d+(f+c):d+(f+" "));else d=p[0];A[o.type](s.target,o.property,d,n,s.id),o.currentValue=d,t++}if(t=Object.keys(n).length)for(i=0;i<t;i++)x=x||(M(document.body,"transform")?"transform":"-webkit-transform"),w.animatables[i].target.style[x]=n[i].join(" ");w.currentTime=e,w.progress=e/w.duration*100}function f(t){w[t]&&w[t](w)}function h(){w.remaining&&!0!==w.remaining&&w.remaining--}function e(t){var e=w.duration,n=w.offset,i=n+w.delay,r=w.currentTime,o=w.reversed,s=p(t);if(w.children.length){var a=w.children,u=a.length;if(s>=w.currentTime)for(var l=0;l<u;l++)a[l].seek(s);else for(;u--;)a[u].seek(s)}(i<=s||!e)&&(w.began||(w.began=!0,f("begin")),f("run")),n<s&&s<e?d(s):(s<=n&&0!==r&&(d(0),o&&h()),(e<=s&&r!==e||!e)&&(d(e),o||h())),f("update"),e<=t&&(w.remaining?(g=m,"alternate"===w.direction&&(w.reversed=!w.reversed)):(w.pause(),w.completed||(w.completed=!0,f("complete"),"Promise"in window&&(y(),v=c()))),_=0)}t=void 0===t?{}:t;var m,g,_=0,y=null,v=c(),w=i(t);return w.reset=function(){var t=w.direction,e=w.loop;for(w.currentTime=0,w.progress=0,w.paused=!0,w.began=!1,w.completed=!1,w.reversed="reverse"===t,w.remaining="alternate"===t&&1===e?2:e,d(0),t=w.children.length;t--;)w.children[t].reset()},w.tick=function(t){e((_+(m=t)-(g=g||m))*S.speed)},w.seek=function(t){e(p(t))},w.pause=function(){var t=E.indexOf(w);-1<t&&E.splice(t,1),w.paused=!0},w.play=function(){w.paused&&(w.paused=!1,g=0,_=p(w.currentTime),E.push(w),L||O())},w.reverse=function(){w.reversed=!w.reversed,g=0,_=p(w.currentTime)},w.restart=function(){w.pause(),w.reset(),w.play()},w.finished=v,w.reset(),w.autoplay&&w.play(),w}var x,C={update:void 0,begin:void 0,run:void 0,complete:void 0,loop:1,direction:"normal",autoplay:!0,offset:0},$={duration:1e3,delay:0,easing:"easeOutElastic",elasticity:500,round:0},T="translateX translateY translateZ rotate rotateX rotateY rotateZ scale scaleX scaleY scaleZ skewX skewY perspective".split(" "),j={arr:function(t){return Array.isArray(t)},obj:function(t){return-1<Object.prototype.toString.call(t).indexOf("Object")},pth:function(t){return j.obj(t)&&t.hasOwnProperty("totalLength")},svg:function(t){return t instanceof SVGElement},dom:function(t){return t.nodeType||j.svg(t)},str:function(t){return"string"==typeof t},fnc:function(t){return"function"==typeof t},und:function(t){return void 0===t},hex:function(t){return/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(t)},rgb:function(t){return/^rgb/.test(t)},hsl:function(t){return/^hsl/.test(t)},col:function(t){return j.hex(t)||j.rgb(t)||j.hsl(t)}},k=function(s,a,u,l){if(0<=s&&s<=1&&0<=u&&u<=1){var c=new Float32Array(11);if(s!==a||u!==l)for(var t=0;t<11;++t)c[t]=F(.1*t,s,u);return function(t){if(s===a&&u===l)return t;if(0===t)return 0;if(1===t)return 1;for(var e=0,n=1;10!==n&&c[n]<=t;++n)e+=.1;var n=e+(t-c[--n])/(c[n+1]-c[n])*.1,i=3*(1-3*u+3*s)*n*n+2*(3*u-6*s)*n+3*s;if(.001<=i){for(e=0;e<4&&0!==(i=3*(1-3*u+3*s)*n*n+2*(3*u-6*s)*n+3*s);++e)var r=F(n,s,u)-t,n=n-r/i;t=n}else if(0===i)t=n;else{for(var n=e,e=e+.1,o=0;r=n+(e-n)/2,i=F(r,s,u)-t,0<i?e=r:n=r,1e-7<Math.abs(i)&&++o<10;);t=r}return F(t,a,l)}}},I=function(){function n(t,e){return 0===t||1===t?t:-Math.pow(2,10*(t-1))*Math.sin(2*(t-1-e/(2*Math.PI)*Math.asin(1))*Math.PI/e)}var t,i="Quad Cubic Quart Quint Sine Expo Circ Back Elastic".split(" "),e={In:[[.55,.085,.68,.53],[.55,.055,.675,.19],[.895,.03,.685,.22],[.755,.05,.855,.06],[.47,0,.745,.715],[.95,.05,.795,.035],[.6,.04,.98,.335],[.6,-.28,.735,.045],n],Out:[[.25,.46,.45,.94],[.215,.61,.355,1],[.165,.84,.44,1],[.23,1,.32,1],[.39,.575,.565,1],[.19,1,.22,1],[.075,.82,.165,1],[.175,.885,.32,1.275],function(t,e){return 1-n(1-t,e)}],InOut:[[.455,.03,.515,.955],[.645,.045,.355,1],[.77,0,.175,1],[.86,0,.07,1],[.445,.05,.55,.95],[1,0,0,1],[.785,.135,.15,.86],[.68,-.55,.265,1.55],function(t,e){return t<.5?n(2*t,e)/2:1-n(-2*t+2,e)/2}]},r={linear:k(.25,.25,.75,.75)},o={};for(t in e)o.type=t,e[o.type].forEach(function(n){return function(t,e){r["ease"+n.type+i[e]]=j.fnc(t)?t:k.apply($jscomp$this,t)}}(o)),o={type:o.type};return r}(),A={css:function(t,e,n){return t.style[e]=n},attribute:function(t,e,n){return t.setAttribute(e,n)},object:function(t,e,n){return t[e]=n},transform:function(t,e,n,i,r){i[r]||(i[r]=[]),i[r].push(e+"("+n+")")}},E=[],L=0,O=P;function P(){L=requestAnimationFrame(t)}function t(t){var e=E.length;if(e){for(var n=0;n<e;)E[n]&&E[n].tick(t),n++;P()}else cancelAnimationFrame(L),L=0}function F(t,e,n){return(((1-3*n+3*e)*t+(3*n-6*e))*t+3*e)*t}return S.version="2.2.0",S.speed=1,S.running=E,S.remove=function(t){t=v(t);for(var e=E.length;e--;)for(var n=E[e],i=n.animations,r=i.length;r--;)o(t,i[r].animatable.target)&&(i.splice(r,1),i.length||n.pause())},S.getValue=g,S.path=function(t,e){var n=j.str(t)?r(t)[0]:t,i=e||100;return function(t){return{el:n,property:t,totalLength:a(n)*(i/100)}}},S.setDashoffset=function(t){var e=a(t);return t.setAttribute("stroke-dasharray",e),e},S.bezier=k,S.easings=I,S.timeline=function(i){var r=S(i);return r.pause(),r.duration=0,r.add=function(t){return r.children.forEach(function(t){t.began=!0,t.completed=!0}),c(t).forEach(function(t){var e=f(t,d($,i||{}));e.targets=e.targets||i.targets,t=r.duration;var n=e.offset;e.autoplay=!1,e.direction=r.direction,e.offset=j.und(n)?t:_(n,t),r.began=!0,r.completed=!0,r.seek(e.offset),(e=S(e)).began=!0,e.completed=!0,e.duration>t&&(r.duration=e.duration),r.children.push(e)}),r.seek(0),r.reset(),r.autoplay&&r.restart(),r},r},S.random=function(t,e){return Math.floor(Math.random()*(e-t+1))+t},S}),function(){"use strict";var c=!1;window.JQClass=function(){},JQClass.classes={},JQClass.extend=function t(e){var r=this.prototype;c=!0;var n,i=new this;for(n in c=!1,e)if("function"==typeof e[n]&&"function"==typeof r[n])i[n]=function(n,i){return function(){var t=this._super;this._super=function(t){return r[n].apply(this,t||[])};var e=i.apply(this,arguments);return this._super=t,e}}(n,e[n]);else if("object"==typeof e[n]&&"object"==typeof r[n]&&"defaultOptions"===n){var o,s=r[n],a=e[n],u={};for(o in s)u[o]=s[o];for(o in a)u[o]=a[o];i[n]=u}else i[n]=e[n];function l(){!c&&this._init&&this._init.apply(this,arguments)}return((l.prototype=i).constructor=l).extend=t,l}}(),function($){"use strict";function camelCase(t){return t.replace(/-([a-z])/g,function(t,e){return e.toUpperCase()})}JQClass.classes.JQPlugin=JQClass.extend({name:"plugin",defaultOptions:{},regionalOptions:{},deepMerge:!0,_getMarker:function(){return"is-"+this.name},_init:function(){$.extend(this.defaultOptions,this.regionalOptions&&this.regionalOptions[""]||{});var o=camelCase(this.name);$[o]=this,$.fn[o]=function(e){var n=Array.prototype.slice.call(arguments,1),i=this,r=this;return this.each(function(){if("string"==typeof e){if("_"===e[0]||!$[o][e])throw"Unknown method: "+e;var t=$[o][e].apply($[o],[this].concat(n));if(t!==i&&void 0!==t)return r=t,!1}else $[o]._attach(this,e)}),r}},setDefaults:function(t){$.extend(this.defaultOptions,t||{})},_attach:function(t,e){var n;(t=$(t)).hasClass(this._getMarker())||(t.addClass(this._getMarker()),e=$.extend(this.deepMerge,{},this.defaultOptions,this._getMetadata(t),e||{}),n=$.extend({name:this.name,elem:t,options:e},this._instSettings(t,e)),t.data(this.name,n),this._postAttach(t,n),this.option(t,e))},_instSettings:function(t,e){return{}},_postAttach:function(t,e){},_getMetadata:function(elem){try{var data=elem.data(this.name.toLowerCase())||"",key,data=data.replace(/(\\?)'/g,function(t,e){return e?"'":'"'}).replace(/([a-zA-Z0-9]+):/g,function(t,e,n){n=data.substring(0,n).match(/"/g);return n&&n.length%2!=0?e+":":'"'+e+'":'}).replace(/\\:/g,":"),value;for(key in data=$.parseJSON("{"+data+"}"),data){data.hasOwnProperty(key)&&(value=data[key],"string"==typeof value&&value.match(/^new Date\(([-0-9,\s]*)\)$/)&&(data[key]=eval(value)))}return data}catch(e){return{}}},_getInst:function(t){return $(t).data(this.name)||{}},option:function(t,e,n){var i=(t=$(t)).data(this.name),r=e||{};if(!e||"string"==typeof e&&void 0===n)return(r=(i||{}).options)&&e?r[e]:r;t.hasClass(this._getMarker())&&("string"==typeof e&&((r={})[e]=n),this._optionsChanged(t,i,r),$.extend(i.options,r))},_optionsChanged:function(t,e,n){},destroy:function(t){(t=$(t)).hasClass(this._getMarker())&&(this._preDestroy(t,this._getInst(t)),t.removeData(this.name).removeClass(this._getMarker()))},_preDestroy:function(t,e){}}),$.JQPlugin={createPlugin:function(t,e){"object"==typeof t&&(e=t,t="JQPlugin"),t=camelCase(t);var n=camelCase(e.name);JQClass.classes[n]=JQClass.classes[t].extend(e),new JQClass.classes[n]}}}(jQuery),function(f){"use strict";var t="countdown";f.JQPlugin.createPlugin({name:t,defaultOptions:{until:null,since:null,timezone:null,serverSync:null,format:"dHMS",layout:"",compact:!1,padZeroes:!1,significant:0,description:"",expiryUrl:"",expiryText:"",alwaysExpire:!1,onExpiry:null,onTick:null,tickInterval:1},regionalOptions:{"":{labels:["Years","Months","Weeks","Days","Hours","Minutes","Seconds"],labels1:["Year","Month","Week","Day","Hour","Minute","Second"],compactLabels:["y","m","w","d"],whichLabels:null,digits:["0","1","2","3","4","5","6","7","8","9"],timeSeparator:":",isRTL:!1}},_rtlClass:t+"-rtl",_sectionClass:t+"-section",_amountClass:t+"-amount",_periodClass:t+"-period",_rowClass:t+"-row",_holdingClass:t+"-holding",_showClass:t+"-show",_descrClass:t+"-descr",_timerElems:[],_init:function(){var n=this;this._super(),this._serverSyncs=[];var i="function"==typeof Date.now?Date.now:function(){return(new Date).getTime()},r=window.performance&&"function"==typeof window.performance.now;var o=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||null,s=0;!o||f.noRequestAnimationFrame?(f.noRequestAnimationFrame=null,f.countdown._timer=setInterval(function(){n._updateElems()},1e3)):(s=window.animationStartTime||window.webkitAnimationStartTime||window.mozAnimationStartTime||window.oAnimationStartTime||window.msAnimationStartTime||i(),o(function t(e){e=e<1e12?r?window.performance.now()+window.performance.timing.navigationStart:i():e||i();1e3<=e-s&&(n._updateElems(),s=e),o(t)}))},UTCDate:function(t,e,n,i,r,o,s,a){"object"==typeof e&&e instanceof Date&&(a=e.getMilliseconds(),s=e.getSeconds(),o=e.getMinutes(),r=e.getHours(),i=e.getDate(),n=e.getMonth(),e=e.getFullYear());var u=new Date;return u.setUTCFullYear(e),u.setUTCDate(1),u.setUTCMonth(n||0),u.setUTCDate(i||1),u.setUTCHours(r||0),u.setUTCMinutes((o||0)-(Math.abs(t)<30?60*t:t)),u.setUTCSeconds(s||0),u.setUTCMilliseconds(a||0),u},periodsToSeconds:function(t){return 31557600*t[0]+2629800*t[1]+604800*t[2]+86400*t[3]+3600*t[4]+60*t[5]+t[6]},resync:function(){var r=this;f("."+this._getMarker()).each(function(){var t=f.data(this,r.name);if(t.options.serverSync){for(var e,n=null,i=0;i<r._serverSyncs.length;i++)if(r._serverSyncs[i][0]===t.options.serverSync){n=r._serverSyncs[i];break}r._eqNull(n[2])&&(e=f.isFunction(t.options.serverSync)?t.options.serverSync.apply(this,[]):null,n[2]=(e?(new Date).getTime()-e.getTime():0)-n[1]),t._since&&t._since.setMilliseconds(t._since.getMilliseconds()+n[2]),t._until.setMilliseconds(t._until.getMilliseconds()+n[2])}});for(var t=0;t<r._serverSyncs.length;t++)r._eqNull(r._serverSyncs[t][2])||(r._serverSyncs[t][1]+=r._serverSyncs[t][2],delete r._serverSyncs[t][2])},_instSettings:function(t,e){return{_periods:[0,0,0,0,0,0,0]}},_addElem:function(t){this._hasElem(t)||this._timerElems.push(t)},_hasElem:function(t){return-1<f.inArray(t,this._timerElems)},_removeElem:function(e){this._timerElems=f.map(this._timerElems,function(t){return t===e?null:t})},_updateElems:function(){for(var t=this._timerElems.length-1;0<=t;t--)this._updateCountdown(this._timerElems[t])},_optionsChanged:function(t,e,n){n.layout&&(n.layout=n.layout.replace(/&lt;/g,"<").replace(/&gt;/g,">")),this._resetExtraLabels(e.options,n);var i=e.options.timezone!==n.timezone;f.extend(e.options,n),this._adjustSettings(t,e,!this._eqNull(n.until)||!this._eqNull(n.since)||i);i=new Date;(e._since&&e._since<i||e._until&&e._until>i)&&this._addElem(t[0]),this._updateCountdown(t,e)},_updateCountdown:function(t,e){var n;t=t.jquery?t:f(t),(e=e||this._getInst(t))&&(t.html(this._generateHTML(e)).toggleClass(this._rtlClass,e.options.isRTL),"pause"!==e._hold&&f.isFunction(e.options.onTick)&&(n="lap"!==e._hold?e._periods:this._calculatePeriods(e,e._show,e.options.significant,new Date),1!==e.options.tickInterval&&this.periodsToSeconds(n)%e.options.tickInterval!=0||e.options.onTick.apply(t[0],[n])),"pause"!==e._hold&&(e._since?e._now.getTime()<e._since.getTime():e._now.getTime()>=e._until.getTime())&&!e._expiring?(e._expiring=!0,(this._hasElem(t[0])||e.options.alwaysExpire)&&(this._removeElem(t[0]),f.isFunction(e.options.onExpiry)&&e.options.onExpiry.apply(t[0],[]),e.options.expiryText&&(n=e.options.layout,e.options.layout=e.options.expiryText,this._updateCountdown(t[0],e),e.options.layout=n),e.options.expiryUrl&&(window.location=e.options.expiryUrl)),e._expiring=!1):"pause"===e._hold&&this._removeElem(t[0]))},_resetExtraLabels:function(t,e){var n=null;for(n in e)n.match(/[Ll]abels[02-9]|compactLabels1/)&&(t[n]=e[n]);for(n in t)n.match(/[Ll]abels[02-9]|compactLabels1/)&&void 0===e[n]&&(t[n]=null)},_eqNull:function(t){return null==t},_adjustSettings:function(t,e,n){for(var i=null,r=0;r<this._serverSyncs.length;r++)if(this._serverSyncs[r][0]===e.options.serverSync){i=this._serverSyncs[r][1];break}var o=null,s=null;this._eqNull(i)?(a=f.isFunction(e.options.serverSync)?e.options.serverSync.apply(t[0],[]):null,o=new Date,s=a?o.getTime()-a.getTime():0,this._serverSyncs.push([e.options.serverSync,s])):(o=new Date,s=e.options.serverSync?i:0);var a=e.options.timezone,a=this._eqNull(a)?-o.getTimezoneOffset():a;(n||!n&&this._eqNull(e._until)&&this._eqNull(e._since))&&(e._since=e.options.since,this._eqNull(e._since)||(e._since=this.UTCDate(a,this._determineTime(e._since,null)),e._since&&s&&e._since.setMilliseconds(e._since.getMilliseconds()+s)),e._until=this.UTCDate(a,this._determineTime(e.options.until,o)),s&&e._until.setMilliseconds(e._until.getMilliseconds()+s)),e._show=this._determineShow(e)},_preDestroy:function(t,e){this._removeElem(t[0]),t.empty()},pause:function(t){this._hold(t,"pause")},lap:function(t){this._hold(t,"lap")},resume:function(t){this._hold(t,null)},toggle:function(t){this[(f.data(t,this.name)||{})._hold?"resume":"pause"](t)},toggleLap:function(t){this[(f.data(t,this.name)||{})._hold?"resume":"lap"](t)},_hold:function(t,e){var n,i=f.data(t,this.name);i&&("pause"!==i._hold||e||(i._periods=i._savePeriods,n=i._since?"-":"+",i[i._since?"_since":"_until"]=this._determineTime(n+i._periods[0]+"y"+n+i._periods[1]+"o"+n+i._periods[2]+"w"+n+i._periods[3]+"d"+n+i._periods[4]+"h"+n+i._periods[5]+"m"+n+i._periods[6]+"s"),this._addElem(t)),i._hold=e,i._savePeriods="pause"===e?i._periods:null,f.data(t,this.name,i),this._updateCountdown(t,i))},getTimes:function(t){t=f.data(t,this.name);return t?"pause"===t._hold?t._savePeriods:t._hold?this._calculatePeriods(t,t._show,t.options.significant,new Date):t._periods:null},_determineTime:function(t,e){var n,i,c=this,t=this._eqNull(t)?e:"string"==typeof t?function(t){t=t.toLowerCase();for(var e=new Date,n=e.getFullYear(),i=e.getMonth(),r=e.getDate(),o=e.getHours(),s=e.getMinutes(),a=e.getSeconds(),u=/([+-]?[0-9]+)\s*(s|m|h|d|w|o|y)?/g,l=u.exec(t);l;){switch(l[2]||"s"){case"s":a+=parseInt(l[1],10);break;case"m":s+=parseInt(l[1],10);break;case"h":o+=parseInt(l[1],10);break;case"d":r+=parseInt(l[1],10);break;case"w":r+=7*parseInt(l[1],10);break;case"o":i+=parseInt(l[1],10),r=Math.min(r,c._getDaysInMonth(n,i));break;case"y":n+=parseInt(l[1],10),r=Math.min(r,c._getDaysInMonth(n,i))}l=u.exec(t)}return new Date(n,i,r,o,s,a,0)}(t):"number"==typeof t?(n=t,(i=new Date).setTime(i.getTime()+1e3*n),i):t;return t&&t.setMilliseconds(0),t},_getDaysInMonth:function(t,e){return 32-new Date(t,e,32).getDate()},_normalLabels:function(t){return t},_generateHTML:function(n){var i=this;n._periods=n._hold?n._periods:this._calculatePeriods(n,n._show,n.options.significant,new Date);for(var t=!1,e=0,r=n.options.significant,o=f.extend({},n._show),s=null,s=0;s<=6;s++)t=t||"?"===n._show[s]&&0<n._periods[s],o[s]="?"!==n._show[s]||t?n._show[s]:null,e+=o[s]?1:0,r-=0<n._periods[s]?1:0;var a=[!1,!1,!1,!1,!1,!1,!1];for(s=6;0<=s;s--)n._show[s]&&(n._periods[s]?a[s]=!0:(a[s]=0<r,r--));function u(t){var e=n.options["compactLabels"+p(n._periods[t])];return o[t]?i._translateDigits(n,n._periods[t])+(e||c)[t]+" ":""}function l(t){var e=n.options["labels"+p(n._periods[t])];return!n.options.significant&&o[t]||n.options.significant&&a[t]?'<span class="'+i._sectionClass+'"><span class="'+i._amountClass+'">'+i._minDigits(n,n._periods[t],d)+'</span><span class="'+i._periodClass+'">'+(e||c)[t]+"</span></span>":""}var c=n.options.compact?n.options.compactLabels:n.options.labels,p=n.options.whichLabels||this._normalLabels,d=n.options.padZeroes?2:1;return n.options.layout?this._buildLayout(n,o,n.options.layout,n.options.compact,n.options.significant,a):(n.options.compact?'<span class="'+this._rowClass+" "+this._amountClass+(n._hold?" "+this._holdingClass:"")+'">'+u(0)+u(1)+u(2)+u(3)+(o[4]?this._minDigits(n,n._periods[4],2):"")+(o[5]?(o[4]?n.options.timeSeparator:"")+this._minDigits(n,n._periods[5],2):"")+(o[6]?(o[4]||o[5]?n.options.timeSeparator:"")+this._minDigits(n,n._periods[6],2):""):'<span class="'+this._rowClass+" "+this._showClass+(n.options.significant||e)+(n._hold?" "+this._holdingClass:"")+'">'+l(0)+l(1)+l(2)+l(3)+l(4)+l(5)+l(6))+"</span>"+(n.options.description?'<span class="'+this._rowClass+" "+this._descrClass+'">'+n.options.description+"</span>":"")},_buildLayout:function(n,t,e,i,r,o){for(var s=n.options[i?"compactLabels":"labels"],a=n.options.whichLabels||this._normalLabels,u=function(t){return(n.options[(i?"compactLabels":"labels")+a(n._periods[t])]||s)[t]},l=function(t,e){return n.options.digits[Math.floor(t/e)%10]},l={desc:n.options.description,sep:n.options.timeSeparator,yl:u(0),yn:this._minDigits(n,n._periods[0],1),ynn:this._minDigits(n,n._periods[0],2),ynnn:this._minDigits(n,n._periods[0],3),y1:l(n._periods[0],1),y10:l(n._periods[0],10),y100:l(n._periods[0],100),y1000:l(n._periods[0],1e3),ol:u(1),on:this._minDigits(n,n._periods[1],1),onn:this._minDigits(n,n._periods[1],2),onnn:this._minDigits(n,n._periods[1],3),o1:l(n._periods[1],1),o10:l(n._periods[1],10),o100:l(n._periods[1],100),o1000:l(n._periods[1],1e3),wl:u(2),wn:this._minDigits(n,n._periods[2],1),wnn:this._minDigits(n,n._periods[2],2),wnnn:this._minDigits(n,n._periods[2],3),w1:l(n._periods[2],1),w10:l(n._periods[2],10),w100:l(n._periods[2],100),w1000:l(n._periods[2],1e3),dl:u(3),dn:this._minDigits(n,n._periods[3],1),dnn:this._minDigits(n,n._periods[3],2),dnnn:this._minDigits(n,n._periods[3],3),d1:l(n._periods[3],1),d10:l(n._periods[3],10),d100:l(n._periods[3],100),d1000:l(n._periods[3],1e3),hl:u(4),hn:this._minDigits(n,n._periods[4],1),hnn:this._minDigits(n,n._periods[4],2),hnnn:this._minDigits(n,n._periods[4],3),h1:l(n._periods[4],1),h10:l(n._periods[4],10),h100:l(n._periods[4],100),h1000:l(n._periods[4],1e3),ml:u(5),mn:this._minDigits(n,n._periods[5],1),mnn:this._minDigits(n,n._periods[5],2),mnnn:this._minDigits(n,n._periods[5],3),m1:l(n._periods[5],1),m10:l(n._periods[5],10),m100:l(n._periods[5],100),m1000:l(n._periods[5],1e3),sl:u(6),sn:this._minDigits(n,n._periods[6],1),snn:this._minDigits(n,n._periods[6],2),snnn:this._minDigits(n,n._periods[6],3),s1:l(n._periods[6],1),s10:l(n._periods[6],10),s100:l(n._periods[6],100),s1000:l(n._periods[6],1e3)},c=e,p=0;p<=6;p++)var d="yowdhms".charAt(p),d=new RegExp("\\{"+d+"<\\}([\\s\\S]*)\\{"+d+">\\}","g"),c=c.replace(d,!r&&t[p]||r&&o[p]?"$1":"");return f.each(l,function(t,e){t=new RegExp("\\{"+t+"\\}","g");c=c.replace(t,e)}),c},_minDigits:function(t,e,n){return(e=""+e).length>=n?this._translateDigits(t,e):(e="0000000000"+e,this._translateDigits(t,e.substr(e.length-n)))},_translateDigits:function(e,t){return(""+t).replace(/[0-9]/g,function(t){return e.options.digits[t]})},_determineShow:function(t){var e=t.options.format,t=[];return t[0]=e.match("y")?"?":e.match("Y")?"!":null,t[1]=e.match("o")?"?":e.match("O")?"!":null,t[2]=e.match("w")?"?":e.match("W")?"!":null,t[3]=e.match("d")?"?":e.match("D")?"!":null,t[4]=e.match("h")?"?":e.match("H")?"!":null,t[5]=e.match("m")?"?":e.match("M")?"!":null,t[6]=e.match("s")?"?":e.match("S")?"!":null,t},_calculatePeriods:function(t,n,e,i){t._now=i,t._now.setMilliseconds(0);var r=new Date(t._now.getTime());t._since?i.getTime()<t._since.getTime()?t._now=i=r:i=t._since:(r.setTime(t._until.getTime()),i.getTime()>t._until.getTime()&&(t._now=i=r));var o,s,a,u=[0,0,0,0,0,0,0];(n[0]||n[1])&&(a=this._getDaysInMonth(i.getFullYear(),i.getMonth()),s=this._getDaysInMonth(r.getFullYear(),r.getMonth()),o=r.getDate()===i.getDate()||r.getDate()>=Math.min(a,s)&&i.getDate()>=Math.min(a,s),s=function(t){return 60*(60*t.getHours()+t.getMinutes())+t.getSeconds()},s=Math.max(0,12*(r.getFullYear()-i.getFullYear())+r.getMonth()-i.getMonth()+(r.getDate()<i.getDate()&&!o||o&&s(r)<s(i)?-1:0)),u[0]=n[0]?Math.floor(s/12):0,u[1]=n[1]?s-12*u[0]:0,s=(i=new Date(i.getTime())).getDate()===a,a=this._getDaysInMonth(i.getFullYear()+u[0],i.getMonth()+u[1]),i.getDate()>a&&i.setDate(a),i.setFullYear(i.getFullYear()+u[0]),i.setMonth(i.getMonth()+u[1]),s&&i.setDate(a));var l=Math.floor((r.getTime()-i.getTime())/1e3),c=null,i=function(t,e){u[t]=n[t]?Math.floor(l/e):0,l-=u[t]*e};if(i(2,604800),i(3,86400),i(4,3600),i(5,60),i(6,1),0<l&&!t._since)for(var p=[1,12,4.3482,7,24,60,60],d=6,f=1,c=6;0<=c;c--)n[c]&&(u[d]>=f&&(u[d]=0,l=1),0<l&&(u[c]++,l=0,d=c,f=1)),f*=p[c];if(e)for(c=0;c<=6;c++)e&&u[c]?e--:e||(u[c]=0);return u}})}(jQuery);
js/uji-count-expired.js ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
1
+ function UjivalidURL(str) {
2
+ var pattern = new RegExp('^(https?:\\/\\/)?'+ // protocol
3
+ '((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,}|'+ // domain name
4
+ '((\\d{1,3}\\.){3}\\d{1,3}))'+ // OR ip (v4) address
5
+ '(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*'+ // port and path
6
+ '(\\?[;&a-z\\d%_.~+=-]*)?'+ // query string
7
+ '(\\#[-a-z\\d_]*)?$','i'); // fragment locator
8
+ return !!pattern.test(str);
9
+ }
10
+ if ( typeof ujiCountRedirect !== undefined && UjivalidURL(ujiCountRedirect) ){ window.location = ujiCountRedirect; }
js/uji-countdown.js CHANGED
@@ -1 +1 @@
1
- function UjicResetTime(t){if(!t)return!1;var n=new Date,e=t.split(":");return e instanceof Array&&(n.setHours(n.getHours()+parseInt(e[0])),n.setMinutes(n.getMinutes()+parseInt(e[1])),n.setSeconds(n.getSeconds()+parseInt(e[2]))),n}!function(t){"use strict";var n=window.ujiCount1,e=n.uji_style,o=(n.uji_plugin,n.ujic_id),i=n.expire,s=n.timer,r=(n.exp_days,n.Years),u=n.Months,a=n.Weeks,c=n.Days,l=n.Hours,p=n.Minutes,d=n.Seconds,_=n.Year,j=n.Month,w=n.Week,g=n.Day,f=n.Hour,h=n.Minute,m=n.Second,y=n.ujic_txt_size,x=n.ujic_col_dw,v=n.ujic_col_up,b=n.ujic_col_txt,T=n.ujic_col_sw,C=n.ujic_col_lab,M=n.ujic_lab_sz,S=n.ujic_y,D=n.ujic_o,U=n.ujic_w,L=n.ujic_d,k=n.ujic_h,O=n.ujic_m,H=n.ujic_s,R=(n.ujic_thick,"true"==n.ujic_txt),W=(n.ujic_ani,n.ujic_url?"http://"!==n.ujic_url.substr(0,7)&&"https://"!==n.ujic_url.substr(0,8)?"http://"+n.ujic_url:n.ujic_url:""),I=""!=W,Y=n.ujic_goof,z=(n.uji_center,n.uji_time),A=(n.uji_hide,n.ujic_resp),E="true"==n.ujic_rtl,F=new Date(""+i),G=UjicResetTime(s),N="";if(N+="true"==S?"Y":"",N+="true"==D?"O":"",N+="true"==U?"W":"",N+="true"==L?"D":"",N+="true"==k?"H":"",N+="true"==O?"M":"",N+="true"==H?"S":"",t.countdown.regionalOptions.uji={labels:[""+r,""+u,""+a,""+c,""+l,""+p,""+d],labels1:[""+_,""+j,""+w,""+g,""+f,""+h,""+m],compactLabels:["A","L","S","Z"],format:N,layout:function(t,n){var e=t.split("");if("[object Array]"===!Object.prototype.toString.call(e))return!1;if("classic"!==n){var o="ujiGetTemplate"+n;return"function"==typeof window[o]&&window[o](e)}for(var i='<span class="ujiCountdown"><span class="countdown_row">',s=0;s<e.length;s++)if(e[s]){var r=e[s].toString().toLowerCase()+"10",u=e[s].toString().toLowerCase()+"1",a=e[s].toString().toLowerCase()+"l";i+='<span class="countdown_section"> <span class="countdown_amount">{'+r+'}</span> <span class="countdown_amount">{'+u+'}</span> <span class="countdown_txt">{'+a+"}</span> </span>"}return i+="</span></span>"}(N,e),whichLabels:null,timeSeparator:":",isRTL:E},t.countdown.setDefaults(t.countdown.regionalOptions.uji),Y&&"none"!==Y){var Q=Y.replace(/\s+/g,"+");t("head").append('<link href="https://fonts.googleapis.com/css?family='+Q+'" rel="stylesheet" type="text/css">')}if(void 0!==G&&G){var X=G;J=!1}else X=F;if("classic"==e){t("#"+o).countdown({until:X,ujic_id:""+o,serverSync:J,responsive:A,isRTL:E,alwaysExpire:I,expiryUrl:W});var Z="#"+o+" .countdown_row > span:last-child { margin: 0; }",q="#"+o+" .countdown_amount { background : -moz-linear-gradient(top, "+v+" 50%, "+x+" 50%); background : linear-gradient(to bottom, "+v+" 50%, "+x+" 50%); background : -ms-linear-gradient(top, "+v+" 50%, "+x+' 50%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="'+v+'", endColorstr="'+x+'",GradientType=0 ); font: '+y+'px/1.5 "'+Y+'",sans-serif; text-shadow: 1px 1px 1px '+T+"; color: "+b+"; }";K(q);var B=t("#"+o+" .countdown_amount").outerWidth();t("#"+o+" .countdown_amount").each(function(){t(this).outerWidth()>B&&(B=t(this).outerWidth())}),K((q="#"+o+" .countdown_amount { padding: 5px 0; width: "+(B=B>40?B+y/2:B)+"px; }")+(R?"#"+o+" .countdown_txt { font: "+M+'px "Open Sans", sans-serif; color: '+C+"; }":"#"+o+" .countdown_txt { display: none; }")+Z)}if("modern"==e&&(console.log("MODERN"),"function"==typeof ujiModern)){console.log("MODERN-FCT");ujiModern(X,n,J,N)}function J(){var t=null;t=new Date(z);var n=new Date(t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate(),t.getUTCHours(),t.getUTCMinutes(),t.getUTCSeconds());return t=n}function K(n){t("<div />",{html:"<style>"+n+"</style>"}).appendTo("body")}}(jQuery);
1
+ function UjicResetTime(t){if(!t)return!1;var n=new Date,t=t.split(":");return t instanceof Array&&(n.setHours(n.getHours()+parseInt(t[0])),n.setMinutes(n.getMinutes()+parseInt(t[1])),n.setSeconds(n.getSeconds()+parseInt(t[2]))),n}!function(n){"use strict";var t,e,o=window.ujiCount1,i=o.uji_style,s=(o.uji_plugin,o.ujic_id),u=o.expire,r=o.timer,a=(o.exp_days,o.Years),c=o.Months,l=o.Weeks,p=o.Days,d=o.Hours,_=o.Minutes,j=o.Seconds,w=o.Year,g=o.Month,f=o.Week,h=o.Day,m=o.Hour,y=o.Minute,x=o.Second,b=o.ujic_txt_size,T=o.ujic_col_dw,C=o.ujic_col_up,M=o.ujic_col_txt,S=o.ujic_col_sw,D=o.ujic_col_lab,v=o.ujic_lab_sz,U=o.ujic_y,L=o.ujic_o,k=o.ujic_w,O=o.ujic_d,H=o.ujic_h,R=o.ujic_m,W=o.ujic_s,I=(o.ujic_thick,"true"==o.ujic_txt),Y=(o.ujic_ani,o.ujic_url?"http://"!==o.ujic_url.substr(0,7)&&"https://"!==o.ujic_url.substr(0,8)?"http://"+o.ujic_url:o.ujic_url:""),z=""!=Y,A=o.ujic_goof,E=(o.uji_center,o.uji_time),F=(o.uji_hide,o.ujic_resp),G="true"==o.ujic_rtl,N=new Date(""+u),u=UjicResetTime(r),r="";function Q(){var t=null,t=new Date(E);return t=new Date(t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate(),t.getUTCHours(),t.getUTCMinutes(),t.getUTCSeconds())}function X(t){n("<div />",{html:"<style>"+t+"</style>"}).appendTo("body")}r+="true"==U?"Y":"",r+="true"==L?"O":"",r+="true"==k?"W":"",r+="true"==O?"D":"",r+="true"==H?"H":"",r+="true"==R?"M":"",r+="true"==W?"S":"",n.countdown.regionalOptions.uji={labels:[""+a,""+c,""+l,""+p,""+d,""+_,""+j],labels1:[""+w,""+g,""+f,""+h,""+m,""+y,""+x],compactLabels:["A","L","S","Z"],format:r,layout:function(t,n){var e=t.split("");if("[object Array]"===!Object.prototype.toString.call(e))return!1;if("classic"!==n){n="ujiGetTemplate"+n;return"function"==typeof window[n]&&window[n](e)}for(var o='<span class="ujiCountdown"><span class="countdown_row">',i=0;i<e.length;i++){var s,u,r;e[i]&&(s=e[i].toString().toLowerCase()+"10",u=e[i].toString().toLowerCase()+"1",r=e[i].toString().toLowerCase()+"l",o+='<span class="countdown_section"> <span class="countdown_amount">{'+s+'}</span> <span class="countdown_amount">{'+u+'}</span> <span class="countdown_txt">{'+r+"}</span> </span>")}return o+="</span></span>"}(r,i),whichLabels:null,timeSeparator:":",isRTL:G},n.countdown.setDefaults(n.countdown.regionalOptions.uji),A&&"none"!==A&&(x=A.replace(/\s+/g,"+"),n("head").append('<link href="https://fonts.googleapis.com/css?family='+x+'" rel="stylesheet" type="text/css">')),void 0!==u&&u?(t=u,Q=!1):t=N,"classic"==i&&(n("#"+s).countdown({until:t,ujic_id:""+s,serverSync:Q,responsive:F,isRTL:G,alwaysExpire:z,expiryUrl:Y}),Y="#"+s+" .countdown_row > span:last-child { margin: 0; }",X("#"+s+" .countdown_amount { background : -moz-linear-gradient(top, "+C+" 50%, "+T+" 50%); background : linear-gradient(to bottom, "+C+" 50%, "+T+" 50%); background : -ms-linear-gradient(top, "+C+" 50%, "+T+' 50%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="'+C+'", endColorstr="'+T+'",GradientType=0 ); font: '+b+'px/1.5 "'+A+'",sans-serif; text-shadow: 1px 1px 1px '+S+"; color: "+M+"; }"),e=n("#"+s+" .countdown_amount").outerWidth(),n("#"+s+" .countdown_amount").each(function(){n(this).outerWidth()>e&&(e=n(this).outerWidth())}),X("#"+s+" .countdown_amount { padding: 5px 0; width: "+(e=40<e?e+b/2:e)+"px; }"+(I?"#"+s+" .countdown_txt { font: "+v+'px "Open Sans", sans-serif; color: '+D+"; }":"#"+s+" .countdown_txt { display: none; }")+Y)),"modern"==i&&(console.log("MODERN"),"function"==typeof ujiModern&&(console.log("MODERN-FCT"),ujiModern(t,o,Q,r)))}(jQuery);
src/block/block.js CHANGED
@@ -1,73 +1,69 @@
1
- /**
2
- * BLOCK: uji-countdown-2020
3
- *
4
- * Registering a basic block with Gutenberg.
5
- * Simple block, renders and saves the same content without any interactivity.
6
- */
7
-
8
- // Import CSS.
9
- import './editor.scss';
10
- import './style.scss';
11
-
12
-
13
- import metadata from './block.json';
14
- import edit from './edit';
15
- import save from './save';
16
-
17
- const { __ } = wp.i18n; // Import __() from wp.i18n
18
- const { registerBlockType } = wp.blocks; // Import registerBlockType() from wp.blocks
19
-
20
- const { name, category, attributes } = metadata;
21
-
22
- /**
23
- * Register: aa Gutenberg Block.
24
- *
25
- * Registers a new block provided a unique name and an object defining its
26
- * behavior. Once registered, the block is made editor as an option to any
27
- * editor interface where blocks are implemented.
28
- *
29
- * @link https://wordpress.org/gutenberg/handbook/block-api/
30
- * @param {string} name Block name.
31
- * @param {Object} settings Block settings.
32
- * @return {?WPBlock} The block, if it has been successfully
33
- * registered; otherwise `undefined`.
34
- */
35
- registerBlockType( name, {
36
- // Block name. Block names must be string that contains a namespace prefix. Example: my-plugin/my-custom-block.
37
- title: __( 'Uji Countdown' ), // Block title.
38
- icon: 'clock', // Block icon from Dashicons → https://developer.wordpress.org/resource/dashicons/.
39
- category, // Block category — Group blocks together based on common traits E.g. common, formatting, layout widgets, embed.
40
- keywords: [
41
- __( 'Uji Countdown' ),
42
- __( 'Countdown Timer' ),
43
- __( 'uji-countdown' ),
44
- ],
45
-
46
- attributes,
47
-
48
- /**
49
- * The edit function describes the structure of your block in the context of the editor.
50
- * This represents what the editor will render when the block is used.
51
- *
52
- * The "edit" property must be a valid function.
53
- *
54
- * @link https://wordpress.org/gutenberg/handbook/block-api/block-edit-save/
55
- *
56
- * @param {Object} props Props.
57
- * @returns {Mixed} JSX Component.
58
- */
59
- edit,
60
-
61
- /**
62
- * The save function defines the way in which the different attributes should be combined
63
- * into the final markup, which is then serialized by Gutenberg into post_content.
64
- *
65
- * The "save" property must be specified and must be a valid function.
66
- *
67
- * @link https://wordpress.org/gutenberg/handbook/block-api/block-edit-save/
68
- *
69
- * @param {Object} props Props.
70
- * @returns {Mixed} JSX Frontend HTML.
71
- */
72
- save,
73
- } );
1
+ /**
2
+ * BLOCK: uji-countdown-2020
3
+ *
4
+ * Registering a basic block with Gutenberg.
5
+ * Simple block, renders and saves the same content without any interactivity.
6
+ */
7
+
8
+ // Import CSS.
9
+
10
+ //import './editor.scss';
11
+ //import './style.scss';
12
+
13
+ import metadata from './block.json';
14
+ import edit from './edit';
15
+ import save from './save';
16
+
17
+ const { __ } = wp.i18n; // Import __() from wp.i18n
18
+ const { registerBlockType } = wp.blocks; // Import registerBlockType() from wp.blocks
19
+
20
+ const { name, category, attributes } = metadata;
21
+
22
+ /**
23
+ * Register: aa Gutenberg Block.
24
+ *
25
+ * Registers a new block provided a unique name and an object defining its
26
+ * behavior. Once registered, the block is made editor as an option to any
27
+ * editor interface where blocks are implemented.
28
+ *
29
+ * @link https://wordpress.org/gutenberg/handbook/block-api/
30
+ * @param {string} name Block name.
31
+ * @param {Object} settings Block settings.
32
+ * @return {?WPBlock} The block, if it has been successfully
33
+ * registered; otherwise `undefined`.
34
+ */
35
+ registerBlockType(name, {
36
+ // Block name. Block names must be string that contains a namespace prefix. Example: my-plugin/my-custom-block.
37
+ title: __('Uji Countdown'), // Block title.
38
+ icon: 'clock', // Block icon from Dashicons → https://developer.wordpress.org/resource/dashicons/.
39
+ category, // Block category — Group blocks together based on common traits E.g. common, formatting, layout widgets, embed.
40
+ keywords: [__('Uji Countdown'), __('Countdown Timer'), __('uji-countdown')],
41
+
42
+ attributes,
43
+
44
+ /**
45
+ * The edit function describes the structure of your block in the context of the editor.
46
+ * This represents what the editor will render when the block is used.
47
+ *
48
+ * The "edit" property must be a valid function.
49
+ *
50
+ * @link https://wordpress.org/gutenberg/handbook/block-api/block-edit-save/
51
+ *
52
+ * @param {Object} props Props.
53
+ * @returns {Mixed} JSX Component.
54
+ */
55
+ edit,
56
+
57
+ /**
58
+ * The save function defines the way in which the different attributes should be combined
59
+ * into the final markup, which is then serialized by Gutenberg into post_content.
60
+ *
61
+ * The "save" property must be specified and must be a valid function.
62
+ *
63
+ * @link https://wordpress.org/gutenberg/handbook/block-api/block-edit-save/
64
+ *
65
+ * @param {Object} props Props.
66
+ * @returns {Mixed} JSX Frontend HTML.
67
+ */
68
+ save,
69
+ });
 
 
 
 
src/block/block.json CHANGED
@@ -8,7 +8,7 @@
8
  },
9
  "datetime": {
10
  "type": "string",
11
- "default": "2020-01-01 12:01:00"
12
  },
13
  "timeonly": {
14
  "type": "string",
8
  },
9
  "datetime": {
10
  "type": "string",
11
+ "default": "2022-01-01 12:00:00"
12
  },
13
  "timeonly": {
14
  "type": "string",
src/block/edit.js CHANGED
@@ -2,7 +2,7 @@
2
  * WordPress dependencies
3
  */
4
 
5
- import icons from "./icons";
6
  import InspectorControls from './inspector';
7
 
8
  import { __ } from '@wordpress/i18n';
@@ -11,43 +11,70 @@ import { __ } from '@wordpress/i18n';
11
  // import { __experimentalGetSettings } from '@wordpress/date';
12
  // import { withState } from '@wordpress/compose';
13
 
14
- import { Component, Fragment } from "@wordpress/element";
15
 
16
  class UjiCountEdit extends Component {
17
  render() {
18
  const { attributes } = this.props;
19
 
20
- const { datetime, timerType, thour, tmin, tsec } = attributes;
 
21
 
22
- const isStyles = ( typeof ujic_short_vars !== 'undefined' ) ? true : null;
23
 
24
  const convertDigit = (num) => {
25
- return ( num.length ) == 1 ? '0' + num : num;
26
  };
27
 
28
- if ( isStyles ) {
29
  return (
30
  <Fragment>
31
- <InspectorControls { ...this.props } />
32
- { timerType === 'onetime' && (
33
  <div className="wp-block-urc-block">
34
- { __( 'Expire on:', 'ujicountdown' ) } <strong> <time>{ datetime }</time> </strong>
 
 
 
 
 
 
 
 
 
 
35
  </div>
36
- ) }
37
- { timerType === 'repeat' && (
38
  <div className="wp-block-urc-block">
39
- { __( 'Countdown time:', 'ujicountdown' ) } <strong> <time>{ convertDigit( thour ) } : { convertDigit( tmin ) } : { convertDigit( tsec ) } </time> </strong>
 
 
 
 
 
 
 
 
 
 
 
 
 
40
  </div>
41
- ) }
42
  </Fragment>
43
  );
44
  }
45
  return (
46
  <Fragment>
47
- <InspectorControls { ...this.props } />
48
  <div className="wp-block-urc-block">
49
- <h5 style={ { color: 'red', textAlign: 'center' } }>
50
- { __('Plese create a countdown style first.', 'ujicountdown' )}
 
 
 
51
  </h5>
52
  </div>
53
  </Fragment>
2
  * WordPress dependencies
3
  */
4
 
5
+ import icons from './icons';
6
  import InspectorControls from './inspector';
7
 
8
  import { __ } from '@wordpress/i18n';
11
  // import { __experimentalGetSettings } from '@wordpress/date';
12
  // import { withState } from '@wordpress/compose';
13
 
14
+ import { Component, Fragment } from '@wordpress/element';
15
 
16
  class UjiCountEdit extends Component {
17
  render() {
18
  const { attributes } = this.props;
19
 
20
+ const { datetime, timerType, thour, tmin, tsec, url, hide, blank } =
21
+ attributes;
22
 
23
+ const isStyles = typeof ujic_short_vars !== 'undefined' ? true : null;
24
 
25
  const convertDigit = (num) => {
26
+ return num.length == 1 ? '0' + num : num;
27
  };
28
 
29
+ if (isStyles) {
30
  return (
31
  <Fragment>
32
+ <InspectorControls {...this.props} />
33
+ {timerType === 'onetime' && (
34
  <div className="wp-block-urc-block">
35
+ {__('Expire on:', 'ujicountdown')}{' '}
36
+ <strong>
37
+ {' '}
38
+ <time>{datetime}</time>{' '}
39
+ </strong>
40
+ {!hide && (
41
+ <div className="wp-block-span">
42
+ {__('Redirect to:', 'ujicountdown')}{' '}
43
+ <strong> {url} </strong>
44
+ </div>
45
+ )}
46
  </div>
47
+ )}
48
+ {timerType === 'repeat' && (
49
  <div className="wp-block-urc-block">
50
+ {__('Countdown time:', 'ujicountdown')}{' '}
51
+ <strong>
52
+ {' '}
53
+ <time>
54
+ {convertDigit(thour)} : {convertDigit(tmin)}{' '}
55
+ : {convertDigit(tsec)}{' '}
56
+ </time>{' '}
57
+ </strong>
58
+ {!hide && (
59
+ <div className="wp-block-span">
60
+ {__('Redirect to:', 'ujicountdown')}{' '}
61
+ <strong> {url} </strong>
62
+ </div>
63
+ )}
64
  </div>
65
+ )}
66
  </Fragment>
67
  );
68
  }
69
  return (
70
  <Fragment>
71
+ <InspectorControls {...this.props} />
72
  <div className="wp-block-urc-block">
73
+ <h5 style={{ color: 'red', textAlign: 'center' }}>
74
+ {__(
75
+ 'Plese create a countdown style first.',
76
+ 'ujicountdown'
77
+ )}
78
  </h5>
79
  </div>
80
  </Fragment>
src/block/editor.scss CHANGED
@@ -1,3 +1,4 @@
 
1
  /**
2
  * #.# Editor Styles
3
  *
@@ -12,4 +13,4 @@
12
  margin: 0 auto;
13
  max-width: 740px;
14
  padding: 2rem;
15
- }
1
+ @import "../common.scss";
2
  /**
3
  * #.# Editor Styles
4
  *
13
  margin: 0 auto;
14
  max-width: 740px;
15
  padding: 2rem;
16
+ }
src/block/icons.js CHANGED
@@ -8,10 +8,45 @@ import { SVG, Path } from '@wordpress/components';
8
  */
9
  const icons = {};
10
 
11
- icons.imageLeft = <SVG xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><Path d="m11 15v-10h-10v10zm2-6h6v-2h-6zm0 4h6v-2h-6z" /></SVG>;
12
- icons.imageRight = <SVG xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><Path d="m19 15v-10h-10v10zm-18-6h6v-2h-6zm0 4h6v-2h-6z" /></SVG>;
13
- icons.styleHorizontalImageRight = <SVG xmlns="http://www.w3.org/2000/svg" viewBox="0 0 56 26" height="26" width="56"><Path d="m48 11.0910645v-10.00000005h-10v10.00000005zm-40-6.00000005h24v-2h-24zm0 4v-2h18v2zm40 16.00000005h-10v-10h10zm-40-6v-2h24v2zm0 4v-2h18v2z" /></SVG>;
14
- icons.styleHorizontalImageLeft = <SVG xmlns="http://www.w3.org/2000/svg" viewBox="0 0 56 26" height="26" width="56"><Path d="m18 11.0910645v-10.00000005h-10v10.00000005zm6-6.00000005h24v-2h-24zm0 4v-2h18v2zm-6 16.00000005h-10v-10h10zm6-6v-2h24v2zm0 4v-2h18v2z" /></SVG>;
15
- icons.styleStacked = <SVG xmlns="http://www.w3.org/2000/svg" viewBox="0 0 56 26" height="26" width="56"><Path d="m26 17v-16h-16v16zm-16 4h10v-2h-10zm0 4v-2h10v2zm36-8h-16v-16h16zm-16 4v-2h10v2zm0 4v-2h10v2z" /></SVG>;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16
 
17
- export default icons;
8
  */
9
  const icons = {};
10
 
11
+ icons.imageLeft = (
12
+ <SVG xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20">
13
+ <Path d="m11 15v-10h-10v10zm2-6h6v-2h-6zm0 4h6v-2h-6z" />
14
+ </SVG>
15
+ );
16
+ icons.imageRight = (
17
+ <SVG xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20">
18
+ <Path d="m19 15v-10h-10v10zm-18-6h6v-2h-6zm0 4h6v-2h-6z" />
19
+ </SVG>
20
+ );
21
+ icons.styleHorizontalImageRight = (
22
+ <SVG
23
+ xmlns="http://www.w3.org/2000/svg"
24
+ viewBox="0 0 56 26"
25
+ height="26"
26
+ width="56"
27
+ >
28
+ <Path d="m48 11.0910645v-10.00000005h-10v10.00000005zm-40-6.00000005h24v-2h-24zm0 4v-2h18v2zm40 16.00000005h-10v-10h10zm-40-6v-2h24v2zm0 4v-2h18v2z" />
29
+ </SVG>
30
+ );
31
+ icons.styleHorizontalImageLeft = (
32
+ <SVG
33
+ xmlns="http://www.w3.org/2000/svg"
34
+ viewBox="0 0 56 26"
35
+ height="26"
36
+ width="56"
37
+ >
38
+ <Path d="m18 11.0910645v-10.00000005h-10v10.00000005zm6-6.00000005h24v-2h-24zm0 4v-2h18v2zm-6 16.00000005h-10v-10h10zm6-6v-2h24v2zm0 4v-2h18v2z" />
39
+ </SVG>
40
+ );
41
+ icons.styleStacked = (
42
+ <SVG
43
+ xmlns="http://www.w3.org/2000/svg"
44
+ viewBox="0 0 56 26"
45
+ height="26"
46
+ width="56"
47
+ >
48
+ <Path d="m26 17v-16h-16v16zm-16 4h10v-2h-10zm0 4v-2h10v2zm36-8h-16v-16h16zm-16 4v-2h10v2zm0 4v-2h10v2z" />
49
+ </SVG>
50
+ );
51
 
52
+ export default icons;
src/block/inspector.js CHANGED
@@ -1,8 +1,8 @@
1
  /*global ujicountdownData*/
2
 
3
- import { __ } from "@wordpress/i18n";
4
- import { Fragment } from "@wordpress/element";
5
- import { InspectorControls } from "@wordpress/block-editor";
6
 
7
  import {
8
  PanelBody,
@@ -12,11 +12,11 @@ import {
12
  RadioControl,
13
  ToggleControl,
14
  SelectControl,
15
- } from "@wordpress/components";
16
 
17
  const optionsStyles = (styles) => {
18
  const stypeOpt = [{ value: '', label: 'Select Timer Style' }];
19
-
20
  if (styles !== null) {
21
  styles.map((val) => {
22
  stypeOpt.push({ value: val.value, label: val.text });
@@ -46,29 +46,32 @@ const Inspector = (props) => {
46
  } = attributes;
47
 
48
  const onUpdateDate = (dateTime) => {
49
- let newDateTime = moment(dateTime).format("YYYY-MM-DD HH:mm");
50
  setAttributes({ datetime: newDateTime });
51
  };
52
 
53
  const optionsTime = [
54
- { value: "second", label: __("Second(s)", "ujicountdown") },
55
- { value: "minute", label: __("Minute(s)", "ujicountdown") },
56
- { value: "hour", label: __("Hours(s)", "ujicountdown") },
57
- { value: "day", label: __("Days(s)", "ujicountdown") },
58
- { value: "week", label: __("Week(s)", "ujicountdown") },
59
- { value: "month", label: __("Month(s)", "ujicountdown") },
60
  ];
61
 
62
- const optionStyles = ( typeof ujic_short_vars !== 'undefined' ) ? optionsStyles(ujic_short_vars.ujic_style) : null;
63
- const isNews = ( typeof ujic_extend !== 'undefined' ) ? true : false;
 
 
 
64
 
65
- if ( ! optionStyles ) {
66
  return (
67
  <InspectorControls>
68
  <PanelBody
69
- title={__("Countdown Settings", "ujicountdown")}
70
  initialOpen={true}
71
- className={"urc-settings-insp"}
72
  >
73
  <div className="urc-border">
74
  <div className="urc-component">
@@ -76,173 +79,227 @@ const Inspector = (props) => {
76
  <strong style={{ color: 'red' }}>
77
  Plese create a countdown style first.
78
  </strong>
79
- <p> Go to: <strong>Settings/Uji Countdown</strong> and create a style first! </p>
 
 
 
 
 
80
  </div>
81
  </div>
82
- </div>
83
  </PanelBody>
84
  </InspectorControls>
85
  );
86
- } else {
87
  return (
88
  <InspectorControls>
89
- <PanelBody
90
- title={__("Countdown Settings", "ujicountdown")}
91
- initialOpen={true}
92
- className={"urc-settings-insp"}
93
- >
94
- <div className="urc-border">
95
- <h4>Select Style: </h4>
96
- <div className="urc-component">
97
- <SelectControl
98
- value={countStyles}
99
- options={optionStyles}
100
- onChange={(value) => setAttributes({ countStyles: value })}
101
- className="components-style-field-select"
102
- />
 
 
 
103
  </div>
104
- </div>
105
 
106
- <div className="urc-border">
107
- <h4>Timer Type: </h4>
108
- <div className="urc-component">
109
- <RadioControl
110
- selected={timerType}
111
- options={[
112
- {
113
- label: __("One Time Timer", "ujicountdown"),
114
- value: "onetime",
115
- },
116
- {
117
- label: __("Repeating Timer", "ujicountdown"),
118
- value: "repeat",
119
- },
120
- ]}
121
- onChange={(value) => setAttributes({ timerType: value })}
122
- />
123
- </div>
124
- </div>
125
- { timerType === "onetime" && (
126
  <div className="urc-border">
127
- <h4>Expiration Date and Time: </h4>
128
  <div className="urc-component">
129
- <Fragment>
130
- <PanelRow>
131
- <DateTimePicker
132
- currentDate={datetime}
133
- onChange={(val) => onUpdateDate(val)}
134
- is12Hour={false}
135
- />
136
- </PanelRow>
137
- </Fragment>
 
 
 
 
 
 
 
 
 
 
 
 
 
138
  </div>
139
  </div>
140
- )}
141
- {timerType === "repeat" && (
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
142
  <Fragment>
143
- <div className="urc-component-time">
144
- <h4>Select Time:</h4>
145
  <div className="urc-component">
146
- <TextControl
147
- type="number"
148
- label="Hours"
149
- className="components-time-field-hours-input"
150
- value={thour}
151
- onChange={(value) => setAttributes({ thour: escape(value) })}
 
 
 
 
 
 
 
 
152
  />
153
- <span className="urc-time-separator">:</span>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
154
  <TextControl
155
  type="number"
156
- label="Minutes"
157
  className="components-time-field-hours-input"
158
- value={tmin}
159
- onChange={(value) => setAttributes({ tmin: escape(value) })}
 
 
 
 
160
  />
161
- <span className="urc-time-separator">:</span>
 
 
 
 
 
 
 
 
 
 
162
  <TextControl
163
  type="number"
164
- label="Seconds"
165
- className="components-time-field-hours-input"
166
- value={tsec}
167
- onChange={(value) => setAttributes({ tsec: escape(value) })}
 
 
 
168
  />
 
169
  </div>
170
- <i>This countdown will restart on page load</i>
171
  </div>
172
  </Fragment>
173
- )}
174
- <Fragment>
175
- <div className="urc-border">
176
- <h4>After expiration: </h4>
177
- <div className="urc-component">
178
- <ToggleControl
179
- label={__("After expired", "ujicountdown")}
180
- checked={hide}
181
- help={
182
- hide
183
- ? __("Hide the countdown.", "ujicountdown")
184
- : __("Go to URL.", "ujicountdown")
185
- }
186
- onChange={() => setAttributes({ hide: !hide })}
187
- />
188
- {!hide && (
189
- <TextControl
190
- type="text"
191
- label="Enter web address:"
192
- placeholder="https://"
193
- value={url}
194
- onChange={(value) => setAttributes({ url: value })}
195
- />
196
- )}
197
- </div>
198
- </div>
199
- </Fragment>
200
- <Fragment>
201
- <div className="urc-border">
202
- <h4>Recurring Time: </h4>
203
- <div className="urc-component">
204
- <span className="spaceInp">Every </span>
205
- <TextControl
206
- type="number"
207
- className="components-time-field-hours-input"
208
- value={unitNum}
209
- onChange={(value) => setAttributes({ unitNum: escape(value) })}
210
- />
211
- <SelectControl
212
- value={unitTime}
213
- options={optionsTime}
214
- onChange={(value) => setAttributes({ unitTime: value })}
215
- className="components-time-field-hours-select"
216
- />
217
- </div>
218
- <div className="urc-component">
219
- <span className="spaceInp">Repeats </span>
220
- <TextControl
221
- type="number"
222
- className="components-repeat-field-input"
223
- value={repeats}
224
- onChange={(value) => setAttributes({ repeats: escape(value) })}
225
- />
226
- <i>leave it empty for unlimited</i>
227
- </div>
228
- </div>
229
- </Fragment>
230
- { isNews && (
231
- <Fragment>
232
- <div className="urc-border">
233
- <h4>Newsletter Form: </h4>
234
- <div className="urc-component">
235
- <TextControl
236
- type="text"
237
- value={news}
238
- placeholder="Enter your campaign name"
239
- onChange={(value) => setAttributes({ news: escape(value) })}
240
- />
241
- </div>
242
- </div>
243
- </Fragment>
244
- )}
245
- </PanelBody>
246
  </InspectorControls>
247
  );
248
  }
1
  /*global ujicountdownData*/
2
 
3
+ import { __ } from '@wordpress/i18n';
4
+ import { Fragment } from '@wordpress/element';
5
+ import { InspectorControls } from '@wordpress/block-editor';
6
 
7
  import {
8
  PanelBody,
12
  RadioControl,
13
  ToggleControl,
14
  SelectControl,
15
+ } from '@wordpress/components';
16
 
17
  const optionsStyles = (styles) => {
18
  const stypeOpt = [{ value: '', label: 'Select Timer Style' }];
19
+
20
  if (styles !== null) {
21
  styles.map((val) => {
22
  stypeOpt.push({ value: val.value, label: val.text });
46
  } = attributes;
47
 
48
  const onUpdateDate = (dateTime) => {
49
+ let newDateTime = moment(dateTime).format('YYYY-MM-DD HH:mm');
50
  setAttributes({ datetime: newDateTime });
51
  };
52
 
53
  const optionsTime = [
54
+ { value: 'second', label: __('Second(s)', 'ujicountdown') },
55
+ { value: 'minute', label: __('Minute(s)', 'ujicountdown') },
56
+ { value: 'hour', label: __('Hour(s)', 'ujicountdown') },
57
+ { value: 'day', label: __('Day(s)', 'ujicountdown') },
58
+ { value: 'week', label: __('Week(s)', 'ujicountdown') },
59
+ { value: 'month', label: __('Month(s)', 'ujicountdown') },
60
  ];
61
 
62
+ const optionStyles =
63
+ typeof ujic_short_vars !== 'undefined'
64
+ ? optionsStyles(ujic_short_vars.ujic_style)
65
+ : null;
66
+ const isNews = typeof ujic_extend !== 'undefined' ? true : false;
67
 
68
+ if (!optionStyles) {
69
  return (
70
  <InspectorControls>
71
  <PanelBody
72
+ title={__('Countdown Settings', 'ujicountdown')}
73
  initialOpen={true}
74
+ className={'urc-settings-insp'}
75
  >
76
  <div className="urc-border">
77
  <div className="urc-component">
79
  <strong style={{ color: 'red' }}>
80
  Plese create a countdown style first.
81
  </strong>
82
+ <p>
83
+ {' '}
84
+ Go to:{' '}
85
+ <strong>Settings/Uji Countdown</strong> and
86
+ create a style first!{' '}
87
+ </p>
88
  </div>
89
  </div>
90
+ </div>
91
  </PanelBody>
92
  </InspectorControls>
93
  );
94
+ } else {
95
  return (
96
  <InspectorControls>
97
+ <PanelBody
98
+ title={__('Countdown Settings', 'ujicountdown')}
99
+ initialOpen={true}
100
+ className={'urc-settings-insp'}
101
+ >
102
+ <div className="urc-border">
103
+ <h4>Select Style: </h4>
104
+ <div className="urc-component">
105
+ <SelectControl
106
+ value={countStyles}
107
+ options={optionStyles}
108
+ onChange={(value) =>
109
+ setAttributes({ countStyles: value })
110
+ }
111
+ className="components-style-field-select"
112
+ />
113
+ </div>
114
  </div>
 
115
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
116
  <div className="urc-border">
117
+ <h4>Timer Type: </h4>
118
  <div className="urc-component">
119
+ <RadioControl
120
+ selected={timerType}
121
+ options={[
122
+ {
123
+ label: __(
124
+ 'One Time Timer',
125
+ 'ujicountdown'
126
+ ),
127
+ value: 'onetime',
128
+ },
129
+ {
130
+ label: __(
131
+ 'Repeating Timer',
132
+ 'ujicountdown'
133
+ ),
134
+ value: 'repeat',
135
+ },
136
+ ]}
137
+ onChange={(value) =>
138
+ setAttributes({ timerType: value })
139
+ }
140
+ />
141
  </div>
142
  </div>
143
+ {timerType === 'onetime' && (
144
+ <div className="urc-border">
145
+ <h4>Expiration Date and Time: </h4>
146
+ <div className="urc-component">
147
+ <Fragment>
148
+ <PanelRow>
149
+ <DateTimePicker
150
+ currentDate={datetime}
151
+ onChange={(val) =>
152
+ onUpdateDate(val)
153
+ }
154
+ is12Hour={false}
155
+ />
156
+ </PanelRow>
157
+ </Fragment>
158
+ </div>
159
+ </div>
160
+ )}
161
+ {timerType === 'repeat' && (
162
+ <Fragment>
163
+ <div className="urc-component-time">
164
+ <h4>Select Time:</h4>
165
+ <div className="urc-component">
166
+ <TextControl
167
+ type="number"
168
+ label="Hours"
169
+ className="components-time-field-hours-input"
170
+ value={thour}
171
+ onChange={(value) =>
172
+ setAttributes({
173
+ thour: escape(value),
174
+ })
175
+ }
176
+ />
177
+ <span className="urc-time-separator">
178
+ :
179
+ </span>
180
+ <TextControl
181
+ type="number"
182
+ label="Minutes"
183
+ className="components-time-field-hours-input"
184
+ value={tmin}
185
+ onChange={(value) =>
186
+ setAttributes({
187
+ tmin: escape(value),
188
+ })
189
+ }
190
+ />
191
+ <span className="urc-time-separator">
192
+ :
193
+ </span>
194
+ <TextControl
195
+ type="number"
196
+ label="Seconds"
197
+ className="components-time-field-hours-input"
198
+ value={tsec}
199
+ onChange={(value) =>
200
+ setAttributes({
201
+ tsec: escape(value),
202
+ })
203
+ }
204
+ />
205
+ </div>
206
+ <i>This countdown will restart on page load</i>
207
+ </div>
208
+ </Fragment>
209
+ )}
210
  <Fragment>
211
+ <div className="urc-border">
212
+ <h4>After expiration: </h4>
213
  <div className="urc-component">
214
+ <ToggleControl
215
+ label={__('After expired', 'ujicountdown')}
216
+ checked={hide}
217
+ help={
218
+ hide
219
+ ? __(
220
+ 'Hide the countdown.',
221
+ 'ujicountdown'
222
+ )
223
+ : __('Go to URL.', 'ujicountdown')
224
+ }
225
+ onChange={() =>
226
+ setAttributes({ hide: !hide })
227
+ }
228
  />
229
+ {!hide && (
230
+ <TextControl
231
+ type="text"
232
+ label="Enter web address:"
233
+ placeholder="https://"
234
+ value={url}
235
+ onChange={(value) =>
236
+ setAttributes({ url: value })
237
+ }
238
+ />
239
+ )}
240
+ </div>
241
+ </div>
242
+ </Fragment>
243
+ <Fragment>
244
+ <div className="urc-border">
245
+ <h4>Recurring Time: </h4>
246
+ <div className="urc-component urc-flex">
247
+ <span className="spaceInp">Every </span>
248
  <TextControl
249
  type="number"
 
250
  className="components-time-field-hours-input"
251
+ value={unitNum}
252
+ onChange={(value) =>
253
+ setAttributes({
254
+ unitNum: escape(value),
255
+ })
256
+ }
257
  />
258
+ <SelectControl
259
+ value={unitTime}
260
+ options={optionsTime}
261
+ onChange={(value) =>
262
+ setAttributes({ unitTime: value })
263
+ }
264
+ className="components-time-field-hours-select"
265
+ />
266
+ </div>
267
+ <div className="urc-component">
268
+ <span className="spaceInp">Repeats </span>
269
  <TextControl
270
  type="number"
271
+ className="components-repeat-field-input"
272
+ value={repeats}
273
+ onChange={(value) =>
274
+ setAttributes({
275
+ repeats: escape(value),
276
+ })
277
+ }
278
  />
279
+ <i>leave it empty for unlimited</i>
280
  </div>
 
281
  </div>
282
  </Fragment>
283
+ {isNews && (
284
+ <Fragment>
285
+ <div className="urc-border">
286
+ <h4>Newsletter Form: </h4>
287
+ <div className="urc-component">
288
+ <TextControl
289
+ type="text"
290
+ value={news}
291
+ placeholder="Enter your campaign name"
292
+ onChange={(value) =>
293
+ setAttributes({
294
+ news: escape(value),
295
+ })
296
+ }
297
+ />
298
+ </div>
299
+ </div>
300
+ </Fragment>
301
+ )}
302
+ </PanelBody>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
303
  </InspectorControls>
304
  );
305
  }
src/block/save.js CHANGED
@@ -4,7 +4,7 @@
4
 
5
  import { RawHTML } from '@wordpress/element';
6
 
7
- const save = ( { attributes } ) => {
8
  const {
9
  countStyles,
10
  timerType,
@@ -17,26 +17,45 @@ const save = ( { attributes } ) => {
17
  unitNum,
18
  unitTime,
19
  repeats,
20
- news
21
  } = attributes;
22
 
23
  const isHide = hide ? 'true' : 'false';
24
 
25
- const tim = ( timerType === 'repeat' && thour && tmin && tsec ) ? true : false;
26
  const exp = datetime ? datetime.replace(/\//g, '-') : '';
27
- const expTime = ( timerType === 'onetime' && exp && ! tim ) ? 'expire="' + exp + '"' : '';
28
- const timerTime = tim ? 'timer="' + thour + ':' + tmin + ':' + tsec + '"' : '';
29
- const isNews = ( news ) ? ' subscr="' + news : ' subscr="undefined"';
 
 
 
30
 
31
- const rectype = ( unitNum && repeats ) ? unitTime : '';
32
 
33
  // [ujicountdown id="test" expire="2020/04/30 06:04" hide="true" url="" subscr="undefined" recurring="" rectype="second" repeats=""]
34
- const myShortcode = '[ujicountdown id="'+countStyles+'" '+expTime+' '+timerTime+' hide="'+isHide+'" url="'+url+'"'+ isNews +'" recurring="'+repeats+'" rectype="'+rectype+'" repeats="'+repeats+'"]';
35
-
36
- return (
37
- <RawHTML>{ myShortcode }</RawHTML>
38
-
39
- );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
40
  };
41
 
42
  export default save;
4
 
5
  import { RawHTML } from '@wordpress/element';
6
 
7
+ const save = ({ attributes }) => {
8
  const {
9
  countStyles,
10
  timerType,
17
  unitNum,
18
  unitTime,
19
  repeats,
20
+ news,
21
  } = attributes;
22
 
23
  const isHide = hide ? 'true' : 'false';
24
 
25
+ const tim = timerType === 'repeat' && thour && tmin && tsec ? true : false;
26
  const exp = datetime ? datetime.replace(/\//g, '-') : '';
27
+ const expTime =
28
+ timerType === 'onetime' && exp && !tim ? 'expire="' + exp + '"' : '';
29
+ const timerTime = tim
30
+ ? 'timer="' + thour + ':' + tmin + ':' + tsec + '"'
31
+ : '';
32
+ const isNews = news ? ' subscr="' + news : ' subscr="undefined"';
33
 
34
+ const rectype = unitNum && repeats ? unitTime : '';
35
 
36
  // [ujicountdown id="test" expire="2020/04/30 06:04" hide="true" url="" subscr="undefined" recurring="" rectype="second" repeats=""]
37
+ const myShortcode =
38
+ '[ujicountdown id="' +
39
+ countStyles +
40
+ '" ' +
41
+ expTime +
42
+ ' ' +
43
+ timerTime +
44
+ ' hide="' +
45
+ isHide +
46
+ '" url="' +
47
+ url +
48
+ '"' +
49
+ isNews +
50
+ '" recurring="' +
51
+ repeats +
52
+ '" rectype="' +
53
+ rectype +
54
+ '" repeats="' +
55
+ repeats +
56
+ '"]';
57
+
58
+ return <RawHTML>{myShortcode}</RawHTML>;
59
  };
60
 
61
  export default save;
src/block/style.scss CHANGED
@@ -1,3 +1,4 @@
 
1
  /**
2
  * #.# Styles
3
  *
@@ -18,6 +19,11 @@
18
  font-size: 1.2rem;
19
  }
20
 
 
 
 
 
 
21
  .wp-block-ujicount-datetime{
22
  color: rgb(115, 45, 182);
23
  }
@@ -60,7 +66,7 @@
60
  }
61
 
62
  .components-time-field-hours-select{
63
- width: 37%;
64
  display: inline-block;
65
  }
66
 
@@ -70,6 +76,10 @@
70
  margin-bottom: 0!important;
71
  }
72
 
 
 
 
 
73
  .urc-component i{
74
  margin-left: 58px;
75
  display: block;
@@ -83,4 +93,15 @@
83
  .urc-component-time h4,
84
  .urc-border h4{
85
  margin: 0.8em 0;
 
 
 
 
 
 
 
 
 
 
 
86
  }
1
+ @import "../common.scss";
2
  /**
3
  * #.# Styles
4
  *
19
  font-size: 1.2rem;
20
  }
21
 
22
+ .wp-block-span{
23
+ display: block;
24
+ font-size: 1rem;
25
+ }
26
+
27
  .wp-block-ujicount-datetime{
28
  color: rgb(115, 45, 182);
29
  }
66
  }
67
 
68
  .components-time-field-hours-select{
69
+ width: 35%;
70
  display: inline-block;
71
  }
72
 
76
  margin-bottom: 0!important;
77
  }
78
 
79
+ .urc-component .components-base-control{
80
+ display: inline-block;
81
+ }
82
+
83
  .urc-component i{
84
  margin-left: 58px;
85
  display: block;
93
  .urc-component-time h4,
94
  .urc-border h4{
95
  margin: 0.8em 0;
96
+ }
97
+
98
+
99
+ .urc-flex {
100
+ display: flex;
101
+ align-items: normal;
102
+ }
103
+
104
+ .urc-flex .components-input-control__container {
105
+ min-width: 90px;
106
+ top: 3px;
107
  }
src/blocks.php CHANGED
@@ -23,7 +23,7 @@ function uji_countdown_2020_uji_block_assets() { // phpcs:ignore
23
  // Register block styles for both frontend + backend.
24
  wp_register_style(
25
  'uji_countdown_2020-uji-style-css', // Handle.
26
- plugins_url( 'dist/blocks.style.build.css', dirname( __FILE__ ) ), // Block style CSS.
27
  is_admin() ? array( 'wp-editor' ) : null, // Dependency to include the CSS after it.
28
  null // filemtime( plugin_dir_path( __DIR__ ) . 'dist/blocks.style.build.css' ) // Version: File modification time.
29
  );
@@ -31,7 +31,7 @@ function uji_countdown_2020_uji_block_assets() { // phpcs:ignore
31
  // Register block editor script for backend.
32
  wp_register_script(
33
  'uji_countdown_2020-uji-block-js', // Handle.
34
- plugins_url( '/dist/blocks.build.js', dirname( __FILE__ ) ), // Block.build.js: We register the block here. Built with Webpack.
35
  array( 'wp-blocks', 'wp-i18n', 'wp-element', 'wp-editor' ), // Dependencies, defined above.
36
  null, // filemtime( plugin_dir_path( __DIR__ ) . 'dist/blocks.build.js' ), // Version: filemtime — Gets file modification time.
37
  true // Enqueue the script in the footer.
@@ -40,7 +40,7 @@ function uji_countdown_2020_uji_block_assets() { // phpcs:ignore
40
  // Register block editor styles for backend.
41
  wp_register_style(
42
  'uji_countdown_2020-uji-block-editor-css', // Handle.
43
- plugins_url( 'dist/blocks.editor.build.css', dirname( __FILE__ ) ), // Block editor CSS.
44
  array( 'wp-edit-blocks' ), // Dependency to include the CSS after it.
45
  null // filemtime( plugin_dir_path( __DIR__ ) . 'dist/blocks.editor.build.css' ) // Version: File modification time.
46
  );
@@ -72,6 +72,8 @@ function uji_countdown_2020_uji_block_assets() { // phpcs:ignore
72
  'editor_style' => 'uji_countdown_2020-uji-block-editor-css',
73
  )
74
  );
 
 
75
  }
76
 
77
  // Hook: Block assets.
23
  // Register block styles for both frontend + backend.
24
  wp_register_style(
25
  'uji_countdown_2020-uji-style-css', // Handle.
26
+ plugins_url( 'dist/style-ujicount.css', dirname( __FILE__ ) ), // Block style CSS.
27
  is_admin() ? array( 'wp-editor' ) : null, // Dependency to include the CSS after it.
28
  null // filemtime( plugin_dir_path( __DIR__ ) . 'dist/blocks.style.build.css' ) // Version: File modification time.
29
  );
31
  // Register block editor script for backend.
32
  wp_register_script(
33
  'uji_countdown_2020-uji-block-js', // Handle.
34
+ plugins_url( '/dist/ujicount.js', dirname( __FILE__ ) ), // Block.build.js: We register the block here. Built with Webpack.
35
  array( 'wp-blocks', 'wp-i18n', 'wp-element', 'wp-editor' ), // Dependencies, defined above.
36
  null, // filemtime( plugin_dir_path( __DIR__ ) . 'dist/blocks.build.js' ), // Version: filemtime — Gets file modification time.
37
  true // Enqueue the script in the footer.
40
  // Register block editor styles for backend.
41
  wp_register_style(
42
  'uji_countdown_2020-uji-block-editor-css', // Handle.
43
+ plugins_url( 'dist/style-ujicount.css', dirname( __FILE__ ) ), // Block editor CSS.
44
  array( 'wp-edit-blocks' ), // Dependency to include the CSS after it.
45
  null // filemtime( plugin_dir_path( __DIR__ ) . 'dist/blocks.editor.build.css' ) // Version: File modification time.
46
  );
72
  'editor_style' => 'uji_countdown_2020-uji-block-editor-css',
73
  )
74
  );
75
+
76
+
77
  }
78
 
79
  // Hook: Block assets.
src/common.scss CHANGED
@@ -1,3 +1,8 @@
 
 
 
 
 
1
  /**
2
  * #.# Common SCSS
3
  *
1
+ @import "node_modules/@wordpress/base-styles/variables";
2
+ @import "node_modules/@wordpress/base-styles/colors";
3
+ @import "node_modules/@wordpress/base-styles/mixins";
4
+ @import "node_modules/@wordpress/base-styles/breakpoints";
5
+
6
  /**
7
  * #.# Common SCSS
8
  *
src/ujicount.js ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * Gutenberg Blocks
3
+ *
4
+ * All blocks related JavaScript files should be imported here.
5
+ * You can create a new block folder in this dir and include code
6
+ * for that block here as well.
7
+ *
8
+ * All blocks should be included here since this is the file that
9
+ * Webpack is compiling as the input file.
10
+ */
11
+
12
+ // Import CSS.
13
+ //import './common.scss';
14
+
15
+ import './block/editor.scss';
16
+ import './block/style.scss';
17
+
18
+ import './block/block.js';
ujicountdown.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: Uji Countdown
4
  Plugin URI: http://www.wpmanage.com/uji-countdown
5
  Description: HTML5 Customizable Countdown.
6
- Version: 2.1.2
7
  Text Domain: ujicountdown
8
  Domain Path: /lang
9
  Author: Wpmanage.com
3
  Plugin Name: Uji Countdown
4
  Plugin URI: http://www.wpmanage.com/uji-countdown
5
  Description: HTML5 Customizable Countdown.
6
+ Version: 2.1.3
7
  Text Domain: ujicountdown
8
  Domain Path: /lang
9
  Author: Wpmanage.com