Codebase list impress.js / 2ca97500-949b-4dba-8f8c-87308ef7f6ff/main
New upstream snapshot. Debian Janitor 2 years ago
45 changed file(s) with 97 addition(s) and 9021 deletion(s). Raw diff Collapse all Expand all
+0
-29
.circleci/config.yml less more
0 version: 2
1 jobs:
2 build:
3 working_directory: ~/impress.js
4 docker:
5 - image: circleci/node:current-browsers
6 steps:
7 - checkout
8 - run:
9 name: update-npm
10 command: 'sudo npm install -g npm@latest'
11 - restore_cache:
12 key: dependency-cache-{{ checksum "package.json" }}
13 - run:
14 name: install-npm
15 command: npm install
16 - save_cache:
17 key: dependency-cache-{{ checksum "package.json" }}
18 paths:
19 - ./node_modules
20 - run:
21 name: build
22 command: npm run build
23 - run:
24 name: lint
25 command: npm run lint
26 - run:
27 name: test
28 command: npm test
+0
-296
.eslintrc.js less more
0 module.exports = {
1 "env": {
2 "browser": true,
3 "es6": true
4 },
5 "extends": "eslint:recommended",
6 "globals": {
7 "Atomics": "readonly",
8 "SharedArrayBuffer": "readonly"
9 },
10 "parserOptions": {
11 "ecmaVersion": 2018
12 },
13 "rules": {
14 "accessor-pairs": "error",
15 "array-bracket-newline": "error",
16 "array-bracket-spacing": "error",
17 "array-callback-return": "error",
18 "array-element-newline": "error",
19 "arrow-body-style": "error",
20 "arrow-parens": "error",
21 "arrow-spacing": "error",
22 "block-scoped-var": "off",
23 "block-spacing": [
24 "error",
25 "always"
26 ],
27 "brace-style": [
28 "error",
29 "1tbs",
30 {
31 "allowSingleLine": true
32 }
33 ],
34 "callback-return": "error",
35 "camelcase": "error",
36 "capitalized-comments": "off",
37 "class-methods-use-this": "error",
38 "comma-dangle": "error",
39 "comma-spacing": [
40 "error",
41 {
42 "after": true,
43 "before": false
44 }
45 ],
46 "comma-style": [
47 "error",
48 "last"
49 ],
50 "complexity": "error",
51 "computed-property-spacing": [
52 "error",
53 "always"
54 ],
55 "consistent-return": "error",
56 "consistent-this": "off",
57 "curly": "error",
58 "default-case": "error",
59 "dot-location": "error",
60 "dot-notation": "error",
61 "eol-last": "error",
62 "eqeqeq": "error",
63 "func-call-spacing": "error",
64 "func-name-matching": "error",
65 "func-names": "off",
66 "func-style": [
67 "error",
68 "expression"
69 ],
70 "function-paren-newline": "error",
71 "generator-star-spacing": "error",
72 "global-require": "error",
73 "guard-for-in": "error",
74 "handle-callback-err": "error",
75 "id-blacklist": "error",
76 "id-length": "off",
77 "id-match": "error",
78 "implicit-arrow-linebreak": "error",
79 "indent": "error",
80 "indent-legacy": "error",
81 "init-declarations": "off",
82 "jsx-quotes": "error",
83 "key-spacing": "off",
84 "keyword-spacing": [
85 "error",
86 {
87 "after": true,
88 "before": true
89 }
90 ],
91 "line-comment-position": "off",
92 "linebreak-style": [
93 "error",
94 "unix"
95 ],
96 "lines-around-comment": "error",
97 "lines-around-directive": "off",
98 "lines-between-class-members": "error",
99 "max-classes-per-file": "error",
100 "max-depth": "error",
101 "max-len": "off",
102 "max-lines": "error",
103 "max-lines-per-function": "off",
104 "max-nested-callbacks": "error",
105 "max-params": "error",
106 "max-statements": "off",
107 "max-statements-per-line": "off",
108 "multiline-comment-style": [
109 "error",
110 "separate-lines"
111 ],
112 "new-cap": "error",
113 "new-parens": "error",
114 "newline-after-var": "off",
115 "newline-before-return": "off",
116 "newline-per-chained-call": "error",
117 "no-alert": "error",
118 "no-array-constructor": "error",
119 "no-async-promise-executor": "error",
120 "no-await-in-loop": "error",
121 "no-bitwise": "error",
122 "no-buffer-constructor": "error",
123 "no-caller": "error",
124 "no-catch-shadow": "error",
125 "no-confusing-arrow": "error",
126 "no-continue": "error",
127 "no-div-regex": "error",
128 "no-duplicate-imports": "error",
129 "no-else-return": "error",
130 "no-empty-function": "error",
131 "no-eq-null": "error",
132 "no-eval": "error",
133 "no-extend-native": "error",
134 "no-extra-bind": "error",
135 "no-extra-label": "error",
136 "no-extra-parens": "off",
137 "no-floating-decimal": "error",
138 "no-implicit-coercion": "error",
139 "no-implicit-globals": "error",
140 "no-implied-eval": "error",
141 "no-inline-comments": "off",
142 "no-inner-declarations": [
143 "error",
144 "functions"
145 ],
146 "no-invalid-this": "off",
147 "no-iterator": "error",
148 "no-label-var": "error",
149 "no-labels": "error",
150 "no-lone-blocks": "error",
151 "no-lonely-if": "error",
152 "no-loop-func": "error",
153 "no-magic-numbers": "off",
154 "no-misleading-character-class": "error",
155 "no-mixed-operators": "error",
156 "no-mixed-requires": "error",
157 "no-multi-assign": "error",
158 "no-multi-spaces": "off",
159 "no-multi-str": "error",
160 "no-multiple-empty-lines": "error",
161 "no-native-reassign": "error",
162 "no-negated-condition": "off",
163 "no-negated-in-lhs": "error",
164 "no-nested-ternary": "error",
165 "no-new": "error",
166 "no-new-func": "error",
167 "no-new-object": "error",
168 "no-new-require": "error",
169 "no-new-wrappers": "error",
170 "no-octal-escape": "error",
171 "no-param-reassign": "off",
172 "no-path-concat": "error",
173 "no-plusplus": "off",
174 "no-process-env": "error",
175 "no-process-exit": "error",
176 "no-proto": "error",
177 "no-prototype-builtins": "error",
178 "no-restricted-globals": "error",
179 "no-restricted-imports": "error",
180 "no-restricted-modules": "error",
181 "no-restricted-properties": "error",
182 "no-restricted-syntax": "error",
183 "no-return-assign": "error",
184 "no-return-await": "error",
185 "no-script-url": "error",
186 "no-self-compare": "error",
187 "no-sequences": "error",
188 "no-shadow": "off",
189 "no-shadow-restricted-names": "error",
190 "no-spaced-func": "error",
191 "no-sync": "error",
192 "no-tabs": "error",
193 "no-template-curly-in-string": "error",
194 "no-ternary": "off",
195 "no-throw-literal": "error",
196 "no-trailing-spaces": "error",
197 "no-undef-init": "error",
198 "no-undefined": "off",
199 "no-underscore-dangle": "error",
200 "no-unmodified-loop-condition": "error",
201 "no-unneeded-ternary": "error",
202 "no-unused-expressions": "error",
203 "no-use-before-define": "off",
204 "no-useless-call": "error",
205 "no-useless-catch": "error",
206 "no-useless-computed-key": "error",
207 "no-useless-concat": "error",
208 "no-useless-constructor": "error",
209 "no-useless-rename": "error",
210 "no-useless-return": "error",
211 "no-var": "off",
212 "no-void": "error",
213 "no-warning-comments": "error",
214 "no-whitespace-before-property": "error",
215 "no-with": "error",
216 "nonblock-statement-body-position": "error",
217 "object-curly-newline": "error",
218 "object-curly-spacing": [
219 "error",
220 "always"
221 ],
222 "object-shorthand": "off",
223 "one-var": "off",
224 "one-var-declaration-per-line": "off",
225 "operator-assignment": "error",
226 "operator-linebreak": "error",
227 "padded-blocks": "off",
228 "padding-line-between-statements": "error",
229 "prefer-arrow-callback": "off",
230 "prefer-const": "error",
231 "prefer-destructuring": "off",
232 "prefer-numeric-literals": "error",
233 "prefer-object-spread": "error",
234 "prefer-promise-reject-errors": "error",
235 "prefer-reflect": "off",
236 "prefer-rest-params": "off",
237 "prefer-spread": "error",
238 "prefer-template": "off",
239 "quote-props": "off",
240 "quotes": [
241 "error",
242 "double"
243 ],
244 "radix": "error",
245 "require-atomic-updates": "error",
246 "require-await": "error",
247 "require-jsdoc": "error",
248 "require-unicode-regexp": "off",
249 "rest-spread-spacing": "error",
250 "semi": "error",
251 "semi-spacing": [
252 "error",
253 {
254 "after": true,
255 "before": false
256 }
257 ],
258 "semi-style": [
259 "error",
260 "last"
261 ],
262 "sort-imports": "error",
263 "sort-keys": "off",
264 "sort-vars": "off",
265 "space-before-blocks": "error",
266 "space-before-function-paren": "off",
267 "space-in-parens": [
268 "error",
269 "always"
270 ],
271 "space-infix-ops": "error",
272 "space-unary-ops": "error",
273 "spaced-comment": [
274 "error",
275 "always"
276 ],
277 "strict": "error",
278 "switch-colon-spacing": "error",
279 "symbol-description": "error",
280 "template-curly-spacing": "error",
281 "template-tag-spacing": "error",
282 "unicode-bom": [
283 "error",
284 "never"
285 ],
286 "valid-jsdoc": "error",
287 "vars-on-top": "off",
288 "wrap-regex": "error",
289 "yield-star-spacing": "error",
290 "yoda": [
291 "error",
292 "never"
293 ]
294 }
295 };
+0
-1
.gitattributes less more
0 * text=auto
+0
-8
.gitignore less more
0 /js/impress.min.js.map
1 /js/impress.min.js
2 /node_modules
3 /npm-debug.log
4 /*.tgz
5
6 # Files for editors and other tools
7 /.brackets.json
+0
-3
.gitmodules less more
0 [submodule "extras"]
1 path = extras
2 url = https://github.com/impress/impress-extras
+0
-5
.jscsrc less more
0 {
1 "preset": "jquery",
2 // Since we check quotemarks already in jshint, this can be turned off
3 "validateQuoteMarks": false
4 }
+0
-17
.jshintrc less more
0 {
1 "globals": {
2 "module": true
3 },
4 "boss": true,
5 "browser": true,
6 "curly": true,
7 "esversion": 6,
8 "eqeqeq": true,
9 "eqnull": true,
10 "expr": true,
11 "immed": true,
12 "noarg": true,
13 "quotmark": "double",
14 "undef": true,
15 "unused": true
16 }
+0
-5
.npmignore less more
0 /.*/
1 /.*
2 /examples
3 /extras/*
4 /circle.yml
0 impress.js (1.1.0+git20210803.1.4bceee7-1) UNRELEASED; urgency=low
1
2 * New upstream snapshot.
3
4 -- Debian Janitor <janitor@jelmer.uk> Fri, 15 Oct 2021 20:50:11 -0000
5
06 impress.js (1.1.0-1) unstable; urgency=medium
17
28 * Team upload.
+0
-497
examples/2D-navigation/css/fonts.css less more
0 /* latin-ext */
1 @font-face {
2 font-family: 'Cutive Mono';
3 font-style: normal;
4 font-weight: 400;
5 src: local('Cutive Mono'), local('CutiveMono-Regular'), url(http://fonts.gstatic.com/s/cutivemono/v4/N5odNRruTwjvCM8y77PhQSYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
6 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
7 }
8 /* latin */
9 @font-face {
10 font-family: 'Cutive Mono';
11 font-style: normal;
12 font-weight: 400;
13 src: local('Cutive Mono'), local('CutiveMono-Regular'), url(http://fonts.gstatic.com/s/cutivemono/v4/N5odNRruTwjvCM8y77PhQY4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
14 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
15 }
16 /* cyrillic-ext */
17 @font-face {
18 font-family: 'Open Sans';
19 font-style: normal;
20 font-weight: 400;
21 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/K88pR3goAWT7BTt32Z01mxJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
22 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
23 }
24 /* cyrillic */
25 @font-face {
26 font-family: 'Open Sans';
27 font-style: normal;
28 font-weight: 400;
29 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/RjgO7rYTmqiVp7vzi-Q5URJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
30 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
31 }
32 /* greek-ext */
33 @font-face {
34 font-family: 'Open Sans';
35 font-style: normal;
36 font-weight: 400;
37 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/LWCjsQkB6EMdfHrEVqA1KRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
38 unicode-range: U+1F00-1FFF;
39 }
40 /* greek */
41 @font-face {
42 font-family: 'Open Sans';
43 font-style: normal;
44 font-weight: 400;
45 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/xozscpT2726on7jbcb_pAhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
46 unicode-range: U+0370-03FF;
47 }
48 /* vietnamese */
49 @font-face {
50 font-family: 'Open Sans';
51 font-style: normal;
52 font-weight: 400;
53 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/59ZRklaO5bWGqF5A9baEERJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
54 unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
55 }
56 /* latin-ext */
57 @font-face {
58 font-family: 'Open Sans';
59 font-style: normal;
60 font-weight: 400;
61 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/u-WUoqrET9fUeobQW7jkRRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
62 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
63 }
64 /* latin */
65 @font-face {
66 font-family: 'Open Sans';
67 font-style: normal;
68 font-weight: 400;
69 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/cJZKeOuBrn4kERxqtaUH3VtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
70 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
71 }
72 /* cyrillic-ext */
73 @font-face {
74 font-family: 'Open Sans';
75 font-style: normal;
76 font-weight: 600;
77 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSq-j2U0lmluP9RWlSytm3ho.woff2) format('woff2');
78 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
79 }
80 /* cyrillic */
81 @font-face {
82 font-family: 'Open Sans';
83 font-style: normal;
84 font-weight: 600;
85 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSpX5f-9o1vgP2EXwfjgl7AY.woff2) format('woff2');
86 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
87 }
88 /* greek-ext */
89 @font-face {
90 font-family: 'Open Sans';
91 font-style: normal;
92 font-weight: 600;
93 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNShWV49_lSm1NYrwo-zkhivY.woff2) format('woff2');
94 unicode-range: U+1F00-1FFF;
95 }
96 /* greek */
97 @font-face {
98 font-family: 'Open Sans';
99 font-style: normal;
100 font-weight: 600;
101 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSqaRobkAwv3vxw3jMhVENGA.woff2) format('woff2');
102 unicode-range: U+0370-03FF;
103 }
104 /* vietnamese */
105 @font-face {
106 font-family: 'Open Sans';
107 font-style: normal;
108 font-weight: 600;
109 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSv8zf_FOSsgRmwsS7Aa9k2w.woff2) format('woff2');
110 unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
111 }
112 /* latin-ext */
113 @font-face {
114 font-family: 'Open Sans';
115 font-style: normal;
116 font-weight: 600;
117 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSj0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
118 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
119 }
120 /* latin */
121 @font-face {
122 font-family: 'Open Sans';
123 font-style: normal;
124 font-weight: 600;
125 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSugdm0LZdjqr5-oayXSOefg.woff2) format('woff2');
126 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
127 }
128 /* cyrillic-ext */
129 @font-face {
130 font-family: 'Open Sans';
131 font-style: italic;
132 font-weight: 400;
133 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBjTOQ_MqJVwkKsUn0wKzc2I.woff2) format('woff2');
134 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
135 }
136 /* cyrillic */
137 @font-face {
138 font-family: 'Open Sans';
139 font-style: italic;
140 font-weight: 400;
141 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBjUj_cnvWIuuBMVgbX098Mw.woff2) format('woff2');
142 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
143 }
144 /* greek-ext */
145 @font-face {
146 font-family: 'Open Sans';
147 font-style: italic;
148 font-weight: 400;
149 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBkbcKLIaa1LC45dFaAfauRA.woff2) format('woff2');
150 unicode-range: U+1F00-1FFF;
151 }
152 /* greek */
153 @font-face {
154 font-family: 'Open Sans';
155 font-style: italic;
156 font-weight: 400;
157 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBmo_sUJ8uO4YLWRInS22T3Y.woff2) format('woff2');
158 unicode-range: U+0370-03FF;
159 }
160 /* vietnamese */
161 @font-face {
162 font-family: 'Open Sans';
163 font-style: italic;
164 font-weight: 400;
165 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBr6up8jxqWt8HVA3mDhkV_0.woff2) format('woff2');
166 unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
167 }
168 /* latin-ext */
169 @font-face {
170 font-family: 'Open Sans';
171 font-style: italic;
172 font-weight: 400;
173 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBiYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
174 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
175 }
176 /* latin */
177 @font-face {
178 font-family: 'Open Sans';
179 font-style: italic;
180 font-weight: 400;
181 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBo4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
182 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
183 }
184 /* cyrillic-ext */
185 @font-face {
186 font-family: 'Open Sans';
187 font-style: italic;
188 font-weight: 600;
189 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxmgpAmOCqD37_tyH_8Ri5MM.woff2) format('woff2');
190 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
191 }
192 /* cyrillic */
193 @font-face {
194 font-family: 'Open Sans';
195 font-style: italic;
196 font-weight: 600;
197 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxsPNMTLbnS9uQzHQlYieHUU.woff2) format('woff2');
198 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
199 }
200 /* greek-ext */
201 @font-face {
202 font-family: 'Open Sans';
203 font-style: italic;
204 font-weight: 600;
205 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxgyhumQnPMBCoGYhRaNxyyY.woff2) format('woff2');
206 unicode-range: U+1F00-1FFF;
207 }
208 /* greek */
209 @font-face {
210 font-family: 'Open Sans';
211 font-style: italic;
212 font-weight: 600;
213 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxhUVAXEdVvYDDqrz3aeR0Yc.woff2) format('woff2');
214 unicode-range: U+0370-03FF;
215 }
216 /* vietnamese */
217 @font-face {
218 font-family: 'Open Sans';
219 font-style: italic;
220 font-weight: 600;
221 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxlf4y_3s5bcYyyLIFUSWYUU.woff2) format('woff2');
222 unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
223 }
224 /* latin-ext */
225 @font-face {
226 font-family: 'Open Sans';
227 font-style: italic;
228 font-weight: 600;
229 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxnywqdtBbUHn3VPgzuFrCy8.woff2) format('woff2');
230 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
231 }
232 /* latin */
233 @font-face {
234 font-family: 'Open Sans';
235 font-style: italic;
236 font-weight: 600;
237 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxl2umOyRU7PgRiv8DXcgJjk.woff2) format('woff2');
238 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
239 }
240 /* cyrillic-ext */
241 @font-face {
242 font-family: 'PT Sans';
243 font-style: normal;
244 font-weight: 400;
245 src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/JX7MlXqjSJNjQvI4heMMGvY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
246 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
247 }
248 /* cyrillic */
249 @font-face {
250 font-family: 'PT Sans';
251 font-style: normal;
252 font-weight: 400;
253 src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/vtwNVMP8y9C17vLvIBNZI_Y6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
254 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
255 }
256 /* latin-ext */
257 @font-face {
258 font-family: 'PT Sans';
259 font-style: normal;
260 font-weight: 400;
261 src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/9kaD4V2pNPMMeUVBHayd7vY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
262 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
263 }
264 /* latin */
265 @font-face {
266 font-family: 'PT Sans';
267 font-style: normal;
268 font-weight: 400;
269 src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/ATKpv8nLYAKUYexo8iqqrg.woff2) format('woff2');
270 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
271 }
272 /* cyrillic-ext */
273 @font-face {
274 font-family: 'PT Sans';
275 font-style: normal;
276 font-weight: 700;
277 src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/kTYfCWJhlldPf5LnG4ZnHCEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
278 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
279 }
280 /* cyrillic */
281 @font-face {
282 font-family: 'PT Sans';
283 font-style: normal;
284 font-weight: 700;
285 src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/g46X4VH_KHOWAAa-HpnGPiEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
286 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
287 }
288 /* latin-ext */
289 @font-face {
290 font-family: 'PT Sans';
291 font-style: normal;
292 font-weight: 700;
293 src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/hpORcvLZtemlH8gI-1S-7iEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
294 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
295 }
296 /* latin */
297 @font-face {
298 font-family: 'PT Sans';
299 font-style: normal;
300 font-weight: 700;
301 src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/0XxGQsSc1g4rdRdjJKZrNPk_vArhqVIZ0nv9q090hN8.woff2) format('woff2');
302 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
303 }
304 /* cyrillic-ext */
305 @font-face {
306 font-family: 'PT Sans';
307 font-style: italic;
308 font-weight: 400;
309 src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/GpWpM_6S4VQLPNAQ3iWvVRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
310 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
311 }
312 /* cyrillic */
313 @font-face {
314 font-family: 'PT Sans';
315 font-style: italic;
316 font-weight: 400;
317 src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/7dSh6BcuqDLzS2qAASIeuhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
318 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
319 }
320 /* latin-ext */
321 @font-face {
322 font-family: 'PT Sans';
323 font-style: italic;
324 font-weight: 400;
325 src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/DVKQJxMmC9WF_oplMzlQqRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
326 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
327 }
328 /* latin */
329 @font-face {
330 font-family: 'PT Sans';
331 font-style: italic;
332 font-weight: 400;
333 src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/PIPMHY90P7jtyjpXuZ2cLFtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
334 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
335 }
336 /* cyrillic-ext */
337 @font-face {
338 font-family: 'PT Sans';
339 font-style: italic;
340 font-weight: 700;
341 src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkK-j2U0lmluP9RWlSytm3ho.woff2) format('woff2');
342 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
343 }
344 /* cyrillic */
345 @font-face {
346 font-family: 'PT Sans';
347 font-style: italic;
348 font-weight: 700;
349 src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkJX5f-9o1vgP2EXwfjgl7AY.woff2) format('woff2');
350 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
351 }
352 /* latin-ext */
353 @font-face {
354 font-family: 'PT Sans';
355 font-style: italic;
356 font-weight: 700;
357 src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkD0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
358 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
359 }
360 /* latin */
361 @font-face {
362 font-family: 'PT Sans';
363 font-style: italic;
364 font-weight: 700;
365 src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkOgdm0LZdjqr5-oayXSOefg.woff2) format('woff2');
366 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
367 }
368 /* cyrillic-ext */
369 @font-face {
370 font-family: 'PT Serif';
371 font-style: normal;
372 font-weight: 400;
373 src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/5hX15RUpPERmeybVlLQEWBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
374 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
375 }
376 /* cyrillic */
377 @font-face {
378 font-family: 'PT Serif';
379 font-style: normal;
380 font-weight: 400;
381 src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/fU0HAfLiPHGlZhZpY6M7dBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
382 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
383 }
384 /* latin-ext */
385 @font-face {
386 font-family: 'PT Serif';
387 font-style: normal;
388 font-weight: 400;
389 src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/CPRt--GVMETgA6YEaoGitxTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
390 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
391 }
392 /* latin */
393 @font-face {
394 font-family: 'PT Serif';
395 font-style: normal;
396 font-weight: 400;
397 src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/I-OtoJZa3TeyH6D9oli3ifesZW2xOQ-xsNqO47m55DA.woff2) format('woff2');
398 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
399 }
400 /* cyrillic-ext */
401 @font-face {
402 font-family: 'PT Serif';
403 font-style: normal;
404 font-weight: 700;
405 src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpDTOQ_MqJVwkKsUn0wKzc2I.woff2) format('woff2');
406 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
407 }
408 /* cyrillic */
409 @font-face {
410 font-family: 'PT Serif';
411 font-style: normal;
412 font-weight: 700;
413 src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpDUj_cnvWIuuBMVgbX098Mw.woff2) format('woff2');
414 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
415 }
416 /* latin-ext */
417 @font-face {
418 font-family: 'PT Serif';
419 font-style: normal;
420 font-weight: 700;
421 src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpCYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
422 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
423 }
424 /* latin */
425 @font-face {
426 font-family: 'PT Serif';
427 font-style: normal;
428 font-weight: 700;
429 src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpI4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
430 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
431 }
432 /* cyrillic-ext */
433 @font-face {
434 font-family: 'PT Serif';
435 font-style: italic;
436 font-weight: 400;
437 src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/O_WhD9hODL16N4KLHLX7xSEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
438 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
439 }
440 /* cyrillic */
441 @font-face {
442 font-family: 'PT Serif';
443 font-style: italic;
444 font-weight: 400;
445 src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/3Nwg9VzlwLXPq3fNKwVRMCEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
446 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
447 }
448 /* latin-ext */
449 @font-face {
450 font-family: 'PT Serif';
451 font-style: italic;
452 font-weight: 400;
453 src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/b31S45a_TNgaBApZhTgE6CEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
454 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
455 }
456 /* latin */
457 @font-face {
458 font-family: 'PT Serif';
459 font-style: italic;
460 font-weight: 400;
461 src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/03aPdn7fFF3H6ngCgAlQzPk_vArhqVIZ0nv9q090hN8.woff2) format('woff2');
462 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
463 }
464 /* cyrillic-ext */
465 @font-face {
466 font-family: 'PT Serif';
467 font-style: italic;
468 font-weight: 700;
469 src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9ede9INZm0R8ZMJUtfOsxrw.woff2) format('woff2');
470 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
471 }
472 /* cyrillic */
473 @font-face {
474 font-family: 'PT Serif';
475 font-style: italic;
476 font-weight: 700;
477 src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9bpHcMS0zZe4mIYvDKG2oeM.woff2) format('woff2');
478 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
479 }
480 /* latin-ext */
481 @font-face {
482 font-family: 'PT Serif';
483 font-style: italic;
484 font-weight: 700;
485 src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9RHJTnCUrjaAm2S9z52xC3Y.woff2) format('woff2');
486 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
487 }
488 /* latin */
489 @font-face {
490 font-family: 'PT Serif';
491 font-style: italic;
492 font-weight: 700;
493 src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9YWiMMZ7xLd792ULpGE4W_Y.woff2) format('woff2');
494 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
495 }
496
+0
-229
examples/2D-navigation/css/presentation.css less more
0 /*
1 A common approach is to use googleapis.com to generate css for the webfonts you want to use.
2 The downside of this approach is that you have to be online. So below I have simply saved
3 the output of the googleapis url into a file. Then you of course also have to make sure
4 the webfonts are locally installed to make offline usage work. For Ubuntu (or Debian) I
5 successfully used the script from here to do that:
6 http://www.webupd8.org/2011/01/automatically-install-all-google-web.html
7 */
8
9 /* @import url(http://fonts.googleapis.com/css?family=Open+Sans:regular,semibold,italic,italicsemibold|PT+Sans:400,700,400italic,700italic|PT+Serif:400,700,400italic,700italic|Cutive+Mono); */
10 @import url(fonts.css);
11
12
13
14 /*
15 We display a fallback message for users with browsers that don't support
16 all the features required by it. All of the content will be still fully
17 accessible for them, but some more advanced effects would be missing.
18 When impress.js detects that browser supports all necessary CSS3 features,
19 the fallback-message style is hidden.
20 */
21
22 .fallback-message {
23 font-family: sans-serif;
24 line-height: 1.3;
25
26 width: 780px;
27 padding: 10px 10px 0;
28 margin: 20px auto;
29
30 border: 1px solid #E4C652;
31 border-radius: 10px;
32 background: #EEDC94;
33 }
34
35 .fallback-message p {
36 margin-bottom: 10px;
37 }
38
39 .impress-supported .fallback-message {
40 display: none;
41 }
42
43
44 /*
45 The body background is the bacgkround of "everything". Many
46 impress.js tools call it the "surface". It could also be a
47 picture or pattern, but we leave it as light gray.
48 */
49
50 body {
51 font-family: 'PT Sans', sans-serif;
52 min-height: 740px;
53
54 background: #aaccbb;
55 color: #ff4466;
56 }
57
58 /*
59 Now let's style the presentation steps.
60 */
61
62 .step {
63 position: relative;
64 display: block;
65
66 width: 900px;
67 height: 700px;
68 margin: 20px auto;
69 padding: 40px 60px;
70
71 text-shadow: 0 2px 2px rgba(0, 10, 0, .5);
72
73 font-family: 'Open Sans', Arial, sans-serif;
74 font-size: 30px;
75 letter-spacing: -1px;
76
77 }
78 /*
79 Make inactive steps a little bit transparent.
80 */
81 .impress-enabled .step {
82 margin: 0;
83 opacity: 0.3;
84 transition: opacity 1s;
85 }
86
87 .impress-enabled .step.active { opacity: 1 }
88
89 h1,
90 h2,
91 h3 {
92 margin-bottom: 0.5em;
93 margin-top: 0.5em;
94 text-align: center;
95 }
96
97 p {
98 text-align: center;
99 margin: 0.7em;
100 }
101
102 li {
103 margin: 0.2em;
104 }
105
106 /* Highlight.js used for coloring pre > code blocks. */
107 pre > code {
108 font-size: 14px;
109 text-shadow: 0 0 0 rgba(0, 0, 0, 0);
110 }
111
112 /* Inline code, no Highlight.js */
113 code {
114 font-family: "Cutive mono","Courier New", monospace;
115 }
116
117
118 a {
119 color: inherit;
120 text-decoration: none;
121 padding: 0 0.1em;
122 background: rgba(200,200,200,0.3);
123 text-shadow: -1px 1px 2px rgba(100,100,100,0.9);
124 border-radius: 0.2em;
125 border-bottom: 1px solid rgba(100,100,100,0.4);
126 border-left: 1px solid rgba(100,100,100,0.4);
127
128 transition: 0.5s;
129 }
130 a:hover,
131 a:focus {
132 background: rgba(200,200,200,1);
133 text-shadow: -1px 1px 2px rgba(100,100,100,0.5);
134 }
135
136 blockquote {
137 font-family: 'PT Serif';
138 font-style: italic;
139 font-weight: 400;
140 }
141
142 em {
143 text-shadow: 0 2px 2px rgba(0, 0, 0, .3);
144 }
145
146 strong {
147 text-shadow: -1px 1px 2px rgba(100,100,100,0.5);
148 }
149
150 q {
151 font-family: 'PT Serif';
152 font-style: italic;
153 font-weight: 400;
154 text-shadow: 0 2px 2px rgba(0, 0, 0, .3);
155 }
156
157 strike {
158 opacity: 0.7;
159 }
160
161 small {
162 font-size: 0.4em;
163 }
164
165 img {
166 width: 300px
167 }
168
169 /****************** Background images **********************************************/
170
171
172 img.bg {
173 position: fixed;
174 z-index: -100;
175 opacity: 0;
176 height: 50%;
177 width: auto;
178 transition: opacity 2s;
179 }
180
181 #applepie-image {
182 left: 0px;
183 bottom: 0px;
184 }
185
186 body.impress-on-applepie #applepie-image,
187 body.impress-on-applepie-pro #applepie-image,
188 body.impress-on-applepie-con #applepie-image,
189 body.impress-on-conclusion #applepie-image,
190 body.impress-on-overview #applepie-image {
191 opacity: 0.7;
192 transition: opacity 2s;
193 }
194
195 #icecream-image {
196 right: 0px;
197 top: 0px;
198 }
199
200 body.impress-on-icecream #icecream-image,
201 body.impress-on-icecream-pro #icecream-image,
202 body.impress-on-icecream-con #icecream-image,
203 body.impress-on-conclusion #icecream-image,
204 body.impress-on-overview #icecream-image {
205 opacity: 0.7;
206 transition: opacity 2s;
207 }
208
209 #crisps-image {
210 right: 0px;
211 bottom: 0px;
212 }
213
214 body.impress-on-crisps #crisps-image,
215 body.impress-on-crisps-pro #crisps-image,
216 body.impress-on-crisps-con #crisps-image,
217 body.impress-on-conclusion #crisps-image,
218 body.impress-on-overview #crisps-image {
219 opacity: 0.7;
220 transition: opacity 2s;
221 }
222
223
224 /*************** Slide specific things ****************************/
225
226 #image-credits {
227 color: #779988;
228 }
examples/2D-navigation/images/35535918670_f1d12627ff_o.png less more
Binary diff not shown
examples/2D-navigation/images/6296334551_b3d5c27823_b.png less more
Binary diff not shown
examples/2D-navigation/images/6636957665_5e7c4a79de_o.png less more
Binary diff not shown
+0
-204
examples/2D-navigation/index.html less more
0 <!doctype html>
1 <html lang="en">
2 <head>
3 <meta charset="utf-8" />
4 <title>Desserts (2D navigation demo)</title>
5 <meta name="description" content="2D navigation demo" />
6 <meta name="author" content="Henrik Ingo" />
7 <link href="../../css/impress-common.css" rel="stylesheet" />
8 <link href="css/presentation.css" rel="stylesheet" />
9 </head>
10 <body class="impress-not-supported">
11 <div class="fallback-message">
12 <p>Your browser <b>doesn't support the features required</b> by impress.js, so you are presented with a simplified version of this presentation.</p>
13 <p>For the best experience please use the latest <b>Chrome</b>, <b>Safari</b> or <b>Firefox</b> browser.</p>
14 </div>
15
16 <!-- Some images that are fixed to background in the css -->
17 <img id="applepie-image" class="bg" src="images/6296334551_b3d5c27823_b.png">
18 <img id="icecream-image" class="bg" src="images/35535918670_f1d12627ff_o.png">
19 <img id="crisps-image" class="bg" src="images/6636957665_5e7c4a79de_o.png">
20
21
22
23 <div id="impress" data-transition-duration="1000">
24
25 <div class="step" data-scale="2" data-x="-500" data-y="-500">
26 <h1>2D navigation</h1>
27
28 <ul>
29 <li>Impress.js allows you to layout your presentation in a 3D space</li>
30 <li>Now <a href="https://github.com/impress/impress.js/tree/master/src/plugins/goto">the
31 goto plugin</a> also allows you to specify
32 non-linear navigation!</li>
33 <li>This demo can be navigated by
34 <ul>
35 <li>continuously pressing Right Arrow</li>
36 <li>continuously pressing Down Arrow</li>
37 <li>(or freely, pressing Up, Down, Right, Left as you choose)</li>
38 </ul>
39 </li>
40 <li>It's up to you to decide which is the better structure</li>
41 </ul>
42 </div>
43
44 <div id="contents" class="step" data-rel-x="1500" data-rel-y="1500" data-scale="1">
45 <h1>Choosing a treat</h1>
46
47 <ul>
48 <li>You can choose your preferred treat from:
49 <ul>
50 <li>Ice cream</li>
51 <li>Crisps</li>
52 <li>Apple pie</li>
53 </ul>
54 </li>
55 <li>We will make a structured pro's &amp; con's analysis to arrive at a conclusion</li>
56 </ul>
57 </div>
58
59 <!-- Ice cream slides (3) -->
60 <div id="icecream" class="step" data-x="2000" data-y="2000"
61 data-goto-key-list="ArrowUp ArrowDown ArrowLeft ArrowRight"
62 data-goto-next-list="contents icecream-pro contents crisps">
63 <h1>Ice cream</h1>
64
65 <ul>
66 <li>Cold</li>
67 <li>Creamy</li>
68 <li>Vanilla or flavored</li>
69 <li>Caramel sauce, jams &amp; other toppings</li>
70 </ul>
71 </div>
72
73 <div id="icecream-pro" class="step" data-rel-x="0" data-rel-y="1000"
74 data-goto-key-list="ArrowUp ArrowDown ArrowLeft ArrowRight"
75 data-goto-next-list="icecream icecream-con applepie crisps-pro">
76 <h1>Ice cream: Pro's</h1>
77
78 <ul>
79 <li>Great for dessert or snack</li>
80 <li>Great in the Summer</li>
81 </ul>
82 </div>
83
84
85 <div id="icecream-con" class="step" data-rel-x="0" data-rel-y="1000"
86 data-goto-key-list="ArrowUp ArrowDown ArrowLeft ArrowRight"
87 data-goto-next-list="icecream-pro crisps applepie-pro crisps-con">
88 <h1>Ice cream: Con's</h1>
89
90 <ul>
91 <li>Not so great in the Winter</li>
92 <li>If you're allergic to lactose/milk</li>
93 <li>Diet alternatives are not real ice cream</li>
94 </ul>
95 </div>
96
97
98 <!-- Crisps slides (3) -->
99 <div id="crisps" class="step" data-x="3500" data-y="2000"
100 data-goto-key-list="ArrowUp ArrowDown ArrowLeft ArrowRight"
101 data-goto-next-list="icecream-con crisps-pro icecream applepie">
102 <h1>Crisps</h1>
103
104 <ul>
105 <li>Potatoes fried in oil and salted</li>
106 <li>Various flavors</li>
107 <li>Dips</li>
108 <li>Can be used as ingredient in subs (Cliff Huxtable style)</li>
109 </ul>
110 </div>
111
112 <div id="crisps-pro" class="step" data-rel-x="0" data-rel-y="1000"
113 data-goto-key-list="ArrowUp ArrowDown ArrowLeft ArrowRight"
114 data-goto-next-list="crisps crisps-con icecream-pro applepie-pro">
115 <h1>Crisps: Pro's</h1>
116
117 <ul>
118 <li>Simple yet tasty concept</li>
119 <li>Great for snack</li>
120 <li>Salty / spicy (not sweet)</li>
121 <li>Finger food</li>
122 <li>Diet alternatives are often ok</li>
123 </ul>
124 </div>
125
126
127 <div id="crisps-con" class="step" data-rel-x="0" data-rel-y="1000"
128 data-goto-key-list="ArrowUp ArrowDown ArrowLeft ArrowRight"
129 data-goto-next-list="crisps-pro applepie icecream-con applepie-con">
130 <h1>Crisps: Con's</h1>
131
132 <ul>
133 <li>Commonly not used as dessert</li>
134 <li>Not sweet</li>
135 </ul>
136 </div>
137
138
139 <!-- Apple pie slides (3) -->
140 <div id="applepie" class="step" data-x="5000" data-y="2000"
141 data-goto-key-list="ArrowUp ArrowDown ArrowLeft ArrowRight"
142 data-goto-next-list="crisps-con applepie-pro crisps icecream-pro">
143 <h1>Apple pie</h1>
144
145 <ul>
146 <li>Apple's in a pie</li>
147 <li>Many recipes exist. (Grandma's is the best.)</li>
148 <li>Vanilla sauce or cream on top</li>
149 </ul>
150 </div>
151
152 <div id="applepie-pro" class="step" data-rel-x="0" data-rel-y="1000"
153 data-goto-key-list="ArrowUp ArrowDown ArrowLeft ArrowRight"
154 data-goto-next-list="applepie applepie-con crisps-pro icecream-con">
155 <h1>Apple pie: Pro's</h1>
156
157 <ul>
158 <li>Great for dessert</li>
159 <li>Or just with a cup of tea or glass of milk</li>
160 <li>Best when warm</li>
161 </ul>
162 </div>
163
164
165 <div id="applepie-con" class="step" data-rel-x="0" data-rel-y="1000"
166 data-goto-key-list="ArrowUp ArrowDown ArrowLeft ArrowRight"
167 data-goto-next-list="applepie-pro conclusion crisps-con conclusion">
168 <h1>Apple pie: Con's</h1>
169
170 <ul>
171 <li>I'm allergic to apple (but a small slice is worth it)</li>
172 <li>Not finger food</li>
173 </ul>
174 </div>
175
176
177 <div id="conclusion" class="step" data-rel-x="1000" data-rel-y="1000">
178 <h1>Conclusion</h1>
179
180 <p>Can I choose all three ;-)</p>
181
182 <p style="font-size: small; position: absolute; bottom: 30px; left: 300px;" id="image-credits"
183 >Image credits: <a href="https://www.flickr.com/photos/reimagingerica/35535918670">reimagingerica@Flickr</a>,
184 <a href="https://www.flickr.com/photos/mixedmolly/6636957665">mixedmolly@Flickr</a>,
185 <a href="https://www.flickr.com/photos/stevepj2009/6296334551">stevepj2009@Flickr</a> </p>
186 </div>
187
188 <div id="overview" class="step" data-x="3000" data-y="2000" data-scale="9" style="pointer-events: none;">
189 </div>
190 </div>
191
192 <div id="impress-toolbar"></div>
193
194 <div class="impress-progressbar"><div></div></div>
195 <div class="impress-progress"></div>
196
197 <div id="impress-help"></div>
198
199 <script type="text/javascript" src="../../js/impress.js"></script>
200 <script>impress().init();</script>
201
202 </body>
203 </html>
+0
-170
examples/3D-rotations/css/3D-rotations.css less more
0 @import url(fonts.css);
1
2
3
4 /* Fallback message */
5
6 .fallback-message {
7 font-family: sans-serif;
8 line-height: 1.3;
9
10 width: 780px;
11 padding: 10px 10px 0;
12 margin: 20px auto;
13
14 border: 1px solid #E4C652;
15 border-radius: 10px;
16 background: #EEDC94;
17 }
18
19 .fallback-message p {
20 margin-bottom: 10px;
21 }
22
23 .impress-supported .fallback-message {
24 display: none;
25 }
26
27
28 /* Body & steps */
29 body {
30 font-family: 'PT Sans', sans-serif;
31 min-height: 740px;
32
33 background: #00000f;
34 color: rgb(102, 102, 102);
35 }
36
37 .step {
38 position: relative;
39 width: 700px;
40 height: 700px;
41 padding: 40px 60px;
42 margin: 20px auto;
43
44 box-sizing: border-box;
45
46 line-height: 1.5;
47
48 background-color: white;
49 border-radius: 10px;
50 box-shadow: 0 2px 6px rgba(0, 0, 0, .1);
51
52 text-shadow: 0 2px 2px rgba(0, 0, 0, .1);
53
54 font-family: 'Open Sans', Arial, sans-serif;
55 font-size: 40pt;
56 letter-spacing: -1px;
57
58 }
59
60 /* Overview step has no background or border */
61
62 .overview {
63 background-color: transparent;
64 border: none;
65 box-shadow: none;
66 pointer-events: none;
67 display: none;
68 }
69 .overview.active {
70 display: block;
71 pointer-events: auto;
72 }
73
74 /*
75 Make inactive steps a little bit transparent.
76 */
77 .impress-enabled .step {
78 margin: 0;
79 opacity: 0.1;
80 transition: opacity 1s;
81 }
82
83 .impress-enabled .step.active { opacity: 1 }
84
85
86 /* Content */
87
88 h1,
89 h2,
90 h3 {
91 margin-bottom: 0.5em;
92 margin-top: 0.5em;
93 text-align: center;
94 }
95
96 p {
97 margin: 0.7em;
98 }
99
100 li {
101 margin: 0.2em;
102 }
103
104 /* Highlight.js used for coloring pre > code blocks. */
105 pre > code {
106 font-size: 14px;
107 text-shadow: 0 0 0 rgba(0, 0, 0, 0);
108 }
109
110 /* Inline code, no Highlight.js */
111 code {
112 font-family: "Cutive mono","Courier New", monospace;
113 }
114
115
116 a {
117 color: inherit;
118 text-decoration: none;
119 padding: 0 0.1em;
120 background: rgba(200,200,200,0.2);
121 text-shadow: -1px 1px 2px rgba(100,100,100,0.9);
122 border-radius: 0.2em;
123 border-bottom: 1px solid rgba(100,100,100,0.2);
124 border-left: 1px solid rgba(100,100,100,0.2);
125
126 transition: 0.5s;
127 }
128 a:hover,
129 a:focus {
130 background: rgba(200,200,200,1);
131 text-shadow: -1px 1px 2px rgba(100,100,100,0.5);
132 }
133
134 blockquote {
135 font-family: 'PT Serif';
136 font-style: italic;
137 font-weight: 400;
138 }
139
140 em {
141 text-shadow: 0 2px 2px rgba(0, 0, 0, .3);
142 }
143
144 strong {
145 text-shadow: -1px 1px 2px rgba(100,100,100,0.5);
146 }
147
148 q {
149 font-family: 'PT Serif';
150 font-style: italic;
151 font-weight: 400;
152 text-shadow: 0 2px 2px rgba(0, 0, 0, .3);
153 }
154
155 strike {
156 opacity: 0.7;
157 }
158
159 small {
160 font-size: 0.4em;
161 }
162
163 /* Styles specific to each step */
164
165 #overview2 {
166 font-size: 20pt;
167 padding-left: 200px;
168 text-align: right;
169 }
+0
-497
examples/3D-rotations/css/fonts.css less more
0 /* latin-ext */
1 @font-face {
2 font-family: 'Cutive Mono';
3 font-style: normal;
4 font-weight: 400;
5 src: local('Cutive Mono'), local('CutiveMono-Regular'), url(http://fonts.gstatic.com/s/cutivemono/v4/N5odNRruTwjvCM8y77PhQSYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
6 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
7 }
8 /* latin */
9 @font-face {
10 font-family: 'Cutive Mono';
11 font-style: normal;
12 font-weight: 400;
13 src: local('Cutive Mono'), local('CutiveMono-Regular'), url(http://fonts.gstatic.com/s/cutivemono/v4/N5odNRruTwjvCM8y77PhQY4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
14 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
15 }
16 /* cyrillic-ext */
17 @font-face {
18 font-family: 'Open Sans';
19 font-style: normal;
20 font-weight: 400;
21 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/K88pR3goAWT7BTt32Z01mxJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
22 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
23 }
24 /* cyrillic */
25 @font-face {
26 font-family: 'Open Sans';
27 font-style: normal;
28 font-weight: 400;
29 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/RjgO7rYTmqiVp7vzi-Q5URJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
30 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
31 }
32 /* greek-ext */
33 @font-face {
34 font-family: 'Open Sans';
35 font-style: normal;
36 font-weight: 400;
37 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/LWCjsQkB6EMdfHrEVqA1KRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
38 unicode-range: U+1F00-1FFF;
39 }
40 /* greek */
41 @font-face {
42 font-family: 'Open Sans';
43 font-style: normal;
44 font-weight: 400;
45 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/xozscpT2726on7jbcb_pAhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
46 unicode-range: U+0370-03FF;
47 }
48 /* vietnamese */
49 @font-face {
50 font-family: 'Open Sans';
51 font-style: normal;
52 font-weight: 400;
53 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/59ZRklaO5bWGqF5A9baEERJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
54 unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
55 }
56 /* latin-ext */
57 @font-face {
58 font-family: 'Open Sans';
59 font-style: normal;
60 font-weight: 400;
61 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/u-WUoqrET9fUeobQW7jkRRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
62 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
63 }
64 /* latin */
65 @font-face {
66 font-family: 'Open Sans';
67 font-style: normal;
68 font-weight: 400;
69 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/cJZKeOuBrn4kERxqtaUH3VtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
70 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
71 }
72 /* cyrillic-ext */
73 @font-face {
74 font-family: 'Open Sans';
75 font-style: normal;
76 font-weight: 600;
77 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSq-j2U0lmluP9RWlSytm3ho.woff2) format('woff2');
78 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
79 }
80 /* cyrillic */
81 @font-face {
82 font-family: 'Open Sans';
83 font-style: normal;
84 font-weight: 600;
85 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSpX5f-9o1vgP2EXwfjgl7AY.woff2) format('woff2');
86 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
87 }
88 /* greek-ext */
89 @font-face {
90 font-family: 'Open Sans';
91 font-style: normal;
92 font-weight: 600;
93 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNShWV49_lSm1NYrwo-zkhivY.woff2) format('woff2');
94 unicode-range: U+1F00-1FFF;
95 }
96 /* greek */
97 @font-face {
98 font-family: 'Open Sans';
99 font-style: normal;
100 font-weight: 600;
101 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSqaRobkAwv3vxw3jMhVENGA.woff2) format('woff2');
102 unicode-range: U+0370-03FF;
103 }
104 /* vietnamese */
105 @font-face {
106 font-family: 'Open Sans';
107 font-style: normal;
108 font-weight: 600;
109 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSv8zf_FOSsgRmwsS7Aa9k2w.woff2) format('woff2');
110 unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
111 }
112 /* latin-ext */
113 @font-face {
114 font-family: 'Open Sans';
115 font-style: normal;
116 font-weight: 600;
117 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSj0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
118 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
119 }
120 /* latin */
121 @font-face {
122 font-family: 'Open Sans';
123 font-style: normal;
124 font-weight: 600;
125 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSugdm0LZdjqr5-oayXSOefg.woff2) format('woff2');
126 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
127 }
128 /* cyrillic-ext */
129 @font-face {
130 font-family: 'Open Sans';
131 font-style: italic;
132 font-weight: 400;
133 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBjTOQ_MqJVwkKsUn0wKzc2I.woff2) format('woff2');
134 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
135 }
136 /* cyrillic */
137 @font-face {
138 font-family: 'Open Sans';
139 font-style: italic;
140 font-weight: 400;
141 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBjUj_cnvWIuuBMVgbX098Mw.woff2) format('woff2');
142 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
143 }
144 /* greek-ext */
145 @font-face {
146 font-family: 'Open Sans';
147 font-style: italic;
148 font-weight: 400;
149 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBkbcKLIaa1LC45dFaAfauRA.woff2) format('woff2');
150 unicode-range: U+1F00-1FFF;
151 }
152 /* greek */
153 @font-face {
154 font-family: 'Open Sans';
155 font-style: italic;
156 font-weight: 400;
157 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBmo_sUJ8uO4YLWRInS22T3Y.woff2) format('woff2');
158 unicode-range: U+0370-03FF;
159 }
160 /* vietnamese */
161 @font-face {
162 font-family: 'Open Sans';
163 font-style: italic;
164 font-weight: 400;
165 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBr6up8jxqWt8HVA3mDhkV_0.woff2) format('woff2');
166 unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
167 }
168 /* latin-ext */
169 @font-face {
170 font-family: 'Open Sans';
171 font-style: italic;
172 font-weight: 400;
173 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBiYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
174 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
175 }
176 /* latin */
177 @font-face {
178 font-family: 'Open Sans';
179 font-style: italic;
180 font-weight: 400;
181 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBo4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
182 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
183 }
184 /* cyrillic-ext */
185 @font-face {
186 font-family: 'Open Sans';
187 font-style: italic;
188 font-weight: 600;
189 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxmgpAmOCqD37_tyH_8Ri5MM.woff2) format('woff2');
190 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
191 }
192 /* cyrillic */
193 @font-face {
194 font-family: 'Open Sans';
195 font-style: italic;
196 font-weight: 600;
197 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxsPNMTLbnS9uQzHQlYieHUU.woff2) format('woff2');
198 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
199 }
200 /* greek-ext */
201 @font-face {
202 font-family: 'Open Sans';
203 font-style: italic;
204 font-weight: 600;
205 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxgyhumQnPMBCoGYhRaNxyyY.woff2) format('woff2');
206 unicode-range: U+1F00-1FFF;
207 }
208 /* greek */
209 @font-face {
210 font-family: 'Open Sans';
211 font-style: italic;
212 font-weight: 600;
213 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxhUVAXEdVvYDDqrz3aeR0Yc.woff2) format('woff2');
214 unicode-range: U+0370-03FF;
215 }
216 /* vietnamese */
217 @font-face {
218 font-family: 'Open Sans';
219 font-style: italic;
220 font-weight: 600;
221 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxlf4y_3s5bcYyyLIFUSWYUU.woff2) format('woff2');
222 unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
223 }
224 /* latin-ext */
225 @font-face {
226 font-family: 'Open Sans';
227 font-style: italic;
228 font-weight: 600;
229 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxnywqdtBbUHn3VPgzuFrCy8.woff2) format('woff2');
230 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
231 }
232 /* latin */
233 @font-face {
234 font-family: 'Open Sans';
235 font-style: italic;
236 font-weight: 600;
237 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxl2umOyRU7PgRiv8DXcgJjk.woff2) format('woff2');
238 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
239 }
240 /* cyrillic-ext */
241 @font-face {
242 font-family: 'PT Sans';
243 font-style: normal;
244 font-weight: 400;
245 src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/JX7MlXqjSJNjQvI4heMMGvY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
246 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
247 }
248 /* cyrillic */
249 @font-face {
250 font-family: 'PT Sans';
251 font-style: normal;
252 font-weight: 400;
253 src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/vtwNVMP8y9C17vLvIBNZI_Y6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
254 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
255 }
256 /* latin-ext */
257 @font-face {
258 font-family: 'PT Sans';
259 font-style: normal;
260 font-weight: 400;
261 src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/9kaD4V2pNPMMeUVBHayd7vY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
262 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
263 }
264 /* latin */
265 @font-face {
266 font-family: 'PT Sans';
267 font-style: normal;
268 font-weight: 400;
269 src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/ATKpv8nLYAKUYexo8iqqrg.woff2) format('woff2');
270 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
271 }
272 /* cyrillic-ext */
273 @font-face {
274 font-family: 'PT Sans';
275 font-style: normal;
276 font-weight: 700;
277 src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/kTYfCWJhlldPf5LnG4ZnHCEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
278 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
279 }
280 /* cyrillic */
281 @font-face {
282 font-family: 'PT Sans';
283 font-style: normal;
284 font-weight: 700;
285 src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/g46X4VH_KHOWAAa-HpnGPiEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
286 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
287 }
288 /* latin-ext */
289 @font-face {
290 font-family: 'PT Sans';
291 font-style: normal;
292 font-weight: 700;
293 src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/hpORcvLZtemlH8gI-1S-7iEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
294 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
295 }
296 /* latin */
297 @font-face {
298 font-family: 'PT Sans';
299 font-style: normal;
300 font-weight: 700;
301 src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/0XxGQsSc1g4rdRdjJKZrNPk_vArhqVIZ0nv9q090hN8.woff2) format('woff2');
302 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
303 }
304 /* cyrillic-ext */
305 @font-face {
306 font-family: 'PT Sans';
307 font-style: italic;
308 font-weight: 400;
309 src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/GpWpM_6S4VQLPNAQ3iWvVRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
310 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
311 }
312 /* cyrillic */
313 @font-face {
314 font-family: 'PT Sans';
315 font-style: italic;
316 font-weight: 400;
317 src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/7dSh6BcuqDLzS2qAASIeuhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
318 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
319 }
320 /* latin-ext */
321 @font-face {
322 font-family: 'PT Sans';
323 font-style: italic;
324 font-weight: 400;
325 src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/DVKQJxMmC9WF_oplMzlQqRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
326 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
327 }
328 /* latin */
329 @font-face {
330 font-family: 'PT Sans';
331 font-style: italic;
332 font-weight: 400;
333 src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/PIPMHY90P7jtyjpXuZ2cLFtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
334 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
335 }
336 /* cyrillic-ext */
337 @font-face {
338 font-family: 'PT Sans';
339 font-style: italic;
340 font-weight: 700;
341 src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkK-j2U0lmluP9RWlSytm3ho.woff2) format('woff2');
342 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
343 }
344 /* cyrillic */
345 @font-face {
346 font-family: 'PT Sans';
347 font-style: italic;
348 font-weight: 700;
349 src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkJX5f-9o1vgP2EXwfjgl7AY.woff2) format('woff2');
350 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
351 }
352 /* latin-ext */
353 @font-face {
354 font-family: 'PT Sans';
355 font-style: italic;
356 font-weight: 700;
357 src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkD0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
358 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
359 }
360 /* latin */
361 @font-face {
362 font-family: 'PT Sans';
363 font-style: italic;
364 font-weight: 700;
365 src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkOgdm0LZdjqr5-oayXSOefg.woff2) format('woff2');
366 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
367 }
368 /* cyrillic-ext */
369 @font-face {
370 font-family: 'PT Serif';
371 font-style: normal;
372 font-weight: 400;
373 src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/5hX15RUpPERmeybVlLQEWBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
374 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
375 }
376 /* cyrillic */
377 @font-face {
378 font-family: 'PT Serif';
379 font-style: normal;
380 font-weight: 400;
381 src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/fU0HAfLiPHGlZhZpY6M7dBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
382 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
383 }
384 /* latin-ext */
385 @font-face {
386 font-family: 'PT Serif';
387 font-style: normal;
388 font-weight: 400;
389 src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/CPRt--GVMETgA6YEaoGitxTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
390 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
391 }
392 /* latin */
393 @font-face {
394 font-family: 'PT Serif';
395 font-style: normal;
396 font-weight: 400;
397 src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/I-OtoJZa3TeyH6D9oli3ifesZW2xOQ-xsNqO47m55DA.woff2) format('woff2');
398 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
399 }
400 /* cyrillic-ext */
401 @font-face {
402 font-family: 'PT Serif';
403 font-style: normal;
404 font-weight: 700;
405 src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpDTOQ_MqJVwkKsUn0wKzc2I.woff2) format('woff2');
406 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
407 }
408 /* cyrillic */
409 @font-face {
410 font-family: 'PT Serif';
411 font-style: normal;
412 font-weight: 700;
413 src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpDUj_cnvWIuuBMVgbX098Mw.woff2) format('woff2');
414 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
415 }
416 /* latin-ext */
417 @font-face {
418 font-family: 'PT Serif';
419 font-style: normal;
420 font-weight: 700;
421 src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpCYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
422 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
423 }
424 /* latin */
425 @font-face {
426 font-family: 'PT Serif';
427 font-style: normal;
428 font-weight: 700;
429 src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpI4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
430 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
431 }
432 /* cyrillic-ext */
433 @font-face {
434 font-family: 'PT Serif';
435 font-style: italic;
436 font-weight: 400;
437 src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/O_WhD9hODL16N4KLHLX7xSEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
438 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
439 }
440 /* cyrillic */
441 @font-face {
442 font-family: 'PT Serif';
443 font-style: italic;
444 font-weight: 400;
445 src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/3Nwg9VzlwLXPq3fNKwVRMCEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
446 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
447 }
448 /* latin-ext */
449 @font-face {
450 font-family: 'PT Serif';
451 font-style: italic;
452 font-weight: 400;
453 src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/b31S45a_TNgaBApZhTgE6CEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
454 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
455 }
456 /* latin */
457 @font-face {
458 font-family: 'PT Serif';
459 font-style: italic;
460 font-weight: 400;
461 src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/03aPdn7fFF3H6ngCgAlQzPk_vArhqVIZ0nv9q090hN8.woff2) format('woff2');
462 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
463 }
464 /* cyrillic-ext */
465 @font-face {
466 font-family: 'PT Serif';
467 font-style: italic;
468 font-weight: 700;
469 src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9ede9INZm0R8ZMJUtfOsxrw.woff2) format('woff2');
470 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
471 }
472 /* cyrillic */
473 @font-face {
474 font-family: 'PT Serif';
475 font-style: italic;
476 font-weight: 700;
477 src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9bpHcMS0zZe4mIYvDKG2oeM.woff2) format('woff2');
478 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
479 }
480 /* latin-ext */
481 @font-face {
482 font-family: 'PT Serif';
483 font-style: italic;
484 font-weight: 700;
485 src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9RHJTnCUrjaAm2S9z52xC3Y.woff2) format('woff2');
486 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
487 }
488 /* latin */
489 @font-face {
490 font-family: 'PT Serif';
491 font-style: italic;
492 font-weight: 700;
493 src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9YWiMMZ7xLd792ULpGE4W_Y.woff2) format('woff2');
494 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
495 }
496
+0
-90
examples/3D-rotations/index.html less more
0 <!doctype html>
1
2 <!--
3 This is a simple example / template impress.js slide show. The goal is to be
4 easier to read for a first timer than the official and very feature rich
5 demo by bartaz (http://bartaz.github.io/impress.js/). It's also a very
6 traditional presentation that looks like slides (square screens with bullet
7 points...), again to make a first timer feel more at home. From this simple
8 presentation you can then go on to more powerful impress.js presentations!
9
10 This example is hopefully helpful for people that want to create both
11 simple and (eventually) awesome presentations in impress.js and comfortable
12 doing that directly in HTML.
13
14 By: @henrikingo (Still based on the HTML from bartaz' demo.)
15
16 -->
17
18 <html lang="en">
19 <head>
20 <meta charset="utf-8" />
21 <title>A Study in 3D Rotations| by Henrik Ingo @henrikingo</title>
22 <meta name="description" content="Explore impress.js in 3D" />
23 <meta name="author" content="Henrik Ingo" />
24 <link href="..\..\css\impress-common.css" rel="stylesheet" />
25 <link href="css/3D-rotations.css" rel="stylesheet" />
26 </head>
27
28 <body class="impress-not-supported">
29 <div class="fallback-message">
30 <p>Your browser <b>doesn't support the features required</b> by impress.js, so you are presented with a simplified version of this presentation.</p>
31 <p>For the best experience please use the latest <b>Chrome</b>, <b>Safari</b> or <b>Firefox</b> browser.</p>
32 </div>
33
34 <div id="impress" data-transition-duration="2000">
35
36
37 <div id="overview" class="step overview" data-x="1350" data-y="100" data-z="100" data-scale="3" data-rotate-y="90">
38 <h1>A Study in 3D Rotations</h1>
39 </div>
40 <div id="overview2" class="step overview" data-x="2018" data-y="106" data-z="3018" data-scale="2">
41 <p>Unlike the <code>x/y/z</code> coordinates (aka translations), the <code>rotate-x/y/z</code> rotations are applied in a
42 specific order, and order matters. This demo presentation exhibits the use of the new <code>data-rotate- order</code> attribute.
43 Instead of the default "xyz" order, the steps use the reversed <em>"zyx"</em> order in applying rotations around each axis.
44 Some of the steps (<a href="#step-3">3</a> &amp; <a href="#step-7">7</a>), are in positions that are not possible with the default "xyz" order.</p>
45 </div>
46
47 <div id="step-1" class="step" data-x="0" data-y="0" data-z="0"
48 data-goto-prev="step-8">
49 <p>Slide one</p>
50 </div>
51
52 <div id="step-2" class="step" data-x="420" data-y="-70" data-z="-250" data-rotate-z="45" data-rotate-y="-45" data-rotate-order="zyx">
53 <p>Slide two</p>
54 </div>
55
56 <div id="step-3" class="step" data-x="700" data-y="350" data-z="-350" data-rotate-z="90" data-rotate-y="-90" data-rotate-order="zyx">
57 <p>Slide three</p>
58 </div>
59
60 <div id="step-4" class="step" data-x="422" data-y="780" data-z="-250" data-rotate-z="135" data-rotate-y="-135" data-rotate-order="zyx">
61 <p>Slide four</p>
62 </div>
63
64 <div id="step-5" class="step" data-x="0" data-y="702" data-z="0" data-rotate-z="180" data-rotate-y="-180" data-rotate-order="zyx">
65 <p>Slide five</p>
66 </div>
67
68 <div id="step-6" class="step" data-x="379" data-y="780" data-z="270" data-rotate-z="135" data-rotate-y="-225" data-rotate-order="zyx">
69 <p>Slide six</p>
70 </div>
71
72 <div id="step-7" class="step" data-x="700" data-y="350" data-z="350" data-rotate-z="90" data-rotate-y="-270" data-rotate-order="zyx">
73 <p>Slide seven</p>
74 </div>
75
76 <div id="step-8" class="step" data-x="379" data-y="-70" data-z="270" data-rotate-z="45" data-rotate-y="-315" data-rotate-order="zyx"
77 data-goto-next="step-1">
78 <p>Slide eight</p>
79 </div>
80 </div>
81
82 <div id="impress-toolbar"></div>
83 <div id="impress-help"></div>
84
85 <script type="text/javascript" src="../../js/impress.js"></script>
86 <script>impress().init();</script>
87
88 </body>
89 </html>
+0
-379
examples/classic-slides/css/classic-slides.css less more
0 /*
1 A common approach is to use googleapis.com to generate css for the webfonts you want to use.
2 The downside of this approach is that you have to be online. So below I have simply saved
3 the output of the googleapis url into a file. Then you of course also have to make sure
4 the webfonts are locally installed to make offline usage work. For Ubuntu (or Debian) I
5 successfully used the script from here to do that:
6 http://www.webupd8.org/2011/01/automatically-install-all-google-web.html
7 */
8
9 /* @import url(https://fonts.googleapis.com/css?family=Open+Sans:regular,semibold,italic,italicsemibold|PT+Sans:400,700,400italic,700italic|PT+Serif:400,700,400italic,700italic|Cutive+Mono); */
10 @import url(fonts.css);
11
12
13
14 /*
15 We display a fallback message for users with browsers that don't support
16 all the features required by it. All of the content will be still fully
17 accessible for them, but some more advanced effects would be missing.
18 When impress.js detects that browser supports all necessary CSS3 features,
19 the fallback-message style is hidden.
20 */
21
22 .fallback-message {
23 font-family: sans-serif;
24 line-height: 1.3;
25
26 width: 780px;
27 padding: 10px 10px 0;
28 margin: 20px auto;
29
30 border: 1px solid #E4C652;
31 border-radius: 10px;
32 background: #EEDC94;
33 }
34
35 .fallback-message p {
36 margin-bottom: 10px;
37 }
38
39 .impress-supported .fallback-message {
40 display: none;
41 }
42
43
44 /*
45 The body background is the bacgkround of "everything". Many
46 impress.js tools call it the "surface". It could also be a
47 picture or pattern, but we leave it as light gray.
48 */
49
50 body {
51 font-family: 'PT Sans', sans-serif;
52 min-height: 740px;
53
54 background: rgb(215, 215, 215);
55 color: rgb(70, 70, 70);
56 }
57
58 /*
59 Now let's style the presentation steps.
60 */
61
62 .step {
63 position: relative;
64 width: 1800px;
65 padding: 60px;
66 margin: 60px auto;
67
68 box-sizing: border-box;
69
70 font-family: 'PT Serif', georgia, serif;
71 font-size: 60px;
72 line-height: 1.5;
73 }
74 /*
75 Make inactive steps a little bit transparent.
76 */
77 .impress-enabled .step {
78 margin: 0;
79 opacity: 0.3;
80 transition: opacity 1s;
81 }
82
83 .impress-enabled .step.active { opacity: 1 }
84
85 /*
86 These 'slide' step styles were heavily inspired by HTML5 Slides:
87 http://html5slides.googlecode.com/svn/trunk/styles.css
88
89 Note that we also use a background image, again just to facilitate a common
90 feature from PowerPoint and LibreOffice worlds. In this case the background
91 image is just the impress.js favicon - as if it were a company logo or something.
92
93 */
94 .slide {
95 display: block;
96
97 width: 1850px;
98 height: 1000px;
99 padding: 40px 60px;
100
101 background-image: url(../images/background.png);
102 background-color: white;
103 border: 2px solid rgba(0, 0, 0, .3);
104 border-radius: 30px;
105 box-shadow: 0 4px 8px rgba(0, 0, 0, .1);
106
107 text-shadow: 0 3px 3px rgba(0, 0, 0, .2);
108
109 font-family: 'Open Sans', Arial, sans-serif;
110 font-size: 45px;
111 letter-spacing: -2px;
112 }
113
114
115 .slide h1,
116 .slide h2,
117 .slide h3 {
118 margin-bottom: 0.5em;
119 margin-top: 0.5em;
120 text-align: center;
121 }
122
123 .slide p {
124 text-align: center;
125 margin: 0.7em;
126 }
127
128 .slide li {
129 margin-top: 0.2em;
130 margin-bottom: 0.2em;
131 margin-left: 3em;
132 margin-right: 3em;
133 }
134
135 /* Highlight.js used for coloring pre > code blocks. */
136 .slide pre > code {
137 font-size: 30px;
138 text-shadow: 0 0 0 rgba(0, 0, 0, 0);
139 }
140
141 .slide input {
142 font-size: 1em;
143 }
144
145 /* Inline code, no Highlight.js */
146 code {
147 font-family: "Cutive mono","Courier New", monospace;
148 }
149
150
151 a {
152 color: inherit;
153 text-decoration: none;
154 padding: 0 0.1em;
155 background: rgba(200,200,200,0.2);
156 text-shadow: -2px 2px 4px rgba(100,100,100,0.9);
157 border-radius: 0.2em;
158 border-bottom: 3px solid rgba(100,100,100,0.2);
159 border-left: 3px solid rgba(100,100,100,0.2);
160
161 transition: 0.5s;
162 }
163 a:hover,
164 a:focus {
165 background: rgba(200,200,200,1);
166 text-shadow: -2px 2px 3px rgba(100,100,100,0.5);
167 }
168
169 blockquote {
170 font-family: 'PT Serif';
171 font-style: italic;
172 font-weight: 400;
173 }
174
175 em {
176 text-shadow: 0 6px 6px rgba(0, 0, 0, .3);
177 }
178
179 strong {
180 text-shadow: -3px 3px 6px rgba(100,100,100,0.5);
181 }
182
183 q {
184 font-family: 'PT Serif';
185 font-style: italic;
186 font-weight: 400;
187 text-shadow: 0 6px 6px rgba(0, 0, 0, .3);
188 }
189
190 strike {
191 opacity: 0.7;
192 }
193
194 small {
195 font-size: 0.4em;
196 }
197
198 img {
199 width: 600px
200 }
201
202 td {
203 padding: 0.2em;
204 }
205
206 .slide .right {
207 float: right;
208 margin-left: 60px;
209 margin-right: 0px;
210 margin-top: 40px;
211 margin-bottom: 40px;
212 }
213 .slide .left {
214 float: left;
215 margin-right: 60px;
216 margin-left: 0px;
217 margin-top: 40px;
218 margin-bottom: 40px;
219 }
220 .slide .top {
221 position: absolute;
222 top: 40px;
223 margin-bottom: 40px;
224 margin-top: 0px;
225 }
226 .slide .bottom {
227 position: absolute;
228 bottom: 40px;
229 margin-bottom: 0px;
230 margin-top: 40px;
231 }
232
233 /*
234 Specific styles for: .title slides
235 */
236
237 .title {
238 background-image: url(../images/background-title.png);
239 }
240
241 .title h1,
242 .title h2,
243 .title h3 {
244 position: absolute;
245 left: 90px; /* slide width is 1800px, so this is like a 5% margin on both sides */
246 width: 90%;
247 text-align: center;
248 }
249 .title h1 { top: 50px; }
250 .title h2 { top: 600px; }
251 .title h3 { top: 800px; }
252
253
254
255 /* Styles for animating the contents of a slide, such as a img, p, li or span element. ********/
256
257 /*
258 fly-in class starts from a position outside the slide, then flies into it's correct position.
259 */
260 .future .fly-in {
261 transform: translateY(-2100px);
262 opacity: 0.0; /* Make it invisible, just so it doesn't clutter some other slide that might be in the position where we moved it */
263 }
264 .present .fly-in {
265 transform: translateY(0px);
266 opacity: 1.0;
267 transition: 2s;
268 }
269 .past .fly-out {
270 transform: translateY(2100px);
271 opacity: 0.0;
272 transition: 2s;
273 }
274
275 /*
276 Fade-in/out is a straightforward fade. Give it enough seconds that all browsers render it clearly.
277 */
278 .future .fade-in {
279 opacity: 0.0;
280 }
281 .present .fade-in {
282 opacity: 1.0;
283 transition: 3s;
284 }
285 .past .fade-out {
286 opacity: 0.0;
287 transition: 3s;
288 }
289 /*
290 Zoom-in.
291 */
292 .future .zoom-in {
293 transform: scale(10);
294 opacity: 0.0;
295 }
296 .present .zoom-in {
297 transform: scale(1);
298 opacity: 1.0;
299 transition: 3s;
300 }
301 .past .zoom-out {
302 transform: scale(10);
303 opacity: 0.0;
304 }
305
306 /*
307 Styles for specific slides.
308 */
309
310 /* The bar graph for Acme Inc profits */
311
312 #acme-graph-bottom {
313 position: absolute;
314 bottom: 100px;
315 right: 200px;
316 background-color: black;
317 width: 900px;
318 height: 3px;
319 }
320
321 /* height: is set from javascript */
322 #acme-graph-q1,
323 #acme-graph-q2,
324 #acme-graph-q3,
325 #acme-graph-q4 {
326 border: solid 1px black;
327 width: 140px;
328 margin-left: 30px;
329 position: absolute;
330 bottom: 100px;
331 }
332
333 #acme-graph-q1 {
334 background-color: red;
335 right: 900px;
336 }
337
338 #acme-graph-q2 {
339 background-color: blue;
340 right: 700px;
341 }
342
343 #acme-graph-q3 {
344 background-color: green;
345 right: 500px;
346 }
347
348 #acme-graph-q4 {
349 background-color: purple;
350 left: 750px;
351 right: 300px;
352 }
353
354 /*
355 And as the last thing there is a workaround for quite strange bug.
356 It happens a lot in Chrome. I don't remember if I've seen it in Firefox.
357
358 Sometimes the element positioned in 3D (especially when it's moved back
359 along Z axis) is not clickable, because it falls 'behind' the <body>
360 element.
361
362 To prevent this, I decided to make <body> non clickable by setting
363 pointer-events property to `none` value.
364 Value if this property is inherited, so to make everything else clickable
365 I bring it back on the #impress element.
366
367 If you want to know more about `pointer-events` here are some docs:
368 https://developer.mozilla.org/en/CSS/pointer-events
369
370 There is one very important thing to notice about this workaround - it makes
371 everything 'unclickable' except what's in #impress element.
372
373 So use it wisely ... or don't use at all.
374 */
375 .impress-enabled { pointer-events: none }
376 .impress-enabled #impress { pointer-events: auto }
377 .impress-enabled #impress-toolbar { pointer-events: auto }
378 .impress-enabled #impress-console-button { pointer-events: auto }
+0
-497
examples/classic-slides/css/fonts.css less more
0 /* latin-ext */
1 @font-face {
2 font-family: 'Cutive Mono';
3 font-style: normal;
4 font-weight: 400;
5 src: local('Cutive Mono'), local('CutiveMono-Regular'), url(http://fonts.gstatic.com/s/cutivemono/v4/N5odNRruTwjvCM8y77PhQSYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
6 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
7 }
8 /* latin */
9 @font-face {
10 font-family: 'Cutive Mono';
11 font-style: normal;
12 font-weight: 400;
13 src: local('Cutive Mono'), local('CutiveMono-Regular'), url(http://fonts.gstatic.com/s/cutivemono/v4/N5odNRruTwjvCM8y77PhQY4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
14 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
15 }
16 /* cyrillic-ext */
17 @font-face {
18 font-family: 'Open Sans';
19 font-style: normal;
20 font-weight: 400;
21 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/K88pR3goAWT7BTt32Z01mxJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
22 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
23 }
24 /* cyrillic */
25 @font-face {
26 font-family: 'Open Sans';
27 font-style: normal;
28 font-weight: 400;
29 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/RjgO7rYTmqiVp7vzi-Q5URJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
30 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
31 }
32 /* greek-ext */
33 @font-face {
34 font-family: 'Open Sans';
35 font-style: normal;
36 font-weight: 400;
37 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/LWCjsQkB6EMdfHrEVqA1KRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
38 unicode-range: U+1F00-1FFF;
39 }
40 /* greek */
41 @font-face {
42 font-family: 'Open Sans';
43 font-style: normal;
44 font-weight: 400;
45 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/xozscpT2726on7jbcb_pAhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
46 unicode-range: U+0370-03FF;
47 }
48 /* vietnamese */
49 @font-face {
50 font-family: 'Open Sans';
51 font-style: normal;
52 font-weight: 400;
53 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/59ZRklaO5bWGqF5A9baEERJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
54 unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
55 }
56 /* latin-ext */
57 @font-face {
58 font-family: 'Open Sans';
59 font-style: normal;
60 font-weight: 400;
61 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/u-WUoqrET9fUeobQW7jkRRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
62 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
63 }
64 /* latin */
65 @font-face {
66 font-family: 'Open Sans';
67 font-style: normal;
68 font-weight: 400;
69 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/cJZKeOuBrn4kERxqtaUH3VtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
70 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
71 }
72 /* cyrillic-ext */
73 @font-face {
74 font-family: 'Open Sans';
75 font-style: normal;
76 font-weight: 600;
77 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSq-j2U0lmluP9RWlSytm3ho.woff2) format('woff2');
78 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
79 }
80 /* cyrillic */
81 @font-face {
82 font-family: 'Open Sans';
83 font-style: normal;
84 font-weight: 600;
85 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSpX5f-9o1vgP2EXwfjgl7AY.woff2) format('woff2');
86 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
87 }
88 /* greek-ext */
89 @font-face {
90 font-family: 'Open Sans';
91 font-style: normal;
92 font-weight: 600;
93 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNShWV49_lSm1NYrwo-zkhivY.woff2) format('woff2');
94 unicode-range: U+1F00-1FFF;
95 }
96 /* greek */
97 @font-face {
98 font-family: 'Open Sans';
99 font-style: normal;
100 font-weight: 600;
101 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSqaRobkAwv3vxw3jMhVENGA.woff2) format('woff2');
102 unicode-range: U+0370-03FF;
103 }
104 /* vietnamese */
105 @font-face {
106 font-family: 'Open Sans';
107 font-style: normal;
108 font-weight: 600;
109 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSv8zf_FOSsgRmwsS7Aa9k2w.woff2) format('woff2');
110 unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
111 }
112 /* latin-ext */
113 @font-face {
114 font-family: 'Open Sans';
115 font-style: normal;
116 font-weight: 600;
117 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSj0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
118 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
119 }
120 /* latin */
121 @font-face {
122 font-family: 'Open Sans';
123 font-style: normal;
124 font-weight: 600;
125 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSugdm0LZdjqr5-oayXSOefg.woff2) format('woff2');
126 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
127 }
128 /* cyrillic-ext */
129 @font-face {
130 font-family: 'Open Sans';
131 font-style: italic;
132 font-weight: 400;
133 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBjTOQ_MqJVwkKsUn0wKzc2I.woff2) format('woff2');
134 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
135 }
136 /* cyrillic */
137 @font-face {
138 font-family: 'Open Sans';
139 font-style: italic;
140 font-weight: 400;
141 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBjUj_cnvWIuuBMVgbX098Mw.woff2) format('woff2');
142 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
143 }
144 /* greek-ext */
145 @font-face {
146 font-family: 'Open Sans';
147 font-style: italic;
148 font-weight: 400;
149 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBkbcKLIaa1LC45dFaAfauRA.woff2) format('woff2');
150 unicode-range: U+1F00-1FFF;
151 }
152 /* greek */
153 @font-face {
154 font-family: 'Open Sans';
155 font-style: italic;
156 font-weight: 400;
157 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBmo_sUJ8uO4YLWRInS22T3Y.woff2) format('woff2');
158 unicode-range: U+0370-03FF;
159 }
160 /* vietnamese */
161 @font-face {
162 font-family: 'Open Sans';
163 font-style: italic;
164 font-weight: 400;
165 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBr6up8jxqWt8HVA3mDhkV_0.woff2) format('woff2');
166 unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
167 }
168 /* latin-ext */
169 @font-face {
170 font-family: 'Open Sans';
171 font-style: italic;
172 font-weight: 400;
173 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBiYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
174 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
175 }
176 /* latin */
177 @font-face {
178 font-family: 'Open Sans';
179 font-style: italic;
180 font-weight: 400;
181 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBo4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
182 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
183 }
184 /* cyrillic-ext */
185 @font-face {
186 font-family: 'Open Sans';
187 font-style: italic;
188 font-weight: 600;
189 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxmgpAmOCqD37_tyH_8Ri5MM.woff2) format('woff2');
190 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
191 }
192 /* cyrillic */
193 @font-face {
194 font-family: 'Open Sans';
195 font-style: italic;
196 font-weight: 600;
197 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxsPNMTLbnS9uQzHQlYieHUU.woff2) format('woff2');
198 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
199 }
200 /* greek-ext */
201 @font-face {
202 font-family: 'Open Sans';
203 font-style: italic;
204 font-weight: 600;
205 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxgyhumQnPMBCoGYhRaNxyyY.woff2) format('woff2');
206 unicode-range: U+1F00-1FFF;
207 }
208 /* greek */
209 @font-face {
210 font-family: 'Open Sans';
211 font-style: italic;
212 font-weight: 600;
213 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxhUVAXEdVvYDDqrz3aeR0Yc.woff2) format('woff2');
214 unicode-range: U+0370-03FF;
215 }
216 /* vietnamese */
217 @font-face {
218 font-family: 'Open Sans';
219 font-style: italic;
220 font-weight: 600;
221 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxlf4y_3s5bcYyyLIFUSWYUU.woff2) format('woff2');
222 unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
223 }
224 /* latin-ext */
225 @font-face {
226 font-family: 'Open Sans';
227 font-style: italic;
228 font-weight: 600;
229 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxnywqdtBbUHn3VPgzuFrCy8.woff2) format('woff2');
230 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
231 }
232 /* latin */
233 @font-face {
234 font-family: 'Open Sans';
235 font-style: italic;
236 font-weight: 600;
237 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxl2umOyRU7PgRiv8DXcgJjk.woff2) format('woff2');
238 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
239 }
240 /* cyrillic-ext */
241 @font-face {
242 font-family: 'PT Sans';
243 font-style: normal;
244 font-weight: 400;
245 src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/JX7MlXqjSJNjQvI4heMMGvY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
246 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
247 }
248 /* cyrillic */
249 @font-face {
250 font-family: 'PT Sans';
251 font-style: normal;
252 font-weight: 400;
253 src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/vtwNVMP8y9C17vLvIBNZI_Y6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
254 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
255 }
256 /* latin-ext */
257 @font-face {
258 font-family: 'PT Sans';
259 font-style: normal;
260 font-weight: 400;
261 src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/9kaD4V2pNPMMeUVBHayd7vY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
262 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
263 }
264 /* latin */
265 @font-face {
266 font-family: 'PT Sans';
267 font-style: normal;
268 font-weight: 400;
269 src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/ATKpv8nLYAKUYexo8iqqrg.woff2) format('woff2');
270 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
271 }
272 /* cyrillic-ext */
273 @font-face {
274 font-family: 'PT Sans';
275 font-style: normal;
276 font-weight: 700;
277 src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/kTYfCWJhlldPf5LnG4ZnHCEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
278 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
279 }
280 /* cyrillic */
281 @font-face {
282 font-family: 'PT Sans';
283 font-style: normal;
284 font-weight: 700;
285 src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/g46X4VH_KHOWAAa-HpnGPiEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
286 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
287 }
288 /* latin-ext */
289 @font-face {
290 font-family: 'PT Sans';
291 font-style: normal;
292 font-weight: 700;
293 src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/hpORcvLZtemlH8gI-1S-7iEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
294 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
295 }
296 /* latin */
297 @font-face {
298 font-family: 'PT Sans';
299 font-style: normal;
300 font-weight: 700;
301 src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/0XxGQsSc1g4rdRdjJKZrNPk_vArhqVIZ0nv9q090hN8.woff2) format('woff2');
302 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
303 }
304 /* cyrillic-ext */
305 @font-face {
306 font-family: 'PT Sans';
307 font-style: italic;
308 font-weight: 400;
309 src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/GpWpM_6S4VQLPNAQ3iWvVRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
310 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
311 }
312 /* cyrillic */
313 @font-face {
314 font-family: 'PT Sans';
315 font-style: italic;
316 font-weight: 400;
317 src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/7dSh6BcuqDLzS2qAASIeuhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
318 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
319 }
320 /* latin-ext */
321 @font-face {
322 font-family: 'PT Sans';
323 font-style: italic;
324 font-weight: 400;
325 src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/DVKQJxMmC9WF_oplMzlQqRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
326 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
327 }
328 /* latin */
329 @font-face {
330 font-family: 'PT Sans';
331 font-style: italic;
332 font-weight: 400;
333 src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/PIPMHY90P7jtyjpXuZ2cLFtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
334 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
335 }
336 /* cyrillic-ext */
337 @font-face {
338 font-family: 'PT Sans';
339 font-style: italic;
340 font-weight: 700;
341 src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkK-j2U0lmluP9RWlSytm3ho.woff2) format('woff2');
342 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
343 }
344 /* cyrillic */
345 @font-face {
346 font-family: 'PT Sans';
347 font-style: italic;
348 font-weight: 700;
349 src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkJX5f-9o1vgP2EXwfjgl7AY.woff2) format('woff2');
350 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
351 }
352 /* latin-ext */
353 @font-face {
354 font-family: 'PT Sans';
355 font-style: italic;
356 font-weight: 700;
357 src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkD0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
358 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
359 }
360 /* latin */
361 @font-face {
362 font-family: 'PT Sans';
363 font-style: italic;
364 font-weight: 700;
365 src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkOgdm0LZdjqr5-oayXSOefg.woff2) format('woff2');
366 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
367 }
368 /* cyrillic-ext */
369 @font-face {
370 font-family: 'PT Serif';
371 font-style: normal;
372 font-weight: 400;
373 src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/5hX15RUpPERmeybVlLQEWBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
374 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
375 }
376 /* cyrillic */
377 @font-face {
378 font-family: 'PT Serif';
379 font-style: normal;
380 font-weight: 400;
381 src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/fU0HAfLiPHGlZhZpY6M7dBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
382 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
383 }
384 /* latin-ext */
385 @font-face {
386 font-family: 'PT Serif';
387 font-style: normal;
388 font-weight: 400;
389 src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/CPRt--GVMETgA6YEaoGitxTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
390 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
391 }
392 /* latin */
393 @font-face {
394 font-family: 'PT Serif';
395 font-style: normal;
396 font-weight: 400;
397 src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/I-OtoJZa3TeyH6D9oli3ifesZW2xOQ-xsNqO47m55DA.woff2) format('woff2');
398 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
399 }
400 /* cyrillic-ext */
401 @font-face {
402 font-family: 'PT Serif';
403 font-style: normal;
404 font-weight: 700;
405 src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpDTOQ_MqJVwkKsUn0wKzc2I.woff2) format('woff2');
406 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
407 }
408 /* cyrillic */
409 @font-face {
410 font-family: 'PT Serif';
411 font-style: normal;
412 font-weight: 700;
413 src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpDUj_cnvWIuuBMVgbX098Mw.woff2) format('woff2');
414 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
415 }
416 /* latin-ext */
417 @font-face {
418 font-family: 'PT Serif';
419 font-style: normal;
420 font-weight: 700;
421 src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpCYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
422 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
423 }
424 /* latin */
425 @font-face {
426 font-family: 'PT Serif';
427 font-style: normal;
428 font-weight: 700;
429 src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpI4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
430 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
431 }
432 /* cyrillic-ext */
433 @font-face {
434 font-family: 'PT Serif';
435 font-style: italic;
436 font-weight: 400;
437 src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/O_WhD9hODL16N4KLHLX7xSEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
438 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
439 }
440 /* cyrillic */
441 @font-face {
442 font-family: 'PT Serif';
443 font-style: italic;
444 font-weight: 400;
445 src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/3Nwg9VzlwLXPq3fNKwVRMCEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
446 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
447 }
448 /* latin-ext */
449 @font-face {
450 font-family: 'PT Serif';
451 font-style: italic;
452 font-weight: 400;
453 src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/b31S45a_TNgaBApZhTgE6CEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
454 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
455 }
456 /* latin */
457 @font-face {
458 font-family: 'PT Serif';
459 font-style: italic;
460 font-weight: 400;
461 src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/03aPdn7fFF3H6ngCgAlQzPk_vArhqVIZ0nv9q090hN8.woff2) format('woff2');
462 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
463 }
464 /* cyrillic-ext */
465 @font-face {
466 font-family: 'PT Serif';
467 font-style: italic;
468 font-weight: 700;
469 src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9ede9INZm0R8ZMJUtfOsxrw.woff2) format('woff2');
470 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
471 }
472 /* cyrillic */
473 @font-face {
474 font-family: 'PT Serif';
475 font-style: italic;
476 font-weight: 700;
477 src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9bpHcMS0zZe4mIYvDKG2oeM.woff2) format('woff2');
478 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
479 }
480 /* latin-ext */
481 @font-face {
482 font-family: 'PT Serif';
483 font-style: italic;
484 font-weight: 700;
485 src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9RHJTnCUrjaAm2S9z52xC3Y.woff2) format('woff2');
486 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
487 }
488 /* latin */
489 @font-face {
490 font-family: 'PT Serif';
491 font-style: italic;
492 font-weight: 700;
493 src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9YWiMMZ7xLd792ULpGE4W_Y.woff2) format('woff2');
494 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
495 }
496
examples/classic-slides/images/3476636111_c551295ca4_b.jpg less more
Binary diff not shown
examples/classic-slides/images/background-title.png less more
Binary diff not shown
+0
-337
examples/classic-slides/images/background-title.svg less more
0 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
1 <!-- Created with Inkscape (http://www.inkscape.org/) -->
2
3 <svg
4 xmlns:dc="http://purl.org/dc/elements/1.1/"
5 xmlns:cc="http://creativecommons.org/ns#"
6 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
7 xmlns:svg="http://www.w3.org/2000/svg"
8 xmlns="http://www.w3.org/2000/svg"
9 xmlns:xlink="http://www.w3.org/1999/xlink"
10 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
11 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
12 width="900"
13 height="700"
14 id="svg2"
15 version="1.1"
16 inkscape:version="0.48.4 r9939"
17 sodipodi:docname="background-title.svg"
18 inkscape:export-filename="/home/hingo/hacking/impress.js/examples/classic-slides/images/background-title.png"
19 inkscape:export-xdpi="90"
20 inkscape:export-ydpi="90">
21 <defs
22 id="defs4">
23 <linearGradient
24 id="linearGradient3972">
25 <stop
26 style="stop-color:#d7d7d7;stop-opacity:1;"
27 offset="0"
28 id="stop3974" />
29 <stop
30 id="stop4001"
31 offset="0.5"
32 style="stop-color:#e4e4eb;stop-opacity:0.49803922;" />
33 <stop
34 style="stop-color:#f2f2ff;stop-opacity:0;"
35 offset="1"
36 id="stop3976" />
37 </linearGradient>
38 </defs>
39 <sodipodi:namedview
40 id="base"
41 pagecolor="#ffffff"
42 bordercolor="#666666"
43 borderopacity="1.0"
44 inkscape:pageopacity="0.0"
45 inkscape:pageshadow="2"
46 inkscape:zoom="0.7"
47 inkscape:cx="442.96588"
48 inkscape:cy="486.34297"
49 inkscape:document-units="px"
50 inkscape:current-layer="layer1"
51 showgrid="false"
52 inkscape:window-width="1600"
53 inkscape:window-height="845"
54 inkscape:window-x="-2"
55 inkscape:window-y="-3"
56 inkscape:window-maximized="1" />
57 <metadata
58 id="metadata7">
59 <rdf:RDF>
60 <cc:Work
61 rdf:about="">
62 <dc:format>image/svg+xml</dc:format>
63 <dc:type
64 rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
65 <dc:title></dc:title>
66 </cc:Work>
67 </rdf:RDF>
68 </metadata>
69 <g
70 inkscape:label="Layer 1"
71 inkscape:groupmode="layer"
72 id="layer1"
73 transform="translate(0,-352.36218)">
74 <path
75 sodipodi:type="star"
76 style="fill:#f7f7f7;fill-opacity:1;stroke:#dccbcb;stroke-opacity:1"
77 id="path3195"
78 sodipodi:sides="5"
79 sodipodi:cx="-432.85715"
80 sodipodi:cy="448.57144"
81 sodipodi:r1="36.617161"
82 sodipodi:r2="29.623903"
83 sodipodi:arg1="1.2120257"
84 sodipodi:arg2="1.8403442"
85 inkscape:flatsided="true"
86 inkscape:rounded="0"
87 inkscape:randomized="0"
88 d="m -420.00001,482.85716 -41.49172,-11.46298 -1.9197,-43.00323 40.30527,-15.11447 26.82974,33.66196 z"
89 transform="matrix(0.49829507,0,0,0.49829507,1175.0086,227.72198)"
90 inkscape:transform-center-x="-1.50147"
91 inkscape:transform-center-y="-0.2514516" />
92 <path
93 sodipodi:type="star"
94 style="fill:#d7d7d7;fill-opacity:1;stroke:#c8b7b7"
95 id="path3197"
96 sodipodi:sides="5"
97 sodipodi:cx="-478.57144"
98 sodipodi:cy="288.57144"
99 sodipodi:r1="47.573788"
100 sodipodi:r2="38.488003"
101 sodipodi:arg1="0.72165485"
102 sodipodi:arg2="1.3499734"
103 inkscape:flatsided="true"
104 inkscape:rounded="0"
105 inkscape:randomized="0"
106 d="m -442.85716,320.00001 -54.56831,12.2497 -28.51269,-48.11219 36.94651,-41.98466 51.34688,22.16424 z"
107 transform="matrix(0.49829507,0,0,0.49829507,1183.5508,278.97519)"
108 inkscape:transform-center-x="1.6045478"
109 inkscape:transform-center-y="-0.68274238" />
110 <path
111 sodipodi:type="star"
112 style="fill:#f2f2f2;fill-opacity:1;stroke:#c8b7b7"
113 id="path3199"
114 sodipodi:sides="5"
115 sodipodi:cx="-358.57144"
116 sodipodi:cy="152.85715"
117 sodipodi:r1="39.512333"
118 sodipodi:r2="31.966148"
119 sodipodi:arg1="2.4329664"
120 sodipodi:arg2="3.0612849"
121 inkscape:flatsided="true"
122 inkscape:rounded="0"
123 inkscape:randomized="0"
124 d="m -388.57144,178.57143 -3.72625,-46.29983 42.88228,-17.8513 30.22896,35.26711 -24.19976,39.64758 z"
125 transform="matrix(0.49829507,0,0,0.49829507,1144.399,329.51655)"
126 inkscape:transform-center-x="-1.409826"
127 inkscape:transform-center-y="-0.48807819" />
128 <image
129 y="-881.14282"
130 x="775.50507"
131 id="image4083"
132 xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABHNCSVQICAgIfAhkiAAABP9JREFU
133 WIWdl11oW2UYx3/P+WiSpknHsi2MNgtkGNbVVryoisJkA+sYjG3MG2GwQdEhuxB2M4ThBGGCjLFR
134 pkPZhYIwNrCom+iK9GJ4sVIdumnRdh/CbEu1o7ZZ6UdyHi+aU9+cnqyNLzyQc973/b//5/98vDmi
135 qqx2qCqWZaGq7N69e6/neU/atj0bi8X6Ll269EOxWMRxHFpaWhgcHFw9aC0WiUQARkVEAQW0/Pua
136 quJ53qod+l8EgJTjOCX/cN8cx5lQ1c2e59VEwqqNLiQSiQlV/Sf4Pp1OzwCzIoKIsOrQ1qqAqhKP
137 x/8koABwwVyzWhWqKvA4D4rFYp/5LCKsWbPmNxGpeGdiGCEklUqFEzh69Cgi8oWIvCsilEqlUAJz
138 c3PXzGfbtnEc57sw0g8fPkRVEZF3RKT3wIEDTExMVHq6sLBAX18fwK+AWpalwMcDAwMUi8VlIdiw
139 YcOzdXV1pvyFsFBNTU35x5wrYypw58yZM5UEyszPlhd4BvC327Zts4PAzc3NOI4z5a9zXfePMAJN
140 TU0AXxl4PvZrS2qpKsePH2+JRCLBpPLt1qZNm5pDyvGOv6axsfH74HwymQQYCMMUkZnW1tb/CADP
141 mI0laNFodNp13af97FZVMpnMTcOj0+ac67o5y7LCKkX9EO/YsSNvEsgkk0kFljUYXzrbtueBTj8n
142 gBOA2ratwKuGMu22bc8FQmnK70WjUW1ra0sD4HkepVKJ8fHxLNABfJpIJLzAJt+KwBuFQgFgSyKR
143 +An4JplMxsuH7wXmw5yor69X4GsR2X7jxo2mU6dOVSah2UDi8TjATuBqeWOw77eqKvfv32d0dNT3
144 /PmAgl557Y8i0gUwNDSEqnLs2DGWRlj2+rFUVbq6utqBN23b/jkajarrugth+4Cs4zh+jP+uq6vr
145 FpG2mzdvpsNwXdetTiDM+vv7AdqAtjDC5aa1B9i5f//+FfF6enpYu3ZtbXfB+vXrN7a2ttZVm+/s
146 7MQ8fHJysirW0l2xUggOHz6cAV4RkSupVEoty7rT1dW1bM+uXbsQkdvAiOu6Z4GO3t7eZf3DtHv3
147 7oUTKI+XgE+CSVi2fMie9mDJWZY1ISIngC3VnDXjB/Ac8Hk0Gg3WrlmGRxYWFshms3XASeA00FTu
148 bB9Wq/90Ol0E3gNyg4ODstRPyuw7yguDmysakYhsNzx+3Zg/qao8evQI4MgKWCWgcPDgwbSqLl3H
149 cUDKFjbGI5HIU57n9fkhyuVye/zJVCr1AkB9fT2qeg542SAQHJbruvGRkZEGYDEE3d3d7SIyV4Vx
150 /9atW5fFrqGh4bbvaSwWG1JV20zgWCz2BDBRBfOvJSUNSd83Yuaz/+z69esb5+fnwxL1gQE4GZZg
151 uVyuCbgVzAfgxQoCpVKJu3fvbgR+Nxa/rbr4ZyUInM1mc47jLPV827a9TCazrOSKxSJjY2MAVw3c
152 Hv/MCgVUlfPnzwN8CRwK9gOzR6xbt26nKalt25pOpw+FqTA7O4uqxoGPgAsA09PTVCiwUjMKkf+t
153 YFwbGho+qLa+XHK28XtlAo+zfD7/gOVldkVVN6+0FyrPdKqUXehQXfw2dBevMrNktbGxsQNorAUP
154 QIzWu6qRSCSYmZmZ8jwvUQEkMuV5Xs0Eav40KxQKeJ43FnyvqoOXL1+uFa42BVQV/+tn3759LcPD
155 w3nXdcnn879cvHhx2PM8LKs2n/4Ful6n5lJtlzQAAAAASUVORK5CYII=
156 "
157 height="50.57143"
158 width="50.57143"
159 transform="matrix(0,1,-1,0,0,0)" />
160 <path
161 sodipodi:type="star"
162 style="fill:#d7d7d7;fill-opacity:1;stroke:#c8b7b7"
163 id="path3197-6"
164 sodipodi:sides="5"
165 sodipodi:cx="-478.57144"
166 sodipodi:cy="288.57144"
167 sodipodi:r1="47.573788"
168 sodipodi:r2="38.488003"
169 sodipodi:arg1="0.72165485"
170 sodipodi:arg2="1.3499734"
171 inkscape:flatsided="true"
172 inkscape:rounded="0"
173 inkscape:randomized="0"
174 d="m -442.85716,320.00001 -54.56831,12.2497 -28.51269,-48.11219 36.94651,-41.98466 51.34688,22.16424 z"
175 transform="matrix(0.44159933,0.23084195,-0.23084195,0.44159933,89.555741,918.94346)"
176 inkscape:transform-center-x="-1.8892484"
177 inkscape:transform-center-y="-0.39033876" />
178 <path
179 sodipodi:type="star"
180 style="fill:#f7f7f7;fill-opacity:1;stroke:#dccbcb;stroke-opacity:1"
181 id="path3195-8"
182 sodipodi:sides="5"
183 sodipodi:cx="-432.85715"
184 sodipodi:cy="448.57144"
185 sodipodi:r1="36.617161"
186 sodipodi:r2="29.623903"
187 sodipodi:arg1="1.2120257"
188 sodipodi:arg2="1.8403442"
189 inkscape:flatsided="true"
190 inkscape:rounded="0"
191 inkscape:randomized="0"
192 d="m -420.00001,482.85716 -41.49172,-11.46298 -1.9197,-43.00323 40.30527,-15.11447 26.82974,33.66196 z"
193 transform="matrix(0.49829507,0,0,0.49829507,38.474821,733.37841)"
194 inkscape:transform-center-x="-1.50147"
195 inkscape:transform-center-y="-0.2514516" />
196 <path
197 sodipodi:type="star"
198 style="fill:#f2f2f2;fill-opacity:1;stroke:#c8b7b7"
199 id="path3199-9"
200 sodipodi:sides="5"
201 sodipodi:cx="-358.57144"
202 sodipodi:cy="152.85715"
203 sodipodi:r1="39.512333"
204 sodipodi:r2="31.966148"
205 sodipodi:arg1="2.4329664"
206 sodipodi:arg2="3.0612849"
207 inkscape:flatsided="true"
208 inkscape:rounded="0"
209 inkscape:randomized="0"
210 d="m -388.57144,178.57143 -3.72625,-46.29983 42.88228,-17.8513 30.22896,35.26711 -24.19976,39.64758 z"
211 transform="matrix(0.49829507,0,0,0.49829507,30.121671,876.6823)"
212 inkscape:transform-center-x="-1.409826"
213 inkscape:transform-center-y="-0.48807819" />
214 <path
215 sodipodi:type="star"
216 style="fill:#f2f2f2;fill-opacity:1;stroke:#c8b7b7"
217 id="path3199-3"
218 sodipodi:sides="5"
219 sodipodi:cx="-358.57144"
220 sodipodi:cy="152.85715"
221 sodipodi:r1="39.512333"
222 sodipodi:r2="31.966148"
223 sodipodi:arg1="2.4329664"
224 sodipodi:arg2="3.0612849"
225 inkscape:flatsided="true"
226 inkscape:rounded="0"
227 inkscape:randomized="0"
228 d="m -388.57144,178.57143 -3.72625,-46.29983 42.88228,-17.8513 30.22896,35.26711 -24.19976,39.64758 z"
229 transform="matrix(0.34408672,0,0,0.34408672,-3.3081587,917.1069)"
230 inkscape:transform-center-x="-0.97352805"
231 inkscape:transform-center-y="-0.33703252" />
232 <path
233 sodipodi:type="star"
234 style="fill:#f2f2f2;fill-opacity:1;stroke:#c8b7b7"
235 id="path3199-3-0"
236 sodipodi:sides="5"
237 sodipodi:cx="-358.57144"
238 sodipodi:cy="152.85715"
239 sodipodi:r1="39.512333"
240 sodipodi:r2="31.966148"
241 sodipodi:arg1="2.4329664"
242 sodipodi:arg2="3.0612849"
243 inkscape:flatsided="true"
244 inkscape:rounded="0"
245 inkscape:randomized="0"
246 d="m -388.57144,178.57143 -3.72625,-46.29983 42.88228,-17.8513 30.22896,35.26711 -24.19976,39.64758 z"
247 transform="matrix(0.34408672,0,0,0.34408672,29.548981,922.96025)"
248 inkscape:transform-center-x="-0.97352805"
249 inkscape:transform-center-y="-0.33703252" />
250 <path
251 sodipodi:type="star"
252 style="fill:#f7f7f7;fill-opacity:1;stroke:#dccbcb;stroke-opacity:1"
253 id="path3195-8-0"
254 sodipodi:sides="5"
255 sodipodi:cx="-432.85715"
256 sodipodi:cy="448.57144"
257 sodipodi:r1="36.617161"
258 sodipodi:r2="29.623903"
259 sodipodi:arg1="1.2120257"
260 sodipodi:arg2="1.8403442"
261 inkscape:flatsided="true"
262 inkscape:rounded="0"
263 inkscape:randomized="0"
264 d="m -420.00001,482.85716 -41.49172,-11.46298 -1.9197,-43.00323 40.30527,-15.11447 26.82974,33.66196 z"
265 transform="matrix(0.3204918,0,0,0.3204918,79.533061,832.48569)"
266 inkscape:transform-center-x="-0.96571172"
267 inkscape:transform-center-y="-0.16173851" />
268 <path
269 sodipodi:type="star"
270 style="fill:#f7f7f7;fill-opacity:1;stroke:#dccbcb;stroke-opacity:1"
271 id="path3195-0"
272 sodipodi:sides="5"
273 sodipodi:cx="-432.85715"
274 sodipodi:cy="448.57144"
275 sodipodi:r1="36.617161"
276 sodipodi:r2="29.623903"
277 sodipodi:arg1="1.2120257"
278 sodipodi:arg2="1.8403442"
279 inkscape:flatsided="true"
280 inkscape:rounded="0"
281 inkscape:randomized="0"
282 d="m -420.00001,482.85716 -41.49172,-11.46298 -1.9197,-43.00323 40.30527,-15.11447 26.82974,33.66196 z"
283 transform="matrix(-0.50808944,0,0,0.49826547,-279.52146,234.09512)"
284 inkscape:transform-center-x="1.5309823"
285 inkscape:transform-center-y="-0.25143993" />
286 <path
287 sodipodi:type="star"
288 style="fill:#d7d7d7;fill-opacity:1;stroke:#c8b7b7"
289 id="path3197-4"
290 sodipodi:sides="5"
291 sodipodi:cx="-478.57144"
292 sodipodi:cy="288.57144"
293 sodipodi:r1="47.573788"
294 sodipodi:r2="38.488003"
295 sodipodi:arg1="0.72165485"
296 sodipodi:arg2="1.3499734"
297 inkscape:flatsided="true"
298 inkscape:rounded="0"
299 inkscape:randomized="0"
300 d="m -442.85716,320.00001 -54.56831,12.2497 -28.51269,-48.11219 36.94651,-41.98466 51.34688,22.16424 z"
301 transform="matrix(-0.50808944,0,0,0.49826547,-288.23156,285.34529)"
302 inkscape:transform-center-x="-1.6360872"
303 inkscape:transform-center-y="-0.68270036" />
304 <path
305 sodipodi:type="star"
306 style="fill:#f2f2f2;fill-opacity:1;stroke:#c8b7b7"
307 id="path3199-90"
308 sodipodi:sides="5"
309 sodipodi:cx="-358.57144"
310 sodipodi:cy="152.85715"
311 sodipodi:r1="39.512333"
312 sodipodi:r2="31.966148"
313 sodipodi:arg1="2.4329664"
314 sodipodi:arg2="3.0612849"
315 inkscape:flatsided="true"
316 inkscape:rounded="0"
317 inkscape:randomized="0"
318 d="m -388.57144,178.57143 -3.72625,-46.29983 42.88228,-17.8513 30.22896,35.26711 -24.19976,39.64758 z"
319 transform="matrix(-0.50808944,0,0,0.49826547,-248.3102,335.88365)"
320 inkscape:transform-center-x="1.437537"
321 inkscape:transform-center-y="-0.48804535" />
322 <text
323 xml:space="preserve"
324 style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
325 x="829.30469"
326 y="-856.37756"
327 id="text4226"
328 sodipodi:linespacing="125%"
329 transform="matrix(0,1,-1,0,0,0)"><tspan
330 sodipodi:role="line"
331 id="tspan4228"
332 x="829.30469"
333 y="-856.37756"
334 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:PT Serif;-inkscape-font-specification:PT Serif">impress.js</tspan></text>
335 </g>
336 </svg>
examples/classic-slides/images/background.png less more
Binary diff not shown
+0
-323
examples/classic-slides/images/background.svg less more
0 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
1 <!-- Created with Inkscape (http://www.inkscape.org/) -->
2
3 <svg
4 xmlns:dc="http://purl.org/dc/elements/1.1/"
5 xmlns:cc="http://creativecommons.org/ns#"
6 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
7 xmlns:svg="http://www.w3.org/2000/svg"
8 xmlns="http://www.w3.org/2000/svg"
9 xmlns:xlink="http://www.w3.org/1999/xlink"
10 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
11 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
12 width="900"
13 height="700"
14 id="svg2"
15 version="1.1"
16 inkscape:version="0.48.4 r9939"
17 sodipodi:docname="background.svg"
18 inkscape:export-filename="/home/hingo/hacking/impress.js/examples/classic-slides/images/background-title.png"
19 inkscape:export-xdpi="90"
20 inkscape:export-ydpi="90">
21 <defs
22 id="defs4">
23 <linearGradient
24 id="linearGradient3972">
25 <stop
26 style="stop-color:#d7d7d7;stop-opacity:1;"
27 offset="0"
28 id="stop3974" />
29 <stop
30 id="stop4001"
31 offset="0.5"
32 style="stop-color:#e4e4eb;stop-opacity:0.49803922;" />
33 <stop
34 style="stop-color:#f2f2ff;stop-opacity:0;"
35 offset="1"
36 id="stop3976" />
37 </linearGradient>
38 </defs>
39 <sodipodi:namedview
40 id="base"
41 pagecolor="#ffffff"
42 bordercolor="#666666"
43 borderopacity="1.0"
44 inkscape:pageopacity="0.0"
45 inkscape:pageshadow="2"
46 inkscape:zoom="0.7"
47 inkscape:cx="442.96588"
48 inkscape:cy="486.34297"
49 inkscape:document-units="px"
50 inkscape:current-layer="layer1"
51 showgrid="false"
52 inkscape:window-width="1600"
53 inkscape:window-height="845"
54 inkscape:window-x="-2"
55 inkscape:window-y="-3"
56 inkscape:window-maximized="1" />
57 <metadata
58 id="metadata7">
59 <rdf:RDF>
60 <cc:Work
61 rdf:about="">
62 <dc:format>image/svg+xml</dc:format>
63 <dc:type
64 rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
65 <dc:title></dc:title>
66 </cc:Work>
67 </rdf:RDF>
68 </metadata>
69 <g
70 inkscape:label="Layer 1"
71 inkscape:groupmode="layer"
72 id="layer1"
73 transform="translate(0,-352.36218)">
74 <path
75 sodipodi:type="star"
76 style="fill:#f7f7f7;fill-opacity:1;stroke:#dccbcb;stroke-opacity:1"
77 id="path3195"
78 sodipodi:sides="5"
79 sodipodi:cx="-432.85715"
80 sodipodi:cy="448.57144"
81 sodipodi:r1="36.617161"
82 sodipodi:r2="29.623903"
83 sodipodi:arg1="1.2120257"
84 sodipodi:arg2="1.8403442"
85 inkscape:flatsided="true"
86 inkscape:rounded="0"
87 inkscape:randomized="0"
88 d="m -420.00001,482.85716 -41.49172,-11.46298 -1.9197,-43.00323 40.30527,-15.11447 26.82974,33.66196 z"
89 transform="matrix(0.49829507,0,0,0.49829507,1080.7229,232.00769)"
90 inkscape:transform-center-x="-1.50147"
91 inkscape:transform-center-y="-0.2514516" />
92 <path
93 sodipodi:type="star"
94 style="fill:#d7d7d7;fill-opacity:1;stroke:#c8b7b7"
95 id="path3197"
96 sodipodi:sides="5"
97 sodipodi:cx="-478.57144"
98 sodipodi:cy="288.57144"
99 sodipodi:r1="47.573788"
100 sodipodi:r2="38.488003"
101 sodipodi:arg1="0.72165485"
102 sodipodi:arg2="1.3499734"
103 inkscape:flatsided="true"
104 inkscape:rounded="0"
105 inkscape:randomized="0"
106 d="m -442.85716,320.00001 -54.56831,12.2497 -28.51269,-48.11219 36.94651,-41.98466 51.34688,22.16424 z"
107 transform="matrix(0.49829507,0,0,0.49829507,1089.2651,283.2609)"
108 inkscape:transform-center-x="1.6045478"
109 inkscape:transform-center-y="-0.68274238" />
110 <path
111 sodipodi:type="star"
112 style="fill:#f2f2f2;fill-opacity:1;stroke:#c8b7b7"
113 id="path3199"
114 sodipodi:sides="5"
115 sodipodi:cx="-358.57144"
116 sodipodi:cy="152.85715"
117 sodipodi:r1="39.512333"
118 sodipodi:r2="31.966148"
119 sodipodi:arg1="2.4329664"
120 sodipodi:arg2="3.0612849"
121 inkscape:flatsided="true"
122 inkscape:rounded="0"
123 inkscape:randomized="0"
124 d="m -388.57144,178.57143 -3.72625,-46.29983 42.88228,-17.8513 30.22896,35.26711 -24.19976,39.64758 z"
125 transform="matrix(0.49829507,0,0,0.49829507,1050.1133,333.80226)"
126 inkscape:transform-center-x="-1.409826"
127 inkscape:transform-center-y="-0.48807819" />
128 <image
129 y="999.21936"
130 x="852.57141"
131 id="image4083"
132 xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABHNCSVQICAgIfAhkiAAABP9JREFU
133 WIWdl11oW2UYx3/P+WiSpknHsi2MNgtkGNbVVryoisJkA+sYjG3MG2GwQdEhuxB2M4ThBGGCjLFR
134 pkPZhYIwNrCom+iK9GJ4sVIdumnRdh/CbEu1o7ZZ6UdyHi+aU9+cnqyNLzyQc973/b//5/98vDmi
135 qqx2qCqWZaGq7N69e6/neU/atj0bi8X6Ll269EOxWMRxHFpaWhgcHFw9aC0WiUQARkVEAQW0/Pua
136 quJ53qod+l8EgJTjOCX/cN8cx5lQ1c2e59VEwqqNLiQSiQlV/Sf4Pp1OzwCzIoKIsOrQ1qqAqhKP
137 x/8koABwwVyzWhWqKvA4D4rFYp/5LCKsWbPmNxGpeGdiGCEklUqFEzh69Cgi8oWIvCsilEqlUAJz
138 c3PXzGfbtnEc57sw0g8fPkRVEZF3RKT3wIEDTExMVHq6sLBAX18fwK+AWpalwMcDAwMUi8VlIdiw
139 YcOzdXV1pvyFsFBNTU35x5wrYypw58yZM5UEyszPlhd4BvC327Zts4PAzc3NOI4z5a9zXfePMAJN
140 TU0AXxl4PvZrS2qpKsePH2+JRCLBpPLt1qZNm5pDyvGOv6axsfH74HwymQQYCMMUkZnW1tb/CADP
141 mI0laNFodNp13af97FZVMpnMTcOj0+ac67o5y7LCKkX9EO/YsSNvEsgkk0kFljUYXzrbtueBTj8n
142 gBOA2ratwKuGMu22bc8FQmnK70WjUW1ra0sD4HkepVKJ8fHxLNABfJpIJLzAJt+KwBuFQgFgSyKR
143 +An4JplMxsuH7wXmw5yor69X4GsR2X7jxo2mU6dOVSah2UDi8TjATuBqeWOw77eqKvfv32d0dNT3
144 /PmAgl557Y8i0gUwNDSEqnLs2DGWRlj2+rFUVbq6utqBN23b/jkajarrugth+4Cs4zh+jP+uq6vr
145 FpG2mzdvpsNwXdetTiDM+vv7AdqAtjDC5aa1B9i5f//+FfF6enpYu3ZtbXfB+vXrN7a2ttZVm+/s
146 7MQ8fHJysirW0l2xUggOHz6cAV4RkSupVEoty7rT1dW1bM+uXbsQkdvAiOu6Z4GO3t7eZf3DtHv3
147 7oUTKI+XgE+CSVi2fMie9mDJWZY1ISIngC3VnDXjB/Ac8Hk0Gg3WrlmGRxYWFshms3XASeA00FTu
148 bB9Wq/90Ol0E3gNyg4ODstRPyuw7yguDmysakYhsNzx+3Zg/qao8evQI4MgKWCWgcPDgwbSqLl3H
149 cUDKFjbGI5HIU57n9fkhyuVye/zJVCr1AkB9fT2qeg542SAQHJbruvGRkZEGYDEE3d3d7SIyV4Vx
150 /9atW5fFrqGh4bbvaSwWG1JV20zgWCz2BDBRBfOvJSUNSd83Yuaz/+z69esb5+fnwxL1gQE4GZZg
151 uVyuCbgVzAfgxQoCpVKJu3fvbgR+Nxa/rbr4ZyUInM1mc47jLPV827a9TCazrOSKxSJjY2MAVw3c
152 Hv/MCgVUlfPnzwN8CRwK9gOzR6xbt26nKalt25pOpw+FqTA7O4uqxoGPgAsA09PTVCiwUjMKkf+t
153 YFwbGho+qLa+XHK28XtlAo+zfD7/gOVldkVVN6+0FyrPdKqUXehQXfw2dBevMrNktbGxsQNorAUP
154 QIzWu6qRSCSYmZmZ8jwvUQEkMuV5Xs0Eav40KxQKeJ43FnyvqoOXL1+uFa42BVQV/+tn3759LcPD
155 w3nXdcnn879cvHhx2PM8LKs2n/4Ful6n5lJtlzQAAAAASUVORK5CYII=
156 "
157 height="32"
158 width="32" />
159 <path
160 sodipodi:type="star"
161 style="fill:#d7d7d7;fill-opacity:1;stroke:#c8b7b7"
162 id="path3197-6"
163 sodipodi:sides="5"
164 sodipodi:cx="-478.57144"
165 sodipodi:cy="288.57144"
166 sodipodi:r1="47.573788"
167 sodipodi:r2="38.488003"
168 sodipodi:arg1="0.72165485"
169 sodipodi:arg2="1.3499734"
170 inkscape:flatsided="true"
171 inkscape:rounded="0"
172 inkscape:randomized="0"
173 d="m -442.85716,320.00001 -54.56831,12.2497 -28.51269,-48.11219 36.94651,-41.98466 51.34688,22.16424 z"
174 transform="matrix(0.44159933,0.23084195,-0.23084195,0.44159933,328.12717,970.37203)"
175 inkscape:transform-center-x="-1.8892484"
176 inkscape:transform-center-y="-0.39033876" />
177 <path
178 sodipodi:type="star"
179 style="fill:#f7f7f7;fill-opacity:1;stroke:#dccbcb;stroke-opacity:1"
180 id="path3195-8"
181 sodipodi:sides="5"
182 sodipodi:cx="-432.85715"
183 sodipodi:cy="448.57144"
184 sodipodi:r1="36.617161"
185 sodipodi:r2="29.623903"
186 sodipodi:arg1="1.2120257"
187 sodipodi:arg2="1.8403442"
188 inkscape:flatsided="true"
189 inkscape:rounded="0"
190 inkscape:randomized="0"
191 d="m -420.00001,482.85716 -41.49172,-11.46298 -1.9197,-43.00323 40.30527,-15.11447 26.82974,33.66196 z"
192 transform="matrix(0.49829507,0,0,0.49829507,277.04625,784.80698)"
193 inkscape:transform-center-x="-1.50147"
194 inkscape:transform-center-y="-0.2514516" />
195 <path
196 sodipodi:type="star"
197 style="fill:#f2f2f2;fill-opacity:1;stroke:#c8b7b7"
198 id="path3199-9"
199 sodipodi:sides="5"
200 sodipodi:cx="-358.57144"
201 sodipodi:cy="152.85715"
202 sodipodi:r1="39.512333"
203 sodipodi:r2="31.966148"
204 sodipodi:arg1="2.4329664"
205 sodipodi:arg2="3.0612849"
206 inkscape:flatsided="true"
207 inkscape:rounded="0"
208 inkscape:randomized="0"
209 d="m -388.57144,178.57143 -3.72625,-46.29983 42.88228,-17.8513 30.22896,35.26711 -24.19976,39.64758 z"
210 transform="matrix(0.49829507,0,0,0.49829507,268.6931,928.11087)"
211 inkscape:transform-center-x="-1.409826"
212 inkscape:transform-center-y="-0.48807819" />
213 <path
214 sodipodi:type="star"
215 style="fill:#f2f2f2;fill-opacity:1;stroke:#c8b7b7"
216 id="path3199-3"
217 sodipodi:sides="5"
218 sodipodi:cx="-358.57144"
219 sodipodi:cy="152.85715"
220 sodipodi:r1="39.512333"
221 sodipodi:r2="31.966148"
222 sodipodi:arg1="2.4329664"
223 sodipodi:arg2="3.0612849"
224 inkscape:flatsided="true"
225 inkscape:rounded="0"
226 inkscape:randomized="0"
227 d="m -388.57144,178.57143 -3.72625,-46.29983 42.88228,-17.8513 30.22896,35.26711 -24.19976,39.64758 z"
228 transform="matrix(0.34408672,0,0,0.34408672,235.26327,968.53547)"
229 inkscape:transform-center-x="-0.97352805"
230 inkscape:transform-center-y="-0.33703252" />
231 <path
232 sodipodi:type="star"
233 style="fill:#f2f2f2;fill-opacity:1;stroke:#c8b7b7"
234 id="path3199-3-0"
235 sodipodi:sides="5"
236 sodipodi:cx="-358.57144"
237 sodipodi:cy="152.85715"
238 sodipodi:r1="39.512333"
239 sodipodi:r2="31.966148"
240 sodipodi:arg1="2.4329664"
241 sodipodi:arg2="3.0612849"
242 inkscape:flatsided="true"
243 inkscape:rounded="0"
244 inkscape:randomized="0"
245 d="m -388.57144,178.57143 -3.72625,-46.29983 42.88228,-17.8513 30.22896,35.26711 -24.19976,39.64758 z"
246 transform="matrix(0.34408672,0,0,0.34408672,268.12041,974.38882)"
247 inkscape:transform-center-x="-0.97352805"
248 inkscape:transform-center-y="-0.33703252" />
249 <path
250 sodipodi:type="star"
251 style="fill:#f7f7f7;fill-opacity:1;stroke:#dccbcb;stroke-opacity:1"
252 id="path3195-8-0"
253 sodipodi:sides="5"
254 sodipodi:cx="-432.85715"
255 sodipodi:cy="448.57144"
256 sodipodi:r1="36.617161"
257 sodipodi:r2="29.623903"
258 sodipodi:arg1="1.2120257"
259 sodipodi:arg2="1.8403442"
260 inkscape:flatsided="true"
261 inkscape:rounded="0"
262 inkscape:randomized="0"
263 d="m -420.00001,482.85716 -41.49172,-11.46298 -1.9197,-43.00323 40.30527,-15.11447 26.82974,33.66196 z"
264 transform="matrix(0.3204918,0,0,0.3204918,318.10449,883.91426)"
265 inkscape:transform-center-x="-0.96571172"
266 inkscape:transform-center-y="-0.16173851" />
267 <path
268 sodipodi:type="star"
269 style="fill:#f7f7f7;fill-opacity:1;stroke:#dccbcb;stroke-opacity:1"
270 id="path3195-0"
271 sodipodi:sides="5"
272 sodipodi:cx="-432.85715"
273 sodipodi:cy="448.57144"
274 sodipodi:r1="36.617161"
275 sodipodi:r2="29.623903"
276 sodipodi:arg1="1.2120257"
277 sodipodi:arg2="1.8403442"
278 inkscape:flatsided="true"
279 inkscape:rounded="0"
280 inkscape:randomized="0"
281 d="m -420.00001,482.85716 -41.49172,-11.46298 -1.9197,-43.00323 40.30527,-15.11447 26.82974,33.66196 z"
282 transform="matrix(-0.50808944,0,0,0.49826547,-180.95003,232.66655)"
283 inkscape:transform-center-x="1.5309823"
284 inkscape:transform-center-y="-0.25143993" />
285 <path
286 sodipodi:type="star"
287 style="fill:#d7d7d7;fill-opacity:1;stroke:#c8b7b7"
288 id="path3197-4"
289 sodipodi:sides="5"
290 sodipodi:cx="-478.57144"
291 sodipodi:cy="288.57144"
292 sodipodi:r1="47.573788"
293 sodipodi:r2="38.488003"
294 sodipodi:arg1="0.72165485"
295 sodipodi:arg2="1.3499734"
296 inkscape:flatsided="true"
297 inkscape:rounded="0"
298 inkscape:randomized="0"
299 d="m -442.85716,320.00001 -54.56831,12.2497 -28.51269,-48.11219 36.94651,-41.98466 51.34688,22.16424 z"
300 transform="matrix(-0.50808944,0,0,0.49826547,-189.66013,283.91672)"
301 inkscape:transform-center-x="-1.6360872"
302 inkscape:transform-center-y="-0.68270036" />
303 <path
304 sodipodi:type="star"
305 style="fill:#f2f2f2;fill-opacity:1;stroke:#c8b7b7"
306 id="path3199-90"
307 sodipodi:sides="5"
308 sodipodi:cx="-358.57144"
309 sodipodi:cy="152.85715"
310 sodipodi:r1="39.512333"
311 sodipodi:r2="31.966148"
312 sodipodi:arg1="2.4329664"
313 sodipodi:arg2="3.0612849"
314 inkscape:flatsided="true"
315 inkscape:rounded="0"
316 inkscape:randomized="0"
317 d="m -388.57144,178.57143 -3.72625,-46.29983 42.88228,-17.8513 30.22896,35.26711 -24.19976,39.64758 z"
318 transform="matrix(-0.50808944,0,0,0.49826547,-149.73877,334.45508)"
319 inkscape:transform-center-x="1.437537"
320 inkscape:transform-center-y="-0.48804535" />
321 </g>
322 </svg>
+0
-477
examples/classic-slides/index.html less more
0 <!doctype html>
1
2 <!--
3 This is a simple example / template impress.js slide show. The goal is to be
4 easier to read for a first timer than the official and very feature rich
5 demo by bartaz (http://bartaz.github.io/impress.js/). It's also a very
6 traditional presentation that looks like slides (square screens with bullet
7 points...), again to make a first timer feel more at home. From this simple
8 presentation you can then go on to more powerful impress.js presentations!
9
10 This example is hopefully helpful for people that want to create both
11 simple and (eventually) awesome presentations in impress.js and comfortable
12 doing that directly in HTML.
13
14 By: @henrikingo (Still based on the HTML from bartaz' demo.)
15
16 -->
17
18 <html lang="en">
19 <head>
20 <meta charset="utf-8" />
21 <title>Classic Slides with impress.js | Simple example impress.js slide show | by Henrik Ingo @henrikingo</title>
22
23 <meta name="description" content="Simple example impress.js slide show" />
24 <meta name="author" content="Henrik Ingo" />
25 <!--
26 Impress.js doesn't depend on any external stylesheets. It adds all of the styles it needs for the
27 presentation to work.
28
29 However, some of the `extras/` modules do come with their own CSS, and we load
30 them here. You can read about each extras module separately in their directory.
31 -->
32 <link rel="stylesheet" href="../../extras/highlight/styles/github.css">
33 <link rel="stylesheet" href="../../extras/mermaid/mermaid.forest.css">
34
35 <!-- This file contains common styles for example presentations. -->
36 <link href="..\..\css\impress-common.css" rel="stylesheet" />
37 <!--
38 This file contains styles specific for this example presentation.
39 -->
40 <link href="css/classic-slides.css" rel="stylesheet" />
41
42 </head>
43
44 <!--
45
46 Body element is used by impress.js to set some useful class names, that will allow you to detect
47 the support and state of the presentation in CSS or other scripts.
48
49 First very useful class name is `impress-not-supported`. This class means, that browser doesn't
50 support features required by impress.js, so you should apply some fallback styles in your CSS.
51 It's not necessary to add it manually on this element. If the script detects that browser is not
52 good enough it will add this class, but keeping it in HTML means that users without JavaScript
53 will also get fallback styles.
54
55 When impress.js script detects that browser supports all required features, this class name will
56 be removed.
57
58 Another class name on body element also depends on currently active presentation step.
59 -->
60 <body class="impress-not-supported">
61 <!--
62 This fallback message is only visible when there is `impress-not-supported` class on body.
63 -->
64 <div class="fallback-message">
65 <p>Your browser <b>doesn't support the features required</b> by impress.js, so you are presented with a simplified version of this presentation.</p>
66 <p>For the best experience please use the latest <b>Chrome</b>, <b>Safari</b> or <b>Firefox</b> browser.</p>
67 </div>
68
69 <!--
70 This is the core element used by impress.js: the wrapper for your presentation steps.
71 In this element all the impress.js magic happens.
72
73 data-transition-duration sets the time in microseconds that is used for the
74 animation when transtitioning between slides.
75
76 The width, height, scale and perspective options define a target screen size that you should
77 design your CSS against. impress.js will automatically scale all content to different screen
78 sizes. See DOCUMENTATION.md for details. Below, I have targeted full HD screen resolution.
79
80 data-autoplay can be used to set the time in seconds, after which presentation
81 automatically moves to next slide. It can also be set individually for each
82 slide, but here we just set a common duration for all slides.
83 -->
84 <div id="impress"
85 data-transition-duration="1000"
86
87 data-width="1920"
88 data-height="1080"
89 data-max-scale="3"
90 data-min-scale="0"
91 data-perspective="1000"
92
93 data-autoplay="10">
94
95 <!--
96 Each step of the presentation should be an element inside the `#impress` with a class name
97 of `step`. These step elements are positioned, rotated and scaled by impress.js, and
98 the 'camera' shows them on each step of the presentation.
99
100 The `id` attribute of the step element is used to identify it in the URL, but it's optional.
101 If it is not defined, it will get a default value of `step-N` where N is a number of slide.
102 This step is auto-assigned the id "step-1". You can also use `#step-1` in a link, to
103 point directly to this particular step.
104
105 Positioning information is passed through data-* attributes.
106
107 In the example below we only specify x and y position of the step element with `data-x="-1000"`
108 and `data-y="-1500"` attributes. This means that **the center** of the element (yes, the center)
109 will be positioned in point x = -1000px and y = -1500px of the presentation 'canvas'. It will not
110 be rotated or scaled.
111
112 The "step" class is what *must* be used for every "slide". In this example we also use the "slide"
113 class, which adds a rectangle with some background and makes this presentation look like a traditional
114 powerpoint slide show. The "slide" class is entirely optional and indeed you wouldn't use it for
115 your cooler impress.js presentations.
116 -->
117 <div class="step slide title" data-x="-2200" data-y="-3000">
118 <h1>Example Presentation: <br />
119 Classic Slides</h1>
120 <h2>Henrik Ingo</h2>
121 <h3>2015</h3>
122
123 <div class="notes">
124 Any element with the class="notes" will not be displayed. This can
125 be used for speaker notes. In fact, the impressConsole plugin will
126 show it in the speaker console!
127 </div>
128 </div>
129
130 <div id="toc" class="step slide" data-rel-x="2200" data-rel-y="0">
131 <h1>Table of Contents</h1>
132 <ul>
133 <li><a href="#step-1">A title slide</a></li>
134 <li><a href="#step-2">Table of Contents</a></li>
135 <li><a href="#step-3">Text slide</a></li>
136 <li><a href="#step-4">Bullet points</a></li>
137 <li><a href="#step-5">Blockquote &amp; image</a></li>
138 <li><a href="#step-6">More basic text styles</a></li>
139 <li><a href="#step-7">Motion effects 101</a></li>
140 <li><a href="#addons">Add-ons</a></li>
141 <li><a href="#moreinfo">More info</a></li>
142 </ul>
143
144 <div class="notes">
145 <p>Table of Contents, with links to other slides of this same presentation.</p>
146
147 <p>Note that instead of absolute positioning we use relative positioning,
148 with the data-rel-x and data-rel-y attributes. This means the step is
149 positioned relative to the foregoing step. In other words, this is
150 equivalent to data-x="0" data-y="-3000".</p>
151 </div>
152 </div>
153
154 <div class="step slide">
155 <h1>A slide with text</h1>
156 <p>This slide has a few paragraphs <br />(p element) of normal text.</p>
157 <p>Personally I like centered or even justified text, as it looks less boring. This can of course be set in <a href="css/classic-slides.css">the css file</a>.</p>
158 <p>I really like the style on links in these presentations. I modified the border to be beveled, but it's mostly from <a href="http://impress.github.io/impress.js/">@bartaz' original demo</a>. <a href="https://twitter.com/bartaz">@bartaz</a> is the creator of impress.js.</p>
159
160 <div class="notes">
161 In this slide, we don't even specify the relative position, rather
162 that too is inherited. So this slide will again be 1000px to the
163 right of the previous one.
164 </div>
165 </div>
166
167 <div class="step slide">
168 <h1>Bullet points</h1>
169 <ul>
170 <li>A slide with bullet points. This is the first point.</li>
171 <li>Second point</li>
172 <li>Third point. Under this point we also have some sub-bullets:
173 <ul>
174 <li>Sub-bullet 1</li>
175 <li>Sub-bullet 2</li>
176 </ul>
177 </li>
178 </ul>
179
180 <div class="notes">
181 </div>
182 </div>
183
184 <!--
185 This element introduces rotation.
186
187 Notation shouldn't be a surprise. We use `data-rotate="30"` attribute, meaning that this
188 element should be rotated by 30 degrees clockwise.
189 -->
190 <div class="step slide" data-rel-x="2200" data-rel-y="600" data-rotate="30">
191 <h1>A blockquote &amp; image</h1>
192 <img src="images/3476636111_c551295ca4_b.jpg"
193 alt="Mother Teresa holding a newborn baby"
194 class="right"/>
195 <blockquote>
196 Spread love everywhere you go. <br />Let no one ever come to you without leaving happier.
197 <p style="text-align: right">Mother Teresa</p>
198 <p class="left bottom"><small>Image credit: <a href="https://www.flickr.com/photos/peta-de-aztlan/3476636111/">Peta_de_Aztlan</a>@Flickr. CC-BY 2.0</small></p>
199 </blockquote>
200
201 <div class="notes">
202 </div>
203 </div>
204
205 <div class="step slide" data-rel-x="1600" data-rel-y="1600" data-rotate="60">
206 <h1>More text styles</h1>
207 <p>As usual, use <em>em</em> to emphasize, <br />
208 <strong>strong</strong> for strong, <u>u</u> for underline,<br />
209 <strike>strike</strike> for strikethrough and <q>q for inline quotations</q>.</p>
210
211 <p>If you're a software engineer like me, you will often use the
212 <code>&lt;code&gt;</code> tag for monospaced inline text.</p>
213
214 <div class="notes">
215 </div>
216 </div>
217
218 <div class="step slide" data-rel-x="600" data-rel-y="2200" data-rotate="90">
219 <h1>Motion effects 101</h1>
220 <p>Items on the slide can</p>
221 <p class="fly-in fly-out">Fly in</p>
222 <p class="fade-in fade-out" style="transition-delay: 2s">Fade in</p>
223 <p class="zoom-in zoom-out" style="transition-delay: 4s">And zoom in</p>
224
225 <p class="left bottom"><small>...just like in PowerPoint. Yeah, I know I'm being lame, but it was fun to learn to do this in CSS3.</small></p>
226
227 <div class="notes">
228 <p>This step here doesn't introduce anything new when it comes to data attributes, but you
229 should notice in the demo that some words of this text are being animated.
230 It's a very basic CSS transition that is applied to the elements when this step element is
231 reached.
232 </p><p>
233 At the very beginning of the presentation all step elements are given the class of `future`.
234 It means that they haven't been visited yet.
235 </p><p>
236 When the presentation moves to given step `future` is changed to `present` class name.
237 That's how animation on this step works - text moves when the step has `present` class.
238 </p><p>
239 Finally when the step is left the `present` class is removed from the element and `past`
240 class is added.
241 </p><p>
242 So basically every step element has one of three classes: `future`, `present` and `past`.
243 Only one current step has the `present` class.
244 </p>
245 </div>
246 </div>
247
248 <div id="addons" class="step slide title" data-rel-x="-600" data-rel-y="2200" data-rotate="120">
249 <h2>Add-ons</h2>
250 <div class="notes">
251 <p>This version of impress.js includes several add-ons, striving to make this a
252 full featured presentation app.</p>
253 </div>
254 </div>
255
256 <div class="step slide" data-rel-x="-1600" data-rel-y="1600" data-rotate="150" data-autoplay="3">
257 <h1>Impress.js plugins</h1>
258 <ul>
259 <li>A new <a href="https://github.com/impress/impress.js/blob/master/src/plugins/README.md">plugin framework</a> allows for rich extensibility,
260 without bloating the core rendering library.
261 <ul>
262 <li class="substep">Press 'P' to open a presenter console.</li>
263 <li class="substep">When you move the mouse, navigation controls are visible on your bottom left</li>
264 <li class="substep">Autoplay makes the slides advance after a timeout</li>
265 <li class="substep">Relative positioning plugin is often a more convenient way to position your slides when editing. (<a href="https://github.com/impress/impress.js/blob/master/examples/classic-slides/index.html">See html for this presentation.</a>)</li>
266 </ul>
267 </li>
268 </ul>
269 <div class="notes">
270 <p>This presentation also uses speaker notes. They are not visible in the presentation, but shown in the impress console.</p>
271
272 <p>If you pressed P only now, this is the first time you see these notes. In fact, there has been notes on preceding slides as well.
273 You can use the navigation controls at the bottom of the impress console to browse back to them.</p>
274
275 <p>And did you notice how those bullet points appear one by one as you press space/arrow? That's another plugin, called substeps.</p>
276 </div>
277 </div>
278
279 <div class="step slide" data-rel-x="-2200" data-rel-y="600" data-rotate="180">
280 <h1>Highlight.js</h1>
281 <pre><code>
282 // `init` API function that initializes (and runs) the presentation.
283 var init = function () {
284 if (initialized) { return; }
285 execPreInitPlugins();
286
287 // First we set up the viewport for mobile devices.
288 // For some reason iPad goes nuts when it is not done properly.
289 var meta = $("meta[name='viewport']") || document.createElement("meta");
290 meta.content = "width=device-width, minimum-scale=1, maximum-scale=1, user-scalable=no";
291 if (meta.parentNode !== document.head) {
292 meta.name = 'viewport';
293 document.head.appendChild(meta);
294 }
295 </code></pre>
296 <div class="notes">
297 <p>The Highlight.js library provides really nice color coding of source code.
298 It automatically applies to any code inside a &lt;pre&gt;&lt;code&gt; element.</p>
299 <p>Highlight.js is found under the <a href="https://github.com/impress/impress.js/tree/master/extras">extras/</a>
300 directory, since it is an independent third party plugin, not really an impress.js plugin. You have
301 to include it via it's own &lt;link&gt; and &lt;script&gt; tags.</p>
302 </div>
303 </div>
304
305 <div class="step slide" data-rel-x="-2200" data-rel-y="-600" data-rotate="210">
306 <h1>Mermaid.js</h1>
307 <div class="mermaid">
308 %% This is a comment in mermaid markup
309 graph LR
310 A(Support for<br />diagrams)
311 B[Provided by<br />mermaid.js]
312 C{Already<br />know<br />mermaid?}
313 D(<a href=&quot;http://knsv.github.io/mermaid/index.html#usage&quot;>Tutorial</a>)
314 E(Great, hope you enjoy!)
315 A-->B
316 B-->C
317 C--No-->D
318 C--Yes-->E
319 classDef startEnd fill:#fcc,stroke:#353,stroke-width:2px;
320 class A,D,E startEnd;
321 </div>
322
323 <h1><a href="http://docs.mathjax.org/en/latest/start.html">MathJax.js</a></h1>
324 <p>Use \(\LaTeX\), MathML or AsciiMath to properly show mathematical formula.</p>
325 <div class="notes">
326 Mermaid.js, likewise in a href="https://github.com/impress/impress.js/tree/master/extras">extras/</a>
327 directory, draws SVG diagrams from a MarkDown-like syntax. To learn
328 more about it <a href="http://knsv.github.io/mermaid/index.html#usage">read the fine manual</a>.
329 </div>
330 </div>
331
332 <div id="markdown" class="step slide markdown" data-rel-x="-1600" data-rel-y="-1600" data-rotate="240">
333 # Markdown.js
334
335 * [Markdown.js](https://github.com/evilstreak/markdown-js) integration: for authors in a hurry!
336 * ...or lazy ;-)
337 * Jot down bullet points in *Markdown*
338 * ...have it automatically converted to HTML
339 * Markdown is converted into a presentation client side, in the browser. This is unlike
340 existing tools like [Hovercraft](https://github.com/regebro/hovercraft) and
341 markdown-impress where you generate a new
342 html file on the command line.
343 * [A more advanced Markdown presentation is here.](../markdown/)
344 </div>
345
346 <div id="acme" class="step slide" data-rel-x="-600" data-rel-y="-2200" data-rotate="270">
347 <ul>
348 <li>Remember, in <em>impress.js</em> the full power of HTML5, CSS3 &amp; JavaScript is always at your fingertips!</li>
349 <li>For example, you can use tables, forms, or dynamic charts as you would on any web page:</li>
350 </ul>
351 <h2>Acme Inc Quarterly Profits</h2>
352
353 <!-- Improvised bar graph of divs, to avoid copying something like NVD3 into the repo. -->
354 <div id="acme-graph">
355 <div id="acme-graph-bars">
356 <div id="acme-graph-q1"></div>
357 <div id="acme-graph-q2"></div>
358 <div id="acme-graph-q3"></div>
359 <div id="acme-graph-q4"></div>
360 </div>
361 <div id="acme-graph-bottom"></div>
362 </div>
363
364 <table border="1">
365 <tr><td>Q1</td><td id="acme-q1">234€</td></tr>
366 <tr><td>Q2</td><td id="acme-q2">255€</td></tr>
367 <tr><td>Q3</td><td><input id="acme-q3" size="5" oninput="acmeDrawGraph();" />€ <small>(insert here)</small></td></tr>
368 <tr><td>Q4</td><td><input id="acme-q4" size="5" oninput="acmeDrawGraph();" />€</td></tr>
369 </table>
370 <div class="notes">
371 </div>
372 </div>
373 <script type="text/javascript">
374 var acmeDrawGraph = function() {
375 var profits = {};
376
377 // Q1-Q2: get innerHTML, remove €
378 var value = document.getElementById('acme-q1').innerHTML;
379 if( value[value.length-1] == "€" ) value = value.substring(0, value.length-1);
380 profits['q1'] = value;
381 var value = document.getElementById('acme-q2').innerHTML;
382 if( value[value.length-1] == "€" ) value = value.substring(0, value.length-1);
383 profits['q2'] = value;
384
385 // Q3-Q4: get input.value
386 profits['q3'] = document.getElementById('acme-q3').value;
387 profits['q4'] = document.getElementById('acme-q4').value;
388
389 // Convert all to numeric value, and remember max value for scaling purposes.
390 var max = profits['q1'];
391 for ( var q in profits ) {
392 profits[q] = isNaN(profits[q]) ? 0 : Number(profits[q]);
393 if( profits[q] > max ) {
394 max = profits[q];
395 }
396 }
397
398 // Draw the bar graph
399 for ( var q in profits ) {
400 var h = 300 * profits[q] / max;
401 var div = document.getElementById('acme-graph-'+q);
402 div.style = 'height: ' + h + 'px';
403 }
404 };
405 // This draws the first 2 bars during page load
406 acmeDrawGraph();
407 </script>
408
409 <!--
410 This step also sets a custom data-transition-duration. All of the above steps used the value set
411 in the root div#impress element, but it is also allowed to set it for each step. Since transitioning
412 to this step will rotate twice around it's axis, we give the transition a bit more time here.
413 -->
414 <div id="moreinfo" class="step slide" data-x="4400" data-y="1200" data-rotate="720" data-transition-duration="2000">
415 <h1>More info</h1>
416 <ul>
417 <li><a href="https://github.com/impress/impress.js/blob/master/DOCUMENTATION.md">DOCUMENTATION.md</a> is the API reference.
418 </li>
419 <li><a href="https://github.com/impress/impress.js/blob/master/examples/classic-slides/index.html">Source of this presentation itself</a> is commented</li>
420 <li><a href="http://impress.github.io/impress.js/">Advanced Impress.js demo</a> by <a href="http://twitter.com/bartaz">@bartaz</a>
421 <ul>
422 <li>Again, the <a href="http://github.com/impress/impress.js/blob/master/index.html">html</a>
423 and <a href="https://github.com/impress/impress.js/blob/master/css/impress-demo.css">css</a> source is well commented.</li>
424 </ul>
425 </li>
426 <li>More examples and demos:
427 <ul>
428 <li><a href="https://github.com/impress/impress.js/tree/master/examples">examples/</a> in this repository</li>
429 <li><a href="https://github.com/impress/impress.js/wiki/Examples-and-demos">on the impress.js wiki</a></li>
430 </ul>
431 </li>
432 <li>Check out <a href="https://github.com/impress/impressionist">Impressionist</a>: a 3D GUI to create impress.js presentations</li>
433 </ul>
434
435 <div class="notes">
436 </div>
437 </div>
438
439 <!-- This last, empty "slide" is set to be very large using the data-scale attribute,
440 so that it covers all the other slides you just saw.
441 It's a common way of zooming out at the end, to show the whole presentation.
442 In CSS, we set pointer-events:none to make this slide non-clickable.
443 It makes a difference at least for SVG content, such as the mermaid diagram. -->
444 <div id="overview" class="step" data-x="4500" data-y="1500" data-scale="10" style="pointer-events: none;">
445 </div>
446 </div>
447
448 <!--
449 Add navigation-ui controls: back, forward and a select list.
450 Add a progress indicator bar (current step / all steps)
451 Add the help popup plugin
452 -->
453 <div id="impress-toolbar"></div>
454
455 <div class="impress-progressbar"><div></div></div>
456 <div class="impress-progress"></div>
457
458 <div id="impress-help"></div>
459
460 <!-- Extra modules
461 Load highlight.js, mermaid.js, markdown.js and MathJax.js from extras.
462 If you're curious about details, these are initialized in src/plugins/extras/extras.js -->
463 <script type="text/javascript" src="../../extras/highlight/highlight.pack.js"></script>
464 <script type="text/javascript" src="../../extras/mermaid/mermaid.min.js"></script>
465 <script type="text/javascript" src="../../extras/markdown/markdown.js"></script>
466 <script type="text/javascript" src="../../extras/mathjax/MathJax.js?config=TeX-AMS_CHTML"></script>
467 <!--
468 To make all described above really work, you need to include impress.js in the page.
469 You also need to call a `impress().init()` function to initialize impress.js presentation.
470 And you should do it in the end of your document.
471 -->
472 <script type="text/javascript" src="../../js/impress.js"></script>
473 <script>impress().init();</script>
474
475 </body>
476 </html>
+0
-149
examples/cube/css/cube.css less more
0 @import url(fonts.css);
1
2
3
4 /* Fallback message */
5
6 .fallback-message {
7 font-family: sans-serif;
8 line-height: 1.3;
9
10 width: 780px;
11 padding: 10px 10px 0;
12 margin: 20px auto;
13
14 border: 1px solid #E4C652;
15 border-radius: 10px;
16 background: #EEDC94;
17 }
18
19 .fallback-message p {
20 margin-bottom: 10px;
21 }
22
23 .impress-supported .fallback-message {
24 display: none;
25 }
26
27
28 /* Body & steps */
29 body {
30 font-family: 'PT Sans', sans-serif;
31 min-height: 740px;
32
33 background: #00000f;
34 color: rgb(102, 102, 102);
35 }
36
37 .step {
38 position: relative;
39 width: 700px;
40 height: 700px;
41 padding: 40px 60px;
42 margin: 20px auto;
43
44 box-sizing: border-box;
45
46 line-height: 1.5;
47
48 background-color: white;
49 border-radius: 10px;
50 box-shadow: 0 2px 6px rgba(0, 0, 0, .1);
51
52 text-shadow: 0 2px 2px rgba(0, 0, 0, .1);
53 font-family: 'Open Sans', Arial, sans-serif;
54 font-size: 30px;
55 letter-spacing: -1px;
56
57 }
58
59 #overview {
60 background-color: transparent;
61 border: none;
62 box-shadow: none;
63 }
64 /*
65 Make inactive steps a little bit transparent.
66 */
67 .impress-enabled .step {
68 margin: 0;
69 opacity: 0.7;
70 transition: opacity 1s;
71 }
72
73 .impress-enabled .step.active { opacity: 1 }
74
75 h1,
76 h2,
77 h3 {
78 margin-bottom: 0.5em;
79 margin-top: 0.5em;
80 text-align: center;
81 }
82
83 p {
84 margin: 0.7em;
85 }
86
87 li {
88 margin: 0.2em;
89 }
90
91 /* Highlight.js used for coloring pre > code blocks. */
92 pre > code {
93 font-size: 14px;
94 text-shadow: 0 0 0 rgba(0, 0, 0, 0);
95 }
96
97 /* Inline code, no Highlight.js */
98 code {
99 font-family: "Cutive mono","Courier New", monospace;
100 }
101
102
103 a {
104 color: inherit;
105 text-decoration: none;
106 padding: 0 0.1em;
107 background: rgba(200,200,200,0.2);
108 text-shadow: -1px 1px 2px rgba(100,100,100,0.9);
109 border-radius: 0.2em;
110 border-bottom: 1px solid rgba(100,100,100,0.2);
111 border-left: 1px solid rgba(100,100,100,0.2);
112
113 transition: 0.5s;
114 }
115 a:hover,
116 a:focus {
117 background: rgba(200,200,200,1);
118 text-shadow: -1px 1px 2px rgba(100,100,100,0.5);
119 }
120
121 blockquote {
122 font-family: 'PT Serif';
123 font-style: italic;
124 font-weight: 400;
125 }
126
127 em {
128 text-shadow: 0 2px 2px rgba(0, 0, 0, .3);
129 }
130
131 strong {
132 text-shadow: -1px 1px 2px rgba(100,100,100,0.5);
133 }
134
135 q {
136 font-family: 'PT Serif';
137 font-style: italic;
138 font-weight: 400;
139 text-shadow: 0 2px 2px rgba(0, 0, 0, .3);
140 }
141
142 strike {
143 opacity: 0.7;
144 }
145
146 small {
147 font-size: 0.4em;
148 }
+0
-497
examples/cube/css/fonts.css less more
0 /* latin-ext */
1 @font-face {
2 font-family: 'Cutive Mono';
3 font-style: normal;
4 font-weight: 400;
5 src: local('Cutive Mono'), local('CutiveMono-Regular'), url(http://fonts.gstatic.com/s/cutivemono/v4/N5odNRruTwjvCM8y77PhQSYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
6 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
7 }
8 /* latin */
9 @font-face {
10 font-family: 'Cutive Mono';
11 font-style: normal;
12 font-weight: 400;
13 src: local('Cutive Mono'), local('CutiveMono-Regular'), url(http://fonts.gstatic.com/s/cutivemono/v4/N5odNRruTwjvCM8y77PhQY4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
14 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
15 }
16 /* cyrillic-ext */
17 @font-face {
18 font-family: 'Open Sans';
19 font-style: normal;
20 font-weight: 400;
21 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/K88pR3goAWT7BTt32Z01mxJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
22 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
23 }
24 /* cyrillic */
25 @font-face {
26 font-family: 'Open Sans';
27 font-style: normal;
28 font-weight: 400;
29 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/RjgO7rYTmqiVp7vzi-Q5URJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
30 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
31 }
32 /* greek-ext */
33 @font-face {
34 font-family: 'Open Sans';
35 font-style: normal;
36 font-weight: 400;
37 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/LWCjsQkB6EMdfHrEVqA1KRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
38 unicode-range: U+1F00-1FFF;
39 }
40 /* greek */
41 @font-face {
42 font-family: 'Open Sans';
43 font-style: normal;
44 font-weight: 400;
45 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/xozscpT2726on7jbcb_pAhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
46 unicode-range: U+0370-03FF;
47 }
48 /* vietnamese */
49 @font-face {
50 font-family: 'Open Sans';
51 font-style: normal;
52 font-weight: 400;
53 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/59ZRklaO5bWGqF5A9baEERJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
54 unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
55 }
56 /* latin-ext */
57 @font-face {
58 font-family: 'Open Sans';
59 font-style: normal;
60 font-weight: 400;
61 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/u-WUoqrET9fUeobQW7jkRRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
62 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
63 }
64 /* latin */
65 @font-face {
66 font-family: 'Open Sans';
67 font-style: normal;
68 font-weight: 400;
69 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/cJZKeOuBrn4kERxqtaUH3VtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
70 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
71 }
72 /* cyrillic-ext */
73 @font-face {
74 font-family: 'Open Sans';
75 font-style: normal;
76 font-weight: 600;
77 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSq-j2U0lmluP9RWlSytm3ho.woff2) format('woff2');
78 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
79 }
80 /* cyrillic */
81 @font-face {
82 font-family: 'Open Sans';
83 font-style: normal;
84 font-weight: 600;
85 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSpX5f-9o1vgP2EXwfjgl7AY.woff2) format('woff2');
86 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
87 }
88 /* greek-ext */
89 @font-face {
90 font-family: 'Open Sans';
91 font-style: normal;
92 font-weight: 600;
93 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNShWV49_lSm1NYrwo-zkhivY.woff2) format('woff2');
94 unicode-range: U+1F00-1FFF;
95 }
96 /* greek */
97 @font-face {
98 font-family: 'Open Sans';
99 font-style: normal;
100 font-weight: 600;
101 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSqaRobkAwv3vxw3jMhVENGA.woff2) format('woff2');
102 unicode-range: U+0370-03FF;
103 }
104 /* vietnamese */
105 @font-face {
106 font-family: 'Open Sans';
107 font-style: normal;
108 font-weight: 600;
109 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSv8zf_FOSsgRmwsS7Aa9k2w.woff2) format('woff2');
110 unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
111 }
112 /* latin-ext */
113 @font-face {
114 font-family: 'Open Sans';
115 font-style: normal;
116 font-weight: 600;
117 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSj0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
118 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
119 }
120 /* latin */
121 @font-face {
122 font-family: 'Open Sans';
123 font-style: normal;
124 font-weight: 600;
125 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSugdm0LZdjqr5-oayXSOefg.woff2) format('woff2');
126 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
127 }
128 /* cyrillic-ext */
129 @font-face {
130 font-family: 'Open Sans';
131 font-style: italic;
132 font-weight: 400;
133 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBjTOQ_MqJVwkKsUn0wKzc2I.woff2) format('woff2');
134 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
135 }
136 /* cyrillic */
137 @font-face {
138 font-family: 'Open Sans';
139 font-style: italic;
140 font-weight: 400;
141 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBjUj_cnvWIuuBMVgbX098Mw.woff2) format('woff2');
142 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
143 }
144 /* greek-ext */
145 @font-face {
146 font-family: 'Open Sans';
147 font-style: italic;
148 font-weight: 400;
149 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBkbcKLIaa1LC45dFaAfauRA.woff2) format('woff2');
150 unicode-range: U+1F00-1FFF;
151 }
152 /* greek */
153 @font-face {
154 font-family: 'Open Sans';
155 font-style: italic;
156 font-weight: 400;
157 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBmo_sUJ8uO4YLWRInS22T3Y.woff2) format('woff2');
158 unicode-range: U+0370-03FF;
159 }
160 /* vietnamese */
161 @font-face {
162 font-family: 'Open Sans';
163 font-style: italic;
164 font-weight: 400;
165 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBr6up8jxqWt8HVA3mDhkV_0.woff2) format('woff2');
166 unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
167 }
168 /* latin-ext */
169 @font-face {
170 font-family: 'Open Sans';
171 font-style: italic;
172 font-weight: 400;
173 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBiYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
174 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
175 }
176 /* latin */
177 @font-face {
178 font-family: 'Open Sans';
179 font-style: italic;
180 font-weight: 400;
181 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBo4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
182 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
183 }
184 /* cyrillic-ext */
185 @font-face {
186 font-family: 'Open Sans';
187 font-style: italic;
188 font-weight: 600;
189 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxmgpAmOCqD37_tyH_8Ri5MM.woff2) format('woff2');
190 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
191 }
192 /* cyrillic */
193 @font-face {
194 font-family: 'Open Sans';
195 font-style: italic;
196 font-weight: 600;
197 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxsPNMTLbnS9uQzHQlYieHUU.woff2) format('woff2');
198 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
199 }
200 /* greek-ext */
201 @font-face {
202 font-family: 'Open Sans';
203 font-style: italic;
204 font-weight: 600;
205 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxgyhumQnPMBCoGYhRaNxyyY.woff2) format('woff2');
206 unicode-range: U+1F00-1FFF;
207 }
208 /* greek */
209 @font-face {
210 font-family: 'Open Sans';
211 font-style: italic;
212 font-weight: 600;
213 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxhUVAXEdVvYDDqrz3aeR0Yc.woff2) format('woff2');
214 unicode-range: U+0370-03FF;
215 }
216 /* vietnamese */
217 @font-face {
218 font-family: 'Open Sans';
219 font-style: italic;
220 font-weight: 600;
221 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxlf4y_3s5bcYyyLIFUSWYUU.woff2) format('woff2');
222 unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
223 }
224 /* latin-ext */
225 @font-face {
226 font-family: 'Open Sans';
227 font-style: italic;
228 font-weight: 600;
229 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxnywqdtBbUHn3VPgzuFrCy8.woff2) format('woff2');
230 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
231 }
232 /* latin */
233 @font-face {
234 font-family: 'Open Sans';
235 font-style: italic;
236 font-weight: 600;
237 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxl2umOyRU7PgRiv8DXcgJjk.woff2) format('woff2');
238 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
239 }
240 /* cyrillic-ext */
241 @font-face {
242 font-family: 'PT Sans';
243 font-style: normal;
244 font-weight: 400;
245 src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/JX7MlXqjSJNjQvI4heMMGvY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
246 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
247 }
248 /* cyrillic */
249 @font-face {
250 font-family: 'PT Sans';
251 font-style: normal;
252 font-weight: 400;
253 src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/vtwNVMP8y9C17vLvIBNZI_Y6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
254 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
255 }
256 /* latin-ext */
257 @font-face {
258 font-family: 'PT Sans';
259 font-style: normal;
260 font-weight: 400;
261 src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/9kaD4V2pNPMMeUVBHayd7vY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
262 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
263 }
264 /* latin */
265 @font-face {
266 font-family: 'PT Sans';
267 font-style: normal;
268 font-weight: 400;
269 src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/ATKpv8nLYAKUYexo8iqqrg.woff2) format('woff2');
270 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
271 }
272 /* cyrillic-ext */
273 @font-face {
274 font-family: 'PT Sans';
275 font-style: normal;
276 font-weight: 700;
277 src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/kTYfCWJhlldPf5LnG4ZnHCEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
278 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
279 }
280 /* cyrillic */
281 @font-face {
282 font-family: 'PT Sans';
283 font-style: normal;
284 font-weight: 700;
285 src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/g46X4VH_KHOWAAa-HpnGPiEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
286 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
287 }
288 /* latin-ext */
289 @font-face {
290 font-family: 'PT Sans';
291 font-style: normal;
292 font-weight: 700;
293 src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/hpORcvLZtemlH8gI-1S-7iEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
294 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
295 }
296 /* latin */
297 @font-face {
298 font-family: 'PT Sans';
299 font-style: normal;
300 font-weight: 700;
301 src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/0XxGQsSc1g4rdRdjJKZrNPk_vArhqVIZ0nv9q090hN8.woff2) format('woff2');
302 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
303 }
304 /* cyrillic-ext */
305 @font-face {
306 font-family: 'PT Sans';
307 font-style: italic;
308 font-weight: 400;
309 src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/GpWpM_6S4VQLPNAQ3iWvVRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
310 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
311 }
312 /* cyrillic */
313 @font-face {
314 font-family: 'PT Sans';
315 font-style: italic;
316 font-weight: 400;
317 src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/7dSh6BcuqDLzS2qAASIeuhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
318 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
319 }
320 /* latin-ext */
321 @font-face {
322 font-family: 'PT Sans';
323 font-style: italic;
324 font-weight: 400;
325 src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/DVKQJxMmC9WF_oplMzlQqRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
326 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
327 }
328 /* latin */
329 @font-face {
330 font-family: 'PT Sans';
331 font-style: italic;
332 font-weight: 400;
333 src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/PIPMHY90P7jtyjpXuZ2cLFtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
334 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
335 }
336 /* cyrillic-ext */
337 @font-face {
338 font-family: 'PT Sans';
339 font-style: italic;
340 font-weight: 700;
341 src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkK-j2U0lmluP9RWlSytm3ho.woff2) format('woff2');
342 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
343 }
344 /* cyrillic */
345 @font-face {
346 font-family: 'PT Sans';
347 font-style: italic;
348 font-weight: 700;
349 src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkJX5f-9o1vgP2EXwfjgl7AY.woff2) format('woff2');
350 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
351 }
352 /* latin-ext */
353 @font-face {
354 font-family: 'PT Sans';
355 font-style: italic;
356 font-weight: 700;
357 src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkD0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
358 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
359 }
360 /* latin */
361 @font-face {
362 font-family: 'PT Sans';
363 font-style: italic;
364 font-weight: 700;
365 src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkOgdm0LZdjqr5-oayXSOefg.woff2) format('woff2');
366 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
367 }
368 /* cyrillic-ext */
369 @font-face {
370 font-family: 'PT Serif';
371 font-style: normal;
372 font-weight: 400;
373 src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/5hX15RUpPERmeybVlLQEWBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
374 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
375 }
376 /* cyrillic */
377 @font-face {
378 font-family: 'PT Serif';
379 font-style: normal;
380 font-weight: 400;
381 src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/fU0HAfLiPHGlZhZpY6M7dBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
382 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
383 }
384 /* latin-ext */
385 @font-face {
386 font-family: 'PT Serif';
387 font-style: normal;
388 font-weight: 400;
389 src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/CPRt--GVMETgA6YEaoGitxTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
390 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
391 }
392 /* latin */
393 @font-face {
394 font-family: 'PT Serif';
395 font-style: normal;
396 font-weight: 400;
397 src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/I-OtoJZa3TeyH6D9oli3ifesZW2xOQ-xsNqO47m55DA.woff2) format('woff2');
398 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
399 }
400 /* cyrillic-ext */
401 @font-face {
402 font-family: 'PT Serif';
403 font-style: normal;
404 font-weight: 700;
405 src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpDTOQ_MqJVwkKsUn0wKzc2I.woff2) format('woff2');
406 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
407 }
408 /* cyrillic */
409 @font-face {
410 font-family: 'PT Serif';
411 font-style: normal;
412 font-weight: 700;
413 src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpDUj_cnvWIuuBMVgbX098Mw.woff2) format('woff2');
414 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
415 }
416 /* latin-ext */
417 @font-face {
418 font-family: 'PT Serif';
419 font-style: normal;
420 font-weight: 700;
421 src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpCYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
422 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
423 }
424 /* latin */
425 @font-face {
426 font-family: 'PT Serif';
427 font-style: normal;
428 font-weight: 700;
429 src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpI4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
430 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
431 }
432 /* cyrillic-ext */
433 @font-face {
434 font-family: 'PT Serif';
435 font-style: italic;
436 font-weight: 400;
437 src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/O_WhD9hODL16N4KLHLX7xSEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
438 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
439 }
440 /* cyrillic */
441 @font-face {
442 font-family: 'PT Serif';
443 font-style: italic;
444 font-weight: 400;
445 src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/3Nwg9VzlwLXPq3fNKwVRMCEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
446 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
447 }
448 /* latin-ext */
449 @font-face {
450 font-family: 'PT Serif';
451 font-style: italic;
452 font-weight: 400;
453 src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/b31S45a_TNgaBApZhTgE6CEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
454 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
455 }
456 /* latin */
457 @font-face {
458 font-family: 'PT Serif';
459 font-style: italic;
460 font-weight: 400;
461 src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/03aPdn7fFF3H6ngCgAlQzPk_vArhqVIZ0nv9q090hN8.woff2) format('woff2');
462 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
463 }
464 /* cyrillic-ext */
465 @font-face {
466 font-family: 'PT Serif';
467 font-style: italic;
468 font-weight: 700;
469 src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9ede9INZm0R8ZMJUtfOsxrw.woff2) format('woff2');
470 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
471 }
472 /* cyrillic */
473 @font-face {
474 font-family: 'PT Serif';
475 font-style: italic;
476 font-weight: 700;
477 src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9bpHcMS0zZe4mIYvDKG2oeM.woff2) format('woff2');
478 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
479 }
480 /* latin-ext */
481 @font-face {
482 font-family: 'PT Serif';
483 font-style: italic;
484 font-weight: 700;
485 src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9RHJTnCUrjaAm2S9z52xC3Y.woff2) format('woff2');
486 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
487 }
488 /* latin */
489 @font-face {
490 font-family: 'PT Serif';
491 font-style: italic;
492 font-weight: 700;
493 src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9YWiMMZ7xLd792ULpGE4W_Y.woff2) format('woff2');
494 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
495 }
496
+0
-61
examples/cube/index.html less more
0 <!doctype html>
1 <html lang="en">
2 <head>
3 <meta charset="utf-8" />
4 <title>Cube | Explore impress.js in 3D | by Henrik Ingo @henrikingo</title>
5 <meta name="description" content="Explore impress.js in 3D" />
6 <meta name="author" content="Henrik Ingo" />
7 <link href="..\..\css\impress-common.css" rel="stylesheet" />
8 <link href="css/cube.css" rel="stylesheet" />
9 </head>
10
11 <body class="impress-not-supported">
12 <div class="fallback-message">
13 <p>Your browser <b>doesn't support the features required</b> by impress.js, so you are presented with a simplified version of this presentation.</p>
14 <p>For the best experience please use the latest <b>Chrome</b>, <b>Safari</b> or <b>Firefox</b> browser.</p>
15 </div>
16
17 <div id="impress" data-transition-duration="2000">
18
19 <div class="step" data-x="0" data-y="0" data-z="350"
20 data-goto-key-list="ArrowUp ArrowDown ArrowRight ArrowLeft o" data-goto-next-list="step-4 step-3 step-2 step-5 overview">
21 <p>Slide one</p>
22 </div>
23
24 <div class="step" data-x="350" data-y="0" data-z="0" data-rotate-y="90"
25 data-goto-key-list="ArrowUp ArrowDown ArrowRight ArrowLeft o" data-goto-next-list="step-4 step-3 step-6 step-1 overview">
26 <p>Slide two</p>
27 </div>
28
29 <div class="step" data-x="0" data-y="350" data-z="0" data-rotate-x="-90" data-rotate-z="90"
30 data-goto-key-list="ArrowUp ArrowDown ArrowRight ArrowLeft o" data-goto-next-list="step-2 step-5 step-6 step-1 overview">
31 <p>Slide three</p>
32 </div>
33
34 <div class="step" data-x="0" data-y="-350" data-z="0" data-rotate-x="90" data-rotate-z="-90"
35 data-goto-key-list="ArrowUp ArrowDown ArrowRight ArrowLeft o" data-goto-next-list="step-5 step-2 step-6 step-1 overview">
36 <p>Slide four</p>
37 </div>
38
39 <div class="step" data-x="-350" data-y="0" data-z="0" data-rotate-y="-90" data-rotate-z="-180"
40 data-goto-key-list="ArrowUp ArrowDown ArrowRight ArrowLeft o" data-goto-next-list="step-3 step-4 step-6 step-1 overview">
41 <p>Slide five</p>
42 </div>
43
44 <div class="step" data-x="0" data-y="0" data-z="-350" data-rotate-y="-180" data-rotate-z="-180"
45 data-goto-key-list="ArrowUp ArrowDown ArrowRight ArrowLeft o" data-goto-next-list="step-3 step-4 step-2 step-5 overview">
46 <p>Slide six</p>
47 </div>
48
49 <div id="overview" class="step" data-x="700" data-y="-100" data-z="1000" data-scale="1" style="pointer-events: none;">
50 </div>
51 </div>
52
53 <div id="impress-toolbar"></div>
54 <div id="impress-help"></div>
55
56 <script type="text/javascript" src="../../js/impress.js"></script>
57 <script>impress().init();</script>
58
59 </body>
60 </html>
+0
-14
examples/index.html less more
0 <html>
1 <head>
2 <title>Example presentations</title>
3 </head>
4 <body><h1>Example presentations</h1>
5 <ul><br />
6 <li><a href="2D-navigation/">2D-navigation</a></li>
7 <li><a href="3D-rotations/">3D-rotations</a></li>
8 <li><a href="classic-slides/">classic-slides</a></li>
9 <li><a href="cube/">cube</a></li>
10 <li><a href="markdown/">markdown</a></li>
11 </ul>
12 </body>
13 </html>
+0
-47
examples/markdown/css/devopsy.css less more
0 /***** Menu where this style is selected *****/
1 .devopsy .css-menu-devopsy {
2 border: solid 1px #aaaaaa;
3 }
4
5
6 /***** Presentation *****/
7
8 body.devopsy {
9 background: #000;
10 }
11
12 .devopsy .step {
13 color: #ffff00;
14 }
15
16 /***** Styles *****/
17 .devopsy h1,
18 .devopsy h2,
19 .devopsy h3 {
20 color: #ff6600;
21 }
22
23 .devopsy a {
24 color: #00ffff;
25 }
26
27 .devopsy blockquote {
28 text-shadow: 3px 3px 3px rgba(255, 100, 0, .7);
29 }
30
31 .devopsy em {
32 text-shadow: 3px 3px 3px rgba(255, 100, 0, .7);
33 }
34
35 .devopsy strong {
36 text-shadow: 3px 3px 3px rgba(255, 100, 0, .7);
37 }
38
39 .devopsy q {
40 text-shadow: 3px 3px 3px rgba(255, 100, 0, .7);
41 }
42
43 .devopsy strike {
44 opacity: 0.7;
45 }
46
+0
-41
examples/markdown/css/effects.css less more
0 /***** Menu where this style is selected *****/
1 .effects .css-menu-effects {
2 border: solid 1px #aaaaaa;
3 }
4
5 /***** Presentation *****/
6
7 body.effects {
8 font-family: 'PT Sans', sans-serif;
9 min-height: 740px;
10
11 background: #dde5dd;
12 }
13
14 .effects .step {
15 }
16
17
18 /* Color effect. */
19 .effects .past > *,
20 .effects .future > * {
21 color: inherit;
22 transition: 3s;
23 }
24 .effects .present > * {
25 color: rgb(200, 102, 102);
26 transition: 3s;
27 }
28
29 /* Fly right */
30
31 .effects .past h1,
32 .effects .future h1 {
33 transform: scale(3);
34 transition: 1s;
35 }
36 .effects .present h1 {
37 transform: scale(1);
38 transition: 1s;
39 }
40
+0
-497
examples/markdown/css/fonts.css less more
0 /* latin-ext */
1 @font-face {
2 font-family: 'Cutive Mono';
3 font-style: normal;
4 font-weight: 400;
5 src: local('Cutive Mono'), local('CutiveMono-Regular'), url(http://fonts.gstatic.com/s/cutivemono/v4/N5odNRruTwjvCM8y77PhQSYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
6 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
7 }
8 /* latin */
9 @font-face {
10 font-family: 'Cutive Mono';
11 font-style: normal;
12 font-weight: 400;
13 src: local('Cutive Mono'), local('CutiveMono-Regular'), url(http://fonts.gstatic.com/s/cutivemono/v4/N5odNRruTwjvCM8y77PhQY4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
14 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
15 }
16 /* cyrillic-ext */
17 @font-face {
18 font-family: 'Open Sans';
19 font-style: normal;
20 font-weight: 400;
21 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/K88pR3goAWT7BTt32Z01mxJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
22 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
23 }
24 /* cyrillic */
25 @font-face {
26 font-family: 'Open Sans';
27 font-style: normal;
28 font-weight: 400;
29 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/RjgO7rYTmqiVp7vzi-Q5URJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
30 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
31 }
32 /* greek-ext */
33 @font-face {
34 font-family: 'Open Sans';
35 font-style: normal;
36 font-weight: 400;
37 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/LWCjsQkB6EMdfHrEVqA1KRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
38 unicode-range: U+1F00-1FFF;
39 }
40 /* greek */
41 @font-face {
42 font-family: 'Open Sans';
43 font-style: normal;
44 font-weight: 400;
45 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/xozscpT2726on7jbcb_pAhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
46 unicode-range: U+0370-03FF;
47 }
48 /* vietnamese */
49 @font-face {
50 font-family: 'Open Sans';
51 font-style: normal;
52 font-weight: 400;
53 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/59ZRklaO5bWGqF5A9baEERJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
54 unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
55 }
56 /* latin-ext */
57 @font-face {
58 font-family: 'Open Sans';
59 font-style: normal;
60 font-weight: 400;
61 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/u-WUoqrET9fUeobQW7jkRRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
62 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
63 }
64 /* latin */
65 @font-face {
66 font-family: 'Open Sans';
67 font-style: normal;
68 font-weight: 400;
69 src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/cJZKeOuBrn4kERxqtaUH3VtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
70 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
71 }
72 /* cyrillic-ext */
73 @font-face {
74 font-family: 'Open Sans';
75 font-style: normal;
76 font-weight: 600;
77 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSq-j2U0lmluP9RWlSytm3ho.woff2) format('woff2');
78 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
79 }
80 /* cyrillic */
81 @font-face {
82 font-family: 'Open Sans';
83 font-style: normal;
84 font-weight: 600;
85 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSpX5f-9o1vgP2EXwfjgl7AY.woff2) format('woff2');
86 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
87 }
88 /* greek-ext */
89 @font-face {
90 font-family: 'Open Sans';
91 font-style: normal;
92 font-weight: 600;
93 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNShWV49_lSm1NYrwo-zkhivY.woff2) format('woff2');
94 unicode-range: U+1F00-1FFF;
95 }
96 /* greek */
97 @font-face {
98 font-family: 'Open Sans';
99 font-style: normal;
100 font-weight: 600;
101 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSqaRobkAwv3vxw3jMhVENGA.woff2) format('woff2');
102 unicode-range: U+0370-03FF;
103 }
104 /* vietnamese */
105 @font-face {
106 font-family: 'Open Sans';
107 font-style: normal;
108 font-weight: 600;
109 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSv8zf_FOSsgRmwsS7Aa9k2w.woff2) format('woff2');
110 unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
111 }
112 /* latin-ext */
113 @font-face {
114 font-family: 'Open Sans';
115 font-style: normal;
116 font-weight: 600;
117 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSj0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
118 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
119 }
120 /* latin */
121 @font-face {
122 font-family: 'Open Sans';
123 font-style: normal;
124 font-weight: 600;
125 src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url(http://fonts.gstatic.com/s/opensans/v13/MTP_ySUJH_bn48VBG8sNSugdm0LZdjqr5-oayXSOefg.woff2) format('woff2');
126 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
127 }
128 /* cyrillic-ext */
129 @font-face {
130 font-family: 'Open Sans';
131 font-style: italic;
132 font-weight: 400;
133 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBjTOQ_MqJVwkKsUn0wKzc2I.woff2) format('woff2');
134 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
135 }
136 /* cyrillic */
137 @font-face {
138 font-family: 'Open Sans';
139 font-style: italic;
140 font-weight: 400;
141 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBjUj_cnvWIuuBMVgbX098Mw.woff2) format('woff2');
142 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
143 }
144 /* greek-ext */
145 @font-face {
146 font-family: 'Open Sans';
147 font-style: italic;
148 font-weight: 400;
149 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBkbcKLIaa1LC45dFaAfauRA.woff2) format('woff2');
150 unicode-range: U+1F00-1FFF;
151 }
152 /* greek */
153 @font-face {
154 font-family: 'Open Sans';
155 font-style: italic;
156 font-weight: 400;
157 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBmo_sUJ8uO4YLWRInS22T3Y.woff2) format('woff2');
158 unicode-range: U+0370-03FF;
159 }
160 /* vietnamese */
161 @font-face {
162 font-family: 'Open Sans';
163 font-style: italic;
164 font-weight: 400;
165 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBr6up8jxqWt8HVA3mDhkV_0.woff2) format('woff2');
166 unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
167 }
168 /* latin-ext */
169 @font-face {
170 font-family: 'Open Sans';
171 font-style: italic;
172 font-weight: 400;
173 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBiYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
174 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
175 }
176 /* latin */
177 @font-face {
178 font-family: 'Open Sans';
179 font-style: italic;
180 font-weight: 400;
181 src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBo4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
182 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
183 }
184 /* cyrillic-ext */
185 @font-face {
186 font-family: 'Open Sans';
187 font-style: italic;
188 font-weight: 600;
189 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxmgpAmOCqD37_tyH_8Ri5MM.woff2) format('woff2');
190 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
191 }
192 /* cyrillic */
193 @font-face {
194 font-family: 'Open Sans';
195 font-style: italic;
196 font-weight: 600;
197 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxsPNMTLbnS9uQzHQlYieHUU.woff2) format('woff2');
198 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
199 }
200 /* greek-ext */
201 @font-face {
202 font-family: 'Open Sans';
203 font-style: italic;
204 font-weight: 600;
205 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxgyhumQnPMBCoGYhRaNxyyY.woff2) format('woff2');
206 unicode-range: U+1F00-1FFF;
207 }
208 /* greek */
209 @font-face {
210 font-family: 'Open Sans';
211 font-style: italic;
212 font-weight: 600;
213 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxhUVAXEdVvYDDqrz3aeR0Yc.woff2) format('woff2');
214 unicode-range: U+0370-03FF;
215 }
216 /* vietnamese */
217 @font-face {
218 font-family: 'Open Sans';
219 font-style: italic;
220 font-weight: 600;
221 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxlf4y_3s5bcYyyLIFUSWYUU.woff2) format('woff2');
222 unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
223 }
224 /* latin-ext */
225 @font-face {
226 font-family: 'Open Sans';
227 font-style: italic;
228 font-weight: 600;
229 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxnywqdtBbUHn3VPgzuFrCy8.woff2) format('woff2');
230 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
231 }
232 /* latin */
233 @font-face {
234 font-family: 'Open Sans';
235 font-style: italic;
236 font-weight: 600;
237 src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxl2umOyRU7PgRiv8DXcgJjk.woff2) format('woff2');
238 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
239 }
240 /* cyrillic-ext */
241 @font-face {
242 font-family: 'PT Sans';
243 font-style: normal;
244 font-weight: 400;
245 src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/JX7MlXqjSJNjQvI4heMMGvY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
246 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
247 }
248 /* cyrillic */
249 @font-face {
250 font-family: 'PT Sans';
251 font-style: normal;
252 font-weight: 400;
253 src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/vtwNVMP8y9C17vLvIBNZI_Y6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
254 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
255 }
256 /* latin-ext */
257 @font-face {
258 font-family: 'PT Sans';
259 font-style: normal;
260 font-weight: 400;
261 src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/9kaD4V2pNPMMeUVBHayd7vY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
262 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
263 }
264 /* latin */
265 @font-face {
266 font-family: 'PT Sans';
267 font-style: normal;
268 font-weight: 400;
269 src: local('PT Sans'), local('PTSans-Regular'), url(http://fonts.gstatic.com/s/ptsans/v8/ATKpv8nLYAKUYexo8iqqrg.woff2) format('woff2');
270 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
271 }
272 /* cyrillic-ext */
273 @font-face {
274 font-family: 'PT Sans';
275 font-style: normal;
276 font-weight: 700;
277 src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/kTYfCWJhlldPf5LnG4ZnHCEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
278 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
279 }
280 /* cyrillic */
281 @font-face {
282 font-family: 'PT Sans';
283 font-style: normal;
284 font-weight: 700;
285 src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/g46X4VH_KHOWAAa-HpnGPiEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
286 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
287 }
288 /* latin-ext */
289 @font-face {
290 font-family: 'PT Sans';
291 font-style: normal;
292 font-weight: 700;
293 src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/hpORcvLZtemlH8gI-1S-7iEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
294 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
295 }
296 /* latin */
297 @font-face {
298 font-family: 'PT Sans';
299 font-style: normal;
300 font-weight: 700;
301 src: local('PT Sans Bold'), local('PTSans-Bold'), url(http://fonts.gstatic.com/s/ptsans/v8/0XxGQsSc1g4rdRdjJKZrNPk_vArhqVIZ0nv9q090hN8.woff2) format('woff2');
302 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
303 }
304 /* cyrillic-ext */
305 @font-face {
306 font-family: 'PT Sans';
307 font-style: italic;
308 font-weight: 400;
309 src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/GpWpM_6S4VQLPNAQ3iWvVRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
310 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
311 }
312 /* cyrillic */
313 @font-face {
314 font-family: 'PT Sans';
315 font-style: italic;
316 font-weight: 400;
317 src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/7dSh6BcuqDLzS2qAASIeuhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
318 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
319 }
320 /* latin-ext */
321 @font-face {
322 font-family: 'PT Sans';
323 font-style: italic;
324 font-weight: 400;
325 src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/DVKQJxMmC9WF_oplMzlQqRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
326 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
327 }
328 /* latin */
329 @font-face {
330 font-family: 'PT Sans';
331 font-style: italic;
332 font-weight: 400;
333 src: local('PT Sans Italic'), local('PTSans-Italic'), url(http://fonts.gstatic.com/s/ptsans/v8/PIPMHY90P7jtyjpXuZ2cLFtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
334 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
335 }
336 /* cyrillic-ext */
337 @font-face {
338 font-family: 'PT Sans';
339 font-style: italic;
340 font-weight: 700;
341 src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkK-j2U0lmluP9RWlSytm3ho.woff2) format('woff2');
342 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
343 }
344 /* cyrillic */
345 @font-face {
346 font-family: 'PT Sans';
347 font-style: italic;
348 font-weight: 700;
349 src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkJX5f-9o1vgP2EXwfjgl7AY.woff2) format('woff2');
350 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
351 }
352 /* latin-ext */
353 @font-face {
354 font-family: 'PT Sans';
355 font-style: italic;
356 font-weight: 700;
357 src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkD0LW-43aMEzIO6XUTLjad8.woff2) format('woff2');
358 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
359 }
360 /* latin */
361 @font-face {
362 font-family: 'PT Sans';
363 font-style: italic;
364 font-weight: 700;
365 src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'), url(http://fonts.gstatic.com/s/ptsans/v8/lILlYDvubYemzYzN7GbLkOgdm0LZdjqr5-oayXSOefg.woff2) format('woff2');
366 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
367 }
368 /* cyrillic-ext */
369 @font-face {
370 font-family: 'PT Serif';
371 font-style: normal;
372 font-weight: 400;
373 src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/5hX15RUpPERmeybVlLQEWBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
374 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
375 }
376 /* cyrillic */
377 @font-face {
378 font-family: 'PT Serif';
379 font-style: normal;
380 font-weight: 400;
381 src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/fU0HAfLiPHGlZhZpY6M7dBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
382 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
383 }
384 /* latin-ext */
385 @font-face {
386 font-family: 'PT Serif';
387 font-style: normal;
388 font-weight: 400;
389 src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/CPRt--GVMETgA6YEaoGitxTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
390 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
391 }
392 /* latin */
393 @font-face {
394 font-family: 'PT Serif';
395 font-style: normal;
396 font-weight: 400;
397 src: local('PT Serif'), local('PTSerif-Regular'), url(http://fonts.gstatic.com/s/ptserif/v8/I-OtoJZa3TeyH6D9oli3ifesZW2xOQ-xsNqO47m55DA.woff2) format('woff2');
398 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
399 }
400 /* cyrillic-ext */
401 @font-face {
402 font-family: 'PT Serif';
403 font-style: normal;
404 font-weight: 700;
405 src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpDTOQ_MqJVwkKsUn0wKzc2I.woff2) format('woff2');
406 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
407 }
408 /* cyrillic */
409 @font-face {
410 font-family: 'PT Serif';
411 font-style: normal;
412 font-weight: 700;
413 src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpDUj_cnvWIuuBMVgbX098Mw.woff2) format('woff2');
414 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
415 }
416 /* latin-ext */
417 @font-face {
418 font-family: 'PT Serif';
419 font-style: normal;
420 font-weight: 700;
421 src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpCYE0-AqJ3nfInTTiDXDjU4.woff2) format('woff2');
422 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
423 }
424 /* latin */
425 @font-face {
426 font-family: 'PT Serif';
427 font-style: normal;
428 font-weight: 700;
429 src: local('PT Serif Bold'), local('PTSerif-Bold'), url(http://fonts.gstatic.com/s/ptserif/v8/QABk9IxT-LFTJ_dQzv7xpI4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');
430 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
431 }
432 /* cyrillic-ext */
433 @font-face {
434 font-family: 'PT Serif';
435 font-style: italic;
436 font-weight: 400;
437 src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/O_WhD9hODL16N4KLHLX7xSEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
438 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
439 }
440 /* cyrillic */
441 @font-face {
442 font-family: 'PT Serif';
443 font-style: italic;
444 font-weight: 400;
445 src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/3Nwg9VzlwLXPq3fNKwVRMCEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
446 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
447 }
448 /* latin-ext */
449 @font-face {
450 font-family: 'PT Serif';
451 font-style: italic;
452 font-weight: 400;
453 src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/b31S45a_TNgaBApZhTgE6CEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
454 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
455 }
456 /* latin */
457 @font-face {
458 font-family: 'PT Serif';
459 font-style: italic;
460 font-weight: 400;
461 src: local('PT Serif Italic'), local('PTSerif-Italic'), url(http://fonts.gstatic.com/s/ptserif/v8/03aPdn7fFF3H6ngCgAlQzPk_vArhqVIZ0nv9q090hN8.woff2) format('woff2');
462 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
463 }
464 /* cyrillic-ext */
465 @font-face {
466 font-family: 'PT Serif';
467 font-style: italic;
468 font-weight: 700;
469 src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9ede9INZm0R8ZMJUtfOsxrw.woff2) format('woff2');
470 unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
471 }
472 /* cyrillic */
473 @font-face {
474 font-family: 'PT Serif';
475 font-style: italic;
476 font-weight: 700;
477 src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9bpHcMS0zZe4mIYvDKG2oeM.woff2) format('woff2');
478 unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
479 }
480 /* latin-ext */
481 @font-face {
482 font-family: 'PT Serif';
483 font-style: italic;
484 font-weight: 700;
485 src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9RHJTnCUrjaAm2S9z52xC3Y.woff2) format('woff2');
486 unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
487 }
488 /* latin */
489 @font-face {
490 font-family: 'PT Serif';
491 font-style: italic;
492 font-weight: 700;
493 src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url(http://fonts.gstatic.com/s/ptserif/v8/Foydq9xJp--nfYIx2TBz9YWiMMZ7xLd792ULpGE4W_Y.woff2) format('woff2');
494 unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
495 }
496
+0
-182
examples/markdown/css/markdown-slides.css less more
0 /***** Fonts *****/
1
2 /* @import url(http://fonts.googleapis.com/css?family=Open+Sans:regular,semibold,italic,italicsemibold|PT+Sans:400,700,400italic,700italic|PT+Serif:400,700,400italic,700italic|Cutive+Mono); */
3 @import url(fonts.css);
4
5
6 /***** Fallback message *****/
7
8 .fallback-message {
9 font-family: sans-serif;
10 line-height: 1.3;
11
12 width: 780px;
13 padding: 10px 10px 0;
14 margin: 20px auto;
15
16 border: 1px solid #E4C652;
17 border-radius: 10px;
18 background: #EEDC94;
19 }
20
21 .fallback-message p {
22 margin-bottom: 10px;
23 }
24
25 .impress-supported .fallback-message {
26 display: none;
27 }
28
29 /***** Per slide hacks *****/
30
31 div#step-4 > p:last-child {
32 margin-top: 150px;
33 font-size: 0.5em;
34 text-align: right;
35 }
36
37 div#tilted-slide {
38 text-shadow: 20px 20px 10px rgba(0, 0, 0, .4);
39 }
40 div#tilted-slide h1 {
41 margin-top: 200px;
42 }
43
44 /***** Menu where this style is selected *****/
45 .css-menu-bw {
46 border: solid 1px rgb(102, 102, 102);
47 }
48
49 .effects .css-menu-bw,
50 .devopsy .css-menu-bw {
51 border: none;
52 }
53
54 /***** Presentation *****/
55
56 body {
57 font-family: 'PT Sans', sans-serif;
58 min-height: 740px;
59
60 background: #fff;
61 }
62
63 .step {
64 position: relative;
65 width: 900px;
66 height: 700px;
67 padding: 40px 60px;
68 margin: 20px auto;
69
70 box-sizing: border-box;
71
72 color: rgb(102, 102, 102);
73 text-shadow: 0 2px 2px rgba(0, 0, 0, .1);
74 font-family: 'Open Sans', Arial, sans-serif;
75 font-size: 30px;
76 letter-spacing: -1px;
77 line-height: 1.5;
78 }
79
80 /*
81 Make inactive steps a little bit transparent.
82 */
83 .impress-enabled .step {
84 margin: 0;
85 opacity: 0.3;
86 transition: opacity 1s;
87 }
88 .impress-enabled .step.active { opacity: 1 }
89
90 h1,
91 h2,
92 h3 {
93 margin-bottom: 0.5em;
94 margin-top: 0.5em;
95 text-align: center;
96 }
97
98 p {
99 margin: 0.7em;
100 }
101
102 li {
103 margin: 0.2em;
104 }
105
106 /* Highlight.js used for coloring pre > code blocks. */
107 pre > code {
108 font-size: 14px;
109 text-shadow: 0 0 0 rgba(0, 0, 0, 0);
110 }
111
112 /* Inline code, no Highlight.js */
113 code {
114 font-family: "Cutive mono","Courier New", monospace;
115 }
116
117
118 a {
119 color: inherit;
120 text-decoration: none;
121 padding: 0 0.1em;
122 text-shadow: -1px 1px 2px rgba(100,100,100,0.9);
123 border-radius: 0.2em;
124
125 transition: 0.5s;
126 }
127 a:hover,
128 a:focus {
129 text-shadow: -1px 1px 2px rgba(100,100,100,0.5);
130 }
131
132 blockquote {
133 font-family: 'PT Serif';
134 font-style: italic;
135 font-weight: 400;
136 }
137
138 em {
139 text-shadow: 0 2px 2px rgba(0, 0, 0, .3);
140 }
141
142 strong {
143 text-shadow: -1px 1px 2px rgba(100,100,100,0.5);
144 }
145
146 q {
147 font-family: 'PT Serif';
148 font-style: italic;
149 font-weight: 400;
150 text-shadow: 0 2px 2px rgba(0, 0, 0, .3);
151 }
152
153 strike {
154 opacity: 0.7;
155 }
156
157 img {
158 width: 300px;
159 float: right;
160 margin-left: 40px;
161 margin-right: 0px;
162 margin-top: 20px;
163 margin-bottom: 20px;
164 }
165
166
167 /*
168 Specific styles for: .title steps
169 */
170
171 .title h1,
172 .title h2,
173 .title h3 {
174 position: absolute;
175 left: 45px; /* slide width is 900px, so this is like a 5% margin on both sides */
176 width: 90%;
177 text-align: center;
178 }
179 .title h1 { top: 50px; }
180 .title h2 { top: 400px; }
181 .title h3 { top: 500px; }
examples/markdown/images/3476636111_c551295ca4_b.jpg less more
Binary diff not shown
+0
-194
examples/markdown/index.html less more
0 <!doctype html>
1
2 <!--
3 A presentation done entirely in Markdown, as found in extras/markdown/.
4
5 By: @henrikingo
6 -->
7
8 <html lang="en">
9 <head>
10 <meta charset="utf-8" />
11 <title>Markdown in impress.js | by Henrik Ingo @henrikingo</title>
12
13 <meta name="description" content="Authoring impress.js presentations in Markdown" />
14 <meta name="author" content="Henrik Ingo" />
15 <link rel="stylesheet" href="../../extras/highlight/styles/github.css">
16
17 <!-- Common styles for example presentations -->
18 <link href="..\..\css\impress-common.css" rel="stylesheet" />
19 <!--
20 Styles specific for this example presentation.
21 -->
22 <link href="css/markdown-slides.css" rel="stylesheet" />
23 <link href="css/devopsy.css" rel="stylesheet" />
24 <link href="css/effects.css" rel="stylesheet" />
25
26 </head>
27
28 <body class="impress-not-supported">
29 <div class="fallback-message">
30 <p>Your browser <b>doesn't support the features required</b> by impress.js, so you are presented with a simplified version of this presentation.</p>
31 <p>For the best experience please use the latest <b>Chrome</b>, <b>Safari</b> or <b>Firefox</b> browser.</p>
32 </div>
33
34 <div id="impress" data-transition-duration="1000">
35
36 <div id="markdown" class="step slide markdown" data-rel-x="0" data-rel-y="900">
37 # Markdown
38 ## to author Impress.js presentations
39
40 * This presentation was written entirely in Markdown
41 * Added by popular request
42 * Easy way to make quick, simple yet aesthetic, presentations
43 * Authoring without all the clutter of HTML
44
45 -----
46 # Markdown.js
47
48 * Provided by [Markdown.js](https://github.com/evilstreak/markdown-js) in [extras/](https://github.com/impress/impress.js/tree/master/extras)
49 * Jot down your bullet points in *Markdown* & have it automatically converted to HTML
50 * Note: The Markdown is converted into a presentation client side, in the browser. This is unlike
51 existing tools like [Hovercraft](https://github.com/regebro/hovercraft) and
52 markdown-impress where you generate a new
53 html file on the command line.
54 * This combines the ease of typing Markdown with the full power of impress.js HTML5+CSS3+JavaScript!
55
56 -----
57 # Styles
58
59 * You can use *italics* & **bold**
60 * ...and `code`
61
62
63 -----
64 # A blockquote &amp; image
65
66 ![Mother Teresa holding a newborn baby](images/3476636111_c551295ca4_b.jpg)
67
68 > Spread love everywhere you go.
69 > Let no one ever come to you without leaving happier.
70
71 *-- Mother Teresa*
72
73 Image credit: [Peta de Aztlan](https://www.flickr.com/photos/peta-de-aztlan/3476636111/)@Flickr. CC-BY 2.0
74
75 -----
76 # Code
77
78 When also using [Highlight.js](https://highlightjs.org/) integration, code blocks in Markdown
79 are converted to HTML first, then colored by Highlight.js:
80
81 // `init` API function that initializes (and runs) the presentation.
82 var init = function () {
83 if (initialized) { return; }
84 execPreInitPlugins();
85
86 // First we set up the viewport for mobile devices.
87 // For some reason iPad goes nuts when it is not done properly.
88 var meta = $("meta[name='viewport']") || document.createElement("meta");
89 meta.content = "width=device-width, minimum-scale=1, maximum-scale=1, user-scalable=no";
90 if (meta.parentNode !== document.head) {
91 meta.name = 'viewport';
92 document.head.appendChild(meta);
93 }
94
95 -----
96
97 # Slide separator
98
99 * 5 dashes are used to separate slides:
100
101 `-----`
102
103 * Attributes from `div.step` element are simply repeated.
104 * Better use relative positioning, lest your slides will all be on top of each other.
105 * If you need to set some attributes, just use HTML and create a div element, then write
106 Markdown inside each div.
107 </div>
108
109 <div id="title-slide" class="step slide title markdown" data-x="2000" data-y="5000">
110 # Title slide
111 ## This slide has different CSS class than the previous ones
112 </div>
113
114
115 <div id="tilted-slide" class="step slide markdown" data-rotate="-85" data-x="2000" data-y="2000" data-z="1000" data-scale="4">
116 # Simplicity of Markdown & Full power of Impress.js
117
118 * This slide sets its own `rotate`, `x`, `y`, and even `z` coordinates
119 * Note that the Mother Teresa slide earlier was pimped with some custom CSS, all the while
120 the content was written in simple Markdown.
121 </div>
122
123 <div class="step slide title markdown" data-rotate="-85" data-x="4000" data-y="2000" data-markdown-dialect="Maruku">
124 This is an example of a slide with a specific Markdown dialect.
125 ===============================================================
126 </div>
127
128 <script type="text/javascript">
129 var enableBwCss = function(){
130 disableDevopsCss();
131 disableEffectsCss();
132 };
133
134 var enableDevopsCss = function(){
135 document.body.classList.add("devopsy");
136 disableEffectsCss();
137 };
138
139 var disableDevopsCss = function(){
140 document.body.classList.remove("devopsy");
141 };
142
143 var enableEffectsCss = function(){
144 document.body.classList.add("effects");
145 disableDevopsCss();
146 };
147
148 var disableEffectsCss = function(){
149 document.body.classList.remove("effects");
150 };
151 </script>
152
153
154 <div id="js-slide" class="step slide" data-rotate="0" data-x="4000" data-y="5000">
155 <h1>CSS &amp; JavaScript magic</h1>
156
157 <p>Just to emphasize my point, this last slide allows you to use a JavaScript powered menu to
158 toggle the CSS style:</p>
159
160 <p><a href="#" onclick="enableBwCss();" class="css-menu-bw">Black &amp; white</a>,
161 <a href="#" onclick="enableDevopsCss();" class="css-menu-devopsy">Devopsy</a>,
162 <a href="#" onclick="enableEffectsCss();" class="css-menu-effects">Effects overload</a></p>
163
164 <p>Simplicity of Markdown married with full power of Impress.js!</p>
165
166 </div>
167
168
169 <div id="overview" class="step" data-x="5000" data-y="4000" data-scale="10" style="pointer-events: none;" data-rotate="5">
170 </div>
171
172 </div>
173
174 <div id="impress-toolbar"></div>
175 <div id="impress-help"></div>
176
177
178 <!-- Extra modules
179 Load highlight.js, mermaid.js and markdown.js from extras.
180 See also src/plugins/extras/extras.js -->
181 <script type="text/javascript" src="../../extras/highlight/highlight.pack.js"></script>
182 <script type="text/javascript" src="../../extras/mermaid/mermaid.min.js"></script>
183 <script type="text/javascript" src="../../extras/markdown/markdown.js"></script>
184
185 <!--
186 To make all described above really work, you need to include impress.js in the page.
187 You also need to call a `impress().init()` function to initialize impress.js presentation.
188 And you should do it in the end of your document.
189 -->
190 <script type="text/javascript" src="../../js/impress.js"></script>
191 <script>impress().init();</script>
192 </body>
193 </html>
457457
458458 Are you still reading this?
459459
460 For real?
461
462 I'm impressed! Feel free to let me know that you got that far (I'm @bartaz on Twitter), 'cause I'd like
463 to congratulate you personally :)
464
465 But you don't have to do it now. Take my advice and take some time off. Make yourself a cup of coffee, tea,
466 or anything you like to drink. And raise a glass for me ;)
460 For real? I'm impressed!
461
462 But now, take my advice and take some time off. Make yourself a cup of coffee, tea,
463 or anything you like to drink.
467464
468465 Cheers!
469466
777777 // scrolling to element in hash.
778778 //
779779 // And it has to be set after animation finishes, because in Chrome it
780 // makes transtion laggy.
780 // makes transition laggy.
781781 // BUG: http://code.google.com/p/chromium/issues/detail?id=62820
782782 lib.gc.addEventListener( root, "impress:stepenter", function( event ) {
783783 window.location.hash = lastHash = "#/" + event.target.id;
12031203
12041204 // Get id from url # by removing `#` or `#/` from the beginning,
12051205 // so both "fallback" `#slide-id` and "enhanced" `#/slide-id` will work
1206 return byId( window.location.hash.replace( /^#\/?/, "" ) );
1206 var encoded = window.location.hash.replace( /^#\/?/, "" );
1207 return byId( decodeURIComponent( encoded ) );
12071208 };
12081209
12091210 // `getUrlParamValue` return a given URL parameter value if it exists
15941595 i--;
15951596 while ( i >= 0 ) {
15961597 var newElement = element.cloneNode( false );
1597 newElement.innerHTML = markdown.toHTML( slides[ i ] );
1598 newElement.innerHTML = markdown.toHTML( slides[ i ], dialect );
15981599 element.parentNode.insertBefore( newElement, element );
15991600 element = newElement;
16001601 i--;
20772078 'loading': 'initalisiere',
20782079 'ready': 'Bereit',
20792080 'moving': 'in Bewegung',
2081 'useAMPM': false
2082 };
2083 break;
2084 case 'zh-CN':
2085 case 'zh-cn':
2086 lang = {
2087 'noNotes': '<div class="noNotes">当前帧没有备注</div>',
2088 'restart': '重新开始',
2089 'clickToOpen': '点击以打开演讲者控制界面',
2090 'prev': '上一帧',
2091 'next': '下一帧',
2092 'loading': '加载中',
2093 'ready': '就绪',
2094 'moving': '移动中',
20802095 'useAMPM': false
20812096 };
20822097 break;
22102225 var preSrc = baseURL + '#' + nextStep().id;
22112226 var slideView = consoleWindow.document.getElementById( 'slideView' );
22122227
2213 // Setting them when they are already set causes glithes in Firefox, so check first:
2228 // Setting when already set causes glitches in Firefox, so check first:
22142229 if ( slideView.src !== slideSrc ) {
22152230 slideView.src = slideSrc;
22162231 }
22472262 var preSrc = baseURL + '#' + nextStep().id;
22482263 var slideView = consoleWindow.document.getElementById( 'slideView' );
22492264
2250 // Setting them when they are already set causes glithes in Firefox, so check first:
2265 // Setting when already set causes glitches in Firefox, so check first:
22512266 if ( slideView.src !== slideSrc ) {
22522267 slideView.src = slideSrc;
22532268 }
40084023
40094024 var showSubstepIfAny = function( step ) {
40104025 var substeps = step.querySelectorAll( ".substep" );
4011 var visible = step.querySelectorAll( ".substep-visible" );
40124026 if ( substeps.length > 0 ) {
4013 return showSubstep( substeps, visible );
4014 }
4027 var sorted = sortSubsteps( substeps );
4028 var visible = step.querySelectorAll( ".substep-visible" );
4029 return showSubstep( sorted, visible );
4030 }
4031 };
4032
4033 var sortSubsteps = function( substepNodeList ) {
4034 var substeps = Array.from( substepNodeList );
4035 var sorted = substeps
4036 .filter( el => el.dataset.substepOrder )
4037 .sort( ( a, b ) => {
4038 var orderA = a.dataset.substepOrder;
4039 var orderB = b.dataset.substepOrder;
4040 return parseInt( orderA ) - parseInt( orderB );
4041 } )
4042 .concat( substeps.filter( el => {
4043 return el.dataset.substepOrder === undefined;
4044 } ) );
4045 return sorted;
40154046 };
40164047
40174048 var showSubstep = function( substeps, visible ) {
40294060 var hideSubstepIfAny = function( step ) {
40304061 var substeps = step.querySelectorAll( ".substep" );
40314062 var visible = step.querySelectorAll( ".substep-visible" );
4063 var sorted = sortSubsteps( visible );
40324064 if ( substeps.length > 0 ) {
4033 return hideSubstep( visible );
4065 return hideSubstep( sorted );
40344066 }
40354067 };
40364068
+0
-3251
package-lock.json less more
0 {
1 "name": "impress.js",
2 "version": "1.0.0",
3 "lockfileVersion": 1,
4 "requires": true,
5 "dependencies": {
6 "@babel/code-frame": {
7 "version": "7.8.3",
8 "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz",
9 "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==",
10 "dev": true,
11 "requires": {
12 "@babel/highlight": "^7.8.3"
13 }
14 },
15 "@babel/helper-validator-identifier": {
16 "version": "7.9.0",
17 "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.0.tgz",
18 "integrity": "sha512-6G8bQKjOh+of4PV/ThDm/rRqlU7+IGoJuofpagU5GlEl29Vv0RGqqt86ZGRV8ZuSOY3o+8yXl5y782SMcG7SHw==",
19 "dev": true
20 },
21 "@babel/highlight": {
22 "version": "7.9.0",
23 "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz",
24 "integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==",
25 "dev": true,
26 "requires": {
27 "@babel/helper-validator-identifier": "^7.9.0",
28 "chalk": "^2.0.0",
29 "js-tokens": "^4.0.0"
30 }
31 },
32 "@types/color-name": {
33 "version": "1.1.1",
34 "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz",
35 "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==",
36 "dev": true
37 },
38 "@types/mime-types": {
39 "version": "2.1.0",
40 "resolved": "https://registry.npmjs.org/@types/mime-types/-/mime-types-2.1.0.tgz",
41 "integrity": "sha1-nKUs2jY/aZxpRmwqbM2q2RPqenM=",
42 "dev": true
43 },
44 "JSV": {
45 "version": "4.0.2",
46 "resolved": "https://registry.npmjs.org/JSV/-/JSV-4.0.2.tgz",
47 "integrity": "sha1-0Hf2glVx+CEy+d/67Vh7QCn+/1c=",
48 "dev": true
49 },
50 "accepts": {
51 "version": "1.3.7",
52 "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz",
53 "integrity": "sha1-UxvHJlF6OytB+FACHGzBXqq1B80=",
54 "dev": true,
55 "requires": {
56 "mime-types": "~2.1.24",
57 "negotiator": "0.6.2"
58 }
59 },
60 "acorn": {
61 "version": "7.1.1",
62 "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.1.tgz",
63 "integrity": "sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==",
64 "dev": true
65 },
66 "acorn-jsx": {
67 "version": "5.2.0",
68 "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz",
69 "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==",
70 "dev": true
71 },
72 "after": {
73 "version": "0.8.2",
74 "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz",
75 "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=",
76 "dev": true
77 },
78 "agent-base": {
79 "version": "5.1.1",
80 "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-5.1.1.tgz",
81 "integrity": "sha512-TMeqbNl2fMW0nMjTEPOwe3J/PRFP4vqeoNuQMG0HlMrtm5QxKqdvAkZ1pRBQ/ulIyDD5Yq0nJ7YbdD8ey0TO3g==",
82 "dev": true
83 },
84 "ajv": {
85 "version": "6.12.0",
86 "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz",
87 "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==",
88 "dev": true,
89 "requires": {
90 "fast-deep-equal": "^3.1.1",
91 "fast-json-stable-stringify": "^2.0.0",
92 "json-schema-traverse": "^0.4.1",
93 "uri-js": "^4.2.2"
94 }
95 },
96 "ansi-escapes": {
97 "version": "4.3.1",
98 "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz",
99 "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==",
100 "dev": true,
101 "requires": {
102 "type-fest": "^0.11.0"
103 },
104 "dependencies": {
105 "type-fest": {
106 "version": "0.11.0",
107 "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz",
108 "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==",
109 "dev": true
110 }
111 }
112 },
113 "ansi-regex": {
114 "version": "5.0.0",
115 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
116 "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==",
117 "dev": true
118 },
119 "ansi-styles": {
120 "version": "3.2.1",
121 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
122 "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
123 "dev": true,
124 "requires": {
125 "color-convert": "^1.9.0"
126 }
127 },
128 "anymatch": {
129 "version": "3.1.1",
130 "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz",
131 "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==",
132 "dev": true,
133 "requires": {
134 "normalize-path": "^3.0.0",
135 "picomatch": "^2.0.4"
136 }
137 },
138 "argparse": {
139 "version": "1.0.10",
140 "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
141 "integrity": "sha1-vNZ5HqWuCXJeF+WtmIE0zUCz2RE=",
142 "dev": true,
143 "requires": {
144 "sprintf-js": "~1.0.2"
145 }
146 },
147 "arraybuffer.slice": {
148 "version": "0.0.7",
149 "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz",
150 "integrity": "sha1-O7xCdd1YTMGxCAm4nU6LY6aednU=",
151 "dev": true
152 },
153 "astral-regex": {
154 "version": "1.0.0",
155 "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz",
156 "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==",
157 "dev": true
158 },
159 "async": {
160 "version": "2.6.3",
161 "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz",
162 "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==",
163 "dev": true,
164 "requires": {
165 "lodash": "^4.17.14"
166 },
167 "dependencies": {
168 "lodash": {
169 "version": "4.17.15",
170 "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz",
171 "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==",
172 "dev": true
173 }
174 }
175 },
176 "async-limiter": {
177 "version": "1.0.1",
178 "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz",
179 "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==",
180 "dev": true
181 },
182 "babel-runtime": {
183 "version": "6.26.0",
184 "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
185 "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
186 "dev": true,
187 "requires": {
188 "core-js": "^2.4.0",
189 "regenerator-runtime": "^0.11.0"
190 }
191 },
192 "babylon": {
193 "version": "6.18.0",
194 "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz",
195 "integrity": "sha1-ry87iPpvXB5MY00aD46sT1WzleM=",
196 "dev": true
197 },
198 "backo2": {
199 "version": "1.0.2",
200 "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz",
201 "integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc=",
202 "dev": true
203 },
204 "balanced-match": {
205 "version": "1.0.0",
206 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
207 "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
208 "dev": true
209 },
210 "base64-arraybuffer": {
211 "version": "0.1.5",
212 "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz",
213 "integrity": "sha1-c5JncZI7Whl0etZmqlzUv5xunOg=",
214 "dev": true
215 },
216 "base64id": {
217 "version": "1.0.0",
218 "resolved": "https://registry.npmjs.org/base64id/-/base64id-1.0.0.tgz",
219 "integrity": "sha1-R2iMuZu2gE8OBtPnY7HDLlfY5rY=",
220 "dev": true
221 },
222 "better-assert": {
223 "version": "1.0.2",
224 "resolved": "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz",
225 "integrity": "sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI=",
226 "dev": true,
227 "requires": {
228 "callsite": "1.0.0"
229 }
230 },
231 "binary-extensions": {
232 "version": "2.0.0",
233 "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.0.0.tgz",
234 "integrity": "sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow==",
235 "dev": true
236 },
237 "blob": {
238 "version": "0.0.5",
239 "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz",
240 "integrity": "sha1-1oDu7yX4zZGtUz9bAe7UjmTK9oM=",
241 "dev": true
242 },
243 "bluebird": {
244 "version": "3.7.2",
245 "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz",
246 "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==",
247 "dev": true
248 },
249 "body-parser": {
250 "version": "1.19.0",
251 "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz",
252 "integrity": "sha1-lrJwnlfJxOCab9Zqj9l5hE9p8Io=",
253 "dev": true,
254 "requires": {
255 "bytes": "3.1.0",
256 "content-type": "~1.0.4",
257 "debug": "2.6.9",
258 "depd": "~1.1.2",
259 "http-errors": "1.7.2",
260 "iconv-lite": "0.4.24",
261 "on-finished": "~2.3.0",
262 "qs": "6.7.0",
263 "raw-body": "2.4.0",
264 "type-is": "~1.6.17"
265 },
266 "dependencies": {
267 "debug": {
268 "version": "2.6.9",
269 "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
270 "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
271 "dev": true,
272 "requires": {
273 "ms": "2.0.0"
274 }
275 },
276 "ms": {
277 "version": "2.0.0",
278 "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
279 "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
280 "dev": true
281 }
282 }
283 },
284 "brace-expansion": {
285 "version": "1.1.11",
286 "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
287 "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
288 "dev": true,
289 "requires": {
290 "balanced-match": "^1.0.0",
291 "concat-map": "0.0.1"
292 }
293 },
294 "braces": {
295 "version": "3.0.2",
296 "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
297 "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
298 "dev": true,
299 "requires": {
300 "fill-range": "^7.0.1"
301 }
302 },
303 "buffer-alloc": {
304 "version": "1.2.0",
305 "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz",
306 "integrity": "sha1-iQ3ZDZI6hz4I4Q5f1RpX5bfM4Ow=",
307 "dev": true,
308 "requires": {
309 "buffer-alloc-unsafe": "^1.1.0",
310 "buffer-fill": "^1.0.0"
311 }
312 },
313 "buffer-alloc-unsafe": {
314 "version": "1.1.0",
315 "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz",
316 "integrity": "sha1-vX3CauKXLQ7aJTvgYdupkjScGfA=",
317 "dev": true
318 },
319 "buffer-crc32": {
320 "version": "0.2.13",
321 "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
322 "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=",
323 "dev": true
324 },
325 "buffer-fill": {
326 "version": "1.0.0",
327 "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz",
328 "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=",
329 "dev": true
330 },
331 "buffer-from": {
332 "version": "1.1.1",
333 "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
334 "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==",
335 "dev": true
336 },
337 "bytes": {
338 "version": "3.1.0",
339 "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz",
340 "integrity": "sha1-9s95M6Ng4FiPqf3oVlHNx/gF0fY=",
341 "dev": true
342 },
343 "callsite": {
344 "version": "1.0.0",
345 "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz",
346 "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=",
347 "dev": true
348 },
349 "callsites": {
350 "version": "3.1.0",
351 "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
352 "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
353 "dev": true
354 },
355 "chalk": {
356 "version": "2.4.2",
357 "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
358 "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
359 "dev": true,
360 "requires": {
361 "ansi-styles": "^3.2.1",
362 "escape-string-regexp": "^1.0.5",
363 "supports-color": "^5.3.0"
364 }
365 },
366 "chardet": {
367 "version": "0.7.0",
368 "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz",
369 "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==",
370 "dev": true
371 },
372 "chokidar": {
373 "version": "3.3.1",
374 "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.1.tgz",
375 "integrity": "sha512-4QYCEWOcK3OJrxwvyyAOxFuhpvOVCYkr33LPfFNBjAD/w3sEzWsp2BUOkI4l9bHvWioAd0rc6NlHUOEaWkTeqg==",
376 "dev": true,
377 "requires": {
378 "anymatch": "~3.1.1",
379 "braces": "~3.0.2",
380 "fsevents": "~2.1.2",
381 "glob-parent": "~5.1.0",
382 "is-binary-path": "~2.1.0",
383 "is-glob": "~4.0.1",
384 "normalize-path": "~3.0.0",
385 "readdirp": "~3.3.0"
386 }
387 },
388 "cli": {
389 "version": "1.0.1",
390 "resolved": "https://registry.npmjs.org/cli/-/cli-1.0.1.tgz",
391 "integrity": "sha1-IoF1NPJL+klQw01TLUjsvGIbjBQ=",
392 "dev": true,
393 "requires": {
394 "exit": "0.1.2",
395 "glob": "^7.1.1"
396 }
397 },
398 "cli-cursor": {
399 "version": "3.1.0",
400 "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
401 "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
402 "dev": true,
403 "requires": {
404 "restore-cursor": "^3.1.0"
405 }
406 },
407 "cli-table": {
408 "version": "0.3.1",
409 "resolved": "https://registry.npmjs.org/cli-table/-/cli-table-0.3.1.tgz",
410 "integrity": "sha1-9TsFJmqLGguTSz0IIebi3FkUriM=",
411 "dev": true,
412 "requires": {
413 "colors": "1.0.3"
414 },
415 "dependencies": {
416 "colors": {
417 "version": "1.0.3",
418 "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz",
419 "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=",
420 "dev": true
421 }
422 }
423 },
424 "cli-width": {
425 "version": "2.2.0",
426 "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz",
427 "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=",
428 "dev": true
429 },
430 "color-convert": {
431 "version": "1.9.3",
432 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
433 "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
434 "dev": true,
435 "requires": {
436 "color-name": "1.1.3"
437 }
438 },
439 "color-name": {
440 "version": "1.1.3",
441 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
442 "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
443 "dev": true
444 },
445 "colors": {
446 "version": "1.4.0",
447 "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz",
448 "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==",
449 "dev": true
450 },
451 "commander": {
452 "version": "2.12.2",
453 "resolved": "https://registry.npmjs.org/commander/-/commander-2.12.2.tgz",
454 "integrity": "sha512-BFnaq5ZOGcDN7FlrtBT4xxkgIToalIIxwjxLWVJ8bGTpe1LroqMiqQXdA7ygc7CRvaYS+9zfPGFnJqFSayx+AA==",
455 "dev": true
456 },
457 "comment-parser": {
458 "version": "0.3.2",
459 "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.3.2.tgz",
460 "integrity": "sha1-PAPwd2uGo239mgosl8YwfzMggv4=",
461 "dev": true,
462 "requires": {
463 "readable-stream": "^2.0.4"
464 }
465 },
466 "component-bind": {
467 "version": "1.0.0",
468 "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz",
469 "integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=",
470 "dev": true
471 },
472 "component-emitter": {
473 "version": "1.2.1",
474 "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz",
475 "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=",
476 "dev": true
477 },
478 "component-inherit": {
479 "version": "0.0.3",
480 "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz",
481 "integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=",
482 "dev": true
483 },
484 "concat-map": {
485 "version": "0.0.1",
486 "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
487 "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
488 "dev": true
489 },
490 "concat-stream": {
491 "version": "1.6.2",
492 "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
493 "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
494 "dev": true,
495 "requires": {
496 "buffer-from": "^1.0.0",
497 "inherits": "^2.0.3",
498 "readable-stream": "^2.2.2",
499 "typedarray": "^0.0.6"
500 }
501 },
502 "connect": {
503 "version": "3.7.0",
504 "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz",
505 "integrity": "sha1-XUk0iRDKpeB6AYALAw0MNfIEhPg=",
506 "dev": true,
507 "requires": {
508 "debug": "2.6.9",
509 "finalhandler": "1.1.2",
510 "parseurl": "~1.3.3",
511 "utils-merge": "1.0.1"
512 },
513 "dependencies": {
514 "debug": {
515 "version": "2.6.9",
516 "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
517 "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
518 "dev": true,
519 "requires": {
520 "ms": "2.0.0"
521 }
522 },
523 "ms": {
524 "version": "2.0.0",
525 "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
526 "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
527 "dev": true
528 }
529 }
530 },
531 "console-browserify": {
532 "version": "1.1.0",
533 "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz",
534 "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=",
535 "dev": true,
536 "requires": {
537 "date-now": "^0.1.4"
538 }
539 },
540 "content-type": {
541 "version": "1.0.4",
542 "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz",
543 "integrity": "sha1-4TjMdeBAxyexlm/l5fjJruJW/js=",
544 "dev": true
545 },
546 "cookie": {
547 "version": "0.3.1",
548 "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz",
549 "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=",
550 "dev": true
551 },
552 "core-js": {
553 "version": "2.6.5",
554 "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.5.tgz",
555 "integrity": "sha512-klh/kDpwX8hryYL14M9w/xei6vrv6sE8gTHDG7/T/+SEovB/G4ejwcfE/CBzO6Edsu+OETZMZ3wcX/EjUkrl5A==",
556 "dev": true
557 },
558 "core-util-is": {
559 "version": "1.0.2",
560 "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
561 "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
562 "dev": true
563 },
564 "cross-spawn": {
565 "version": "6.0.5",
566 "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz",
567 "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==",
568 "dev": true,
569 "requires": {
570 "nice-try": "^1.0.4",
571 "path-key": "^2.0.1",
572 "semver": "^5.5.0",
573 "shebang-command": "^1.2.0",
574 "which": "^1.2.9"
575 },
576 "dependencies": {
577 "semver": {
578 "version": "5.7.1",
579 "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
580 "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
581 "dev": true
582 }
583 }
584 },
585 "cst": {
586 "version": "0.4.10",
587 "resolved": "https://registry.npmjs.org/cst/-/cst-0.4.10.tgz",
588 "integrity": "sha1-nAXIJSkKdi8KhcCqu4wP4DWuhRY=",
589 "dev": true,
590 "requires": {
591 "babel-runtime": "^6.9.2",
592 "babylon": "^6.8.1",
593 "source-map-support": "^0.4.0"
594 },
595 "dependencies": {
596 "source-map": {
597 "version": "0.5.7",
598 "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
599 "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
600 "dev": true
601 },
602 "source-map-support": {
603 "version": "0.4.18",
604 "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz",
605 "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==",
606 "dev": true,
607 "requires": {
608 "source-map": "^0.5.6"
609 }
610 }
611 }
612 },
613 "custom-event": {
614 "version": "1.0.1",
615 "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz",
616 "integrity": "sha1-XQKkaFCt8bSjF5RqOSj8y1v9BCU=",
617 "dev": true
618 },
619 "cycle": {
620 "version": "1.0.3",
621 "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz",
622 "integrity": "sha1-IegLK+hYD5i0aPN5QwZisEbDStI=",
623 "dev": true
624 },
625 "date-format": {
626 "version": "2.1.0",
627 "resolved": "https://registry.npmjs.org/date-format/-/date-format-2.1.0.tgz",
628 "integrity": "sha512-bYQuGLeFxhkxNOF3rcMtiZxvCBAquGzZm6oWA1oZ0g2THUzivaRhv8uOhdr19LmoobSOLoIAxeUK2RdbM8IFTA==",
629 "dev": true
630 },
631 "date-now": {
632 "version": "0.1.4",
633 "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz",
634 "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=",
635 "dev": true
636 },
637 "debug": {
638 "version": "4.1.1",
639 "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
640 "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
641 "dev": true,
642 "requires": {
643 "ms": "^2.1.1"
644 }
645 },
646 "deep-equal": {
647 "version": "1.0.1",
648 "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz",
649 "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=",
650 "dev": true
651 },
652 "deep-is": {
653 "version": "0.1.3",
654 "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
655 "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
656 "dev": true
657 },
658 "depd": {
659 "version": "1.1.2",
660 "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
661 "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=",
662 "dev": true
663 },
664 "di": {
665 "version": "0.0.1",
666 "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz",
667 "integrity": "sha1-gGZJMmzqp8qjMG112YXqJ0i6kTw=",
668 "dev": true
669 },
670 "doctrine": {
671 "version": "3.0.0",
672 "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
673 "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
674 "dev": true,
675 "requires": {
676 "esutils": "^2.0.2"
677 }
678 },
679 "dom-serialize": {
680 "version": "2.2.1",
681 "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz",
682 "integrity": "sha1-ViromZ9Evl6jB29UGdzVnrQ6yVs=",
683 "dev": true,
684 "requires": {
685 "custom-event": "~1.0.0",
686 "ent": "~2.2.0",
687 "extend": "^3.0.0",
688 "void-elements": "^2.0.0"
689 }
690 },
691 "dom-serializer": {
692 "version": "0.1.1",
693 "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz",
694 "integrity": "sha1-HsQFnihLq+027sKUHUqXChic58A=",
695 "dev": true,
696 "requires": {
697 "domelementtype": "^1.3.0",
698 "entities": "^1.1.1"
699 },
700 "dependencies": {
701 "entities": {
702 "version": "1.1.2",
703 "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz",
704 "integrity": "sha1-vfpzUplmTfr9NFKe1PhSKidf6lY=",
705 "dev": true
706 }
707 }
708 },
709 "domelementtype": {
710 "version": "1.3.1",
711 "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz",
712 "integrity": "sha1-0EjESzew0Qp/Kj1f7j9DM9eQSB8=",
713 "dev": true
714 },
715 "domhandler": {
716 "version": "2.3.0",
717 "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.3.0.tgz",
718 "integrity": "sha1-LeWaCCLVAn+r/28DLCsloqir5zg=",
719 "dev": true,
720 "requires": {
721 "domelementtype": "1"
722 }
723 },
724 "domutils": {
725 "version": "1.5.1",
726 "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz",
727 "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=",
728 "dev": true,
729 "requires": {
730 "dom-serializer": "0",
731 "domelementtype": "1"
732 }
733 },
734 "ee-first": {
735 "version": "1.1.1",
736 "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
737 "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=",
738 "dev": true
739 },
740 "emoji-regex": {
741 "version": "8.0.0",
742 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
743 "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
744 "dev": true
745 },
746 "encodeurl": {
747 "version": "1.0.2",
748 "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
749 "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=",
750 "dev": true
751 },
752 "engine.io": {
753 "version": "3.2.1",
754 "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.2.1.tgz",
755 "integrity": "sha1-tgKBw1SEpw7gNR6g6/+D7IyVIqI=",
756 "dev": true,
757 "requires": {
758 "accepts": "~1.3.4",
759 "base64id": "1.0.0",
760 "cookie": "0.3.1",
761 "debug": "~3.1.0",
762 "engine.io-parser": "~2.1.0",
763 "ws": "~3.3.1"
764 },
765 "dependencies": {
766 "debug": {
767 "version": "3.1.0",
768 "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
769 "integrity": "sha1-W7WgZyYotkFJVmuhaBnmFRjGcmE=",
770 "dev": true,
771 "requires": {
772 "ms": "2.0.0"
773 }
774 },
775 "ms": {
776 "version": "2.0.0",
777 "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
778 "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
779 "dev": true
780 }
781 }
782 },
783 "engine.io-client": {
784 "version": "3.2.1",
785 "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.2.1.tgz",
786 "integrity": "sha1-b1TAR13khxWKGnx30QF4cItq3TY=",
787 "dev": true,
788 "requires": {
789 "component-emitter": "1.2.1",
790 "component-inherit": "0.0.3",
791 "debug": "~3.1.0",
792 "engine.io-parser": "~2.1.1",
793 "has-cors": "1.1.0",
794 "indexof": "0.0.1",
795 "parseqs": "0.0.5",
796 "parseuri": "0.0.5",
797 "ws": "~3.3.1",
798 "xmlhttprequest-ssl": "~1.5.4",
799 "yeast": "0.1.2"
800 },
801 "dependencies": {
802 "debug": {
803 "version": "3.1.0",
804 "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
805 "integrity": "sha1-W7WgZyYotkFJVmuhaBnmFRjGcmE=",
806 "dev": true,
807 "requires": {
808 "ms": "2.0.0"
809 }
810 },
811 "ms": {
812 "version": "2.0.0",
813 "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
814 "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
815 "dev": true
816 }
817 }
818 },
819 "engine.io-parser": {
820 "version": "2.1.3",
821 "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.3.tgz",
822 "integrity": "sha1-dXq5cPvy37Mse3SwMyFtVznveaY=",
823 "dev": true,
824 "requires": {
825 "after": "0.8.2",
826 "arraybuffer.slice": "~0.0.7",
827 "base64-arraybuffer": "0.1.5",
828 "blob": "0.0.5",
829 "has-binary2": "~1.0.2"
830 }
831 },
832 "ent": {
833 "version": "2.2.0",
834 "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz",
835 "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=",
836 "dev": true
837 },
838 "entities": {
839 "version": "1.0.0",
840 "resolved": "https://registry.npmjs.org/entities/-/entities-1.0.0.tgz",
841 "integrity": "sha1-sph6o4ITR/zeZCsk/fyeT7cSvyY=",
842 "dev": true
843 },
844 "escape-html": {
845 "version": "1.0.3",
846 "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
847 "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=",
848 "dev": true
849 },
850 "escape-string-regexp": {
851 "version": "1.0.5",
852 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
853 "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
854 "dev": true
855 },
856 "eslint": {
857 "version": "6.8.0",
858 "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz",
859 "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==",
860 "dev": true,
861 "requires": {
862 "@babel/code-frame": "^7.0.0",
863 "ajv": "^6.10.0",
864 "chalk": "^2.1.0",
865 "cross-spawn": "^6.0.5",
866 "debug": "^4.0.1",
867 "doctrine": "^3.0.0",
868 "eslint-scope": "^5.0.0",
869 "eslint-utils": "^1.4.3",
870 "eslint-visitor-keys": "^1.1.0",
871 "espree": "^6.1.2",
872 "esquery": "^1.0.1",
873 "esutils": "^2.0.2",
874 "file-entry-cache": "^5.0.1",
875 "functional-red-black-tree": "^1.0.1",
876 "glob-parent": "^5.0.0",
877 "globals": "^12.1.0",
878 "ignore": "^4.0.6",
879 "import-fresh": "^3.0.0",
880 "imurmurhash": "^0.1.4",
881 "inquirer": "^7.0.0",
882 "is-glob": "^4.0.0",
883 "js-yaml": "^3.13.1",
884 "json-stable-stringify-without-jsonify": "^1.0.1",
885 "levn": "^0.3.0",
886 "lodash": "^4.17.14",
887 "minimatch": "^3.0.4",
888 "mkdirp": "^0.5.1",
889 "natural-compare": "^1.4.0",
890 "optionator": "^0.8.3",
891 "progress": "^2.0.0",
892 "regexpp": "^2.0.1",
893 "semver": "^6.1.2",
894 "strip-ansi": "^5.2.0",
895 "strip-json-comments": "^3.0.1",
896 "table": "^5.2.3",
897 "text-table": "^0.2.0",
898 "v8-compile-cache": "^2.0.3"
899 },
900 "dependencies": {
901 "lodash": {
902 "version": "4.17.15",
903 "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz",
904 "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==",
905 "dev": true
906 }
907 }
908 },
909 "eslint-scope": {
910 "version": "5.0.0",
911 "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz",
912 "integrity": "sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw==",
913 "dev": true,
914 "requires": {
915 "esrecurse": "^4.1.0",
916 "estraverse": "^4.1.1"
917 }
918 },
919 "eslint-utils": {
920 "version": "1.4.3",
921 "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz",
922 "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==",
923 "dev": true,
924 "requires": {
925 "eslint-visitor-keys": "^1.1.0"
926 }
927 },
928 "eslint-visitor-keys": {
929 "version": "1.1.0",
930 "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz",
931 "integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==",
932 "dev": true
933 },
934 "espree": {
935 "version": "6.2.1",
936 "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz",
937 "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==",
938 "dev": true,
939 "requires": {
940 "acorn": "^7.1.1",
941 "acorn-jsx": "^5.2.0",
942 "eslint-visitor-keys": "^1.1.0"
943 }
944 },
945 "esprima": {
946 "version": "4.0.1",
947 "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
948 "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
949 "dev": true
950 },
951 "esquery": {
952 "version": "1.2.0",
953 "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.2.0.tgz",
954 "integrity": "sha512-weltsSqdeWIX9G2qQZz7KlTRJdkkOCTPgLYJUz1Hacf48R4YOwGPHO3+ORfWedqJKbq5WQmsgK90n+pFLIKt/Q==",
955 "dev": true,
956 "requires": {
957 "estraverse": "^5.0.0"
958 },
959 "dependencies": {
960 "estraverse": {
961 "version": "5.0.0",
962 "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.0.0.tgz",
963 "integrity": "sha512-j3acdrMzqrxmJTNj5dbr1YbjacrYgAxVMeF0gK16E3j494mOe7xygM/ZLIguEQ0ETwAg2hlJCtHRGav+y0Ny5A==",
964 "dev": true
965 }
966 }
967 },
968 "esrecurse": {
969 "version": "4.2.1",
970 "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz",
971 "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==",
972 "dev": true,
973 "requires": {
974 "estraverse": "^4.1.0"
975 }
976 },
977 "estraverse": {
978 "version": "4.2.0",
979 "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz",
980 "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=",
981 "dev": true
982 },
983 "esutils": {
984 "version": "2.0.3",
985 "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
986 "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
987 "dev": true
988 },
989 "eventemitter3": {
990 "version": "4.0.0",
991 "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.0.tgz",
992 "integrity": "sha512-qerSRB0p+UDEssxTtm6EDKcE7W4OaoisfIMl4CngyEhjpYglocpNg6UEqCvemdGhosAsg4sO2dXJOdyBifPGCg==",
993 "dev": true
994 },
995 "exit": {
996 "version": "0.1.2",
997 "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
998 "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=",
999 "dev": true
1000 },
1001 "extend": {
1002 "version": "3.0.2",
1003 "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
1004 "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==",
1005 "dev": true
1006 },
1007 "external-editor": {
1008 "version": "3.1.0",
1009 "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz",
1010 "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==",
1011 "dev": true,
1012 "requires": {
1013 "chardet": "^0.7.0",
1014 "iconv-lite": "^0.4.24",
1015 "tmp": "^0.0.33"
1016 }
1017 },
1018 "extract-zip": {
1019 "version": "1.7.0",
1020 "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz",
1021 "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==",
1022 "dev": true,
1023 "requires": {
1024 "concat-stream": "^1.6.2",
1025 "debug": "^2.6.9",
1026 "mkdirp": "^0.5.4",
1027 "yauzl": "^2.10.0"
1028 },
1029 "dependencies": {
1030 "debug": {
1031 "version": "2.6.9",
1032 "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
1033 "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
1034 "dev": true,
1035 "requires": {
1036 "ms": "2.0.0"
1037 }
1038 },
1039 "minimist": {
1040 "version": "1.2.5",
1041 "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
1042 "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
1043 "dev": true
1044 },
1045 "mkdirp": {
1046 "version": "0.5.4",
1047 "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz",
1048 "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==",
1049 "dev": true,
1050 "requires": {
1051 "minimist": "^1.2.5"
1052 }
1053 },
1054 "ms": {
1055 "version": "2.0.0",
1056 "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
1057 "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
1058 "dev": true
1059 }
1060 }
1061 },
1062 "eyes": {
1063 "version": "0.1.8",
1064 "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz",
1065 "integrity": "sha1-Ys8SAjTGg3hdkCNIqADvPgzCC8A=",
1066 "dev": true
1067 },
1068 "fast-deep-equal": {
1069 "version": "3.1.1",
1070 "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz",
1071 "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==",
1072 "dev": true
1073 },
1074 "fast-json-stable-stringify": {
1075 "version": "2.1.0",
1076 "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
1077 "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
1078 "dev": true
1079 },
1080 "fast-levenshtein": {
1081 "version": "2.0.6",
1082 "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
1083 "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
1084 "dev": true
1085 },
1086 "fd-slicer": {
1087 "version": "1.1.0",
1088 "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz",
1089 "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=",
1090 "dev": true,
1091 "requires": {
1092 "pend": "~1.2.0"
1093 }
1094 },
1095 "figures": {
1096 "version": "3.2.0",
1097 "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz",
1098 "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==",
1099 "dev": true,
1100 "requires": {
1101 "escape-string-regexp": "^1.0.5"
1102 }
1103 },
1104 "file-entry-cache": {
1105 "version": "5.0.1",
1106 "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz",
1107 "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==",
1108 "dev": true,
1109 "requires": {
1110 "flat-cache": "^2.0.1"
1111 }
1112 },
1113 "fill-range": {
1114 "version": "7.0.1",
1115 "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
1116 "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
1117 "dev": true,
1118 "requires": {
1119 "to-regex-range": "^5.0.1"
1120 }
1121 },
1122 "finalhandler": {
1123 "version": "1.1.2",
1124 "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz",
1125 "integrity": "sha1-t+fQAP/RGTjQ/bBTUG9uur6fWH0=",
1126 "dev": true,
1127 "requires": {
1128 "debug": "2.6.9",
1129 "encodeurl": "~1.0.2",
1130 "escape-html": "~1.0.3",
1131 "on-finished": "~2.3.0",
1132 "parseurl": "~1.3.3",
1133 "statuses": "~1.5.0",
1134 "unpipe": "~1.0.0"
1135 },
1136 "dependencies": {
1137 "debug": {
1138 "version": "2.6.9",
1139 "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
1140 "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
1141 "dev": true,
1142 "requires": {
1143 "ms": "2.0.0"
1144 }
1145 },
1146 "ms": {
1147 "version": "2.0.0",
1148 "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
1149 "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
1150 "dev": true
1151 }
1152 }
1153 },
1154 "flat-cache": {
1155 "version": "2.0.1",
1156 "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz",
1157 "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==",
1158 "dev": true,
1159 "requires": {
1160 "flatted": "^2.0.0",
1161 "rimraf": "2.6.3",
1162 "write": "1.0.3"
1163 }
1164 },
1165 "flatted": {
1166 "version": "2.0.0",
1167 "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.0.tgz",
1168 "integrity": "sha512-R+H8IZclI8AAkSBRQJLVOsxwAoHd6WC40b4QTNWIjzAa6BXOBfQcM587MXDTVPeYaopFNWHUFLx7eNmHDSxMWg==",
1169 "dev": true
1170 },
1171 "follow-redirects": {
1172 "version": "1.10.0",
1173 "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.10.0.tgz",
1174 "integrity": "sha512-4eyLK6s6lH32nOvLLwlIOnr9zrL8Sm+OvW4pVTJNoXeGzYIkHVf+pADQi+OJ0E67hiuSLezPVPyBcIZO50TmmQ==",
1175 "dev": true,
1176 "requires": {
1177 "debug": "^3.0.0"
1178 },
1179 "dependencies": {
1180 "debug": {
1181 "version": "3.2.6",
1182 "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
1183 "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=",
1184 "dev": true,
1185 "requires": {
1186 "ms": "^2.1.1"
1187 }
1188 }
1189 }
1190 },
1191 "fs-extra": {
1192 "version": "7.0.1",
1193 "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz",
1194 "integrity": "sha1-TxicRKoSO4lfcigE9V6iPq3DSOk=",
1195 "dev": true,
1196 "requires": {
1197 "graceful-fs": "^4.1.2",
1198 "jsonfile": "^4.0.0",
1199 "universalify": "^0.1.0"
1200 }
1201 },
1202 "fs.realpath": {
1203 "version": "1.0.0",
1204 "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
1205 "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
1206 "dev": true
1207 },
1208 "fsevents": {
1209 "version": "2.1.2",
1210 "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz",
1211 "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==",
1212 "dev": true,
1213 "optional": true
1214 },
1215 "functional-red-black-tree": {
1216 "version": "1.0.1",
1217 "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
1218 "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
1219 "dev": true
1220 },
1221 "glob": {
1222 "version": "7.1.3",
1223 "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz",
1224 "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==",
1225 "dev": true,
1226 "requires": {
1227 "fs.realpath": "^1.0.0",
1228 "inflight": "^1.0.4",
1229 "inherits": "2",
1230 "minimatch": "^3.0.4",
1231 "once": "^1.3.0",
1232 "path-is-absolute": "^1.0.0"
1233 }
1234 },
1235 "glob-parent": {
1236 "version": "5.1.1",
1237 "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz",
1238 "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==",
1239 "dev": true,
1240 "requires": {
1241 "is-glob": "^4.0.1"
1242 }
1243 },
1244 "globals": {
1245 "version": "12.4.0",
1246 "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz",
1247 "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==",
1248 "dev": true,
1249 "requires": {
1250 "type-fest": "^0.8.1"
1251 }
1252 },
1253 "graceful-fs": {
1254 "version": "4.2.3",
1255 "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz",
1256 "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==",
1257 "dev": true
1258 },
1259 "graceful-readlink": {
1260 "version": "1.0.1",
1261 "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz",
1262 "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=",
1263 "dev": true
1264 },
1265 "has-ansi": {
1266 "version": "2.0.0",
1267 "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
1268 "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=",
1269 "dev": true,
1270 "requires": {
1271 "ansi-regex": "^2.0.0"
1272 },
1273 "dependencies": {
1274 "ansi-regex": {
1275 "version": "2.1.1",
1276 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
1277 "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
1278 "dev": true
1279 }
1280 }
1281 },
1282 "has-binary2": {
1283 "version": "1.0.3",
1284 "resolved": "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz",
1285 "integrity": "sha1-d3asYn8+p3JQz8My2rfd9eT10R0=",
1286 "dev": true,
1287 "requires": {
1288 "isarray": "2.0.1"
1289 },
1290 "dependencies": {
1291 "isarray": {
1292 "version": "2.0.1",
1293 "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz",
1294 "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=",
1295 "dev": true
1296 }
1297 }
1298 },
1299 "has-color": {
1300 "version": "0.1.7",
1301 "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz",
1302 "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=",
1303 "dev": true
1304 },
1305 "has-cors": {
1306 "version": "1.1.0",
1307 "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz",
1308 "integrity": "sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk=",
1309 "dev": true
1310 },
1311 "has-flag": {
1312 "version": "3.0.0",
1313 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
1314 "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
1315 "dev": true
1316 },
1317 "htmlparser2": {
1318 "version": "3.8.3",
1319 "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.8.3.tgz",
1320 "integrity": "sha1-mWwosZFRaovoZQGn15dX5ccMEGg=",
1321 "dev": true,
1322 "requires": {
1323 "domelementtype": "1",
1324 "domhandler": "2.3",
1325 "domutils": "1.5",
1326 "entities": "1.0",
1327 "readable-stream": "1.1"
1328 },
1329 "dependencies": {
1330 "isarray": {
1331 "version": "0.0.1",
1332 "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
1333 "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",
1334 "dev": true
1335 },
1336 "readable-stream": {
1337 "version": "1.1.14",
1338 "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
1339 "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
1340 "dev": true,
1341 "requires": {
1342 "core-util-is": "~1.0.0",
1343 "inherits": "~2.0.1",
1344 "isarray": "0.0.1",
1345 "string_decoder": "~0.10.x"
1346 }
1347 },
1348 "string_decoder": {
1349 "version": "0.10.31",
1350 "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
1351 "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",
1352 "dev": true
1353 }
1354 }
1355 },
1356 "http-errors": {
1357 "version": "1.7.2",
1358 "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz",
1359 "integrity": "sha1-T1ApzxMjnzEDblsuVSkrz7zIXI8=",
1360 "dev": true,
1361 "requires": {
1362 "depd": "~1.1.2",
1363 "inherits": "2.0.3",
1364 "setprototypeof": "1.1.1",
1365 "statuses": ">= 1.5.0 < 2",
1366 "toidentifier": "1.0.0"
1367 }
1368 },
1369 "http-proxy": {
1370 "version": "1.18.0",
1371 "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.0.tgz",
1372 "integrity": "sha512-84I2iJM/n1d4Hdgc6y2+qY5mDaz2PUVjlg9znE9byl+q0uC3DeByqBGReQu5tpLK0TAqTIXScRUV+dg7+bUPpQ==",
1373 "dev": true,
1374 "requires": {
1375 "eventemitter3": "^4.0.0",
1376 "follow-redirects": "^1.0.0",
1377 "requires-port": "^1.0.0"
1378 }
1379 },
1380 "https-proxy-agent": {
1381 "version": "4.0.0",
1382 "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-4.0.0.tgz",
1383 "integrity": "sha512-zoDhWrkR3of1l9QAL8/scJZyLu8j/gBkcwcaQOZh7Gyh/+uJQzGVETdgT30akuwkpL8HTRfssqI3BZuV18teDg==",
1384 "dev": true,
1385 "requires": {
1386 "agent-base": "5",
1387 "debug": "4"
1388 }
1389 },
1390 "i": {
1391 "version": "0.3.6",
1392 "resolved": "https://registry.npmjs.org/i/-/i-0.3.6.tgz",
1393 "integrity": "sha1-2WyScyB28HJxG2sQ/X1PZa2O4j0=",
1394 "dev": true
1395 },
1396 "iconv-lite": {
1397 "version": "0.4.24",
1398 "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
1399 "integrity": "sha1-ICK0sl+93CHS9SSXSkdKr+czkIs=",
1400 "dev": true,
1401 "requires": {
1402 "safer-buffer": ">= 2.1.2 < 3"
1403 }
1404 },
1405 "ignore": {
1406 "version": "4.0.6",
1407 "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
1408 "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
1409 "dev": true
1410 },
1411 "import-fresh": {
1412 "version": "3.2.1",
1413 "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz",
1414 "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==",
1415 "dev": true,
1416 "requires": {
1417 "parent-module": "^1.0.0",
1418 "resolve-from": "^4.0.0"
1419 }
1420 },
1421 "imurmurhash": {
1422 "version": "0.1.4",
1423 "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
1424 "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
1425 "dev": true
1426 },
1427 "indexof": {
1428 "version": "0.0.1",
1429 "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz",
1430 "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=",
1431 "dev": true
1432 },
1433 "inflight": {
1434 "version": "1.0.6",
1435 "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
1436 "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
1437 "dev": true,
1438 "requires": {
1439 "once": "^1.3.0",
1440 "wrappy": "1"
1441 }
1442 },
1443 "inherit": {
1444 "version": "2.2.7",
1445 "resolved": "https://registry.npmjs.org/inherit/-/inherit-2.2.7.tgz",
1446 "integrity": "sha1-TiOOKJvHrd34/1BT0PJqL82pS58=",
1447 "dev": true
1448 },
1449 "inherits": {
1450 "version": "2.0.3",
1451 "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
1452 "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
1453 "dev": true
1454 },
1455 "inquirer": {
1456 "version": "7.1.0",
1457 "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.1.0.tgz",
1458 "integrity": "sha512-5fJMWEmikSYu0nv/flMc475MhGbB7TSPd/2IpFV4I4rMklboCH2rQjYY5kKiYGHqUF9gvaambupcJFFG9dvReg==",
1459 "dev": true,
1460 "requires": {
1461 "ansi-escapes": "^4.2.1",
1462 "chalk": "^3.0.0",
1463 "cli-cursor": "^3.1.0",
1464 "cli-width": "^2.0.0",
1465 "external-editor": "^3.0.3",
1466 "figures": "^3.0.0",
1467 "lodash": "^4.17.15",
1468 "mute-stream": "0.0.8",
1469 "run-async": "^2.4.0",
1470 "rxjs": "^6.5.3",
1471 "string-width": "^4.1.0",
1472 "strip-ansi": "^6.0.0",
1473 "through": "^2.3.6"
1474 },
1475 "dependencies": {
1476 "ansi-styles": {
1477 "version": "4.2.1",
1478 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz",
1479 "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==",
1480 "dev": true,
1481 "requires": {
1482 "@types/color-name": "^1.1.1",
1483 "color-convert": "^2.0.1"
1484 }
1485 },
1486 "chalk": {
1487 "version": "3.0.0",
1488 "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
1489 "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
1490 "dev": true,
1491 "requires": {
1492 "ansi-styles": "^4.1.0",
1493 "supports-color": "^7.1.0"
1494 }
1495 },
1496 "color-convert": {
1497 "version": "2.0.1",
1498 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
1499 "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
1500 "dev": true,
1501 "requires": {
1502 "color-name": "~1.1.4"
1503 }
1504 },
1505 "color-name": {
1506 "version": "1.1.4",
1507 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
1508 "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
1509 "dev": true
1510 },
1511 "has-flag": {
1512 "version": "4.0.0",
1513 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
1514 "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
1515 "dev": true
1516 },
1517 "lodash": {
1518 "version": "4.17.15",
1519 "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz",
1520 "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==",
1521 "dev": true
1522 },
1523 "mute-stream": {
1524 "version": "0.0.8",
1525 "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",
1526 "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==",
1527 "dev": true
1528 },
1529 "strip-ansi": {
1530 "version": "6.0.0",
1531 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
1532 "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
1533 "dev": true,
1534 "requires": {
1535 "ansi-regex": "^5.0.0"
1536 }
1537 },
1538 "supports-color": {
1539 "version": "7.1.0",
1540 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz",
1541 "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==",
1542 "dev": true,
1543 "requires": {
1544 "has-flag": "^4.0.0"
1545 }
1546 }
1547 }
1548 },
1549 "is-binary-path": {
1550 "version": "2.1.0",
1551 "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
1552 "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
1553 "dev": true,
1554 "requires": {
1555 "binary-extensions": "^2.0.0"
1556 }
1557 },
1558 "is-extglob": {
1559 "version": "2.1.1",
1560 "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
1561 "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
1562 "dev": true
1563 },
1564 "is-fullwidth-code-point": {
1565 "version": "3.0.0",
1566 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
1567 "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
1568 "dev": true
1569 },
1570 "is-glob": {
1571 "version": "4.0.1",
1572 "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz",
1573 "integrity": "sha1-dWfb6fL14kZ7x3q4PEopSCQHpdw=",
1574 "dev": true,
1575 "requires": {
1576 "is-extglob": "^2.1.1"
1577 }
1578 },
1579 "is-number": {
1580 "version": "7.0.0",
1581 "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
1582 "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
1583 "dev": true
1584 },
1585 "is-promise": {
1586 "version": "2.1.0",
1587 "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz",
1588 "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=",
1589 "dev": true
1590 },
1591 "is-utf8": {
1592 "version": "0.2.1",
1593 "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz",
1594 "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=",
1595 "dev": true
1596 },
1597 "is-wsl": {
1598 "version": "2.1.1",
1599 "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.1.1.tgz",
1600 "integrity": "sha512-umZHcSrwlDHo2TGMXv0DZ8dIUGunZ2Iv68YZnrmCiBPkZ4aaOhtv7pXJKeki9k3qJ3RJr0cDyitcl5wEH3AYog==",
1601 "dev": true
1602 },
1603 "isarray": {
1604 "version": "1.0.0",
1605 "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
1606 "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
1607 "dev": true
1608 },
1609 "isbinaryfile": {
1610 "version": "3.0.3",
1611 "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-3.0.3.tgz",
1612 "integrity": "sha1-XW3vPt6/boyoyunDAYOoBLX4voA=",
1613 "dev": true,
1614 "requires": {
1615 "buffer-alloc": "^1.2.0"
1616 }
1617 },
1618 "isexe": {
1619 "version": "2.0.0",
1620 "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
1621 "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
1622 "dev": true
1623 },
1624 "isstream": {
1625 "version": "0.1.2",
1626 "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
1627 "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=",
1628 "dev": true
1629 },
1630 "js-reporters": {
1631 "version": "1.2.1",
1632 "resolved": "https://registry.npmjs.org/js-reporters/-/js-reporters-1.2.1.tgz",
1633 "integrity": "sha1-+IxgjjJKM3OpW8xFrTBeXJecRZs=",
1634 "dev": true
1635 },
1636 "js-tokens": {
1637 "version": "4.0.0",
1638 "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
1639 "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
1640 "dev": true
1641 },
1642 "js-yaml": {
1643 "version": "3.13.1",
1644 "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz",
1645 "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==",
1646 "dev": true,
1647 "requires": {
1648 "argparse": "^1.0.7",
1649 "esprima": "^4.0.0"
1650 }
1651 },
1652 "jscs": {
1653 "version": "3.0.7",
1654 "resolved": "https://registry.npmjs.org/jscs/-/jscs-3.0.7.tgz",
1655 "integrity": "sha1-cUG03/W4bjLQ6Z12S4NnZ8MNIBo=",
1656 "dev": true,
1657 "requires": {
1658 "chalk": "~1.1.0",
1659 "cli-table": "~0.3.1",
1660 "commander": "~2.9.0",
1661 "cst": "^0.4.3",
1662 "estraverse": "^4.1.0",
1663 "exit": "~0.1.2",
1664 "glob": "^5.0.1",
1665 "htmlparser2": "3.8.3",
1666 "js-yaml": "~3.4.0",
1667 "jscs-jsdoc": "^2.0.0",
1668 "jscs-preset-wikimedia": "~1.0.0",
1669 "jsonlint": "~1.6.2",
1670 "lodash": "~3.10.0",
1671 "minimatch": "~3.0.0",
1672 "natural-compare": "~1.2.2",
1673 "pathval": "~0.1.1",
1674 "prompt": "~0.2.14",
1675 "reserved-words": "^0.1.1",
1676 "resolve": "^1.1.6",
1677 "strip-bom": "^2.0.0",
1678 "strip-json-comments": "~1.0.2",
1679 "to-double-quotes": "^2.0.0",
1680 "to-single-quotes": "^2.0.0",
1681 "vow": "~0.4.8",
1682 "vow-fs": "~0.3.4",
1683 "xmlbuilder": "^3.1.0"
1684 },
1685 "dependencies": {
1686 "ansi-regex": {
1687 "version": "2.1.1",
1688 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
1689 "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
1690 "dev": true
1691 },
1692 "ansi-styles": {
1693 "version": "2.2.1",
1694 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
1695 "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=",
1696 "dev": true
1697 },
1698 "chalk": {
1699 "version": "1.1.3",
1700 "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
1701 "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
1702 "dev": true,
1703 "requires": {
1704 "ansi-styles": "^2.2.1",
1705 "escape-string-regexp": "^1.0.2",
1706 "has-ansi": "^2.0.0",
1707 "strip-ansi": "^3.0.0",
1708 "supports-color": "^2.0.0"
1709 }
1710 },
1711 "commander": {
1712 "version": "2.9.0",
1713 "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz",
1714 "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=",
1715 "dev": true,
1716 "requires": {
1717 "graceful-readlink": ">= 1.0.0"
1718 }
1719 },
1720 "esprima": {
1721 "version": "2.7.3",
1722 "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz",
1723 "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=",
1724 "dev": true
1725 },
1726 "glob": {
1727 "version": "5.0.15",
1728 "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz",
1729 "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=",
1730 "dev": true,
1731 "requires": {
1732 "inflight": "^1.0.4",
1733 "inherits": "2",
1734 "minimatch": "2 || 3",
1735 "once": "^1.3.0",
1736 "path-is-absolute": "^1.0.0"
1737 }
1738 },
1739 "js-yaml": {
1740 "version": "3.4.6",
1741 "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.4.6.tgz",
1742 "integrity": "sha1-a+GyP2JJ9T0pM3D9TRqqY84bTrA=",
1743 "dev": true,
1744 "requires": {
1745 "argparse": "^1.0.2",
1746 "esprima": "^2.6.0",
1747 "inherit": "^2.2.2"
1748 }
1749 },
1750 "lodash": {
1751 "version": "3.10.1",
1752 "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz",
1753 "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=",
1754 "dev": true
1755 },
1756 "natural-compare": {
1757 "version": "1.2.2",
1758 "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.2.2.tgz",
1759 "integrity": "sha1-H5bWDjFBysG20FZTzg2urHY69qo=",
1760 "dev": true
1761 },
1762 "strip-ansi": {
1763 "version": "3.0.1",
1764 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
1765 "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
1766 "dev": true,
1767 "requires": {
1768 "ansi-regex": "^2.0.0"
1769 }
1770 },
1771 "strip-json-comments": {
1772 "version": "1.0.4",
1773 "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.4.tgz",
1774 "integrity": "sha1-HhX7ysl9Pumb8tc7TGVrCCu6+5E=",
1775 "dev": true
1776 },
1777 "supports-color": {
1778 "version": "2.0.0",
1779 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
1780 "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=",
1781 "dev": true
1782 }
1783 }
1784 },
1785 "jscs-jsdoc": {
1786 "version": "2.0.0",
1787 "resolved": "https://registry.npmjs.org/jscs-jsdoc/-/jscs-jsdoc-2.0.0.tgz",
1788 "integrity": "sha1-9T684CmqMSW9iCkLpQ1k1FEKSHE=",
1789 "dev": true,
1790 "requires": {
1791 "comment-parser": "^0.3.1",
1792 "jsdoctypeparser": "~1.2.0"
1793 }
1794 },
1795 "jscs-preset-wikimedia": {
1796 "version": "1.0.1",
1797 "resolved": "https://registry.npmjs.org/jscs-preset-wikimedia/-/jscs-preset-wikimedia-1.0.1.tgz",
1798 "integrity": "sha1-pqX6WWf9Z6XWCQOOHHlOr0HUIz0=",
1799 "dev": true
1800 },
1801 "jsdoctypeparser": {
1802 "version": "1.2.0",
1803 "resolved": "https://registry.npmjs.org/jsdoctypeparser/-/jsdoctypeparser-1.2.0.tgz",
1804 "integrity": "sha1-597cFToRhJ/8UUEUSuhqfvDCU5I=",
1805 "dev": true,
1806 "requires": {
1807 "lodash": "^3.7.0"
1808 },
1809 "dependencies": {
1810 "lodash": {
1811 "version": "3.10.1",
1812 "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz",
1813 "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=",
1814 "dev": true
1815 }
1816 }
1817 },
1818 "jshint": {
1819 "version": "2.11.0",
1820 "resolved": "https://registry.npmjs.org/jshint/-/jshint-2.11.0.tgz",
1821 "integrity": "sha512-ooaD/hrBPhu35xXW4gn+o3SOuzht73gdBuffgJzrZBJZPGgGiiTvJEgTyxFvBO2nz0+X1G6etF8SzUODTlLY6Q==",
1822 "dev": true,
1823 "requires": {
1824 "cli": "~1.0.0",
1825 "console-browserify": "1.1.x",
1826 "exit": "0.1.x",
1827 "htmlparser2": "3.8.x",
1828 "lodash": "~4.17.11",
1829 "minimatch": "~3.0.2",
1830 "shelljs": "0.3.x",
1831 "strip-json-comments": "1.0.x"
1832 },
1833 "dependencies": {
1834 "strip-json-comments": {
1835 "version": "1.0.4",
1836 "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.4.tgz",
1837 "integrity": "sha1-HhX7ysl9Pumb8tc7TGVrCCu6+5E=",
1838 "dev": true
1839 }
1840 }
1841 },
1842 "json-schema-traverse": {
1843 "version": "0.4.1",
1844 "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
1845 "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
1846 "dev": true
1847 },
1848 "json-stable-stringify-without-jsonify": {
1849 "version": "1.0.1",
1850 "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
1851 "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=",
1852 "dev": true
1853 },
1854 "jsonfile": {
1855 "version": "4.0.0",
1856 "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
1857 "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
1858 "dev": true,
1859 "requires": {
1860 "graceful-fs": "^4.1.6"
1861 }
1862 },
1863 "jsonlint": {
1864 "version": "1.6.3",
1865 "resolved": "https://registry.npmjs.org/jsonlint/-/jsonlint-1.6.3.tgz",
1866 "integrity": "sha1-y14x78C3gpHQ2GL77wWQCt8hKYg=",
1867 "dev": true,
1868 "requires": {
1869 "JSV": "^4.0.x",
1870 "nomnom": "^1.5.x"
1871 }
1872 },
1873 "karma": {
1874 "version": "4.4.1",
1875 "resolved": "https://registry.npmjs.org/karma/-/karma-4.4.1.tgz",
1876 "integrity": "sha512-L5SIaXEYqzrh6b1wqYC42tNsFMx2PWuxky84pK9coK09MvmL7mxii3G3bZBh/0rvD27lqDd0le9jyhzvwif73A==",
1877 "dev": true,
1878 "requires": {
1879 "bluebird": "^3.3.0",
1880 "body-parser": "^1.16.1",
1881 "braces": "^3.0.2",
1882 "chokidar": "^3.0.0",
1883 "colors": "^1.1.0",
1884 "connect": "^3.6.0",
1885 "di": "^0.0.1",
1886 "dom-serialize": "^2.2.0",
1887 "flatted": "^2.0.0",
1888 "glob": "^7.1.1",
1889 "graceful-fs": "^4.1.2",
1890 "http-proxy": "^1.13.0",
1891 "isbinaryfile": "^3.0.0",
1892 "lodash": "^4.17.14",
1893 "log4js": "^4.0.0",
1894 "mime": "^2.3.1",
1895 "minimatch": "^3.0.2",
1896 "optimist": "^0.6.1",
1897 "qjobs": "^1.1.4",
1898 "range-parser": "^1.2.0",
1899 "rimraf": "^2.6.0",
1900 "safe-buffer": "^5.0.1",
1901 "socket.io": "2.1.1",
1902 "source-map": "^0.6.1",
1903 "tmp": "0.0.33",
1904 "useragent": "2.3.0"
1905 },
1906 "dependencies": {
1907 "lodash": {
1908 "version": "4.17.15",
1909 "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz",
1910 "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==",
1911 "dev": true
1912 }
1913 }
1914 },
1915 "karma-chrome-launcher": {
1916 "version": "3.1.0",
1917 "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.1.0.tgz",
1918 "integrity": "sha512-3dPs/n7vgz1rxxtynpzZTvb9y/GIaW8xjAwcIGttLbycqoFtI7yo1NGnQi6oFTherRE+GIhCAHZC4vEqWGhNvg==",
1919 "dev": true,
1920 "requires": {
1921 "which": "^1.2.1"
1922 }
1923 },
1924 "karma-firefox-launcher": {
1925 "version": "1.3.0",
1926 "resolved": "https://registry.npmjs.org/karma-firefox-launcher/-/karma-firefox-launcher-1.3.0.tgz",
1927 "integrity": "sha512-Fi7xPhwrRgr+94BnHX0F5dCl1miIW4RHnzjIGxF8GaIEp7rNqX7LSi7ok63VXs3PS/5MQaQMhGxw+bvD+pibBQ==",
1928 "dev": true,
1929 "requires": {
1930 "is-wsl": "^2.1.0"
1931 }
1932 },
1933 "karma-qunit": {
1934 "version": "4.0.0",
1935 "resolved": "https://registry.npmjs.org/karma-qunit/-/karma-qunit-4.0.0.tgz",
1936 "integrity": "sha512-sGuMyTMbiA2zq/aV43uduwf58mMiMDiG6YH3dvaarQnwFLmyRD1i8356TndX8lFeVSOtykowtBtpcdGxyuezTA==",
1937 "dev": true
1938 },
1939 "levn": {
1940 "version": "0.3.0",
1941 "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
1942 "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=",
1943 "dev": true,
1944 "requires": {
1945 "prelude-ls": "~1.1.2",
1946 "type-check": "~0.3.2"
1947 }
1948 },
1949 "lodash": {
1950 "version": "4.17.11",
1951 "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz",
1952 "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==",
1953 "dev": true
1954 },
1955 "log4js": {
1956 "version": "4.5.1",
1957 "resolved": "https://registry.npmjs.org/log4js/-/log4js-4.5.1.tgz",
1958 "integrity": "sha512-EEEgFcE9bLgaYUKuozyFfytQM2wDHtXn4tAN41pkaxpNjAykv11GVdeI4tHtmPWW4Xrgh9R/2d7XYghDVjbKKw==",
1959 "dev": true,
1960 "requires": {
1961 "date-format": "^2.0.0",
1962 "debug": "^4.1.1",
1963 "flatted": "^2.0.0",
1964 "rfdc": "^1.1.4",
1965 "streamroller": "^1.0.6"
1966 }
1967 },
1968 "lru-cache": {
1969 "version": "4.1.5",
1970 "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz",
1971 "integrity": "sha1-i75Q6oW+1ZvJ4z3KuCNe6bz0Q80=",
1972 "dev": true,
1973 "requires": {
1974 "pseudomap": "^1.0.2",
1975 "yallist": "^2.1.2"
1976 }
1977 },
1978 "ls": {
1979 "version": "0.2.1",
1980 "resolved": "https://registry.npmjs.org/ls/-/ls-0.2.1.tgz",
1981 "integrity": "sha1-DZbMhwYAgG+ua9iSl9xcZkVMv3E=",
1982 "dev": true,
1983 "requires": {
1984 "glob": "7.0.5"
1985 },
1986 "dependencies": {
1987 "glob": {
1988 "version": "7.0.5",
1989 "resolved": "https://registry.npmjs.org/glob/-/glob-7.0.5.tgz",
1990 "integrity": "sha1-tCAqaQmbu00pKnwblbZoK2fr3JU=",
1991 "dev": true,
1992 "requires": {
1993 "fs.realpath": "^1.0.0",
1994 "inflight": "^1.0.4",
1995 "inherits": "2",
1996 "minimatch": "^3.0.2",
1997 "once": "^1.3.0",
1998 "path-is-absolute": "^1.0.0"
1999 }
2000 }
2001 }
2002 },
2003 "media-typer": {
2004 "version": "0.3.0",
2005 "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
2006 "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=",
2007 "dev": true
2008 },
2009 "mime": {
2010 "version": "2.4.4",
2011 "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.4.tgz",
2012 "integrity": "sha1-vXuRE1/GsBzePpuuM9ZZtj2IV+U=",
2013 "dev": true
2014 },
2015 "mime-db": {
2016 "version": "1.43.0",
2017 "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz",
2018 "integrity": "sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ==",
2019 "dev": true
2020 },
2021 "mime-types": {
2022 "version": "2.1.26",
2023 "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.26.tgz",
2024 "integrity": "sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ==",
2025 "dev": true,
2026 "requires": {
2027 "mime-db": "1.43.0"
2028 }
2029 },
2030 "mimic-fn": {
2031 "version": "2.1.0",
2032 "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
2033 "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
2034 "dev": true
2035 },
2036 "minimatch": {
2037 "version": "3.0.4",
2038 "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
2039 "integrity": "sha1-UWbihkV/AzBgZL5Ul+jbsMPTIIM=",
2040 "dev": true,
2041 "requires": {
2042 "brace-expansion": "^1.1.7"
2043 }
2044 },
2045 "minimist": {
2046 "version": "0.0.8",
2047 "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
2048 "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=",
2049 "dev": true
2050 },
2051 "mkdirp": {
2052 "version": "0.5.1",
2053 "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
2054 "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
2055 "dev": true,
2056 "requires": {
2057 "minimist": "0.0.8"
2058 }
2059 },
2060 "ms": {
2061 "version": "2.1.1",
2062 "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
2063 "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==",
2064 "dev": true
2065 },
2066 "mute-stream": {
2067 "version": "0.0.7",
2068 "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz",
2069 "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=",
2070 "dev": true
2071 },
2072 "natural-compare": {
2073 "version": "1.4.0",
2074 "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
2075 "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
2076 "dev": true
2077 },
2078 "ncp": {
2079 "version": "0.4.2",
2080 "resolved": "https://registry.npmjs.org/ncp/-/ncp-0.4.2.tgz",
2081 "integrity": "sha1-q8xsvT7C7Spyn/bnwfqPAXhKhXQ=",
2082 "dev": true
2083 },
2084 "negotiator": {
2085 "version": "0.6.2",
2086 "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz",
2087 "integrity": "sha1-/qz3zPUlp3rpY0Q2pkiD/+yjRvs=",
2088 "dev": true
2089 },
2090 "nice-try": {
2091 "version": "1.0.5",
2092 "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
2093 "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==",
2094 "dev": true
2095 },
2096 "node-watch": {
2097 "version": "0.6.1",
2098 "resolved": "https://registry.npmjs.org/node-watch/-/node-watch-0.6.1.tgz",
2099 "integrity": "sha512-gwQiR7weFRV8mAtT0x0kXkZ18dfRLB45xH7q0hCOVQMLfLb2f1ZaSvR57q4/b/Vj6B0RwMNJYbvb69e1yM7qEA==",
2100 "dev": true
2101 },
2102 "nomnom": {
2103 "version": "1.8.1",
2104 "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz",
2105 "integrity": "sha1-IVH3Ikcrp55Qp2/BJbuMjy5Nwqc=",
2106 "dev": true,
2107 "requires": {
2108 "chalk": "~0.4.0",
2109 "underscore": "~1.6.0"
2110 },
2111 "dependencies": {
2112 "ansi-styles": {
2113 "version": "1.0.0",
2114 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz",
2115 "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=",
2116 "dev": true
2117 },
2118 "chalk": {
2119 "version": "0.4.0",
2120 "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz",
2121 "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=",
2122 "dev": true,
2123 "requires": {
2124 "ansi-styles": "~1.0.0",
2125 "has-color": "~0.1.0",
2126 "strip-ansi": "~0.1.0"
2127 }
2128 },
2129 "strip-ansi": {
2130 "version": "0.1.1",
2131 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz",
2132 "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=",
2133 "dev": true
2134 }
2135 }
2136 },
2137 "normalize-path": {
2138 "version": "3.0.0",
2139 "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
2140 "integrity": "sha1-Dc1p/yOhybEf0JeDFmRKA4ghamU=",
2141 "dev": true
2142 },
2143 "object-component": {
2144 "version": "0.0.3",
2145 "resolved": "https://registry.npmjs.org/object-component/-/object-component-0.0.3.tgz",
2146 "integrity": "sha1-8MaapQ78lbhmwYb0AKM3acsvEpE=",
2147 "dev": true
2148 },
2149 "on-finished": {
2150 "version": "2.3.0",
2151 "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz",
2152 "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=",
2153 "dev": true,
2154 "requires": {
2155 "ee-first": "1.1.1"
2156 }
2157 },
2158 "once": {
2159 "version": "1.4.0",
2160 "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
2161 "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
2162 "dev": true,
2163 "requires": {
2164 "wrappy": "1"
2165 }
2166 },
2167 "onetime": {
2168 "version": "5.1.0",
2169 "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz",
2170 "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==",
2171 "dev": true,
2172 "requires": {
2173 "mimic-fn": "^2.1.0"
2174 }
2175 },
2176 "optimist": {
2177 "version": "0.6.1",
2178 "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz",
2179 "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=",
2180 "dev": true,
2181 "requires": {
2182 "minimist": "~0.0.1",
2183 "wordwrap": "~0.0.2"
2184 },
2185 "dependencies": {
2186 "wordwrap": {
2187 "version": "0.0.3",
2188 "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz",
2189 "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=",
2190 "dev": true
2191 }
2192 }
2193 },
2194 "optionator": {
2195 "version": "0.8.3",
2196 "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
2197 "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
2198 "dev": true,
2199 "requires": {
2200 "deep-is": "~0.1.3",
2201 "fast-levenshtein": "~2.0.6",
2202 "levn": "~0.3.0",
2203 "prelude-ls": "~1.1.2",
2204 "type-check": "~0.3.2",
2205 "word-wrap": "~1.2.3"
2206 }
2207 },
2208 "os-tmpdir": {
2209 "version": "1.0.2",
2210 "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
2211 "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
2212 "dev": true
2213 },
2214 "parent-module": {
2215 "version": "1.0.1",
2216 "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
2217 "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
2218 "dev": true,
2219 "requires": {
2220 "callsites": "^3.0.0"
2221 }
2222 },
2223 "parseqs": {
2224 "version": "0.0.5",
2225 "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.5.tgz",
2226 "integrity": "sha1-1SCKNzjkZ2bikbouoXNoSSGouJ0=",
2227 "dev": true,
2228 "requires": {
2229 "better-assert": "~1.0.0"
2230 }
2231 },
2232 "parseuri": {
2233 "version": "0.0.5",
2234 "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.5.tgz",
2235 "integrity": "sha1-gCBKUNTbt3m/3G6+J3jZDkvOMgo=",
2236 "dev": true,
2237 "requires": {
2238 "better-assert": "~1.0.0"
2239 }
2240 },
2241 "parseurl": {
2242 "version": "1.3.3",
2243 "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
2244 "integrity": "sha1-naGee+6NEt/wUT7Vt2lXeTvC6NQ=",
2245 "dev": true
2246 },
2247 "path-is-absolute": {
2248 "version": "1.0.1",
2249 "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
2250 "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
2251 "dev": true
2252 },
2253 "path-key": {
2254 "version": "2.0.1",
2255 "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
2256 "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=",
2257 "dev": true
2258 },
2259 "path-parse": {
2260 "version": "1.0.6",
2261 "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz",
2262 "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==",
2263 "dev": true
2264 },
2265 "pathval": {
2266 "version": "0.1.1",
2267 "resolved": "https://registry.npmjs.org/pathval/-/pathval-0.1.1.tgz",
2268 "integrity": "sha1-CPkRzcqczllCiA2ngXvAtyO2bYI=",
2269 "dev": true
2270 },
2271 "pend": {
2272 "version": "1.2.0",
2273 "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
2274 "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=",
2275 "dev": true
2276 },
2277 "picomatch": {
2278 "version": "2.2.2",
2279 "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz",
2280 "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==",
2281 "dev": true
2282 },
2283 "pkginfo": {
2284 "version": "0.4.1",
2285 "resolved": "https://registry.npmjs.org/pkginfo/-/pkginfo-0.4.1.tgz",
2286 "integrity": "sha1-tUGO8EOd5UJfxJlQQtztFPsqhP8=",
2287 "dev": true
2288 },
2289 "prelude-ls": {
2290 "version": "1.1.2",
2291 "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
2292 "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=",
2293 "dev": true
2294 },
2295 "process-nextick-args": {
2296 "version": "2.0.0",
2297 "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz",
2298 "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==",
2299 "dev": true
2300 },
2301 "progress": {
2302 "version": "2.0.3",
2303 "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
2304 "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
2305 "dev": true
2306 },
2307 "prompt": {
2308 "version": "0.2.14",
2309 "resolved": "https://registry.npmjs.org/prompt/-/prompt-0.2.14.tgz",
2310 "integrity": "sha1-V3VPZPVD/XsIRXB8gY7OYY8F/9w=",
2311 "dev": true,
2312 "requires": {
2313 "pkginfo": "0.x.x",
2314 "read": "1.0.x",
2315 "revalidator": "0.1.x",
2316 "utile": "0.2.x",
2317 "winston": "0.8.x"
2318 }
2319 },
2320 "proxy-from-env": {
2321 "version": "1.1.0",
2322 "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
2323 "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==",
2324 "dev": true
2325 },
2326 "pseudomap": {
2327 "version": "1.0.2",
2328 "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz",
2329 "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=",
2330 "dev": true
2331 },
2332 "punycode": {
2333 "version": "2.1.1",
2334 "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
2335 "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
2336 "dev": true
2337 },
2338 "puppeteer": {
2339 "version": "2.1.1",
2340 "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-2.1.1.tgz",
2341 "integrity": "sha512-LWzaDVQkk1EPiuYeTOj+CZRIjda4k2s5w4MK4xoH2+kgWV/SDlkYHmxatDdtYrciHUKSXTsGgPgPP8ILVdBsxg==",
2342 "dev": true,
2343 "requires": {
2344 "@types/mime-types": "^2.1.0",
2345 "debug": "^4.1.0",
2346 "extract-zip": "^1.6.6",
2347 "https-proxy-agent": "^4.0.0",
2348 "mime": "^2.0.3",
2349 "mime-types": "^2.1.25",
2350 "progress": "^2.0.1",
2351 "proxy-from-env": "^1.0.0",
2352 "rimraf": "^2.6.1",
2353 "ws": "^6.1.0"
2354 },
2355 "dependencies": {
2356 "ws": {
2357 "version": "6.2.1",
2358 "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz",
2359 "integrity": "sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA==",
2360 "dev": true,
2361 "requires": {
2362 "async-limiter": "~1.0.0"
2363 }
2364 }
2365 }
2366 },
2367 "qjobs": {
2368 "version": "1.2.0",
2369 "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz",
2370 "integrity": "sha1-xF6cYYAL0IfviNfiVkI73Unl0HE=",
2371 "dev": true
2372 },
2373 "qs": {
2374 "version": "6.7.0",
2375 "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz",
2376 "integrity": "sha1-QdwaAV49WB8WIXdr4xr7KHapsbw=",
2377 "dev": true
2378 },
2379 "qunit": {
2380 "version": "2.9.3",
2381 "resolved": "https://registry.npmjs.org/qunit/-/qunit-2.9.3.tgz",
2382 "integrity": "sha512-RH4VYSaVsNRDthMFFboTJAJ8q4kJM5LvOqWponKUYPEAeOcmc/YFV1QsZ7ikknA3TjqliWFJYEV63vvVXaALmQ==",
2383 "dev": true,
2384 "requires": {
2385 "commander": "2.12.2",
2386 "js-reporters": "1.2.1",
2387 "minimatch": "3.0.4",
2388 "node-watch": "0.6.1",
2389 "resolve": "1.9.0"
2390 }
2391 },
2392 "range-parser": {
2393 "version": "1.2.1",
2394 "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz",
2395 "integrity": "sha1-PPNwI9GZ4cJNGlW4SADC8+ZGgDE=",
2396 "dev": true
2397 },
2398 "raw-body": {
2399 "version": "2.4.0",
2400 "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz",
2401 "integrity": "sha1-oc5vucm8NWylLoklarWQWeE9AzI=",
2402 "dev": true,
2403 "requires": {
2404 "bytes": "3.1.0",
2405 "http-errors": "1.7.2",
2406 "iconv-lite": "0.4.24",
2407 "unpipe": "1.0.0"
2408 }
2409 },
2410 "read": {
2411 "version": "1.0.7",
2412 "resolved": "https://registry.npmjs.org/read/-/read-1.0.7.tgz",
2413 "integrity": "sha1-s9oZvQUkMal2cdRKQmNK33ELQMQ=",
2414 "dev": true,
2415 "requires": {
2416 "mute-stream": "~0.0.4"
2417 }
2418 },
2419 "readable-stream": {
2420 "version": "2.3.6",
2421 "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
2422 "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
2423 "dev": true,
2424 "requires": {
2425 "core-util-is": "~1.0.0",
2426 "inherits": "~2.0.3",
2427 "isarray": "~1.0.0",
2428 "process-nextick-args": "~2.0.0",
2429 "safe-buffer": "~5.1.1",
2430 "string_decoder": "~1.1.1",
2431 "util-deprecate": "~1.0.1"
2432 }
2433 },
2434 "readdirp": {
2435 "version": "3.3.0",
2436 "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.3.0.tgz",
2437 "integrity": "sha512-zz0pAkSPOXXm1viEwygWIPSPkcBYjW1xU5j/JBh5t9bGCJwa6f9+BJa6VaB2g+b55yVrmXzqkyLf4xaWYM0IkQ==",
2438 "dev": true,
2439 "requires": {
2440 "picomatch": "^2.0.7"
2441 }
2442 },
2443 "regenerator-runtime": {
2444 "version": "0.11.1",
2445 "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz",
2446 "integrity": "sha1-vgWtf5v30i4Fb5cmzuUBf78Z4uk=",
2447 "dev": true
2448 },
2449 "regexpp": {
2450 "version": "2.0.1",
2451 "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz",
2452 "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==",
2453 "dev": true
2454 },
2455 "requires-port": {
2456 "version": "1.0.0",
2457 "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz",
2458 "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=",
2459 "dev": true
2460 },
2461 "reserved-words": {
2462 "version": "0.1.2",
2463 "resolved": "https://registry.npmjs.org/reserved-words/-/reserved-words-0.1.2.tgz",
2464 "integrity": "sha1-AKCUD5jNUBrqqsMWQR2a3FKzGrE=",
2465 "dev": true
2466 },
2467 "resolve": {
2468 "version": "1.9.0",
2469 "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.9.0.tgz",
2470 "integrity": "sha512-TZNye00tI67lwYvzxCxHGjwTNlUV70io54/Ed4j6PscB8xVfuBJpRenI/o6dVk0cY0PYTY27AgCoGGxRnYuItQ==",
2471 "dev": true,
2472 "requires": {
2473 "path-parse": "^1.0.6"
2474 }
2475 },
2476 "resolve-from": {
2477 "version": "4.0.0",
2478 "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
2479 "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
2480 "dev": true
2481 },
2482 "restore-cursor": {
2483 "version": "3.1.0",
2484 "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
2485 "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==",
2486 "dev": true,
2487 "requires": {
2488 "onetime": "^5.1.0",
2489 "signal-exit": "^3.0.2"
2490 }
2491 },
2492 "revalidator": {
2493 "version": "0.1.8",
2494 "resolved": "https://registry.npmjs.org/revalidator/-/revalidator-0.1.8.tgz",
2495 "integrity": "sha1-/s5hv6DBtSoga9axgZgYS91SOjs=",
2496 "dev": true
2497 },
2498 "rfdc": {
2499 "version": "1.1.4",
2500 "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.1.4.tgz",
2501 "integrity": "sha1-unLME2egzNnPgahws7WL060H+MI=",
2502 "dev": true
2503 },
2504 "rimraf": {
2505 "version": "2.6.3",
2506 "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz",
2507 "integrity": "sha1-stEE/g2Psnz54KHNqCYt04M8bKs=",
2508 "dev": true,
2509 "requires": {
2510 "glob": "^7.1.3"
2511 }
2512 },
2513 "run-async": {
2514 "version": "2.4.0",
2515 "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.0.tgz",
2516 "integrity": "sha512-xJTbh/d7Lm7SBhc1tNvTpeCHaEzoyxPrqNlvSdMfBTYwaY++UJFyXUOxAtsRUXjlqOfj8luNaR9vjCh4KeV+pg==",
2517 "dev": true,
2518 "requires": {
2519 "is-promise": "^2.1.0"
2520 }
2521 },
2522 "rxjs": {
2523 "version": "6.5.4",
2524 "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz",
2525 "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==",
2526 "dev": true,
2527 "requires": {
2528 "tslib": "^1.9.0"
2529 }
2530 },
2531 "safe-buffer": {
2532 "version": "5.1.2",
2533 "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
2534 "integrity": "sha1-mR7GnSluAxN0fVm9/St0XDX4go0=",
2535 "dev": true
2536 },
2537 "safer-buffer": {
2538 "version": "2.1.2",
2539 "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
2540 "integrity": "sha1-RPoWGwGHuVSd2Eu5GAL5vYOFzWo=",
2541 "dev": true
2542 },
2543 "semver": {
2544 "version": "6.3.0",
2545 "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
2546 "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
2547 "dev": true
2548 },
2549 "setprototypeof": {
2550 "version": "1.1.1",
2551 "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz",
2552 "integrity": "sha1-fpWsskqpL1iF4KvvW6ExMw1K5oM=",
2553 "dev": true
2554 },
2555 "shebang-command": {
2556 "version": "1.2.0",
2557 "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
2558 "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=",
2559 "dev": true,
2560 "requires": {
2561 "shebang-regex": "^1.0.0"
2562 }
2563 },
2564 "shebang-regex": {
2565 "version": "1.0.0",
2566 "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
2567 "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=",
2568 "dev": true
2569 },
2570 "shelljs": {
2571 "version": "0.3.0",
2572 "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.3.0.tgz",
2573 "integrity": "sha1-NZbmMHp4FUT1kfN9phg2DzHbV7E=",
2574 "dev": true
2575 },
2576 "signal-exit": {
2577 "version": "3.0.3",
2578 "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz",
2579 "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==",
2580 "dev": true
2581 },
2582 "slice-ansi": {
2583 "version": "2.1.0",
2584 "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz",
2585 "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==",
2586 "dev": true,
2587 "requires": {
2588 "ansi-styles": "^3.2.0",
2589 "astral-regex": "^1.0.0",
2590 "is-fullwidth-code-point": "^2.0.0"
2591 },
2592 "dependencies": {
2593 "is-fullwidth-code-point": {
2594 "version": "2.0.0",
2595 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
2596 "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
2597 "dev": true
2598 }
2599 }
2600 },
2601 "socket.io": {
2602 "version": "2.1.1",
2603 "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.1.1.tgz",
2604 "integrity": "sha1-oGnF/qvuPmshSnW0DOBlLhz7mYA=",
2605 "dev": true,
2606 "requires": {
2607 "debug": "~3.1.0",
2608 "engine.io": "~3.2.0",
2609 "has-binary2": "~1.0.2",
2610 "socket.io-adapter": "~1.1.0",
2611 "socket.io-client": "2.1.1",
2612 "socket.io-parser": "~3.2.0"
2613 },
2614 "dependencies": {
2615 "debug": {
2616 "version": "3.1.0",
2617 "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
2618 "integrity": "sha1-W7WgZyYotkFJVmuhaBnmFRjGcmE=",
2619 "dev": true,
2620 "requires": {
2621 "ms": "2.0.0"
2622 }
2623 },
2624 "ms": {
2625 "version": "2.0.0",
2626 "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
2627 "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
2628 "dev": true
2629 }
2630 }
2631 },
2632 "socket.io-adapter": {
2633 "version": "1.1.2",
2634 "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.2.tgz",
2635 "integrity": "sha512-WzZRUj1kUjrTIrUKpZLEzFZ1OLj5FwLlAFQs9kuZJzJi5DKdU7FsWc36SNmA8iDOtwBQyT8FkrriRM8vXLYz8g==",
2636 "dev": true
2637 },
2638 "socket.io-client": {
2639 "version": "2.1.1",
2640 "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.1.1.tgz",
2641 "integrity": "sha1-3LOBA0NqtFeN2wJmOK4vIbYjZx8=",
2642 "dev": true,
2643 "requires": {
2644 "backo2": "1.0.2",
2645 "base64-arraybuffer": "0.1.5",
2646 "component-bind": "1.0.0",
2647 "component-emitter": "1.2.1",
2648 "debug": "~3.1.0",
2649 "engine.io-client": "~3.2.0",
2650 "has-binary2": "~1.0.2",
2651 "has-cors": "1.1.0",
2652 "indexof": "0.0.1",
2653 "object-component": "0.0.3",
2654 "parseqs": "0.0.5",
2655 "parseuri": "0.0.5",
2656 "socket.io-parser": "~3.2.0",
2657 "to-array": "0.1.4"
2658 },
2659 "dependencies": {
2660 "debug": {
2661 "version": "3.1.0",
2662 "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
2663 "integrity": "sha1-W7WgZyYotkFJVmuhaBnmFRjGcmE=",
2664 "dev": true,
2665 "requires": {
2666 "ms": "2.0.0"
2667 }
2668 },
2669 "ms": {
2670 "version": "2.0.0",
2671 "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
2672 "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
2673 "dev": true
2674 }
2675 }
2676 },
2677 "socket.io-parser": {
2678 "version": "3.2.0",
2679 "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.2.0.tgz",
2680 "integrity": "sha1-58Yii2qh+BTmFIrqMltRqpSZ4Hc=",
2681 "dev": true,
2682 "requires": {
2683 "component-emitter": "1.2.1",
2684 "debug": "~3.1.0",
2685 "isarray": "2.0.1"
2686 },
2687 "dependencies": {
2688 "debug": {
2689 "version": "3.1.0",
2690 "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
2691 "integrity": "sha1-W7WgZyYotkFJVmuhaBnmFRjGcmE=",
2692 "dev": true,
2693 "requires": {
2694 "ms": "2.0.0"
2695 }
2696 },
2697 "isarray": {
2698 "version": "2.0.1",
2699 "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz",
2700 "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=",
2701 "dev": true
2702 },
2703 "ms": {
2704 "version": "2.0.0",
2705 "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
2706 "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
2707 "dev": true
2708 }
2709 }
2710 },
2711 "source-map": {
2712 "version": "0.6.1",
2713 "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
2714 "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
2715 "dev": true
2716 },
2717 "source-map-support": {
2718 "version": "0.5.16",
2719 "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.16.tgz",
2720 "integrity": "sha512-efyLRJDr68D9hBBNIPWFjhpFzURh+KJykQwvMyW5UiZzYwoF6l4YMMDIJJEyFWxWCqfyxLzz6tSfUFR+kXXsVQ==",
2721 "dev": true,
2722 "requires": {
2723 "buffer-from": "^1.0.0",
2724 "source-map": "^0.6.0"
2725 }
2726 },
2727 "sprintf-js": {
2728 "version": "1.0.3",
2729 "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
2730 "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
2731 "dev": true
2732 },
2733 "stack-trace": {
2734 "version": "0.0.10",
2735 "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz",
2736 "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=",
2737 "dev": true
2738 },
2739 "statuses": {
2740 "version": "1.5.0",
2741 "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
2742 "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=",
2743 "dev": true
2744 },
2745 "streamroller": {
2746 "version": "1.0.6",
2747 "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-1.0.6.tgz",
2748 "integrity": "sha512-3QC47Mhv3/aZNFpDDVO44qQb9gwB9QggMEE0sQmkTAwBVYdBRWISdsywlkfm5II1Q5y/pmrHflti/IgmIzdDBg==",
2749 "dev": true,
2750 "requires": {
2751 "async": "^2.6.2",
2752 "date-format": "^2.0.0",
2753 "debug": "^3.2.6",
2754 "fs-extra": "^7.0.1",
2755 "lodash": "^4.17.14"
2756 },
2757 "dependencies": {
2758 "debug": {
2759 "version": "3.2.6",
2760 "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
2761 "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=",
2762 "dev": true,
2763 "requires": {
2764 "ms": "^2.1.1"
2765 }
2766 },
2767 "lodash": {
2768 "version": "4.17.15",
2769 "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz",
2770 "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==",
2771 "dev": true
2772 }
2773 }
2774 },
2775 "string-width": {
2776 "version": "4.2.0",
2777 "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz",
2778 "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==",
2779 "dev": true,
2780 "requires": {
2781 "emoji-regex": "^8.0.0",
2782 "is-fullwidth-code-point": "^3.0.0",
2783 "strip-ansi": "^6.0.0"
2784 },
2785 "dependencies": {
2786 "strip-ansi": {
2787 "version": "6.0.0",
2788 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
2789 "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
2790 "dev": true,
2791 "requires": {
2792 "ansi-regex": "^5.0.0"
2793 }
2794 }
2795 }
2796 },
2797 "string_decoder": {
2798 "version": "1.1.1",
2799 "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
2800 "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
2801 "dev": true,
2802 "requires": {
2803 "safe-buffer": "~5.1.0"
2804 }
2805 },
2806 "strip-ansi": {
2807 "version": "5.2.0",
2808 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
2809 "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
2810 "dev": true,
2811 "requires": {
2812 "ansi-regex": "^4.1.0"
2813 },
2814 "dependencies": {
2815 "ansi-regex": {
2816 "version": "4.1.0",
2817 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
2818 "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
2819 "dev": true
2820 }
2821 }
2822 },
2823 "strip-bom": {
2824 "version": "2.0.0",
2825 "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
2826 "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
2827 "dev": true,
2828 "requires": {
2829 "is-utf8": "^0.2.0"
2830 }
2831 },
2832 "strip-json-comments": {
2833 "version": "3.0.1",
2834 "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz",
2835 "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==",
2836 "dev": true
2837 },
2838 "supports-color": {
2839 "version": "5.5.0",
2840 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
2841 "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
2842 "dev": true,
2843 "requires": {
2844 "has-flag": "^3.0.0"
2845 }
2846 },
2847 "syn": {
2848 "version": "0.14.1",
2849 "resolved": "https://registry.npmjs.org/syn/-/syn-0.14.1.tgz",
2850 "integrity": "sha512-0b+KMtbT52PMX3F7nUDr/HINxTilZt8fDOZmKOadDWU1ymSJQ6CWJgUS9Mggq5VpbpDjPLJ3TC1lSYWlrskU6g==",
2851 "dev": true
2852 },
2853 "table": {
2854 "version": "5.4.6",
2855 "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz",
2856 "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==",
2857 "dev": true,
2858 "requires": {
2859 "ajv": "^6.10.2",
2860 "lodash": "^4.17.14",
2861 "slice-ansi": "^2.1.0",
2862 "string-width": "^3.0.0"
2863 },
2864 "dependencies": {
2865 "emoji-regex": {
2866 "version": "7.0.3",
2867 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
2868 "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
2869 "dev": true
2870 },
2871 "is-fullwidth-code-point": {
2872 "version": "2.0.0",
2873 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
2874 "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
2875 "dev": true
2876 },
2877 "lodash": {
2878 "version": "4.17.15",
2879 "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz",
2880 "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==",
2881 "dev": true
2882 },
2883 "string-width": {
2884 "version": "3.1.0",
2885 "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
2886 "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
2887 "dev": true,
2888 "requires": {
2889 "emoji-regex": "^7.0.1",
2890 "is-fullwidth-code-point": "^2.0.0",
2891 "strip-ansi": "^5.1.0"
2892 }
2893 }
2894 }
2895 },
2896 "terser": {
2897 "version": "4.6.7",
2898 "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.7.tgz",
2899 "integrity": "sha512-fmr7M1f7DBly5cX2+rFDvmGBAaaZyPrHYK4mMdHEDAdNTqXSZgSOfqsfGq2HqPGT/1V0foZZuCZFx8CHKgAk3g==",
2900 "dev": true,
2901 "requires": {
2902 "commander": "^2.20.0",
2903 "source-map": "~0.6.1",
2904 "source-map-support": "~0.5.12"
2905 },
2906 "dependencies": {
2907 "commander": {
2908 "version": "2.20.3",
2909 "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
2910 "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
2911 "dev": true
2912 }
2913 }
2914 },
2915 "text-table": {
2916 "version": "0.2.0",
2917 "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
2918 "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=",
2919 "dev": true
2920 },
2921 "through": {
2922 "version": "2.3.8",
2923 "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
2924 "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
2925 "dev": true
2926 },
2927 "tmp": {
2928 "version": "0.0.33",
2929 "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
2930 "integrity": "sha1-bTQzWIl2jSGyvNoKonfO07G/rfk=",
2931 "dev": true,
2932 "requires": {
2933 "os-tmpdir": "~1.0.2"
2934 }
2935 },
2936 "to-array": {
2937 "version": "0.1.4",
2938 "resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz",
2939 "integrity": "sha1-F+bBH3PdTz10zaek/zI46a2b+JA=",
2940 "dev": true
2941 },
2942 "to-double-quotes": {
2943 "version": "2.0.0",
2944 "resolved": "https://registry.npmjs.org/to-double-quotes/-/to-double-quotes-2.0.0.tgz",
2945 "integrity": "sha1-qvIx1vqUiUn4GTAburRITYWI5Kc=",
2946 "dev": true
2947 },
2948 "to-regex-range": {
2949 "version": "5.0.1",
2950 "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
2951 "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
2952 "dev": true,
2953 "requires": {
2954 "is-number": "^7.0.0"
2955 }
2956 },
2957 "to-single-quotes": {
2958 "version": "2.0.1",
2959 "resolved": "https://registry.npmjs.org/to-single-quotes/-/to-single-quotes-2.0.1.tgz",
2960 "integrity": "sha1-fMKRUfD18sQZRvEZ9ZMv5VQXASU=",
2961 "dev": true
2962 },
2963 "toidentifier": {
2964 "version": "1.0.0",
2965 "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz",
2966 "integrity": "sha1-fhvjRw8ed5SLxD2Uo8j013UrpVM=",
2967 "dev": true
2968 },
2969 "tslib": {
2970 "version": "1.11.1",
2971 "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz",
2972 "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==",
2973 "dev": true
2974 },
2975 "type-check": {
2976 "version": "0.3.2",
2977 "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
2978 "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=",
2979 "dev": true,
2980 "requires": {
2981 "prelude-ls": "~1.1.2"
2982 }
2983 },
2984 "type-fest": {
2985 "version": "0.8.1",
2986 "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
2987 "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
2988 "dev": true
2989 },
2990 "type-is": {
2991 "version": "1.6.18",
2992 "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz",
2993 "integrity": "sha1-TlUs0F3wlGfcvE73Od6J8s83wTE=",
2994 "dev": true,
2995 "requires": {
2996 "media-typer": "0.3.0",
2997 "mime-types": "~2.1.24"
2998 }
2999 },
3000 "typedarray": {
3001 "version": "0.0.6",
3002 "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
3003 "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
3004 "dev": true
3005 },
3006 "ultron": {
3007 "version": "1.1.1",
3008 "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz",
3009 "integrity": "sha1-n+FTahCmZKZSZqHjzPhf02MCvJw=",
3010 "dev": true
3011 },
3012 "underscore": {
3013 "version": "1.6.0",
3014 "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz",
3015 "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=",
3016 "dev": true
3017 },
3018 "universalify": {
3019 "version": "0.1.2",
3020 "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
3021 "integrity": "sha1-tkb2m+OULavOzJ1mOcgNwQXvqmY=",
3022 "dev": true
3023 },
3024 "unpipe": {
3025 "version": "1.0.0",
3026 "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
3027 "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=",
3028 "dev": true
3029 },
3030 "uri-js": {
3031 "version": "4.2.2",
3032 "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz",
3033 "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==",
3034 "dev": true,
3035 "requires": {
3036 "punycode": "^2.1.0"
3037 }
3038 },
3039 "useragent": {
3040 "version": "2.3.0",
3041 "resolved": "https://registry.npmjs.org/useragent/-/useragent-2.3.0.tgz",
3042 "integrity": "sha1-IX+UOtVAyyEoZYqyP8lg9qiMmXI=",
3043 "dev": true,
3044 "requires": {
3045 "lru-cache": "4.1.x",
3046 "tmp": "0.0.x"
3047 }
3048 },
3049 "util-deprecate": {
3050 "version": "1.0.2",
3051 "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
3052 "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
3053 "dev": true
3054 },
3055 "utile": {
3056 "version": "0.2.1",
3057 "resolved": "https://registry.npmjs.org/utile/-/utile-0.2.1.tgz",
3058 "integrity": "sha1-kwyI6ZCY1iIINMNWy9mncFItkNc=",
3059 "dev": true,
3060 "requires": {
3061 "async": "~0.2.9",
3062 "deep-equal": "*",
3063 "i": "0.3.x",
3064 "mkdirp": "0.x.x",
3065 "ncp": "0.4.x",
3066 "rimraf": "2.x.x"
3067 },
3068 "dependencies": {
3069 "async": {
3070 "version": "0.2.10",
3071 "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz",
3072 "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=",
3073 "dev": true
3074 }
3075 }
3076 },
3077 "utils-merge": {
3078 "version": "1.0.1",
3079 "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
3080 "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=",
3081 "dev": true
3082 },
3083 "uuid": {
3084 "version": "2.0.3",
3085 "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz",
3086 "integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho=",
3087 "dev": true
3088 },
3089 "v8-compile-cache": {
3090 "version": "2.1.0",
3091 "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz",
3092 "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==",
3093 "dev": true
3094 },
3095 "void-elements": {
3096 "version": "2.0.1",
3097 "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz",
3098 "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=",
3099 "dev": true
3100 },
3101 "vow": {
3102 "version": "0.4.19",
3103 "resolved": "https://registry.npmjs.org/vow/-/vow-0.4.19.tgz",
3104 "integrity": "sha1-zF701rtpctgwgwp8ns+K2DSnxSU=",
3105 "dev": true
3106 },
3107 "vow-fs": {
3108 "version": "0.3.6",
3109 "resolved": "https://registry.npmjs.org/vow-fs/-/vow-fs-0.3.6.tgz",
3110 "integrity": "sha1-LUxZviLivyYY3fWXq0uqkjvnIA0=",
3111 "dev": true,
3112 "requires": {
3113 "glob": "^7.0.5",
3114 "uuid": "^2.0.2",
3115 "vow": "^0.4.7",
3116 "vow-queue": "^0.4.1"
3117 }
3118 },
3119 "vow-queue": {
3120 "version": "0.4.3",
3121 "resolved": "https://registry.npmjs.org/vow-queue/-/vow-queue-0.4.3.tgz",
3122 "integrity": "sha1-S6j2S1bpISwNvlfxQFruvVTM540=",
3123 "dev": true,
3124 "requires": {
3125 "vow": "^0.4.17"
3126 }
3127 },
3128 "which": {
3129 "version": "1.3.1",
3130 "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
3131 "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
3132 "dev": true,
3133 "requires": {
3134 "isexe": "^2.0.0"
3135 }
3136 },
3137 "winston": {
3138 "version": "0.8.3",
3139 "resolved": "https://registry.npmjs.org/winston/-/winston-0.8.3.tgz",
3140 "integrity": "sha1-ZLar9M0Brcrv1QCTk7HY6L7BnbA=",
3141 "dev": true,
3142 "requires": {
3143 "async": "0.2.x",
3144 "colors": "0.6.x",
3145 "cycle": "1.0.x",
3146 "eyes": "0.1.x",
3147 "isstream": "0.1.x",
3148 "pkginfo": "0.3.x",
3149 "stack-trace": "0.0.x"
3150 },
3151 "dependencies": {
3152 "async": {
3153 "version": "0.2.10",
3154 "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz",
3155 "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=",
3156 "dev": true
3157 },
3158 "colors": {
3159 "version": "0.6.2",
3160 "resolved": "https://registry.npmjs.org/colors/-/colors-0.6.2.tgz",
3161 "integrity": "sha1-JCP+ZnisDF2uiFLl0OW+CMmXq8w=",
3162 "dev": true
3163 },
3164 "pkginfo": {
3165 "version": "0.3.1",
3166 "resolved": "https://registry.npmjs.org/pkginfo/-/pkginfo-0.3.1.tgz",
3167 "integrity": "sha1-Wyn2qB9wcXFC4J52W76rl7T4HiE=",
3168 "dev": true
3169 }
3170 }
3171 },
3172 "word-wrap": {
3173 "version": "1.2.3",
3174 "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
3175 "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
3176 "dev": true
3177 },
3178 "wrappy": {
3179 "version": "1.0.2",
3180 "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
3181 "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
3182 "dev": true
3183 },
3184 "write": {
3185 "version": "1.0.3",
3186 "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz",
3187 "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==",
3188 "dev": true,
3189 "requires": {
3190 "mkdirp": "^0.5.1"
3191 }
3192 },
3193 "ws": {
3194 "version": "3.3.3",
3195 "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz",
3196 "integrity": "sha1-8c+E/i1ekB686U767OeF8YeiKPI=",
3197 "dev": true,
3198 "requires": {
3199 "async-limiter": "~1.0.0",
3200 "safe-buffer": "~5.1.0",
3201 "ultron": "~1.1.0"
3202 }
3203 },
3204 "xmlbuilder": {
3205 "version": "3.1.0",
3206 "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-3.1.0.tgz",
3207 "integrity": "sha1-LIaIjy1OrehQ+jjKf3Ij9yCVFuE=",
3208 "dev": true,
3209 "requires": {
3210 "lodash": "^3.5.0"
3211 },
3212 "dependencies": {
3213 "lodash": {
3214 "version": "3.10.1",
3215 "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz",
3216 "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=",
3217 "dev": true
3218 }
3219 }
3220 },
3221 "xmlhttprequest-ssl": {
3222 "version": "1.5.5",
3223 "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz",
3224 "integrity": "sha1-wodrBhaKrcQOV9l+gRkayPQ5iz4=",
3225 "dev": true
3226 },
3227 "yallist": {
3228 "version": "2.1.2",
3229 "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
3230 "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=",
3231 "dev": true
3232 },
3233 "yauzl": {
3234 "version": "2.10.0",
3235 "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz",
3236 "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=",
3237 "dev": true,
3238 "requires": {
3239 "buffer-crc32": "~0.2.3",
3240 "fd-slicer": "~1.1.0"
3241 }
3242 },
3243 "yeast": {
3244 "version": "0.1.2",
3245 "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz",
3246 "integrity": "sha1-AI4G2AlDIMNy28L47XagymyKxBk=",
3247 "dev": true
3248 }
3249 }
3250 }
775775 // scrolling to element in hash.
776776 //
777777 // And it has to be set after animation finishes, because in Chrome it
778 // makes transtion laggy.
778 // makes transition laggy.
779779 // BUG: http://code.google.com/p/chromium/issues/detail?id=62820
780780 lib.gc.addEventListener( root, "impress:stepenter", function( event ) {
781781 window.location.hash = lastHash = "#/" + event.target.id;
4545
4646 // Get id from url # by removing `#` or `#/` from the beginning,
4747 // so both "fallback" `#slide-id` and "enhanced" `#/slide-id` will work
48 return byId( window.location.hash.replace( /^#\/?/, "" ) );
48 var encoded = window.location.hash.replace( /^#\/?/, "" );
49 return byId( decodeURIComponent( encoded ) );
4950 };
5051
5152 // `getUrlParamValue` return a given URL parameter value if it exists
4040 i--;
4141 while ( i >= 0 ) {
4242 var newElement = element.cloneNode( false );
43 newElement.innerHTML = markdown.toHTML( slides[ i ] );
43 newElement.innerHTML = markdown.toHTML( slides[ i ], dialect );
4444 element.parentNode.insertBefore( newElement, element );
4545 element = newElement;
4646 i--;
3535 'loading': 'initalisiere',
3636 'ready': 'Bereit',
3737 'moving': 'in Bewegung',
38 'useAMPM': false
39 };
40 break;
41 case 'zh-CN':
42 case 'zh-cn':
43 lang = {
44 'noNotes': '<div class="noNotes">当前帧没有备注</div>',
45 'restart': '重新开始',
46 'clickToOpen': '点击以打开演讲者控制界面',
47 'prev': '上一帧',
48 'next': '下一帧',
49 'loading': '加载中',
50 'ready': '就绪',
51 'moving': '移动中',
3852 'useAMPM': false
3953 };
4054 break;
168182 var preSrc = baseURL + '#' + nextStep().id;
169183 var slideView = consoleWindow.document.getElementById( 'slideView' );
170184
171 // Setting them when they are already set causes glithes in Firefox, so check first:
185 // Setting when already set causes glitches in Firefox, so check first:
172186 if ( slideView.src !== slideSrc ) {
173187 slideView.src = slideSrc;
174188 }
205219 var preSrc = baseURL + '#' + nextStep().id;
206220 var slideView = consoleWindow.document.getElementById( 'slideView' );
207221
208 // Setting them when they are already set causes glithes in Firefox, so check first:
222 // Setting when already set causes glitches in Firefox, so check first:
209223 if ( slideView.src !== slideSrc ) {
210224 slideView.src = slideSrc;
211225 }
77 alternatively hide one (for `prev()`). Only once all substeps are shown, will a call to `next()`
88 actually move to the next step, and only when all are hidden will a call to `prev()` move to the
99 previous one.
10
11 By default, this plugin reveals substeps in the order in which they appear in the HTML. If you
12 would like to reveal them in a different order, you can supply an integer to `data-substep-order`.
13 If you do so, this plugin will reveal the substeps in ascending order; any substeps without a
14 specified `data-substep-order` will be revealed after all substeps with a specified order have
15 been revealed.
1016
1117 Calls to `goto()` will be ignored by this plugin, i.e. `goto()` will transition to whichever step is
1218 the target.
6060
6161 var showSubstepIfAny = function( step ) {
6262 var substeps = step.querySelectorAll( ".substep" );
63 var visible = step.querySelectorAll( ".substep-visible" );
6463 if ( substeps.length > 0 ) {
65 return showSubstep( substeps, visible );
64 var sorted = sortSubsteps( substeps );
65 var visible = step.querySelectorAll( ".substep-visible" );
66 return showSubstep( sorted, visible );
6667 }
68 };
69
70 var sortSubsteps = function( substepNodeList ) {
71 var substeps = Array.from( substepNodeList );
72 var sorted = substeps
73 .filter( el => el.dataset.substepOrder )
74 .sort( ( a, b ) => {
75 var orderA = a.dataset.substepOrder;
76 var orderB = b.dataset.substepOrder;
77 return parseInt( orderA ) - parseInt( orderB );
78 } )
79 .concat( substeps.filter( el => {
80 return el.dataset.substepOrder === undefined;
81 } ) );
82 return sorted;
6783 };
6884
6985 var showSubstep = function( substeps, visible ) {
8197 var hideSubstepIfAny = function( step ) {
8298 var substeps = step.querySelectorAll( ".substep" );
8399 var visible = step.querySelectorAll( ".substep-visible" );
100 var sorted = sortSubsteps( visible );
84101 if ( substeps.length > 0 ) {
85 return hideSubstep( visible );
102 return hideSubstep( sorted );
86103 }
87104 };
88105