j1-template 2024.3.13 → 2024.3.14
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/_includes/themes/j1/layouts/content_generator_news_panel_posts.html +1 -1
- data/_includes/themes/j1/layouts/layout_resource_generator.html +1 -4
- data/_includes/themes/j1/procedures/blocks/footer/boxes/social_media_icons.proc +24 -23
- data/_includes/themes/j1/procedures/layouts/content_writer.proc +4 -3
- data/_includes/themes/j1/procedures/layouts/default_writer.proc +37 -6
- data/_includes/themes/j1/procedures/layouts/module_writer.proc +31 -95
- data/_includes/themes/j1/procedures/layouts/resource_writer.proc +51 -29
- data/assets/data/amplitude.28.html +887 -0
- data/assets/data/amplitude.29.html +923 -0
- data/assets/data/amplitude.html +311 -46
- data/assets/data/banner.html +9 -7
- data/assets/data/masterslider.html +128 -7
- data/assets/data/panel.html +16 -65
- data/assets/theme/j1/adapter/js/amplitude.23.js +1165 -0
- data/assets/theme/j1/adapter/js/amplitude.24.js +1164 -0
- data/assets/theme/j1/adapter/js/amplitude.25.js +1268 -0
- data/assets/theme/j1/adapter/js/amplitude.js +294 -117
- data/assets/theme/j1/adapter/js/attic.js +14 -11
- data/assets/theme/j1/adapter/js/docsearch.js +2 -2
- data/assets/theme/j1/adapter/js/fab.js +2 -2
- data/assets/theme/j1/adapter/js/j1.js +8 -8
- data/assets/theme/j1/adapter/js/lazyLoader.js +60 -10
- data/assets/theme/j1/adapter/js/masonry.js +1 -1
- data/assets/theme/j1/adapter/js/masterslider.js +2 -2
- data/assets/theme/j1/adapter/js/particles.js +2 -2
- data/assets/theme/j1/adapter/js/scroller.js +2 -2
- data/assets/theme/j1/adapter/js/slick.js +2 -2
- data/assets/theme/j1/adapter/js/themes.js +1 -1
- data/assets/theme/j1/adapter/js/translator.js +2 -2
- data/assets/theme/j1/adapter/js/waves.js +1 -1
- data/assets/theme/j1/core/css/animate.css +1634 -1070
- data/assets/theme/j1/core/css/animate.css.map +1 -0
- data/assets/theme/j1/core/css/animate.min.css +2 -1
- data/assets/theme/j1/core/css/animate.min.css.map +1 -0
- data/assets/theme/j1/core/css/icon-fonts/fontawesome.css +3060 -1538
- data/assets/theme/j1/core/css/icon-fonts/fontawesome.css.map +1 -0
- data/assets/theme/j1/core/css/icon-fonts/fontawesome.min.css +2 -1
- data/assets/theme/j1/core/css/icon-fonts/fontawesome.min.css.map +1 -0
- data/assets/theme/j1/core/css/icon-fonts/iconify.css +2308 -1153
- data/assets/theme/j1/core/css/icon-fonts/iconify.css.map +1 -0
- data/assets/theme/j1/core/css/icon-fonts/iconify.min.css +2 -1
- data/assets/theme/j1/core/css/icon-fonts/iconify.min.css.map +1 -0
- data/assets/theme/j1/core/css/icon-fonts/mdi.css +16716 -8423
- data/assets/theme/j1/core/css/icon-fonts/mdi.css.map +1 -0
- data/assets/theme/j1/core/css/icon-fonts/mdi.min.css +2 -1
- data/assets/theme/j1/core/css/icon-fonts/mdi.min.css.map +1 -0
- data/assets/theme/j1/core/css/icon-fonts/mdib.css +5554 -2766
- data/assets/theme/j1/core/css/icon-fonts/mdib.css.map +1 -0
- data/assets/theme/j1/core/css/icon-fonts/mdib.min.css +2 -1
- data/assets/theme/j1/core/css/icon-fonts/mdib.min.css.map +1 -0
- data/assets/theme/j1/core/css/icon-fonts/mdil.css +742 -441
- data/assets/theme/j1/core/css/icon-fonts/mdil.css.map +1 -0
- data/assets/theme/j1/core/css/icon-fonts/mdil.min.css +2 -1
- data/assets/theme/j1/core/css/icon-fonts/mdil.min.css.map +1 -0
- data/assets/theme/j1/core/css/themes/bootstrap/bootstrap.css +6552 -3980
- data/assets/theme/j1/core/css/themes/bootstrap/bootstrap.css.map +1 -0
- data/assets/theme/j1/core/css/themes/bootstrap/bootstrap.min.css +2 -5
- data/assets/theme/j1/core/css/themes/bootstrap/bootstrap.min.css.map +1 -0
- data/assets/theme/j1/core/css/themes/unodark/bootstrap.css +6818 -4131
- data/assets/theme/j1/core/css/themes/unodark/bootstrap.css.map +1 -0
- data/assets/theme/j1/core/css/themes/unodark/bootstrap.min.css +2 -5
- data/assets/theme/j1/core/css/themes/unodark/bootstrap.min.css.map +1 -0
- data/assets/theme/j1/core/css/themes/unolight/bootstrap.css +18568 -11577
- data/assets/theme/j1/core/css/themes/unolight/bootstrap.css.map +1 -0
- data/assets/theme/j1/core/css/themes/unolight/bootstrap.min.css +2 -35
- data/assets/theme/j1/core/css/themes/unolight/bootstrap.min.css.map +1 -0
- data/assets/theme/j1/core/css/vendor.css +1771 -1043
- data/assets/theme/j1/core/css/vendor.css.map +1 -0
- data/assets/theme/j1/core/css/vendor.min.css +2 -1
- data/assets/theme/j1/core/css/vendor.min.css.map +1 -0
- data/assets/theme/j1/core/js/template.js +399 -447
- data/assets/theme/j1/core/js/template.min.js +7 -7
- data/assets/theme/j1/core/js/template.min.js.map +1 -1
- data/assets/theme/j1/modules/amplitudejs/css/theme/uno/dark/amplitude.css +4 -2
- data/assets/theme/j1/modules/amplitudejs/css/theme/uno/dark/player/compact.css +39 -4
- data/assets/theme/j1/modules/amplitudejs/css/theme/uno/dark/player/compact.min.css +1 -1
- data/assets/theme/j1/modules/amplitudejs/css/theme/uno/dark/player/large.css +57 -17
- data/assets/theme/j1/modules/amplitudejs/css/theme/uno/dark/player/large.min.css +1 -1
- data/assets/theme/j1/modules/amplitudejs/icons/player/blue/pause.png +0 -0
- data/assets/theme/j1/modules/amplitudejs/icons/player/blue/play.png +0 -0
- data/assets/theme/j1/modules/amplitudejs/icons/player/blue/play.svg +87 -0
- data/assets/theme/j1/modules/amplitudejs/icons/player/dark/skip-backward.svg +60 -0
- data/assets/theme/j1/modules/amplitudejs/icons/player/dark/skip-forward.svg +59 -0
- data/assets/theme/j1/modules/amplitudejs/js/amplitude.js +65 -21
- data/assets/theme/j1/modules/amplitudejs/js/amplitude.min.js +1 -1
- data/assets/theme/j1/modules/amplitudejs/js/tech/ytp.js +113 -0
- data/assets/theme/j1/modules/iconPicker/js/universal-icon-picker.js +471 -471
- data/assets/theme/j1/modules/j1LazyLoader/LICENSE +21 -0
- data/assets/theme/j1/modules/j1LazyLoader/js/j1Lazy.js +870 -0
- data/assets/theme/j1/modules/js-cookies/js/js.cookie.js +3 -3
- data/assets/theme/j1/modules/lazyCssLoader/js/main.0.js +166 -0
- data/assets/theme/j1/modules/lazyCssLoader/js/main.1.js +65 -0
- data/assets/theme/j1/modules/lazyCssLoader/js/main.js +66 -0
- data/assets/theme/j1/modules/lazyCssLoader/js/plugins/examplePlugin.js +13 -0
- data/assets/theme/j1/modules/lazyCssLoader/js/plugins/my-plugin.js +25 -0
- data/assets/theme/j1/modules/lazyCssLoader/js/plugins/plugin-interface.js +9 -0
- data/assets/theme/j1/modules/lazyCssLoader/js/plugins/pluginA.js +46 -0
- data/assets/theme/j1/modules/lazyLoader/js/plugins/README.md +324 -0
- data/assets/theme/j1/modules/lazyLoader/js/plugins/jquery.lazy.picture.js +188 -0
- data/assets/theme/j1/modules/lightGallery/js/lightgallery.js +1 -1
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-video.0.js +794 -0
- data/assets/theme/j1/modules/lightGallery/js/plugins/lg-video.js +151 -67
- data/assets/theme/j1/modules/slimSelect/js/select.js +1 -1
- data/assets/theme/j1/modules/slimSelect/js/select.min.js +3 -3
- data/assets/theme/j1/modules/themeSwitcher/js/switcher.js +2 -1
- data/assets/theme/j1/modules/videojs/js/plugins/players/dm/dailymotion.min.js +1 -1
- data/assets/theme/j1/modules/videojs/js/plugins/players/dm/icon/scalable/dailymotion.svg +62 -0
- data/assets/theme/j1/modules/videojs/js/plugins/players/yt/v3.0.0/youtube.js +832 -0
- data/assets/theme/j1/modules/videojs/js/plugins/players/yt/v3.0.0/youtube.min.js +17 -0
- data/assets/theme/j1/modules/videojs/js/plugins/players/yt/youtube.min.js +1 -1
- data/assets/theme/j1/modules/videojs/js/video.js +2 -2
- data/lib/j1/version.rb +1 -1
- data/lib/starter_web/README.md +577 -560
- data/lib/starter_web/_config.yml +2 -2
- data/lib/starter_web/_data/blocks/footer.yml +10 -5
- data/lib/starter_web/_data/blocks/panel.yml +2 -2
- data/lib/starter_web/_data/layouts/default.yml +14 -3
- data/lib/starter_web/_data/modules/amplitude.yml +145 -0
- data/lib/starter_web/_data/modules/defaults/amplitude.yml +29 -7
- data/lib/starter_web/_data/modules/defaults/lazyLoader.yml +2 -2
- data/lib/starter_web/_data/modules/gallery.yml +136 -0
- data/lib/starter_web/_data/modules/lazyLoader.0.yml +118 -0
- data/lib/starter_web/_data/modules/lazyLoader.yml +68 -31
- data/lib/starter_web/_data/modules/masonry.yml +4 -4
- data/lib/starter_web/_data/modules/masterslider.yml +118 -12
- data/lib/starter_web/_data/modules/navigator_menu.yml +831 -803
- data/lib/starter_web/_data/resources.yml +154 -190
- data/lib/starter_web/_data/templates/feed.xml +1 -1
- data/lib/starter_web/_includes/attributes.asciidoc +1 -0
- data/lib/starter_web/_plugins/asciidoctor/amplitude-block.rb +1 -1
- data/lib/starter_web/_plugins/asciidoctor/dailymotion-block.rb +1 -1
- data/lib/starter_web/_plugins/asciidoctor/gallery-block.rb +4 -2
- data/lib/starter_web/_plugins/asciidoctor/masonry-block.rb +1 -1
- data/lib/starter_web/_plugins/asciidoctor/videojs-block.rb +58 -46
- data/lib/starter_web/_plugins/asciidoctor/vimeo-block.rb +26 -19
- data/lib/starter_web/_plugins/asciidoctor/youtube-block.rb +30 -40
- data/lib/starter_web/_plugins/index/lunr.rb +1 -1
- data/lib/starter_web/assets/image/icons/lanus/favicon.ico +0 -0
- data/lib/starter_web/assets/image/icons/lanus/lanus-512x512.png +0 -0
- data/lib/starter_web/assets/image/icons/lanus/lanus.ico +0 -0
- data/lib/starter_web/assets/image/icons/lanus/lanus.png +0 -0
- data/lib/starter_web/assets/image/icons/lanus/scalable/lanus.svg +76 -0
- data/lib/starter_web/assets/image/icons/lanus/scalable/lanus_sw.svg +62 -0
- data/lib/starter_web/assets/image/modules/icons/social/scalable/icon-twitter-x-28 - social.svg +86 -0
- data/lib/starter_web/assets/image/modules/icons/social/scalable/icon-twitter-x-28.svg +64 -0
- data/lib/starter_web/assets/image/modules/icons/social/scalable/icon-twitter-x.svg +1 -0
- data/lib/starter_web/assets/image/modules/icons/social/twitter_x.png +0 -0
- data/lib/starter_web/package.json +7 -18
- data/lib/starter_web/pages/public/amplitude_yt_tester.adoc +218 -0
- data/lib/starter_web/pages/public/features/template.adoc +18 -8
- data/lib/starter_web/pages/public/features/template.asciidoc +758 -0
- data/lib/starter_web/pages/public/lazy_loader_tester.adoc +402 -0
- data/lib/starter_web/pages/public/manuals/ytdl/man.adoc +3020 -0
- data/lib/starter_web/pages/public/manuals/ytdl/man.md +2378 -0
- data/lib/starter_web/pages/public/tools/previewer/_includes/attributes.asciidoc +0 -16
- data/lib/starter_web/pages/public/tools/previewer/_includes/documents/amplitudejs.large.css.asciidoc +505 -0
- data/lib/starter_web/pages/public/tools/previewer/_includes/documents/frame.hover.html +69 -0
- data/lib/starter_web/pages/public/tools/previewer/_includes/documents/frame.nested.html +75 -0
- data/lib/starter_web/pages/public/tools/previewer/_includes/documents/frame.textarea.html +57 -0
- data/lib/starter_web/pages/public/tools/previewer/_includes/documents/my.content.html +112 -0
- data/lib/starter_web/pages/public/tools/previewer/preview_amplitudejs.adoc +172 -0
- data/lib/starter_web/pages/public/tour/_includes/attributes.asciidoc +2 -2
- data/lib/starter_web/pages/public/tour/_includes/documents/419_advanced_modals_demo.asciidoc +16 -16
- data/lib/starter_web/pages/public/tour/asciidoc_extensions.adoc +13 -3
- data/lib/starter_web/pages/public/tour/bootstrap_themes.adoc +12 -3
- data/lib/starter_web/pages/public/tour/highlghter_rouge.adoc +13 -3
- data/lib/starter_web/pages/public/tour/icon_fonts.adoc +12 -3
- data/lib/starter_web/pages/public/tour/modal_extentions.adoc +12 -6
- data/lib/starter_web/pages/public/tour/{playback_audio.adoc → play_audio.adoc} +207 -188
- data/lib/starter_web/pages/public/tour/{playback_video.adoc → play_video.adoc} +49 -51
- data/lib/starter_web/pages/public/tour/present_images.adoc +27 -5
- data/lib/starter_web/pages/public/tour/quicksearch.adoc +13 -3
- data/lib/starter_web/pages/public/tour/responsive_tables.adoc +13 -4
- data/lib/starter_web/pages/public/tour/typography.adoc +12 -3
- metadata +90 -22
- /data/assets/theme/j1/modules/{lazyLoader → j1LazyLoader/js}/plugins/README.md +0 -0
- /data/assets/theme/j1/modules/{lazyLoader/plugins/jquery.lazy.picture.js → j1LazyLoader/js/plugins/picture.js} +0 -0
- /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.ajax.js +0 -0
- /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.ajax.min.js +0 -0
- /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.av.js +0 -0
- /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.av.min.js +0 -0
- /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.iframe.js +0 -0
- /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.iframe.min.js +0 -0
- /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.noop.js +0 -0
- /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.noop.min.js +0 -0
- /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.picture.min.js +0 -0
- /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.script.js +0 -0
- /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.script.min.js +0 -0
- /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.vimeo.js +0 -0
- /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.vimeo.min.js +0 -0
- /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.youtube.js +0 -0
- /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.youtube.min.js +0 -0
@@ -0,0 +1,57 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<meta charset="utf-8">
|
5
|
+
<title>iFrame message passing test 5</title>
|
6
|
+
<meta name="description" content="iFrame message passing test 5">
|
7
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
8
|
+
<meta name="robots" content="noindex">
|
9
|
+
<meta name="robots" content="nofollow">
|
10
|
+
|
11
|
+
<link rel="stylesheet" href="/assets/theme/j1/core/css/themes/unolight/bootstrap.css">
|
12
|
+
<link rel="stylesheet" href="/assets/theme/j1/core/css/icon-fonts/mdib.css">
|
13
|
+
<link rel="stylesheet" href="/assets/theme/j1/core/css/vendor.css">
|
14
|
+
|
15
|
+
<script src="/assets/theme/j1/adapter/js/j1.js"></script>
|
16
|
+
<script src="/assets/theme/j1/modules/jquery/js/jquery.js"></script>
|
17
|
+
<script src="/assets/theme/j1/modules/popper/js/popper.js"></script>
|
18
|
+
|
19
|
+
</head>
|
20
|
+
|
21
|
+
<body>
|
22
|
+
|
23
|
+
|
24
|
+
<a href="my.content.html">Back to page</a>
|
25
|
+
<h2>iFrame TextArea Example</h2>
|
26
|
+
<p>
|
27
|
+
Resize the textarea element below.
|
28
|
+
</p>
|
29
|
+
|
30
|
+
<p id="callback"></p>
|
31
|
+
|
32
|
+
|
33
|
+
|
34
|
+
|
35
|
+
|
36
|
+
<textarea id="textArea">Resize me</textarea>
|
37
|
+
|
38
|
+
<!-- script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script -->
|
39
|
+
<script src="../js/client/iframeResizer.contentWindow.min.js"></script>
|
40
|
+
|
41
|
+
<script>
|
42
|
+
function store() {
|
43
|
+
this.x = this.offsetWidth
|
44
|
+
this.y = this.offsetHeight
|
45
|
+
}
|
46
|
+
|
47
|
+
$('textarea')
|
48
|
+
.each(store)
|
49
|
+
.on('mouseover mouseout', function() {
|
50
|
+
if (this.offsetWidth !== this.x || this.offsetHeight !== this.y) {
|
51
|
+
if ('parentIFrame' in window) parentIFrame.size()
|
52
|
+
store.call(this)
|
53
|
+
}
|
54
|
+
})
|
55
|
+
</script>
|
56
|
+
</body>
|
57
|
+
</html>
|
@@ -0,0 +1,112 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
|
4
|
+
<head>
|
5
|
+
<meta charset="utf-8">
|
6
|
+
<title>iFrame message passing test 1</title>
|
7
|
+
<meta name="description" content="iFrame message passing test 1">
|
8
|
+
<meta name="viewport" content="width=device-width">
|
9
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
10
|
+
<meta name="robots" content="noindex">
|
11
|
+
<meta name="robots" content="nofollow">
|
12
|
+
|
13
|
+
<link rel="stylesheet" href="/assets/theme/j1/core/css/themes/unolight/bootstrap.css">
|
14
|
+
<link rel="stylesheet" href="/assets/theme/j1/core/css/vendor.css">
|
15
|
+
|
16
|
+
<script src="/assets/theme/j1/modules/jquery/js/jquery.js"></script>
|
17
|
+
<script src="/assets/theme/j1/modules/popper/js/popper.js"></script>
|
18
|
+
<script src="/assets/theme/j1/modules/iframeResizer/js/client/iframeResizer.contentWindow.js"></script>
|
19
|
+
</head>
|
20
|
+
|
21
|
+
<body class="r-text-200 js-toc-content">
|
22
|
+
|
23
|
+
<p id="callback"></p>
|
24
|
+
|
25
|
+
<b>iFrame options: </b>
|
26
|
+
|
27
|
+
<a id="nested" href="frame.nested.html">Nested</a>
|
28
|
+
|
29
|
+
<a href="frame.hover.html">Hover</a>
|
30
|
+
|
31
|
+
<a href="frame.textarea.html">TextArea</a>
|
32
|
+
|
33
|
+
<div class="paragraph mt-3">
|
34
|
+
|
35
|
+
<p>
|
36
|
+
But I must explain to you how all this mistaken idea of denouncing
|
37
|
+
pleasure and praising pain was born and I will give you a complete account
|
38
|
+
of the system, and expound the actual teachings of the great explorer of
|
39
|
+
the truth, the master-builder of human happiness. No one rejects,
|
40
|
+
dislikes, or avoids pleasure itself, because it is pleasure, but because
|
41
|
+
those who do not know how to pursue pleasure rationally encounter
|
42
|
+
consequences that are extremely painful. Nor again is there anyone who
|
43
|
+
loves or pursues or desires to obtain pain of itself, because it is pain,
|
44
|
+
but because occasionally circumstances occur in which toil and pain can
|
45
|
+
procure him some great pleasure. To take a trivial example, which of us
|
46
|
+
ever undertakes laborious physical exercise, except to obtain some
|
47
|
+
advantage from it? But who has any right to find fault with a man who
|
48
|
+
chooses to enjoy a pleasure that has no annoying consequences, or one who
|
49
|
+
avoids a pain that produces no resultant pleasure?
|
50
|
+
</p>
|
51
|
+
<p>
|
52
|
+
On the other hand, we denounce with righteous indignation and dislike men
|
53
|
+
who are so beguiled and demoralized by the charms of pleasure of the
|
54
|
+
moment, so blinded by desire, that they cannot foresee the pain and
|
55
|
+
trouble that are bound to ensue; and equal blame belongs to those who fail
|
56
|
+
in their duty through weakness of will, which is the same as saying
|
57
|
+
through shrinking from toil and pain. These cases are perfectly simple and
|
58
|
+
easy to distinguish. In a free hour, when our power of choice is
|
59
|
+
untrammelled and when nothing prevents our being able to do what we like
|
60
|
+
best, every pleasure is to be welcomed and every pain avoided. But in
|
61
|
+
certain circumstances and owing to the claims of duty or the obligations
|
62
|
+
of business it will frequently occur that pleasures have to be repudiated
|
63
|
+
and annoyances accepted. The wise man therefore always holds in these
|
64
|
+
matters to this principle of selection: he rejects pleasures to secure
|
65
|
+
other greater pleasures, or else he endures pains to avoid worse pains.
|
66
|
+
</p>
|
67
|
+
<p>
|
68
|
+
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
|
69
|
+
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim
|
70
|
+
veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea
|
71
|
+
commodo consequat. Duis aute irure dolor in reprehenderit in voluptate
|
72
|
+
velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat
|
73
|
+
cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id
|
74
|
+
est laborum.
|
75
|
+
</p>
|
76
|
+
<p>
|
77
|
+
Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi
|
78
|
+
ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit
|
79
|
+
in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur
|
80
|
+
sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt
|
81
|
+
mollit anim id est laborum.
|
82
|
+
</p>
|
83
|
+
|
84
|
+
</div>
|
85
|
+
|
86
|
+
|
87
|
+
|
88
|
+
|
89
|
+
|
90
|
+
<script>
|
91
|
+
var iFrameResizer = {
|
92
|
+
onResized: function(messageData) {
|
93
|
+
|
94
|
+
$('p#callback').html (
|
95
|
+
'<b>Frame ID:</b> ' + messageData.iframe.id +
|
96
|
+
' <b>Height:</b> ' + messageData.height +
|
97
|
+
' <b>Width:</b> ' + messageData.width +
|
98
|
+
' <b>Event type:</b> ' + messageData.type
|
99
|
+
);
|
100
|
+
},
|
101
|
+
onMessage: function(messageData) {
|
102
|
+
$('p#callback').html (
|
103
|
+
'<b>Frame ID:</b> ' + messageData.iframe.id +
|
104
|
+
' <b>Message:</b> ' + messageData.message
|
105
|
+
);
|
106
|
+
}
|
107
|
+
}
|
108
|
+
</script>
|
109
|
+
|
110
|
+
|
111
|
+
</body>
|
112
|
+
</html>
|
@@ -0,0 +1,172 @@
|
|
1
|
+
---
|
2
|
+
title: Amplitude
|
3
|
+
title_extention: Custom Audio Player
|
4
|
+
tagline: Custom Audio Player
|
5
|
+
|
6
|
+
date: 2024-04-17
|
7
|
+
#last_modified: 2024-01-01
|
8
|
+
|
9
|
+
description: >
|
10
|
+
AmplitudeJS is a JavaScript library to control the design
|
11
|
+
of audio media players on web pages. The concept allows
|
12
|
+
designers to fully control the look and feel of players
|
13
|
+
without deep scripting knowledge.
|
14
|
+
keywords: >
|
15
|
+
open source, free, template, jekyll, jekyllone, web,
|
16
|
+
sites, static, jamstack, bootstrap, html, html5, audio,
|
17
|
+
AmplitudeJS, Amplitude
|
18
|
+
|
19
|
+
categories: [ Previewer ]
|
20
|
+
tags: [ Amplitude, Audio ]
|
21
|
+
|
22
|
+
image:
|
23
|
+
path: /assets/image/icons/videojs/videojs-poster.png
|
24
|
+
width: 1920
|
25
|
+
height: 1280
|
26
|
+
|
27
|
+
regenerate: true
|
28
|
+
personalization: true
|
29
|
+
permalink: /pages/public/tools/previewer/amplitudejs/
|
30
|
+
|
31
|
+
resources: [ amplitudejs ]
|
32
|
+
resource_options:
|
33
|
+
- toccer:
|
34
|
+
collapseDepth: 2
|
35
|
+
- attic:
|
36
|
+
slides:
|
37
|
+
- url: /assets/image/modules/attics/1920x1280/alexey-ruban.jpg
|
38
|
+
alt: Photo by Alexey Ruban on Unsplash
|
39
|
+
badge:
|
40
|
+
type: unsplash
|
41
|
+
author: Alexey Ruban
|
42
|
+
href: //unsplash.com/de/@intelligenciya
|
43
|
+
---
|
44
|
+
|
45
|
+
// Page Initializer
|
46
|
+
// =============================================================================
|
47
|
+
// Enable the Liquid Preprocessor
|
48
|
+
:page-liquid:
|
49
|
+
|
50
|
+
// Set (local) page attributes here
|
51
|
+
// -----------------------------------------------------------------------------
|
52
|
+
// :page--attr: <attr-value>
|
53
|
+
|
54
|
+
// Load Liquid procedures
|
55
|
+
// -----------------------------------------------------------------------------
|
56
|
+
{% capture load_attributes %}themes/{{site.template.name}}/procedures/global/attributes_loader.proc{%endcapture%}
|
57
|
+
|
58
|
+
// Load page attributes
|
59
|
+
// -----------------------------------------------------------------------------
|
60
|
+
{% include {{load_attributes}} scope="all" %}
|
61
|
+
|
62
|
+
|
63
|
+
// Page content
|
64
|
+
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
65
|
+
// See: https://521dimensions.com/open-source/amplitudejs/docs
|
66
|
+
// See: https://github.com/mediaelement/mediaelement-plugins
|
67
|
+
// See: https://github.com/serversideup/amplitudejs/
|
68
|
+
|
69
|
+
[role="dropcap"]
|
70
|
+
The Audio tag in HTML5 is a great way to add audio media to web pages.
|
71
|
+
However, the browser fully controls the audio playback interface,
|
72
|
+
which can limit or even break a page's design if audio media is used.
|
73
|
+
|
74
|
+
AmplitudeJS for the J1 Template offers a straightforward solution for web
|
75
|
+
developers. It allows them to easily customize the appearance of their audio
|
76
|
+
players without the need for complex scripting. By leveraging J1 Template
|
77
|
+
and Amplitude's API, web designers can craft unique interfaces that define
|
78
|
+
the visual and functional aspects of a player's audio control elements.
|
79
|
+
|
80
|
+
mdi:clock-time-five-outline[24px, md-gray mr-2]
|
81
|
+
*5-10 Minutes* to read
|
82
|
+
|
83
|
+
// Include sub-documents (if any)
|
84
|
+
// -----------------------------------------------------------------------------
|
85
|
+
// include::{documentdir}/amplitudejs.compact.css.asciidoc[]
|
86
|
+
// include::{documentdir}/amplitudejs.large.css.asciidoc[]
|
87
|
+
// include::{documentdir}/amplitudejs.mini.css.asciidoc[]
|
88
|
+
|
89
|
+
[role="mt-4"]
|
90
|
+
The J1 Template implements custom players based on the (default) theme Uno.
|
91
|
+
The color scheme used matches the look and feel of the template to preserve
|
92
|
+
the page design.
|
93
|
+
|
94
|
+
Three types of AmplitudeJS players are build-in for the J1 template system:
|
95
|
+
|
96
|
+
* Mini Player
|
97
|
+
* Compact Player (default payer)
|
98
|
+
* Large Player
|
99
|
+
|
100
|
+
[role="mt-4"]
|
101
|
+
[NOTE]
|
102
|
+
====
|
103
|
+
Amplitude players for the J1 Template are mobile-friendly. Instead of
|
104
|
+
clicking on the appropriate elements, touch events are applied to all
|
105
|
+
mobile devices.
|
106
|
+
====
|
107
|
+
|
108
|
+
|
109
|
+
[role="mt-5"]
|
110
|
+
== Mini Player
|
111
|
+
|
112
|
+
In the context of complex components on a web page, like an audio player,
|
113
|
+
a mini player refers to a minimized version of full players. It typically
|
114
|
+
offers basic playback controls, such as pause, play, and
|
115
|
+
volume adjustment, while taking up less screen space.
|
116
|
+
|
117
|
+
Mini players are beneficial when you want to listen to audio in the
|
118
|
+
background without dedicating the entire screen to the player. They
|
119
|
+
are commonly found on music streaming services, podcast platforms, and
|
120
|
+
websites with embedded audio content.
|
121
|
+
|
122
|
+
.Emancipator · Dusk To Dawn
|
123
|
+
amplitude::free_emancipator_mini[role="mt-3 mb-5"]
|
124
|
+
|
125
|
+
.Royalty Free Music · Disco 80th
|
126
|
+
amplitude::free_disco_mini[role="mt-3 mb-5"]
|
127
|
+
|
128
|
+
lorem:sentences[5]
|
129
|
+
|
130
|
+
[role="mt-5"]
|
131
|
+
== Compact Player
|
132
|
+
|
133
|
+
A complex component like an audio player on a web page, *compact*
|
134
|
+
typically refers to a design or layout that minimizes the component's
|
135
|
+
space while maintaining its functionality and usability.
|
136
|
+
|
137
|
+
////
|
138
|
+
The *compact design* for an audio player is an efficient approach that
|
139
|
+
involves condensing the player controls and display elements into a smaller
|
140
|
+
area. It uses icons or symbols instead of text labels where possible, and
|
141
|
+
possibly hides less frequently used features behind menus or dropdowns to
|
142
|
+
reduce clutter, thereby instilling confidence in its effectiveness.
|
143
|
+
|
144
|
+
A *compact* design allows the audio player to fit neatly within the web
|
145
|
+
page's layout without overwhelming or dominating the content around it.
|
146
|
+
The design aims to balance functionality and space efficiency, ensuring
|
147
|
+
users can easily access and control the audio playback without sacrificing
|
148
|
+
too much screen space.
|
149
|
+
////
|
150
|
+
|
151
|
+
.Emancipator · Dusk To Dawn
|
152
|
+
amplitude::free_emancipator_compact[role="mt-3 mb-5"]
|
153
|
+
|
154
|
+
.Royalty Free Music · Disco 80th
|
155
|
+
amplitude::free_disco_compact[role="mt-3 mb-5"]
|
156
|
+
|
157
|
+
lorem:sentences[5]
|
158
|
+
|
159
|
+
|
160
|
+
[role="mt-5"]
|
161
|
+
== Large Player
|
162
|
+
|
163
|
+
lorem:sentences[5]
|
164
|
+
|
165
|
+
.Emancipator · Dusk To Dawn
|
166
|
+
amplitude::free_emancipator_large[role="mt-3 mb-5"]
|
167
|
+
|
168
|
+
.Royalty Free Music · Disco 80th
|
169
|
+
amplitude::free_disco_large[role="mt-3 mb-5"]
|
170
|
+
|
171
|
+
[role="mb-8"]
|
172
|
+
lorem:sentences[3]
|
@@ -39,8 +39,8 @@ tag::urls[]
|
|
39
39
|
:url-tour--image_headers: /pages/public/tour/image_header
|
40
40
|
:url-tour--readme-first: /pages/public/learn/read_me_first/
|
41
41
|
:url-tour--present-images: /pages/public/tour/present_images/
|
42
|
-
:url-tour--
|
43
|
-
:url-tour--
|
42
|
+
:url-tour--present-audio: /pages/public/tour/present_audio/
|
43
|
+
:url-tour--present-video: /pages/public/tour/present_video/
|
44
44
|
:url-tour--cards: /pages/public/tour/cards/
|
45
45
|
:url-tour--typography: /pages/public/tour/typography/
|
46
46
|
:url-tour--asciidoc-extensions: /pages/public/tour/asciidoc_extensions/
|
data/lib/starter_web/pages/public/tour/_includes/documents/419_advanced_modals_demo.asciidoc
CHANGED
@@ -16,8 +16,8 @@
|
|
16
16
|
<p class="pt-1 pr-2">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Impedit nisi quo provident fugiat reprehenderit nostrum quos..</p>
|
17
17
|
</div>
|
18
18
|
<div class="row px-4">
|
19
|
-
<a type="button" class="btn btn-primary mr-2">Yes, please</a>
|
20
|
-
<a type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">No, thanks</a>
|
19
|
+
<a href="#" type="button" class="btn btn-primary mr-2">Yes, please</a>
|
20
|
+
<a href="#" type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">No, thanks</a>
|
21
21
|
</div>
|
22
22
|
</div>
|
23
23
|
</div>
|
@@ -54,8 +54,8 @@
|
|
54
54
|
</div>
|
55
55
|
<!-- Footer -->
|
56
56
|
<div class="modal-footer justify-content-center">
|
57
|
-
<a type="button" class="btn btn-primary mr-2">Yes, please</a>
|
58
|
-
<a type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">No, thanks</a>
|
57
|
+
<a href="#" type="button" class="btn btn-primary mr-2">Yes, please</a>
|
58
|
+
<a href="#" type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">No, thanks</a>
|
59
59
|
</div>
|
60
60
|
</div>
|
61
61
|
<!-- END Content -->
|
@@ -90,8 +90,8 @@
|
|
90
90
|
</div>
|
91
91
|
<!-- Footer -->
|
92
92
|
<div class="modal-footer justify-content-center">
|
93
|
-
<a type="button" class="btn btn-primary mr-2">Yes, please</a>
|
94
|
-
<a type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">No, thanks</a>
|
93
|
+
<a href="#" type="button" class="btn btn-primary mr-2">Yes, please</a>
|
94
|
+
<a href="#" type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">No, thanks</a>
|
95
95
|
</div>
|
96
96
|
</div>
|
97
97
|
<!-- END Content -->
|
@@ -113,8 +113,8 @@
|
|
113
113
|
<!-- Body -->
|
114
114
|
<div class="modal-body">
|
115
115
|
<p class="mt-1 ml-3 mr-2">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Impedit nisi quo provident fugiat reprehenderit nostrum quos..</p><div class="row ml-3">
|
116
|
-
<a type="button" class="btn btn-primary mr-2">Yes, please</a>
|
117
|
-
<a type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">No, thanks<div class="ripple-container"><div class="ripple-decorator ripple-on ripple-out" style="left: 51.4063px; top: 20px; background-color: rgb(1, 211, 107); transform: scale(14.5548);"></div></div></a>
|
116
|
+
<a href="#" type="button" class="btn btn-primary mr-2">Yes, please</a>
|
117
|
+
<a href="#" type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">No, thanks<div class="ripple-container"><div class="ripple-decorator ripple-on ripple-out" style="left: 51.4063px; top: 20px; background-color: rgb(1, 211, 107); transform: scale(14.5548);"></div></div></a>
|
118
118
|
</div>
|
119
119
|
</div>
|
120
120
|
</div>
|
@@ -156,8 +156,8 @@
|
|
156
156
|
</div>
|
157
157
|
<!-- Footer -->
|
158
158
|
<div class="modal-footer justify-content-center">
|
159
|
-
<a type="button" class="btn btn-primary mr-2">Yes, please</a>
|
160
|
-
<a type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">No, thanks</a>
|
159
|
+
<a href="#" type="button" class="btn btn-primary mr-2">Yes, please</a>
|
160
|
+
<a href="#" type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">No, thanks</a>
|
161
161
|
</div>
|
162
162
|
</div>
|
163
163
|
<!-- END Content -->
|
@@ -200,8 +200,8 @@
|
|
200
200
|
</div>
|
201
201
|
<!-- Footer -->
|
202
202
|
<div class="modal-footer justify-content-center">
|
203
|
-
<a type="button" class="btn btn-primary mr-2">Yes, please</a>
|
204
|
-
<a type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">No, thanks</a>
|
203
|
+
<a href="#" type="button" class="btn btn-primary mr-2">Yes, please</a>
|
204
|
+
<a href="#" type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">No, thanks</a>
|
205
205
|
</div>
|
206
206
|
</div>
|
207
207
|
<!-- END Content -->
|
@@ -263,8 +263,8 @@
|
|
263
263
|
</div>
|
264
264
|
<!-- Footer -->
|
265
265
|
<div class="modal-footer">
|
266
|
-
<a type="button" class="btn btn-primary mr-2">Yes, please</a>
|
267
|
-
<a type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">No, thanks</a>
|
266
|
+
<a href="#" type="button" class="btn btn-primary mr-2">Yes, please</a>
|
267
|
+
<a href="#" type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">No, thanks</a>
|
268
268
|
</div>
|
269
269
|
</div>
|
270
270
|
<!-- END Content -->
|
@@ -326,8 +326,8 @@
|
|
326
326
|
</div>
|
327
327
|
<!-- Footer -->
|
328
328
|
<div class="modal-footer">
|
329
|
-
<a type="button" class="btn btn-primary mr-2">Yes, please</a>
|
330
|
-
<a type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">No, thanks</a>
|
329
|
+
<a href="#" type="button" class="btn btn-primary mr-2">Yes, please</a>
|
330
|
+
<a href="#" type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal">No, thanks</a>
|
331
331
|
</div>
|
332
332
|
</div>
|
333
333
|
<!-- END Content -->
|
@@ -48,7 +48,11 @@ resource_options:
|
|
48
48
|
// Set (local) page attributes here
|
49
49
|
// -----------------------------------------------------------------------------
|
50
50
|
// :page--attr: <attr-value>
|
51
|
-
:
|
51
|
+
:time-num--string: 5-10
|
52
|
+
:time-en--string: Minutes
|
53
|
+
:time-en--description: to read
|
54
|
+
:time-de--string: Minuten
|
55
|
+
:time-de--description: Lesezeit
|
52
56
|
|
53
57
|
// Load Liquid procedures
|
54
58
|
// -----------------------------------------------------------------------------
|
@@ -58,6 +62,7 @@ resource_options:
|
|
58
62
|
// -----------------------------------------------------------------------------
|
59
63
|
{% include {{load_attributes}} scope="all" %}
|
60
64
|
|
65
|
+
|
61
66
|
// Page content
|
62
67
|
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
63
68
|
[role="dropcap"]
|
@@ -82,8 +87,13 @@ Extensions for the markup language Asciidoc were made especially for documents
|
|
82
87
|
of the Jekyll content type *page*, but can be used for *posts* or *collections*
|
83
88
|
as well.
|
84
89
|
|
85
|
-
|
86
|
-
|
90
|
+
[subs=attributes]
|
91
|
+
++++
|
92
|
+
<div class="video-title">
|
93
|
+
<i class="mdib mdib-clock-outline mdib-24px mr-2"></i>
|
94
|
+
{time-num--string} {time-en--string} {time-en--description}
|
95
|
+
</div>
|
96
|
+
++++
|
87
97
|
|
88
98
|
// Include sub-documents (if any)
|
89
99
|
// -----------------------------------------------------------------------------
|
@@ -48,7 +48,11 @@ resource_options:
|
|
48
48
|
// Set (local) page attributes here
|
49
49
|
// -----------------------------------------------------------------------------
|
50
50
|
// :page--attr: <attr-value>
|
51
|
-
:
|
51
|
+
:time-num--string: 3
|
52
|
+
:time-en--string: Minutes
|
53
|
+
:time-en--description: to read
|
54
|
+
:time-de--string: Minuten
|
55
|
+
:time-de--description: Lesezeit
|
52
56
|
|
53
57
|
// Load Liquid procedures
|
54
58
|
// -----------------------------------------------------------------------------
|
@@ -72,8 +76,13 @@ overall layout, text, tables, and form elements across all modern web browsers
|
|
72
76
|
available on the market. In addition, developers can take advantage of already
|
73
77
|
defined CSS classes in Bootstrap to customize a layout individually.
|
74
78
|
|
75
|
-
|
76
|
-
|
79
|
+
[subs=attributes]
|
80
|
+
++++
|
81
|
+
<div class="video-title">
|
82
|
+
<i class="mdi mdi-gray mdi-clock-time-five-outline mdi-24px mr-2"></i>
|
83
|
+
{time-num--string} {time-en--string} {time-en--description}
|
84
|
+
</div>
|
85
|
+
++++
|
77
86
|
|
78
87
|
// Include sub-documents (if any)
|
79
88
|
// -----------------------------------------------------------------------------
|
@@ -47,7 +47,11 @@ resource_options:
|
|
47
47
|
// Set (local) page attributes here
|
48
48
|
// -----------------------------------------------------------------------------
|
49
49
|
// :page--attr: <attr-value>
|
50
|
-
:
|
50
|
+
:time-num--string: 3
|
51
|
+
:time-en--string: Minutes
|
52
|
+
:time-en--description: to read
|
53
|
+
:time-de--string: Minuten
|
54
|
+
:time-de--description: Lesezeit
|
51
55
|
|
52
56
|
// Load Liquid procedures
|
53
57
|
// -----------------------------------------------------------------------------
|
@@ -57,6 +61,7 @@ resource_options:
|
|
57
61
|
// -----------------------------------------------------------------------------
|
58
62
|
{% include {{load_attributes}} scope="all" %}
|
59
63
|
|
64
|
+
|
60
65
|
// Page content
|
61
66
|
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
62
67
|
[role="dropcap"]
|
@@ -67,8 +72,13 @@ output using standard ANSI 256-colors displayed by all current browsers.
|
|
67
72
|
Find available themes for selected languages to see how highlighting works
|
68
73
|
using Rouge.
|
69
74
|
|
70
|
-
|
71
|
-
|
75
|
+
[subs=attributes]
|
76
|
+
++++
|
77
|
+
<div class="video-title">
|
78
|
+
<i class="mdib mdib-clock-outline mdib-24px mr-2"></i>
|
79
|
+
{time-num--string} {time-en--string} {time-en--description}
|
80
|
+
</div>
|
81
|
+
++++
|
72
82
|
|
73
83
|
// Include sub-documents (if any)
|
74
84
|
// -----------------------------------------------------------------------------
|
@@ -47,7 +47,11 @@ resource_options:
|
|
47
47
|
// Set (local) page attributes here
|
48
48
|
// -----------------------------------------------------------------------------
|
49
49
|
// :page--attr: <attr-value>
|
50
|
-
:
|
50
|
+
:time-num--string: 5-10
|
51
|
+
:time-en--string: Minutes
|
52
|
+
:time-en--description: to read
|
53
|
+
:time-de--string: Minuten
|
54
|
+
:time-de--description: Lesezeit
|
51
55
|
|
52
56
|
// Load Liquid procedures
|
53
57
|
// -----------------------------------------------------------------------------
|
@@ -85,8 +89,13 @@ the so-called *Unified Open Source Icon Framework* -- see section
|
|
85
89
|
<<Iconify-Framework Icons>> for more information.
|
86
90
|
====
|
87
91
|
|
88
|
-
|
89
|
-
|
92
|
+
[subs=attributes]
|
93
|
+
++++
|
94
|
+
<div class="video-title">
|
95
|
+
<i class="mdib mdib-clock-outline mdib-24px mr-2"></i>
|
96
|
+
{time-num--string} {time-en--string} {time-en--description}
|
97
|
+
</div>
|
98
|
+
++++
|
90
99
|
|
91
100
|
// Include sub-documents (if any)
|
92
101
|
// -----------------------------------------------------------------------------
|
@@ -44,7 +44,11 @@ resource_options:
|
|
44
44
|
// Set (local) page attributes here
|
45
45
|
// -----------------------------------------------------------------------------
|
46
46
|
// :page--attr: <attr-value>
|
47
|
-
:
|
47
|
+
:time-num--string: 5-10
|
48
|
+
:time-en--string: Minutes
|
49
|
+
:time-en--description: to read
|
50
|
+
:time-de--string: Minuten
|
51
|
+
:time-de--description: Lesezeit
|
48
52
|
|
49
53
|
// Load Liquid procedures
|
50
54
|
// -----------------------------------------------------------------------------
|
@@ -65,14 +69,16 @@ important information to your visitors.
|
|
65
69
|
The dialogs are positioned over everything else in the document so that
|
66
70
|
messages get the full user's attention.
|
67
71
|
|
68
|
-
|
69
|
-
|
72
|
+
[subs=attributes]
|
73
|
+
++++
|
74
|
+
<div class="video-title">
|
75
|
+
<i class="mdib mdib-clock-outline mdib-24px mr-2"></i>
|
76
|
+
{time-num--string} {time-en--string} {time-en--description}
|
77
|
+
</div>
|
78
|
+
++++
|
70
79
|
|
71
80
|
// Include sub-documents (if any)
|
72
81
|
// -----------------------------------------------------------------------------
|
73
|
-
|
74
|
-
// Include the modals HTML portion (hidden)
|
75
|
-
// -----------------------------------------------------------------------------
|
76
82
|
include::{documentdir}/419_advanced_modals_demo.asciidoc[]
|
77
83
|
|
78
84
|
[role="mt-5"]
|