j1-template 2022.3.1 → 2022.4.0

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 (59) hide show
  1. checksums.yaml +4 -4
  2. data/_includes/themes/j1/modules/navigator/generator.html +1 -1
  3. data/assets/data/cookieconsent.html +4 -4
  4. data/assets/data/nbinteract.html +128 -0
  5. data/assets/data/quicklinks.html +15 -0
  6. data/assets/data/translator.html +15 -15
  7. data/assets/themes/j1/adapter/js/j1.js +150 -75
  8. data/assets/themes/j1/adapter/js/mmenu.js +25 -3
  9. data/assets/themes/j1/adapter/js/navigator.js +2 -2
  10. data/assets/themes/j1/adapter/js/nbinteract.js +240 -33
  11. data/assets/themes/j1/adapter/js/rangeSlider.js +27 -10
  12. data/assets/themes/j1/core/css/themes/unolight/bootstrap.css +27 -54
  13. data/assets/themes/j1/core/css/themes/unolight/bootstrap.min.css +1 -1
  14. data/assets/themes/j1/core/js/template.js +14 -3
  15. data/assets/themes/j1/core/js/template.min.js +1 -1
  16. data/assets/themes/j1/core/js/template.min.js.map +1 -1
  17. data/assets/themes/j1/modules/nbInteract/js/nbinteract/nbinteract-core.js +1 -1
  18. data/assets/themes/j1/modules/nbInteract/js/nbinteract/nbinteract-core.js.map +1 -1
  19. data/assets/themes/j1/modules/nbInteract/js/nbinteract/nbinteract-core.min.js +1 -1
  20. data/assets/themes/j1/modules/rangeSlider/css/theme/uno/nouislider.css +5 -0
  21. data/assets/themes/j1/modules/rangeSlider/css/theme/uno/nouislider.min.css +1 -1
  22. data/lib/j1/version.rb +1 -1
  23. data/lib/starter_web/Gemfile +1 -1
  24. data/lib/starter_web/_config.yml +1 -1
  25. data/lib/starter_web/_data/j1_config.yml +22 -7
  26. data/lib/starter_web/_data/modules/defaults/cookieconsent.yml +51 -41
  27. data/lib/starter_web/_data/modules/defaults/navigator.yml +4 -0
  28. data/lib/starter_web/_data/modules/defaults/nbinteract.yml +99 -1
  29. data/lib/starter_web/_data/modules/defaults/translator.yml +24 -12
  30. data/lib/starter_web/_data/modules/rangeSlider.yml +38 -1
  31. data/lib/starter_web/_plugins/asciidoctor-extensions/range-slider-block.rb +44 -0
  32. data/lib/starter_web/_plugins/lunr_index.rb +1 -1
  33. data/lib/starter_web/package.json +1 -1
  34. data/lib/starter_web/pages/public/jupyter/docs/j1-nbinteract-doc.adoc +2 -3
  35. data/lib/starter_web/pages/public/jupyter/docs/nbinteract-doc.adoc +17 -17
  36. data/lib/starter_web/pages/public/jupyter/examples/j1-circular-times-table.adoc +7 -8
  37. data/lib/starter_web/pages/public/jupyter/examples/j1-interactive-widgets.adoc +4 -5
  38. data/lib/starter_web/pages/public/jupyter/examples/j1-odes-in-python.adoc +5 -6
  39. data/lib/starter_web/pages/public/jupyter/examples/j1-testing-plotly.adoc +3 -4
  40. data/lib/starter_web/pages/public/jupyter/examples/j1_climate-change-forecast.adoc +4 -4
  41. data/lib/starter_web/pages/public/jupyter/notebooks/j1/.ipynb_checkpoints/j1_interactive_widgets-checkpoint.ipynb +26 -26
  42. data/lib/starter_web/pages/public/jupyter/notebooks/j1/j1_interactive_widgets.ipynb +26 -26
  43. data/lib/starter_web/pages/public/jupyter/notebooks/j1/j1_odes_in_python.ipynb +16 -16
  44. data/lib/starter_web/pages/public/jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_examples_central_limit_theorem-checkpoint.ipynb +247 -0
  45. data/lib/starter_web/pages/public/jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_recipes_graphing-checkpoint.ipynb +18 -18
  46. data/lib/starter_web/pages/public/jupyter/notebooks/nbi-docs/nbi_docs_examples_central_limit_theorem.ipynb +1 -2
  47. data/lib/starter_web/pages/public/jupyter/notebooks/nbi-docs/nbi_docs_recipes_graphing.ipynb +18 -18
  48. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_interactive_widgets.html +3 -3
  49. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_odes_in_python.html +10 -10
  50. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/nbi_docs_recipes_graphing.html +4 -4
  51. data/lib/starter_web/pages/public/previewer/preview_bootstrap_theme.adoc +2 -2
  52. data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
  53. data/lib/starter_web/utilsrv/package.json +1 -1
  54. metadata +5 -7
  55. data/assets/themes/j1/modules/nbInteract/js/nbinteract/_new/nbinteract-core.js +0 -94
  56. data/assets/themes/j1/modules/nbInteract/js/nbinteract/_new/nbinteract-core.js.map +0 -1
  57. data/assets/themes/j1/modules/nbInteract/js/nbinteract/_old/j1-nbinteract-core.js +0 -94
  58. data/assets/themes/j1/modules/nbInteract/js/nbinteract/_old/j1-nbinteract-core.js.map +0 -1
  59. data/lib/starter_web/pages/public/se/se-fake.adoc +0 -47
@@ -27,6 +27,11 @@
27
27
  margin-left: 0;
28
28
  }
29
29
 
30
+ .range-slider-title {
31
+ font-size: .95rem;
32
+ font-weight: 400;
33
+ }
34
+
30
35
  /* Functional styling;
31
36
  * These styles are required for noUiSlider to function.
32
37
  * You don't need to change these rules to apply your design.
@@ -12,4 +12,4 @@
12
12
  # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE
13
13
  # -----------------------------------------------------------------------------
14
14
  */
15
- .range-slider{margin-top:2rem}.range-slider-label{font-size:.75rem;padding-top:.75rem;margin-left:0}.noUi-target,.noUi-target *{-webkit-touch-callout:none;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-user-select:none;-ms-touch-action:none;touch-action:none;-ms-user-select:none;-moz-user-select:none;user-select:none;-moz-box-sizing:border-box;box-sizing:border-box}.noUi-target{position:relative;direction:ltr}.noUi-base{width:100%;height:100%;position:relative;z-index:1;background-color:rgba(0,0,0,0.2)}.noUi-connect{position:absolute;right:0;top:0;left:0;bottom:0}.noUi-origin{position:absolute;height:0;width:0}.noUi-handle{position:relative;z-index:1}.noUi-state-tap .noUi-connect,.noUi-state-tap .noUi-origin{-webkit-transition:top .25s,right .25s,bottom .25s,left .25s;transition:top .25s,right .25s,bottom .25s,left .25s}.noUi-state-drag *{cursor:inherit!important}.noUi-handle-touch-area{position:relative;width:44px;height:44px;left:-15px;top:-15px}.noUi-base,.noUi-handle{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.noUi-horizontal{height:18px}.noUi-horizontal .noUi-handle{width:34px;height:28px;left:-17px;top:-6px}.noUi-vertical{width:18px}.noUi-vertical .noUi-handle{width:28px;height:34px;left:-6px;top:-17px}.noUi-target{background:#cdcdcd;border-radius:4px;border:1px solid transparent}.noUi-connect{background:#2196f3;-webkit-transition:background 450ms;transition:background 450ms}.noUi-draggable{cursor:ew-resize}.noUi-vertical .noUi-draggable{cursor:ns-resize}.noUi-handle{border:1px solid #d9d9d9;border-radius:3px;background:#FFF;cursor:default;box-shadow:inset 0 0 1px #FFF,inset 0 1px 7px #ebebeb,0 3px 6px -3px #BBB}.noUi-active{box-shadow:inset 0 0 1px #FFF,inset 0 1px 7px #DDD,0 3px 6px -3px #BBB}.noUi-handle:before,.noUi-handle:after{content:"";display:block;position:absolute;height:14px;width:1px;background:#e8e7e6;left:14px;top:6px}.noUi-handle:after{left:17px}.noUi-vertical .noUi-handle:before,.noUi-vertical .noUi-handle:after{width:14px;height:1px;left:6px;top:14px}.noUi-vertical .noUi-handle:after{top:17px}[disabled] .noUi-connect{background:#b8b8b8}[disabled].noUi-target,[disabled].noUi-handle,[disabled] .noUi-handle{cursor:not-allowed}.noUi-pips,.noUi-pips *{-moz-box-sizing:border-box;box-sizing:border-box}.noUi-pips{position:absolute;color:#999}.noUi-value{position:absolute;text-align:center}.noUi-value-sub{color:#ccc;font-size:10px}.noUi-marker{position:absolute;background:#CCC}.noUi-marker-sub{background:#AAA}.noUi-marker-large{background:#AAA}.noUi-pips-horizontal{padding:10px 0;height:80px;top:100%;left:0;width:100%}.noUi-value-horizontal{-webkit-transform:translate3d(-50%,50%,0);transform:translate3d(-50%,50%,0)}.noUi-marker-horizontal.noUi-marker{margin-left:-1px;width:2px;height:5px}.noUi-marker-horizontal.noUi-marker-sub{height:10px}.noUi-marker-horizontal.noUi-marker-large{height:15px}.noUi-pips-vertical{padding:0 10px;height:100%;top:0;left:100%}.noUi-value-vertical{-webkit-transform:translate3d(0,50%,0);transform:translate3d(0,50%,0);padding-left:25px}.noUi-marker-vertical.noUi-marker{width:5px;height:2px;margin-top:-1px}.noUi-marker-vertical.noUi-marker-sub{width:10px}.noUi-marker-vertical.noUi-marker-large{width:15px}.noUi-tooltip{display:block;position:absolute;border:1px solid transparent;border-radius:3px;background:#fff;color:#000;padding:5px;text-align:center}.noUi-horizontal .noUi-tooltip{-webkit-transform:translate(-50%,0);transform:translate(-50%,0);left:50%;bottom:120%}.noUi-vertical .noUi-tooltip{-webkit-transform:translate(0,-50%);transform:translate(0,-50%);top:50%;right:120%}.noUi-target{border:0;border-radius:0}.noUi-horizontal{height:3px}.noUi-vertical{height:100%;width:3px}.noUi-horizontal .noUi-handle,.noUi-vertical .noUi-handle{width:15px;height:15px;border-radius:50%;box-shadow:none;background-color:#2196f3;border:0;left:-5px;top:-6px;transition:width .2s cubic-bezier(0.215,0.610,0.355,1.000),height .2s cubic-bezier(0.215,0.610,0.355,1.000),left .2s cubic-bezier(0.215,0.610,0.355,1.000),top .2s cubic-bezier(0.215,0.610,0.355,1.000)}.noUi-handle:before{content:none}.noUi-handle:after{content:none}.noUi-target .noUi-active.noUi-handle{width:3px;height:3px;left:0;top:0}.noUi-target.noUi-horizontal .noUi-tooltip{position:absolute;height:30px;width:30px;top:-17px;left:-2px;background-color:#2196f3;border-radius:50%;transition:border-radius .25s cubic-bezier(0.215,0.610,0.355,1.000),transform .25s cubic-bezier(0.215,0.610,0.355,1.000);transform:scale(.5) rotate(-45deg);transform-origin:50% 100%}.noUi-target.noUi-horizontal .noUi-active .noUi-tooltip{border-radius:15px 15px 15px 0;transform:rotate(-45deg) translate(23px,-25px)}.noUi-tooltip span{width:100%;text-align:center;color:#fff;font-size:12px;opacity:0;position:absolute;top:6px;left:-1px;transition:opacity .25s cubic-bezier(0.215,0.610,0.355,1.000)}.noUi-horizontal .noUi-tooltip span{transform:rotate(45deg)}.noUi-vertical .noUi-tooltip span{transform:rotate(135deg)}.noUi-target.noUi-vertical .noUi-tooltip{position:absolute;height:30px;width:30px;top:-17px;left:-2px;background-color:#2196f3;border-radius:50%;transition:border-radius .25s cubic-bezier(0.215,0.610,0.355,1.000),transform .25s cubic-bezier(0.215,0.610,0.355,1.000);transform:scale(.5) rotate(-45deg);transform-origin:50% 100%}.noUi-target.noUi-vertical .noUi-active .noUi-tooltip{border-radius:15px 15px 15px 0;transform:rotate(-135deg) translate(35px,-10px)}.noUi-vertical .noUi-tooltip span{width:100%;text-align:center;color:#fff;font-size:12px;transform:rotate(135deg);opacity:0;position:absolute;top:7px;left:-1px;transition:opacity .25s cubic-bezier(0.215,0.610,0.355,1.000)}.noUi-horizontal .noUi-active .noUi-tooltip span,.noUi-vertical .noUi-active .noUi-tooltip span{opacity:1}
15
+ .range-slider{margin-top:2rem}.range-slider-label{font-size:.75rem;padding-top:.75rem;margin-left:0}.range-slider-title{font-size:.95rem;font-weight:400}.noUi-target,.noUi-target *{-webkit-touch-callout:none;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-user-select:none;-ms-touch-action:none;touch-action:none;-ms-user-select:none;-moz-user-select:none;user-select:none;-moz-box-sizing:border-box;box-sizing:border-box}.noUi-target{position:relative;direction:ltr}.noUi-base{width:100%;height:100%;position:relative;z-index:1;background-color:rgba(0,0,0,0.2)}.noUi-connect{position:absolute;right:0;top:0;left:0;bottom:0}.noUi-origin{position:absolute;height:0;width:0}.noUi-handle{position:relative;z-index:1}.noUi-state-tap .noUi-connect,.noUi-state-tap .noUi-origin{-webkit-transition:top .25s,right .25s,bottom .25s,left .25s;transition:top .25s,right .25s,bottom .25s,left .25s}.noUi-state-drag *{cursor:inherit !important}.noUi-handle-touch-area{position:relative;width:44px;height:44px;left:-15px;top:-15px}.noUi-base,.noUi-handle{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.noUi-horizontal{height:18px}.noUi-horizontal .noUi-handle{width:34px;height:28px;left:-17px;top:-6px}.noUi-vertical{width:18px}.noUi-vertical .noUi-handle{width:28px;height:34px;left:-6px;top:-17px}.noUi-target{background:#cdcdcd;border-radius:4px;border:1px solid transparent}.noUi-connect{background:#2196f3;-webkit-transition:background 450ms;transition:background 450ms}.noUi-draggable{cursor:ew-resize}.noUi-vertical .noUi-draggable{cursor:ns-resize}.noUi-handle{border:1px solid #d9d9d9;border-radius:3px;background:#FFF;cursor:default;box-shadow:inset 0 0 1px #FFF,inset 0 1px 7px #ebebeb,0 3px 6px -3px #BBB}.noUi-active{box-shadow:inset 0 0 1px #FFF,inset 0 1px 7px #DDD,0 3px 6px -3px #BBB}.noUi-handle:before,.noUi-handle:after{content:"";display:block;position:absolute;height:14px;width:1px;background:#e8e7e6;left:14px;top:6px}.noUi-handle:after{left:17px}.noUi-vertical .noUi-handle:before,.noUi-vertical .noUi-handle:after{width:14px;height:1px;left:6px;top:14px}.noUi-vertical .noUi-handle:after{top:17px}[disabled] .noUi-connect{background:#b8b8b8}[disabled].noUi-target,[disabled].noUi-handle,[disabled] .noUi-handle{cursor:not-allowed}.noUi-pips,.noUi-pips *{-moz-box-sizing:border-box;box-sizing:border-box}.noUi-pips{position:absolute;color:#999}.noUi-value{position:absolute;text-align:center}.noUi-value-sub{color:#ccc;font-size:10px}.noUi-marker{position:absolute;background:#CCC}.noUi-marker-sub{background:#AAA}.noUi-marker-large{background:#AAA}.noUi-pips-horizontal{padding:10px 0;height:80px;top:100%;left:0;width:100%}.noUi-value-horizontal{-webkit-transform:translate3d(-50%,50%,0);transform:translate3d(-50%,50%,0)}.noUi-marker-horizontal.noUi-marker{margin-left:-1px;width:2px;height:5px}.noUi-marker-horizontal.noUi-marker-sub{height:10px}.noUi-marker-horizontal.noUi-marker-large{height:15px}.noUi-pips-vertical{padding:0 10px;height:100%;top:0;left:100%}.noUi-value-vertical{-webkit-transform:translate3d(0,50%,0);transform:translate3d(0,50%,0);padding-left:25px}.noUi-marker-vertical.noUi-marker{width:5px;height:2px;margin-top:-1px}.noUi-marker-vertical.noUi-marker-sub{width:10px}.noUi-marker-vertical.noUi-marker-large{width:15px}.noUi-tooltip{display:block;position:absolute;border:1px solid transparent;border-radius:3px;background:#fff;color:#000;padding:5px;text-align:center}.noUi-horizontal .noUi-tooltip{-webkit-transform:translate(-50%,0);transform:translate(-50%,0);left:50%;bottom:120%}.noUi-vertical .noUi-tooltip{-webkit-transform:translate(0,-50%);transform:translate(0,-50%);top:50%;right:120%}.noUi-target{border:0;border-radius:0}.noUi-horizontal{height:3px}.noUi-vertical{height:100%;width:3px}.noUi-horizontal .noUi-handle,.noUi-vertical .noUi-handle{width:15px;height:15px;border-radius:50%;box-shadow:none;background-color:#2196f3;border:0;left:-5px;top:-6px;transition:width .2s cubic-bezier(0.215,0.610,0.355,1.000),height .2s cubic-bezier(0.215,0.610,0.355,1.000),left .2s cubic-bezier(0.215,0.610,0.355,1.000),top .2s cubic-bezier(0.215,0.610,0.355,1.000)}.noUi-handle:before{content:none}.noUi-handle:after{content:none}.noUi-target .noUi-active.noUi-handle{width:3px;height:3px;left:0;top:0}.noUi-target.noUi-horizontal .noUi-tooltip{position:absolute;height:30px;width:30px;top:-17px;left:-2px;background-color:#2196f3;border-radius:50%;transition:border-radius .25s cubic-bezier(0.215,0.610,0.355,1.000),transform .25s cubic-bezier(0.215,0.610,0.355,1.000);transform:scale(.5) rotate(-45deg);transform-origin:50% 100%}.noUi-target.noUi-horizontal .noUi-active .noUi-tooltip{border-radius:15px 15px 15px 0;transform:rotate(-45deg) translate(23px,-25px)}.noUi-tooltip span{width:100%;text-align:center;color:#fff;font-size:12px;opacity:0;position:absolute;top:6px;left:-1px;transition:opacity .25s cubic-bezier(0.215,0.610,0.355,1.000)}.noUi-horizontal .noUi-tooltip span{transform:rotate(45deg)}.noUi-vertical .noUi-tooltip span{transform:rotate(135deg)}.noUi-target.noUi-vertical .noUi-tooltip{position:absolute;height:30px;width:30px;top:-17px;left:-2px;background-color:#2196f3;border-radius:50%;transition:border-radius .25s cubic-bezier(0.215,0.610,0.355,1.000),transform .25s cubic-bezier(0.215,0.610,0.355,1.000);transform:scale(.5) rotate(-45deg);transform-origin:50% 100%}.noUi-target.noUi-vertical .noUi-active .noUi-tooltip{border-radius:15px 15px 15px 0;transform:rotate(-135deg) translate(35px,-10px)}.noUi-vertical .noUi-tooltip span{width:100%;text-align:center;color:#fff;font-size:12px;transform:rotate(135deg);opacity:0;position:absolute;top:7px;left:-1px;transition:opacity .25s cubic-bezier(0.215,0.610,0.355,1.000)}.noUi-horizontal .noUi-active .noUi-tooltip span,.noUi-vertical .noUi-active .noUi-tooltip span{opacity:1}
data/lib/j1/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module J1
2
- VERSION = '2022.3.1'
2
+ VERSION = '2022.4.0'
3
3
  end
@@ -53,7 +53,7 @@ gem 'jekyll', '~> 4.2'
53
53
 
54
54
  # Theme Rubies, default: J1 Template (NOT used for the development system)
55
55
  #
56
- gem 'j1-template', '~> 2022.3.1'
56
+ gem 'j1-template', '~> 2022.4.0'
57
57
 
58
58
  # ------------------------------------------------------------------------------
59
59
  # PRODUCTION: Gem needed for the Jekyll and J1 prod environment
@@ -53,7 +53,7 @@ environment: development
53
53
  # ------------------------------------------------------------------------------
54
54
  # Sets the build version of J1 Template Gem
55
55
  #
56
- version: 2022.3.1
56
+ version: 2022.4.0
57
57
 
58
58
  # version
59
59
  # ------------------------------------------------------------------------------
@@ -156,23 +156,33 @@ cookies:
156
156
  # Number of milliseconds (ms) the current page is hidden (display: none)
157
157
  # to prevent "DOM flicker" (aka "FOUC": Flash of unstyled content)
158
158
  #
159
- # TODO: To be checked if needed
159
+ # values: înt
160
+ # default: 150
160
161
  #
161
162
  # prettify
162
163
  # ----------------------------------------------------------------------------
163
164
  # If set to true, all generated HTML pages (by Liquid|Jekyll) get
164
165
  # formatted "pretty" by layout "default".
165
166
  #
166
- # NOTE: Used for developent mode ONLY
167
- # NOTE: See ~/packages/300_template_src/_layouts/default.html
167
+ # values: [true|false]
168
+ # default: true
169
+ #
168
170
  # ------------------------------------------------------------------------------
169
- flicker_timeout: 150
170
-
171
+ #
172
+ # autoScrollRatio
173
+ # ----------------------------------------------------------------------------
174
+ # Sets the ratio (percent) for 'dynamic' pages the auto scroll funtion
175
+ # if the page requested contains an anchor element.
176
+ # Example: /pages/public/about/site/#about-this-site
177
+ #
178
+ # values: înt
179
+ # default: 130
180
+ #
171
181
  # ------------------------------------------------------------------------------
172
- # HTML PrettyPrint
173
182
  #
183
+ flicker_timeout: 150
174
184
  prettify: true
175
-
185
+ autoScrollRatioThreshold: 130
176
186
 
177
187
  # ==============================================================================
178
188
  # PAGE global configuration settings (currently NOT used)
@@ -181,6 +191,7 @@ prettify: true
181
191
  # the HTML outputs generated by J1
182
192
  #
183
193
  # ------------------------------------------------------------------------------
194
+ #
184
195
  pages:
185
196
 
186
197
 
@@ -191,6 +202,7 @@ pages:
191
202
  # the HTML outputs generated by J1
192
203
  #
193
204
  # ------------------------------------------------------------------------------
205
+ #
194
206
  posts:
195
207
  # ----------------------------------------------------------------------------
196
208
  # category_blacklist
@@ -203,6 +215,7 @@ posts:
203
215
  # Default: [ posts, public, private, protected, featured, series ]
204
216
  #
205
217
  # ----------------------------------------------------------------------------
218
+ #
206
219
  category_blacklist: [ posts, public, private, protected, featured, series ]
207
220
 
208
221
 
@@ -316,6 +329,7 @@ rouge:
316
329
  # https://developer.mozilla.org/en-US/docs/Web/HTML/Preloading_content
317
330
  # https://github.com/GoogleChromeLabs/critters/issues/18 (crossorigin)
318
331
  # ------------------------------------------------------------------------------
332
+ #
319
333
  preload:
320
334
 
321
335
  font:
@@ -358,6 +372,7 @@ preload:
358
372
  # connections (HTTPS), as it may involve DNS lookups, redirects, and
359
373
  # several round trips to the final server that handles the user's request.
360
374
  # ------------------------------------------------------------------------------
375
+ #
361
376
  preconnect:
362
377
  enabled: true
363
378
  urls: [ "https://bootswatch.com" ]
@@ -97,26 +97,31 @@ defaults:
97
97
  A set of data is stored in <b>Persistent Cookies</b>. Our partners and we
98
98
  make use of Persistent Cookies. Those <b>additional</b> cookies are only
99
99
  used with your consent.
100
- <br><br>
101
- <code>Necessary</code> This website is based on static content, and no
102
- database is used behind it. All information (data) needed to control this
103
- site is stored in so-called <b>Session Cookies</b>. Your browser automatically
104
- <b>removes</b> session cookies if you close all windows of the browser.
105
- <br><br>
106
- <code>Analysis</code> of this website's usage helps optimize the site's
107
- pages to improve the visitor's experience. For analysis, Google Analytics
108
- (GA) is used. GA uses <b>Persistent Cookies</b> that remain on your computer
109
- for its service. This website does <b>not</b> transfer any personal data to GA.
110
- Implicit personal information, like IP addresses, is anonymized to protect
111
- your privacy.
112
- <br><br>
113
- <code>Personalization</code> provides <b>additional services</b> like themes,
114
- translation, comments, or running advertising campaigns to provide visitors
115
- with a website free of charge. Partners use <b>Persistent Cookies</b> that
116
- remain on your computer for their services. Our partners like Bootswatch,
117
- Disqus, or Google provide excellent personalized services and finance running
118
- this site.
119
-
100
+ <br>
101
+ <ul>
102
+ <li>
103
+ <code>Necessary</code> This website is based on static content, and no
104
+ database is used behind it. All information (data) needed to control this
105
+ site is stored in so-called <b>Session Cookies</b>. Your browser automatically
106
+ <b>removes</b> session cookies if you close all windows of the browser.
107
+ </li>
108
+ <li>
109
+ <code>Analysis</code> of this website's usage helps optimize the site's
110
+ pages to improve the visitor's experience. For analysis, Google Analytics
111
+ (GA) is used. GA uses <b>Persistent Cookies</b> that remain on your computer
112
+ for its service. This website does <b>not</b> transfer any personal data to GA.
113
+ Implicit personal information, like IP addresses, is anonymized to protect
114
+ your privacy.
115
+ </li>
116
+ <li>
117
+ <code>Personalization</code> provides <b>additional services</b> like themes,
118
+ translation, comments, or running advertising campaigns to provide visitors
119
+ with a website free of charge. Partners use <b>Persistent Cookies</b> that
120
+ remain on your computer for their services. Our partners like Bootswatch,
121
+ Disqus, or Google provide excellent personalized services and finance running
122
+ this site.
123
+ </li>
124
+ </ul>
120
125
  de: >
121
126
  Der Betreiber dieser Website nimmt den Schutz Ihrer persönlichen Daten sehr
122
127
  ernst. Wir behandeln Ihre Daten vertraulich und halten uns an die
@@ -126,27 +131,32 @@ defaults:
126
131
  Eine Reihe von Daten wird in <b>dauerhaften Cookies</b> gespeichert. Unsere
127
132
  Partner und wir verwenden dauerhafte Cookies. Diese <b>zusätzlichen</b> Daten
128
133
  werden nur mit Ihrer <b>Zustimmung</b> gespeichert.
129
- <br><br>
130
- <code>Notwendig</code> Diese Website speichert <b>keine</b> persönliche Daten
131
- in Datenbanken. Alle Informationen (Daten) die zur Steuerung dieser Seite
132
- notwendig sind, werden in sogenannten <b>Sitzungscookies</b> gespeichert. Ihr
133
- Browser <b>entfernt</b> Sitzungscookies automatisch ohne Ihr zutun, wenn Sie
134
- alle Browserfenster schließen.
135
- <br><br>
136
- <code>Analysen</code> der Nutzung dieser Website hilft bei der Optimierung der
137
- Website, um die Nutzung für alle Besucher zu verbessern. Für die Analyse wird
138
- der Dienst <em>Google Analytics</em> (GA) verwendet. GA verwendet dauerhafte
139
- Cookies die auf Ihrem Computer verbleiben, um diesen Dienst zu ermöglichen.
140
- Diese Website überträgt <b>keine</b> persönlichen Daten an den Dienst GA.
141
- Implizite persönliche Informationen, wie IP-Adressen, werden zum Schutz der
142
- Privatsphäre unserer Besucher anonymisiert.
143
- <br><br>
144
- <code>Personalisierung</code> wird verwendet, um <b>zusätzliche</b> Dienste
145
- anzubieten. Dazu gehören Themen, Übersetzungen, Kommentare oder Werbekampagnen
146
- die allen Anwendern einen kostenlosen Besuch dieser Website ermöglichen.
147
- Partner verwenden für ihre Dienste dauerhafte Cookies, die auf Ihrem Computer
148
- verbleiben. Unsere Partner wie Bootswatch, Disqus, oder Google bieten hervorragende
149
- personalisierte Dienste und finanzieren die Kosten für den Betrieb dieser Seiten.
134
+ <br>
135
+ <ul>
136
+ <li>
137
+ <code>Notwendig</code> Diese Website speichert <b>keine</b> persönliche Daten
138
+ in Datenbanken. Alle Informationen (Daten) die zur Steuerung dieser Seite
139
+ notwendig sind, werden in sogenannten <b>Sitzungscookies</b> gespeichert. Ihr
140
+ Browser <b>entfernt</b> Sitzungscookies automatisch ohne Ihr zutun, wenn Sie
141
+ alle Browserfenster schließen.
142
+ <li>
143
+ <code>Analysen</code> der Nutzung dieser Website hilft bei der Optimierung der
144
+ Website, um die Nutzung für alle Besucher zu verbessern. Für die Analyse wird
145
+ der Dienst <em>Google Analytics</em> (GA) verwendet. GA verwendet dauerhafte
146
+ Cookies die auf Ihrem Computer verbleiben, um diesen Dienst zu ermöglichen.
147
+ Diese Website überträgt <b>keine</b> persönlichen Daten an den Dienst GA.
148
+ Implizite persönliche Informationen, wie IP-Adressen, werden zum Schutz der
149
+ Privatsphäre unserer Besucher anonymisiert.
150
+ </li>
151
+ <li>
152
+ <code>Personalisierung</code> wird verwendet, um <b>zusätzliche</b> Dienste
153
+ anzubieten. Dazu gehören Themen, Übersetzungen, Kommentare oder Werbekampagnen
154
+ die allen Anwendern einen kostenlosen Besuch dieser Website ermöglichen.
155
+ Partner verwenden für ihre Dienste dauerhafte Cookies, die auf Ihrem Computer
156
+ verbleiben. Unsere Partner wie Bootswatch, Disqus, oder Google bieten hervorragende
157
+ personalisierte Dienste und finanzieren die Kosten für den Betrieb dieser Seiten.
158
+ </li>
159
+ </ul>
150
160
 
151
161
  # ------------------------------------------------------------------------------
152
162
  # END config
@@ -214,6 +214,10 @@ defaults:
214
214
  translate_action: translate
215
215
  translate_label: Google Translate
216
216
 
217
+ notebooks_icon: notebook
218
+ notebooks_action: nbi-notebooks
219
+ notebooks_label: NBI Notebooks
220
+
217
221
  r_text_icon: false # format-text
218
222
  r_text_action: rtext
219
223
  r_text_label: Text Resizer
@@ -31,6 +31,33 @@ defaults:
31
31
  # GENERAL settings
32
32
  # ----------------------------------------------------------------------------
33
33
 
34
+ # contentURL (source)
35
+ # ----------------------------------------------------------------------------
36
+ # Dialog modal source.
37
+ #
38
+ # values: data path
39
+ # default: /assets/data/nbinteract
40
+ #
41
+ # ----------------------------------------------------------------------------
42
+ #
43
+ # xhrDataElement (HTML portion)
44
+ # ----------------------------------------------------------------------------
45
+ # Top level container for ALL NBI modals configured
46
+ #
47
+ # values: ID
48
+ # default: nbi-modal-data
49
+ #
50
+ # ----------------------------------------------------------------------------
51
+ #
52
+ # dialogContainerID (HTML portion)
53
+ # ----------------------------------------------------------------------------
54
+ # Container ID, the dialog modal is (dynamically) loaded
55
+ #
56
+ # values: ID
57
+ # default: nbi-dialog
58
+ #
59
+ # ----------------------------------------------------------------------------
60
+ #
34
61
  # spec
35
62
  # ----------------------------------------------------------------------------
36
63
  # Defines the (public) repo the configuration data available
@@ -130,7 +157,77 @@ defaults:
130
157
  #
131
158
  # ----------------------------------------------------------------------------
132
159
  #
133
- # spec: jekyll-one/nbinteract-notebooks/main
160
+ # notebook_ready
161
+ # ----------------------------------------------------------------------------
162
+ # Flag that indicates if a notebook is ready (fully rendered).
163
+ # For default, the signal 'notebook_ready' is set if the 'first'
164
+ # widget in a notebook is rendered. For larger notebooks having
165
+ # many headlines, the TOC provided by the FAB in a page may
166
+ # incomplete. To indicate all resources of a page fully available,
167
+ # the option 'last_widget' may a better choice.
168
+ #
169
+ # values: first_widget | last_widget
170
+ # default: first_widget
171
+ #
172
+ # ----------------------------------------------------------------------------
173
+ #
174
+ enabled: true
175
+
176
+ contentURL: /assets/data/nbinteract
177
+ xhrDataElement: nbi-modal-data
178
+ dialogContainerID: nbi-dialog
179
+
180
+ dialogTitle: NBI Settings
181
+ dialogBodyText: >
182
+
183
+ This website uses the <b>free</b> service <em>Binder</em> to process
184
+ <b>interactive</b> widgets from content containing textbooks
185
+ (HTML exported Jupyter Notebooks).
186
+
187
+ The Binder Service allows you to create custom computing environments
188
+ that can be shared and used by many remote users. A Binder service is
189
+ powered by
190
+ <a href="https://github.com/jupyterhub/binderhub" target="_blank" rel="noopener">BinderHub Repo on Github</a>,
191
+ an open-source tool that runs on Kubernetes, a portable, extensible,
192
+ open-source platform for managing containerized services. One such deployment
193
+ lives at
194
+ <a href="https://mybinder.org/" target="_blank" rel="noopener">Binder Home</a>,
195
+ and is free to use.
196
+
197
+ <div class="admonitionblock caution">
198
+ <table style="background: rgb(255, 255, 255);font-size: 100%">
199
+ <tbody><tr>
200
+ <td class="icon">
201
+ <i class="fa icon-caution" title="Caution"></i>
202
+ </td>
203
+ <td class="content">
204
+ Each interactive element presented on this page uses <strong>time-consuming</strong>
205
+ operations that take a while to finish. The images and the interactive
206
+ elements are built through a backend in the cloud. Please be patient
207
+ to see the results.
208
+ </td>
209
+ </tr></tbody>
210
+ </table>
211
+ </div>
212
+ dialogPrivacyNotice: >
213
+ The service provided by<em>Binder</em> uses <b>cookies</b> to provide
214
+ its service. Your consent on using cookies is required. Find more
215
+ information about at the Binder at the
216
+ <a href="https://mybinder.readthedocs.io/en/latest/about/user-guidelines.html#security-and-privacy" target="_blank" rel="noopener">Privacy Policy.</a>
217
+ of Binder.
218
+ <br><br>
219
+ Required Cookie Settings:
220
+ <ul>
221
+ <li>
222
+ <code>Analysis</code> For translations, your consent on
223
+ <b>Analysis</b> with your <b>Privacy Settings</b> is required.
224
+ </li>
225
+ <li>
226
+ <code>Personalization</code> For processing textbooks, your consent on
227
+ <b>Personalization</b> with your <b>Privacy Settings</b> (Cookie Settings) is required.
228
+ </li>
229
+ </ul>
230
+
134
231
  spec: jekyll-one/j1-binder-repo/main
135
232
  baseUrl: 'https://mybinder.org'
136
233
  provider: gh
@@ -145,6 +242,7 @@ defaults:
145
242
  nbi_messages_auto_close_delay: 3500
146
243
 
147
244
  nbi_init_mathjax: true
245
+ notebook_ready: first_widget
148
246
 
149
247
  # ------------------------------------------------------------------------------
150
248
  # END config
@@ -103,23 +103,35 @@ defaults:
103
103
  about at the Google
104
104
  <a href="https://policies.google.com/" target="_blank" rel="noopener">Privacy Policy</a>
105
105
  <br><br>
106
- <code>Analysis</code> For translations, your consent on
107
- <b>Analysis</b> with your <b>Privacy Settings</b> is required.
108
- <br><br>
109
- <code>Personalization</code> For translations, your consent on
110
- <b>Personalization</b> with your <b>Privacy Settings</b> is required.
106
+ Required Cookie Settings:
107
+ <br>
108
+ <ul>
109
+ <li>
110
+ <code>Analysis</code> For translations, your consent on
111
+ <b>Analysis</b> with your <b>Privacy Settings</b> is required.
112
+ </li>
113
+ <li>
114
+ <code>Personalization</code> For processing textbooks, your consent on
115
+ <b>Personalization</b> with your <b>Privacy Settings</b> (Cookie Settings) is required.
116
+ </li>
117
+ </ul>
111
118
  de: >
112
119
  Der kostenlose Dienst von <em>Google Translate</em> verwendet Cookies
113
120
  um seine Dienste bereitzustellen, Werbung zu personalisieren und
114
121
  Verkehrsanalysen durchzuführen:
115
122
  <br><br>
116
- <code>Analysen</code> Für die Nutzung von Übersetzungen ist Ihre
117
- Zustimmung zu <b>Analysen</b> in den Einstellungen <code>Ihre Privatsphäre</code>
118
- erforderlich.
119
- <br><br>
120
- <code>Personalisierung</code> Für die Nutzung von Übersetzungen ist Ihre
121
- Zustimmung zur <b>Personalisierung</b> in den Einstellungen <code>Ihre Privatsphäre</code>
122
- erforderlich.
123
+ <ul>
124
+ <li>
125
+ <code>Analysen</code> Für die Nutzung von Übersetzungen ist Ihre
126
+ Zustimmung zu <b>Analysen</b> in den Einstellungen <code>Ihre Privatsphäre</code>
127
+ erforderlich.
128
+ </li>
129
+ <li>
130
+ <code>Personalisierung</code> Für die Nutzung von Übersetzungen ist Ihre
131
+ Zustimmung zur <b>Personalisierung</b> in den Einstellungen <code>Ihre Privatsphäre</code>
132
+ erforderlich.
133
+ </li>
134
+ </ul>
123
135
 
124
136
  # ------------------------------------------------------------------------------
125
137
  # Default Deepl Translator settings (currently NOT supported)
@@ -35,14 +35,47 @@ settings:
35
35
  # RANGE SLIDER configurations
36
36
  # --------------------------------------------------------------------------
37
37
 
38
+ # --------------------------------------------------------------------------
39
+ # example slider
40
+ #
41
+ - slider:
42
+ enabled: true
43
+ id: example_slider_asciidoc
44
+
45
+ options:
46
+ title: "Title of the Example Slider"
47
+ label: "Example Slider (Asciidoc), range: [5,50], start at: 25, step: 5"
48
+ start: 25
49
+ step: 5
50
+ range:
51
+ min: 5
52
+ max: 50
53
+
54
+ # --------------------------------------------------------------------------
55
+ # example slider (controled)
56
+ #
57
+ - slider:
58
+ enabled: true
59
+ id: example_slider_html
60
+
61
+ options:
62
+ title: "Title of the Example Slider (controlled)"
63
+ label: "Example Slider (HTML), range: [5,50], start at: 25, step: 5"
64
+ start: 25
65
+ step: 5
66
+ range:
67
+ min: 5
68
+ max: 50
69
+
38
70
  # --------------------------------------------------------------------------
39
71
  # example slider 1
40
72
  #
41
73
  - slider:
42
74
  enabled: true
43
- id: example_slider
75
+ id: example_slider_1
44
76
 
45
77
  options:
78
+ title: ""
46
79
  label: "Slider 1, range: [0,100], start at: 20"
47
80
  start: 20
48
81
  range:
@@ -57,6 +90,7 @@ settings:
57
90
  id: example_slider_2
58
91
 
59
92
  options:
93
+ title: ""
60
94
  label: "Slider 2, range: [0,200], start at: 80"
61
95
  start: 80
62
96
  range:
@@ -71,6 +105,7 @@ settings:
71
105
  id: jgSlider_row_heigth
72
106
 
73
107
  options:
108
+ title: ""
74
109
  label: Image Row Height [px]
75
110
  start: 150
76
111
  range:
@@ -85,6 +120,7 @@ settings:
85
120
  id: jgSlider_thumb_spacing
86
121
 
87
122
  options:
123
+ title: ""
88
124
  label: Thumb Image Spacing [px]
89
125
  start: 1
90
126
  range:
@@ -99,6 +135,7 @@ settings:
99
135
  id: jgSlider_gallery_padding
100
136
 
101
137
  options:
138
+ title: ""
102
139
  label: Gallery Padding [px]
103
140
  start: 0
104
141
  range:
@@ -0,0 +1,44 @@
1
+ # ------------------------------------------------------------------------------
2
+ # ~/_plugins/asciidoctor-extensions/range-slider-block.rb
3
+ # Asciidoctor extension for J1 range-slider (Owl range-slider)
4
+ #
5
+ # Product/Info:
6
+ # https://jekyll.one
7
+ #
8
+ # Copyright (C) 2022 Juergen Adams
9
+ #
10
+ # J1 Template is licensed under the MIT License.
11
+ # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE
12
+ #
13
+ # ------------------------------------------------------------------------------
14
+ require 'asciidoctor/extensions' unless RUBY_ENGINE == 'opal'
15
+ include Asciidoctor
16
+
17
+ # A block macro that embeds a range-slider block into the output document
18
+ #
19
+ # Usage
20
+ #
21
+ # range_slider::slider-id[role="additional classes"]
22
+ #
23
+ # Example:
24
+ #
25
+ # range_slider::example_slider[role="mb-5"]
26
+ #
27
+ Asciidoctor::Extensions.register do
28
+
29
+ class SliderBlockMacro < Extensions::BlockMacroProcessor
30
+ use_dsl
31
+
32
+ named :range_slider
33
+ name_positional_attributes 'role'
34
+ default_attrs 'role' => ''
35
+
36
+ def process parent, target, attrs
37
+ html = %(<div id="#{target}" class="range-slider #{attrs['role']}"></div>)
38
+ create_pass_block parent, html, attrs, subs: nil
39
+ end
40
+ end
41
+
42
+ block_macro SliderBlockMacro
43
+
44
+ end
@@ -369,6 +369,6 @@ end
369
369
 
370
370
  module Jekyll
371
371
  module J1LunrSearch
372
- VERSION = '2022.3.1'
372
+ VERSION = '2022.4.0'
373
373
  end
374
374
  end
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "private": true,
3
3
  "name": "j1",
4
- "version": "2022.3.1",
4
+ "version": "2022.4.0",
5
5
  "description": "J1 Template Starter Web",
6
6
  "homepage": "https://your.site",
7
7
  "author": {
@@ -96,9 +96,8 @@ endif::[]
96
96
  // info: https://en.wikipedia.org/wiki/Galileo_Galilei
97
97
 
98
98
  CAUTION: Each interactive element presented on this page uses *time-consuming*
99
- operations that take a while to finish. The images and the interactive
100
- elements are built through a backend in the cloud. Please be patient
101
- to see the results.
99
+ operations that take a while to finish. The elements are built through a
100
+ backend in the cloud. Please be patient to see the results.
102
101
 
103
102
  The Jupyter Project is a non-profit organization founded in 2014 by
104
103
  _Fernando Perez_. The Jupyter project supports interactive scientific