@pageboard/html 0.14.19 → 0.14.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (109) hide show
  1. package/elements/accordion.js +1 -1
  2. package/elements/fieldsets.js +1 -1
  3. package/elements/form.js +2 -2
  4. package/elements/grid.js +1 -1
  5. package/elements/image.js +1 -1
  6. package/elements/input-file.js +2 -2
  7. package/elements/input-property.js +1 -1
  8. package/elements/inputs.js +5 -5
  9. package/elements/layout.js +1 -1
  10. package/elements/link.js +2 -2
  11. package/elements/menu.js +2 -2
  12. package/elements/navigation.js +1 -1
  13. package/elements/page.js +1 -1
  14. package/elements/paragraph.js +2 -2
  15. package/elements/query-tags.js +1 -1
  16. package/elements/tab.js +1 -1
  17. package/elements/table.js +1 -1
  18. package/elements/template.js +1 -1
  19. package/package.json +3 -8
  20. package/ui/card.css +3 -3
  21. package/ui/components/accordion.css +241 -0
  22. package/ui/components/accordion.js +613 -0
  23. package/ui/components/ad.css +275 -0
  24. package/ui/components/api.js +1167 -0
  25. package/ui/components/breadcrumb.css +122 -0
  26. package/ui/components/button.css +3525 -0
  27. package/ui/components/card.css +939 -0
  28. package/ui/components/checkbox.css +604 -0
  29. package/ui/components/checkbox.js +831 -0
  30. package/ui/components/colorize.js +274 -0
  31. package/ui/components/comment.css +268 -0
  32. package/ui/components/container.css +149 -0
  33. package/ui/components/dimmer.css +224 -0
  34. package/ui/components/dimmer.js +733 -0
  35. package/ui/components/divider.css +253 -0
  36. package/ui/components/dropdown.css +1448 -0
  37. package/ui/components/dropdown.js +3955 -0
  38. package/ui/components/embed.css +160 -0
  39. package/ui/components/embed.js +706 -0
  40. package/ui/components/feed.css +281 -0
  41. package/ui/components/flag.css +1035 -0
  42. package/ui/components/form.css +1011 -0
  43. package/ui/components/form.js +1706 -0
  44. package/ui/components/grid.css +1941 -0
  45. package/ui/components/header.css +719 -0
  46. package/ui/components/icon.css +4777 -0
  47. package/ui/components/image.css +310 -0
  48. package/ui/components/input.css +469 -0
  49. package/ui/components/item.css +464 -0
  50. package/ui/components/label.css +1281 -0
  51. package/ui/components/list.css +943 -0
  52. package/ui/components/loader.css +339 -0
  53. package/ui/components/menu.css +1940 -0
  54. package/ui/components/message.css +468 -0
  55. package/ui/components/modal.css +617 -0
  56. package/ui/components/modal.js +1034 -0
  57. package/ui/components/nag.css +145 -0
  58. package/ui/components/nag.js +507 -0
  59. package/ui/components/placeholder.css +229 -0
  60. package/ui/components/popup.css +640 -0
  61. package/ui/components/popup.js +1532 -0
  62. package/ui/components/progress.css +502 -0
  63. package/ui/components/progress.js +931 -0
  64. package/ui/components/rail.css +152 -0
  65. package/ui/components/rating.css +257 -0
  66. package/ui/components/rating.js +508 -0
  67. package/ui/components/reset.css +476 -0
  68. package/ui/components/reveal.css +260 -0
  69. package/ui/components/search.css +431 -0
  70. package/ui/components/search.js +1505 -0
  71. package/ui/components/segment.css +824 -0
  72. package/ui/components/shape.css +143 -0
  73. package/ui/components/shape.js +921 -0
  74. package/ui/components/sidebar.css +537 -0
  75. package/ui/components/sidebar.js +1033 -0
  76. package/ui/components/site.css +184 -0
  77. package/ui/components/site.js +487 -0
  78. package/ui/components/state.js +708 -0
  79. package/ui/components/statistic.css +534 -0
  80. package/ui/components/step.css +566 -0
  81. package/ui/components/sticky.css +73 -0
  82. package/ui/components/sticky.js +959 -0
  83. package/ui/components/tab.css +89 -0
  84. package/ui/components/tab.js +952 -0
  85. package/ui/components/table.css +1108 -0
  86. package/ui/components/transition.css +1792 -0
  87. package/ui/components/transition.js +1095 -0
  88. package/ui/components/video.css +121 -0
  89. package/ui/components/video.js +532 -0
  90. package/ui/components/visibility.js +1311 -0
  91. package/ui/components/visit.js +517 -0
  92. package/ui/item.css +2 -2
  93. package/ui/themes/default/assets/fonts/brand-icons.eot +0 -0
  94. package/ui/themes/default/assets/fonts/brand-icons.svg +1008 -0
  95. package/ui/themes/default/assets/fonts/brand-icons.ttf +0 -0
  96. package/ui/themes/default/assets/fonts/brand-icons.woff +0 -0
  97. package/ui/themes/default/assets/fonts/brand-icons.woff2 +0 -0
  98. package/ui/themes/default/assets/fonts/icons.eot +0 -0
  99. package/ui/themes/default/assets/fonts/icons.otf +0 -0
  100. package/ui/themes/default/assets/fonts/icons.svg +1518 -0
  101. package/ui/themes/default/assets/fonts/icons.ttf +0 -0
  102. package/ui/themes/default/assets/fonts/icons.woff +0 -0
  103. package/ui/themes/default/assets/fonts/icons.woff2 +0 -0
  104. package/ui/themes/default/assets/fonts/outline-icons.eot +0 -0
  105. package/ui/themes/default/assets/fonts/outline-icons.svg +366 -0
  106. package/ui/themes/default/assets/fonts/outline-icons.ttf +0 -0
  107. package/ui/themes/default/assets/fonts/outline-icons.woff +0 -0
  108. package/ui/themes/default/assets/fonts/outline-icons.woff2 +0 -0
  109. package/ui/themes/default/assets/images/flags.png +0 -0
@@ -0,0 +1,121 @@
1
+ /*!
2
+ * # Semantic UI 2.0.0 - Video
3
+ * http://github.com/semantic-org/semantic-ui/
4
+ *
5
+ *
6
+ * Copyright 2014 Contributors
7
+ * Released under the MIT license
8
+ * http://opensource.org/licenses/MIT
9
+ *
10
+ */
11
+
12
+
13
+ /*******************************
14
+ Video
15
+ *******************************/
16
+
17
+ .ui.video {
18
+ background-color: #dddddd;
19
+ position: relative;
20
+ max-width: 100%;
21
+ padding-bottom: 56.25%;
22
+ height: 0px;
23
+ overflow: hidden;
24
+ }
25
+
26
+ /*--------------
27
+ Content
28
+ ---------------*/
29
+
30
+
31
+ /* Placeholder Image */
32
+ .ui.video .placeholder {
33
+ background-color: #333333;
34
+ }
35
+
36
+ /* Play Icon Overlay */
37
+ .ui.video .play {
38
+ cursor: pointer;
39
+ position: absolute;
40
+ top: 0px;
41
+ left: 0px;
42
+ z-index: 10;
43
+ width: 100%;
44
+ height: 100%;
45
+ background: transparent;
46
+ transition: background 0.2s ease;
47
+ }
48
+ .ui.video .play.icon::before {
49
+ position: absolute;
50
+ top: 50%;
51
+ left: 50%;
52
+ z-index: 11;
53
+ transform: translateX(-50%) translateY(-50%);
54
+ color: rgb(255 255 255 / 70%);
55
+ font-size: 7rem;
56
+ text-shadow: 2px 2px 0px rgb(0 0 0 / 15%);
57
+ transition: color 0.2s ease;
58
+ }
59
+ .ui.video .placeholder {
60
+ position: absolute;
61
+ top: 0px;
62
+ left: 0px;
63
+ display: block;
64
+ width: 100%;
65
+ height: 100%;
66
+ }
67
+
68
+ /* IFrame Embed */
69
+ .ui.video .embed iframe,
70
+ .ui.video .embed embed,
71
+ .ui.video .embed object {
72
+ position: absolute;
73
+ border: none;
74
+ width: 100%;
75
+ height: 100%;
76
+ top: 0px;
77
+ left: 0px;
78
+ margin: 0em;
79
+ padding: 0em;
80
+ }
81
+
82
+
83
+ /*******************************
84
+ States
85
+ *******************************/
86
+
87
+
88
+ /*--------------
89
+ Hover
90
+ ---------------*/
91
+
92
+ .ui.video .play:hover {
93
+ background: rgb(0 0 0 / 0%);
94
+ }
95
+ .ui.video .play:hover::before {
96
+ color: #ffffff;
97
+ }
98
+
99
+ /*--------------
100
+ Active
101
+ ---------------*/
102
+
103
+ .ui.active.video .play,
104
+ .ui.active.video .placeholder {
105
+ display: none;
106
+ }
107
+ .ui.active.video .embed {
108
+ display: inline;
109
+ }
110
+
111
+
112
+ /*******************************
113
+ Video Overrides
114
+ *******************************/
115
+
116
+
117
+
118
+ /*******************************
119
+ Site Overrides
120
+ *******************************/
121
+
@@ -0,0 +1,532 @@
1
+ /*!
2
+ * # Semantic UI 2.0.0 - Video
3
+ * http://github.com/semantic-org/semantic-ui/
4
+ *
5
+ *
6
+ * Copyright 2014 Contributors
7
+ * Released under the MIT license
8
+ * http://opensource.org/licenses/MIT
9
+ *
10
+ */
11
+
12
+ ;(function ($, window, document, undefined) {
13
+
14
+ "use strict";
15
+
16
+ $.fn.video = function(parameters) {
17
+
18
+ var
19
+ $allModules = $(this),
20
+
21
+ moduleSelector = $allModules.selector || '',
22
+
23
+ time = new Date().getTime(),
24
+ performance = [],
25
+
26
+ query = arguments[0],
27
+ methodInvoked = (typeof query == 'string'),
28
+ queryArguments = [].slice.call(arguments, 1),
29
+
30
+ requestAnimationFrame = window.requestAnimationFrame
31
+ || window.mozRequestAnimationFrame
32
+ || window.webkitRequestAnimationFrame
33
+ || window.msRequestAnimationFrame
34
+ || function(callback) { setTimeout(callback, 0); },
35
+
36
+ returnedValue
37
+ ;
38
+
39
+ $allModules
40
+ .each(function() {
41
+ var
42
+ settings = ( $.isPlainObject(parameters) )
43
+ ? $.extend(true, {}, $.fn.video.settings, parameters)
44
+ : $.extend({}, $.fn.video.settings),
45
+
46
+ selector = settings.selector,
47
+ className = settings.className,
48
+ error = settings.error,
49
+ metadata = settings.metadata,
50
+ namespace = settings.namespace,
51
+ templates = settings.templates,
52
+
53
+ eventNamespace = '.' + namespace,
54
+ moduleNamespace = 'module-' + namespace,
55
+
56
+ $window = $(window),
57
+ $module = $(this),
58
+ $placeholder = $module.find(selector.placeholder),
59
+ $playButton = $module.find(selector.playButton),
60
+ $embed = $module.find(selector.embed),
61
+
62
+ element = this,
63
+ instance = $module.data(moduleNamespace),
64
+ module
65
+ ;
66
+
67
+ module = {
68
+
69
+ initialize: function() {
70
+ module.debug('Initializing video');
71
+ module.create();
72
+ $module
73
+ .on('click' + eventNamespace, selector.placeholder, module.play)
74
+ .on('click' + eventNamespace, selector.playButton, module.play)
75
+ ;
76
+ module.instantiate();
77
+ },
78
+
79
+ instantiate: function() {
80
+ module.verbose('Storing instance of module', module);
81
+ instance = module;
82
+ $module
83
+ .data(moduleNamespace, module)
84
+ ;
85
+ },
86
+
87
+ create: function() {
88
+ var
89
+ image = $module.data(metadata.image),
90
+ html = templates.video(image)
91
+ ;
92
+ $module.html(html);
93
+ module.refresh();
94
+ if(!image) {
95
+ module.play();
96
+ }
97
+ module.debug('Creating html for video element', html);
98
+ },
99
+
100
+ destroy: function() {
101
+ module.verbose('Destroying previous instance of video');
102
+ module.reset();
103
+ $module
104
+ .removeData(moduleNamespace)
105
+ .off(eventNamespace)
106
+ ;
107
+ },
108
+
109
+ refresh: function() {
110
+ module.verbose('Refreshing selector cache');
111
+ $placeholder = $module.find(selector.placeholder);
112
+ $playButton = $module.find(selector.playButton);
113
+ $embed = $module.find(selector.embed);
114
+ },
115
+
116
+ // sets new video
117
+ change: function(source, id, url) {
118
+ module.debug('Changing video to ', source, id, url);
119
+ $module
120
+ .data(metadata.source, source)
121
+ .data(metadata.id, id)
122
+ .data(metadata.url, url)
123
+ ;
124
+ settings.onChange();
125
+ },
126
+
127
+ // clears video embed
128
+ reset: function() {
129
+ module.debug('Clearing video embed and showing placeholder');
130
+ $module
131
+ .removeClass(className.active)
132
+ ;
133
+ $embed
134
+ .html(' ')
135
+ ;
136
+ $placeholder
137
+ .show()
138
+ ;
139
+ settings.onReset();
140
+ },
141
+
142
+ // plays current video
143
+ play: function() {
144
+ module.debug('Playing video');
145
+ var
146
+ source = $module.data(metadata.source) || false,
147
+ url = $module.data(metadata.url) || false,
148
+ id = $module.data(metadata.id) || false
149
+ ;
150
+ $embed
151
+ .html( module.generate.html(source, id, url) )
152
+ ;
153
+ $module
154
+ .addClass(className.active)
155
+ ;
156
+ settings.onPlay();
157
+ },
158
+
159
+ get: {
160
+ source: function(url) {
161
+ if(typeof url !== 'string') {
162
+ return false;
163
+ }
164
+ if(url.search('youtube.com') !== -1) {
165
+ return 'youtube';
166
+ }
167
+ else if(url.search('vimeo.com') !== -1) {
168
+ return 'vimeo';
169
+ }
170
+ return false;
171
+ },
172
+ id: function(url) {
173
+ if(url.match(settings.regExp.youtube)) {
174
+ return url.match(settings.regExp.youtube)[1];
175
+ }
176
+ else if(url.match(settings.regExp.vimeo)) {
177
+ return url.match(settings.regExp.vimeo)[2];
178
+ }
179
+ return false;
180
+ }
181
+ },
182
+
183
+ generate: {
184
+ // generates iframe html
185
+ html: function(source, id, url) {
186
+ module.debug('Generating embed html');
187
+ var
188
+ html
189
+ ;
190
+ // allow override of settings
191
+ source = source || settings.source;
192
+ id = id || settings.id;
193
+ if((source && id) || url) {
194
+ if(!source || !id) {
195
+ source = module.get.source(url);
196
+ id = module.get.id(url);
197
+ }
198
+ if(source == 'vimeo') {
199
+ html = ''
200
+ + '<iframe src="//player.vimeo.com/video/' + id + '?=' + module.generate.url(source) + '"'
201
+ + ' width="100%" height="100%"'
202
+ + ' frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe>'
203
+ ;
204
+ }
205
+ else if(source == 'youtube') {
206
+ html = ''
207
+ + '<iframe src="//www.youtube.com/embed/' + id + '?=' + module.generate.url(source) + '"'
208
+ + ' width="100%" height="100%"'
209
+ + ' frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe>'
210
+ ;
211
+ }
212
+ }
213
+ else {
214
+ module.error(error.noVideo);
215
+ }
216
+ return html;
217
+ },
218
+
219
+ // generate url parameters
220
+ url: function(source) {
221
+ var
222
+ api = (settings.api)
223
+ ? 1
224
+ : 0,
225
+ autoplay = (settings.autoplay === 'auto')
226
+ ? ($module.data('image') !== undefined)
227
+ : settings.autoplay,
228
+ hd = (settings.hd)
229
+ ? 1
230
+ : 0,
231
+ showUI = (settings.showUI)
232
+ ? 1
233
+ : 0,
234
+ // opposite used for some params
235
+ hideUI = !(settings.showUI)
236
+ ? 1
237
+ : 0,
238
+ url = ''
239
+ ;
240
+ if(source == 'vimeo') {
241
+ url = ''
242
+ + 'api=' + api
243
+ + '&amp;title=' + showUI
244
+ + '&amp;byline=' + showUI
245
+ + '&amp;portrait=' + showUI
246
+ + '&amp;autoplay=' + autoplay
247
+ ;
248
+ if(settings.color) {
249
+ url += '&amp;color=' + settings.color;
250
+ }
251
+ }
252
+ if(source == 'ustream') {
253
+ url = ''
254
+ + 'autoplay=' + autoplay
255
+ ;
256
+ if(settings.color) {
257
+ url += '&amp;color=' + settings.color;
258
+ }
259
+ }
260
+ else if(source == 'youtube') {
261
+ url = ''
262
+ + 'enablejsapi=' + api
263
+ + '&amp;autoplay=' + autoplay
264
+ + '&amp;autohide=' + hideUI
265
+ + '&amp;hq=' + hd
266
+ + '&amp;modestbranding=1'
267
+ ;
268
+ if(settings.color) {
269
+ url += '&amp;color=' + settings.color;
270
+ }
271
+ }
272
+ return url;
273
+ }
274
+ },
275
+
276
+ setting: function(name, value) {
277
+ module.debug('Changing setting', name, value);
278
+ if( $.isPlainObject(name) ) {
279
+ $.extend(true, settings, name);
280
+ }
281
+ else if(value !== undefined) {
282
+ settings[name] = value;
283
+ }
284
+ else {
285
+ return settings[name];
286
+ }
287
+ },
288
+ internal: function(name, value) {
289
+ if( $.isPlainObject(name) ) {
290
+ $.extend(true, module, name);
291
+ }
292
+ else if(value !== undefined) {
293
+ module[name] = value;
294
+ }
295
+ else {
296
+ return module[name];
297
+ }
298
+ },
299
+ debug: function() {
300
+ if(settings.debug) {
301
+ if(settings.performance) {
302
+ module.performance.log(arguments);
303
+ }
304
+ else {
305
+ module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':');
306
+ module.debug.apply(console, arguments);
307
+ }
308
+ }
309
+ },
310
+ verbose: function() {
311
+ if(settings.verbose && settings.debug) {
312
+ if(settings.performance) {
313
+ module.performance.log(arguments);
314
+ }
315
+ else {
316
+ module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':');
317
+ module.verbose.apply(console, arguments);
318
+ }
319
+ }
320
+ },
321
+ error: function() {
322
+ module.error = Function.prototype.bind.call(console.error, console, settings.name + ':');
323
+ module.error.apply(console, arguments);
324
+ },
325
+ performance: {
326
+ log: function(message) {
327
+ var
328
+ currentTime,
329
+ executionTime,
330
+ previousTime
331
+ ;
332
+ if(settings.performance) {
333
+ currentTime = new Date().getTime();
334
+ previousTime = time || currentTime;
335
+ executionTime = currentTime - previousTime;
336
+ time = currentTime;
337
+ performance.push({
338
+ 'Name' : message[0],
339
+ 'Arguments' : [].slice.call(message, 1) || '',
340
+ 'Element' : element,
341
+ 'Execution Time' : executionTime
342
+ });
343
+ }
344
+ clearTimeout(module.performance.timer);
345
+ module.performance.timer = setTimeout(module.performance.display, 500);
346
+ },
347
+ display: function() {
348
+ var
349
+ title = settings.name + ':',
350
+ totalTime = 0
351
+ ;
352
+ time = false;
353
+ clearTimeout(module.performance.timer);
354
+ $.each(performance, function(index, data) {
355
+ totalTime += data['Execution Time'];
356
+ });
357
+ title += ' ' + totalTime + 'ms';
358
+ if(moduleSelector) {
359
+ title += ' \'' + moduleSelector + '\'';
360
+ }
361
+ if($allModules.length > 1) {
362
+ title += ' ' + '(' + $allModules.length + ')';
363
+ }
364
+ if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) {
365
+ console.groupCollapsed(title);
366
+ if(console.table) {
367
+ console.table(performance);
368
+ }
369
+ else {
370
+ $.each(performance, function(index, data) {
371
+ console.log(data['Name'] + ': ' + data['Execution Time']+'ms');
372
+ });
373
+ }
374
+ console.groupEnd();
375
+ }
376
+ performance = [];
377
+ }
378
+ },
379
+ invoke: function(query, passedArguments, context) {
380
+ var
381
+ object = instance,
382
+ maxDepth,
383
+ found,
384
+ response
385
+ ;
386
+ passedArguments = passedArguments || queryArguments;
387
+ context = element || context;
388
+ if(typeof query == 'string' && object !== undefined) {
389
+ query = query.split(/[\. ]/);
390
+ maxDepth = query.length - 1;
391
+ $.each(query, function(depth, value) {
392
+ var camelCaseValue = (depth != maxDepth)
393
+ ? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1)
394
+ : query
395
+ ;
396
+ if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) {
397
+ object = object[camelCaseValue];
398
+ }
399
+ else if( object[camelCaseValue] !== undefined ) {
400
+ found = object[camelCaseValue];
401
+ return false;
402
+ }
403
+ else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) {
404
+ object = object[value];
405
+ }
406
+ else if( object[value] !== undefined ) {
407
+ found = object[value];
408
+ return false;
409
+ }
410
+ else {
411
+ module.error(error.method, query);
412
+ return false;
413
+ }
414
+ });
415
+ }
416
+ if ( $.isFunction( found ) ) {
417
+ response = found.apply(context, passedArguments);
418
+ }
419
+ else if(found !== undefined) {
420
+ response = found;
421
+ }
422
+ if($.isArray(returnedValue)) {
423
+ returnedValue.push(response);
424
+ }
425
+ else if(returnedValue !== undefined) {
426
+ returnedValue = [returnedValue, response];
427
+ }
428
+ else if(response !== undefined) {
429
+ returnedValue = response;
430
+ }
431
+ return found;
432
+ }
433
+ };
434
+
435
+ if(methodInvoked) {
436
+ if(instance === undefined) {
437
+ module.initialize();
438
+ }
439
+ module.invoke(query);
440
+ }
441
+ else {
442
+ if(instance !== undefined) {
443
+ instance.invoke('destroy');
444
+ }
445
+ module.initialize();
446
+ }
447
+ })
448
+ ;
449
+ return (returnedValue !== undefined)
450
+ ? returnedValue
451
+ : this
452
+ ;
453
+ };
454
+
455
+ $.fn.video.settings = {
456
+
457
+ name : 'Video',
458
+ namespace : 'video',
459
+
460
+ debug : false,
461
+ verbose : false,
462
+ performance : true,
463
+
464
+ metadata : {
465
+ id : 'id',
466
+ image : 'image',
467
+ source : 'source',
468
+ url : 'url'
469
+ },
470
+
471
+ source : false,
472
+ url : false,
473
+ id : false,
474
+
475
+ aspectRatio : (16/9),
476
+
477
+ onPlay : function(){},
478
+ onReset : function(){},
479
+ onChange : function(){},
480
+
481
+ // callbacks not coded yet (needs to use jsapi)
482
+ onPause : function() {},
483
+ onStop : function() {},
484
+
485
+ width : 'auto',
486
+ height : 'auto',
487
+
488
+ autoplay : 'auto',
489
+ color : '#442359',
490
+ hd : true,
491
+ showUI : false,
492
+ api : true,
493
+
494
+ regExp : {
495
+ youtube : /^(?:https?:\/\/)?(?:www\.)?(?:youtu\.be\/|youtube\.com\/(?:embed\/|v\/|watch\?v=|watch\?.+&v=))((\w|-){11})(?:\S+)?$/,
496
+ vimeo : /http:\/\/(www\.)?vimeo.com\/(\d+)($|\/)/
497
+ },
498
+
499
+ error : {
500
+ noVideo : 'No video specified',
501
+ method : 'The method you called is not defined'
502
+ },
503
+
504
+ className : {
505
+ active : 'active'
506
+ },
507
+
508
+ selector : {
509
+ embed : '.embed',
510
+ placeholder : '.placeholder',
511
+ playButton : '.play'
512
+ }
513
+ };
514
+
515
+ $.fn.video.settings.templates = {
516
+ video: function(image) {
517
+ var
518
+ html = ''
519
+ ;
520
+ if(image) {
521
+ html += ''
522
+ + '<i class="video play icon"></i>'
523
+ + '<img class="placeholder" src="' + image + '">'
524
+ ;
525
+ }
526
+ html += '<div class="embed"></div>';
527
+ return html;
528
+ }
529
+ };
530
+
531
+
532
+ })( jQuery, window , document );