├── imagens
├── java.png
├── materialapoio.png
├── java se curso básico.png
└── java web ee curso básico.png
├── docs
├── slides
│ ├── Slide1.JPG
│ ├── Slide2.JPG
│ ├── Slide3.JPG
│ ├── Slide4.JPG
│ ├── Slide5.JPG
│ ├── Slide6.JPG
│ ├── Slide7.JPG
│ ├── Slide8.JPG
│ ├── Slide9.JPG
│ ├── Slide10.JPG
│ ├── Slide11.JPG
│ ├── Slide12.JPG
│ ├── Slide13.JPG
│ ├── Slide14.JPG
│ ├── Slide15.JPG
│ ├── Slide16.JPG
│ ├── Slide17.JPG
│ ├── Slide18.JPG
│ ├── Slide19.JPG
│ ├── Slide20.JPG
│ ├── Slide21.JPG
│ ├── Slide22.JPG
│ ├── Slide23.JPG
│ ├── Slide24.JPG
│ ├── Slide25.JPG
│ ├── Slide26.JPG
│ ├── Slide27.JPG
│ ├── Slide28.JPG
│ ├── Slide29.JPG
│ ├── Slide30.JPG
│ ├── Slide31.JPG
│ ├── Slide32.JPG
│ ├── Slide33.JPG
│ ├── Slide34.JPG
│ ├── Slide35.JPG
│ ├── Slide36.JPG
│ ├── Slide37.JPG
│ ├── Slide38.JPG
│ ├── Slide39.JPG
│ ├── Slide40.JPG
│ ├── Slide41.JPG
│ ├── Slide42.JPG
│ ├── Slide43.JPG
│ ├── Slide44.JPG
│ ├── Slide45.JPG
│ ├── Slide46.JPG
│ ├── Slide47.JPG
│ ├── Slide48.JPG
│ ├── Slide49.JPG
│ ├── Slide50.JPG
│ ├── Slide51.JPG
│ ├── Slide52.JPG
│ ├── Slide53.JPG
│ ├── Slide54.JPG
│ ├── Slide55.JPG
│ ├── Slide56.JPG
│ ├── Slide57.JPG
│ ├── Slide58.JPG
│ ├── Slide59.JPG
│ ├── Slide60.JPG
│ ├── Slide61.JPG
│ ├── Slide62.JPG
│ ├── Slide63.JPG
│ ├── Slide64.JPG
│ ├── Slide65.JPG
│ ├── Slide66.JPG
│ ├── Slide67.JPG
│ ├── Slide68.JPG
│ ├── Slide69.JPG
│ ├── Slide70.JPG
│ ├── Slide71.JPG
│ ├── Slide72.JPG
│ ├── Slide73.JPG
│ ├── Slide74.JPG
│ ├── Slide75.JPG
│ ├── Slide76.JPG
│ ├── Slide77.JPG
│ ├── Slide78.JPG
│ ├── Slide79.JPG
│ ├── Slide80.JPG
│ ├── Slide81.JPG
│ ├── Slide82.JPG
│ ├── Slide83.JPG
│ ├── Slide84.JPG
│ ├── Slide85.JPG
│ ├── Slide86.JPG
│ ├── Slide87.JPG
│ └── Slide88.JPG
├── dist
│ ├── theme
│ │ └── fonts
│ │ │ ├── league-gothic
│ │ │ ├── LICENSE
│ │ │ ├── league-gothic.eot
│ │ │ ├── league-gothic.ttf
│ │ │ ├── league-gothic.woff
│ │ │ └── league-gothic.css
│ │ │ └── source-sans-pro
│ │ │ ├── source-sans-pro-italic.eot
│ │ │ ├── source-sans-pro-italic.ttf
│ │ │ ├── source-sans-pro-italic.woff
│ │ │ ├── source-sans-pro-regular.eot
│ │ │ ├── source-sans-pro-regular.ttf
│ │ │ ├── source-sans-pro-regular.woff
│ │ │ ├── source-sans-pro-semibold.eot
│ │ │ ├── source-sans-pro-semibold.ttf
│ │ │ ├── source-sans-pro-semibold.woff
│ │ │ ├── source-sans-pro-semibolditalic.eot
│ │ │ ├── source-sans-pro-semibolditalic.ttf
│ │ │ ├── source-sans-pro-semibolditalic.woff
│ │ │ ├── source-sans-pro.css
│ │ │ └── LICENSE
│ └── reset.css
├── js
│ ├── utils
│ │ ├── device.js
│ │ ├── constants.js
│ │ ├── loader.js
│ │ ├── color.js
│ │ └── util.js
│ ├── index.js
│ ├── controllers
│ │ ├── focus.js
│ │ ├── progress.js
│ │ ├── notes.js
│ │ ├── pointer.js
│ │ ├── slidenumber.js
│ │ ├── jumptoslide.js
│ │ ├── plugins.js
│ │ ├── location.js
│ │ ├── overview.js
│ │ └── touch.js
│ └── components
│ │ └── playback.js
├── plugin
│ ├── math
│ │ ├── plugin.js
│ │ ├── mathjax2.js
│ │ ├── mathjax3.js
│ │ ├── katex.js
│ │ ├── math.esm.js
│ │ └── math.js
│ ├── highlight
│ │ ├── monokai.css
│ │ └── zenburn.css
│ ├── search
│ │ ├── search.esm.js
│ │ ├── search.js
│ │ └── plugin.js
│ ├── zoom
│ │ ├── zoom.esm.js
│ │ ├── zoom.js
│ │ └── plugin.js
│ └── notes
│ │ └── plugin.js
└── css
│ ├── theme
│ ├── source
│ │ ├── night.scss
│ │ ├── serif.scss
│ │ ├── league.scss
│ │ ├── black.scss
│ │ ├── white.scss
│ │ ├── simple.scss
│ │ ├── sky.scss
│ │ ├── beige.scss
│ │ ├── white-contrast.scss
│ │ ├── black-contrast.scss
│ │ ├── moon.scss
│ │ ├── solarized.scss
│ │ ├── blood.scss
│ │ └── dracula.scss
│ ├── template
│ │ ├── exposer.scss
│ │ ├── settings.scss
│ │ ├── mixins.scss
│ │ └── theme.scss
│ └── README.md
│ ├── layout.scss
│ └── print
│ ├── pdf.scss
│ └── paper.scss
├── Curso de Java
├── array
│ ├── Array1.java
│ ├── Array2.java
│ ├── Array3.java
│ └── Cartas.java
├── pooCarros
│ ├── Aviao.java
│ ├── Carro.java
│ ├── Hangar.java
│ └── Garagem.java
├── exercicios
│ ├── JoKenPo.java
│ ├── ValorHora.java
│ ├── AlcoolGasolina.java
│ ├── CalculadoraMedia.java
│ ├── PDV.java
│ ├── CalculoIMC.java
│ └── JogoDado.java
├── pooMinecraft
│ ├── Bloco.java
│ ├── Itens.java
│ ├── Mundo.java
│ └── Enxada.java
├── pooAgencia
│ ├── contas
│ │ ├── Conta.java
│ │ └── PessoaFisica.java
│ └── seguros
│ │ └── SeguroPessoaFisica.java
└── fundamentos
│ ├── Hello.java
│ └── Fundamentos.java
├── .gitignore
├── LICENSE
└── README.md
/imagens/java.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/imagens/java.png
--------------------------------------------------------------------------------
/docs/slides/Slide1.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide1.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide2.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide2.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide3.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide3.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide4.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide4.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide5.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide5.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide6.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide6.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide7.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide7.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide8.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide8.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide9.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide9.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide10.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide10.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide11.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide11.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide12.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide12.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide13.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide13.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide14.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide14.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide15.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide15.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide16.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide16.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide17.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide17.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide18.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide18.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide19.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide19.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide20.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide20.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide21.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide21.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide22.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide22.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide23.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide23.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide24.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide24.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide25.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide25.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide26.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide26.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide27.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide27.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide28.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide28.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide29.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide29.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide30.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide30.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide31.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide31.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide32.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide32.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide33.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide33.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide34.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide34.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide35.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide35.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide36.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide36.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide37.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide37.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide38.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide38.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide39.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide39.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide40.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide40.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide41.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide41.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide42.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide42.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide43.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide43.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide44.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide44.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide45.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide45.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide46.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide46.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide47.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide47.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide48.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide48.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide49.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide49.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide50.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide50.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide51.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide51.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide52.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide52.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide53.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide53.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide54.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide54.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide55.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide55.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide56.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide56.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide57.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide57.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide58.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide58.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide59.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide59.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide60.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide60.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide61.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide61.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide62.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide62.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide63.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide63.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide64.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide64.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide65.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide65.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide66.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide66.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide67.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide67.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide68.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide68.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide69.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide69.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide70.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide70.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide71.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide71.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide72.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide72.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide73.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide73.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide74.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide74.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide75.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide75.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide76.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide76.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide77.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide77.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide78.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide78.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide79.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide79.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide80.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide80.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide81.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide81.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide82.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide82.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide83.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide83.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide84.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide84.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide85.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide85.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide86.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide86.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide87.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide87.JPG
--------------------------------------------------------------------------------
/docs/slides/Slide88.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/slides/Slide88.JPG
--------------------------------------------------------------------------------
/imagens/materialapoio.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/imagens/materialapoio.png
--------------------------------------------------------------------------------
/Curso de Java/array/Array1.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/Curso de Java/array/Array1.java
--------------------------------------------------------------------------------
/Curso de Java/array/Array2.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/Curso de Java/array/Array2.java
--------------------------------------------------------------------------------
/Curso de Java/array/Array3.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/Curso de Java/array/Array3.java
--------------------------------------------------------------------------------
/imagens/java se curso básico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/imagens/java se curso básico.png
--------------------------------------------------------------------------------
/Curso de Java/pooCarros/Aviao.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/Curso de Java/pooCarros/Aviao.java
--------------------------------------------------------------------------------
/Curso de Java/pooCarros/Carro.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/Curso de Java/pooCarros/Carro.java
--------------------------------------------------------------------------------
/Curso de Java/pooCarros/Hangar.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/Curso de Java/pooCarros/Hangar.java
--------------------------------------------------------------------------------
/Curso de Java/exercicios/JoKenPo.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/Curso de Java/exercicios/JoKenPo.java
--------------------------------------------------------------------------------
/Curso de Java/pooMinecraft/Bloco.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/Curso de Java/pooMinecraft/Bloco.java
--------------------------------------------------------------------------------
/Curso de Java/pooMinecraft/Itens.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/Curso de Java/pooMinecraft/Itens.java
--------------------------------------------------------------------------------
/Curso de Java/pooMinecraft/Mundo.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/Curso de Java/pooMinecraft/Mundo.java
--------------------------------------------------------------------------------
/imagens/java web ee curso básico.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/imagens/java web ee curso básico.png
--------------------------------------------------------------------------------
/Curso de Java/exercicios/ValorHora.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/Curso de Java/exercicios/ValorHora.java
--------------------------------------------------------------------------------
/Curso de Java/pooMinecraft/Enxada.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/Curso de Java/pooMinecraft/Enxada.java
--------------------------------------------------------------------------------
/docs/dist/theme/fonts/league-gothic/LICENSE:
--------------------------------------------------------------------------------
1 | SIL Open Font License (OFL)
2 | http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=OFL
3 |
--------------------------------------------------------------------------------
/Curso de Java/pooAgencia/contas/Conta.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/Curso de Java/pooAgencia/contas/Conta.java
--------------------------------------------------------------------------------
/Curso de Java/exercicios/AlcoolGasolina.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/Curso de Java/exercicios/AlcoolGasolina.java
--------------------------------------------------------------------------------
/Curso de Java/exercicios/CalculadoraMedia.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/Curso de Java/exercicios/CalculadoraMedia.java
--------------------------------------------------------------------------------
/Curso de Java/pooAgencia/contas/PessoaFisica.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/Curso de Java/pooAgencia/contas/PessoaFisica.java
--------------------------------------------------------------------------------
/docs/dist/theme/fonts/league-gothic/league-gothic.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/dist/theme/fonts/league-gothic/league-gothic.eot
--------------------------------------------------------------------------------
/docs/dist/theme/fonts/league-gothic/league-gothic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/dist/theme/fonts/league-gothic/league-gothic.ttf
--------------------------------------------------------------------------------
/docs/dist/theme/fonts/league-gothic/league-gothic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/dist/theme/fonts/league-gothic/league-gothic.woff
--------------------------------------------------------------------------------
/docs/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.eot
--------------------------------------------------------------------------------
/docs/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.ttf
--------------------------------------------------------------------------------
/docs/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/dist/theme/fonts/source-sans-pro/source-sans-pro-italic.woff
--------------------------------------------------------------------------------
/docs/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.eot
--------------------------------------------------------------------------------
/docs/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.ttf
--------------------------------------------------------------------------------
/docs/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/dist/theme/fonts/source-sans-pro/source-sans-pro-regular.woff
--------------------------------------------------------------------------------
/docs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.eot
--------------------------------------------------------------------------------
/docs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.ttf
--------------------------------------------------------------------------------
/docs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibold.woff
--------------------------------------------------------------------------------
/docs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.eot
--------------------------------------------------------------------------------
/docs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.ttf
--------------------------------------------------------------------------------
/docs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/professorjosedeassis/javaSE/HEAD/docs/dist/theme/fonts/source-sans-pro/source-sans-pro-semibolditalic.woff
--------------------------------------------------------------------------------
/Curso de Java/fundamentos/Hello.java:
--------------------------------------------------------------------------------
1 | package fundamentos;
2 |
3 | /**
4 | * Java - Primeiros Passos
5 | *
6 | * @author Professor Jose de Assis (joseassis.com.br)
7 | *
8 | */
9 | public class Hello {
10 |
11 | public static void main(String[] args) {
12 | System.out.println("Hello World");
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/docs/js/utils/device.js:
--------------------------------------------------------------------------------
1 | const UA = navigator.userAgent;
2 |
3 | export const isMobile = /(iphone|ipod|ipad|android)/gi.test( UA ) ||
4 | ( navigator.platform === 'MacIntel' && navigator.maxTouchPoints > 1 ); // iPadOS
5 |
6 | export const isChrome = /chrome/i.test( UA ) && !/edge/i.test( UA );
7 |
8 | export const isAndroid = /android/gi.test( UA );
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Compiled class file
2 | *.class
3 |
4 | # Log file
5 | *.log
6 |
7 | # BlueJ files
8 | *.ctxt
9 |
10 | # Mobile Tools for Java (J2ME)
11 | .mtj.tmp/
12 |
13 | # Package Files #
14 | *.jar
15 | *.war
16 | *.nar
17 | *.ear
18 | *.zip
19 | *.tar.gz
20 | *.rar
21 |
22 | # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
23 | hs_err_pid*
24 |
--------------------------------------------------------------------------------
/docs/dist/theme/fonts/league-gothic/league-gothic.css:
--------------------------------------------------------------------------------
1 | @font-face {
2 | font-family: 'League Gothic';
3 | src: url('./league-gothic.eot');
4 | src: url('./league-gothic.eot?#iefix') format('embedded-opentype'),
5 | url('./league-gothic.woff') format('woff'),
6 | url('./league-gothic.ttf') format('truetype');
7 |
8 | font-weight: normal;
9 | font-style: normal;
10 | }
11 |
--------------------------------------------------------------------------------
/docs/plugin/math/plugin.js:
--------------------------------------------------------------------------------
1 | import {KaTeX} from "./katex";
2 | import {MathJax2} from "./mathjax2";
3 | import {MathJax3} from "./mathjax3";
4 |
5 | const defaultTypesetter = MathJax2;
6 |
7 | /*!
8 | * This plugin is a wrapper for the MathJax2,
9 | * MathJax3 and KaTeX typesetter plugins.
10 | */
11 | export default Plugin = Object.assign( defaultTypesetter(), {
12 | KaTeX,
13 | MathJax2,
14 | MathJax3
15 | } );
--------------------------------------------------------------------------------
/Curso de Java/pooAgencia/seguros/SeguroPessoaFisica.java:
--------------------------------------------------------------------------------
1 | package seguros;
2 |
3 | import contas.Conta;
4 |
5 | public class SeguroPessoaFisica extends Conta {
6 |
7 | public static void main(String[] args) {
8 | SeguroPessoaFisica cc3 = new SeguroPessoaFisica();
9 | cc3.setCliente("Robson Vaamonde");
10 | cc3.setSaldo(9000);
11 | System.out.println("Cliente: " + cc3.getCliente());
12 | cc3.exibirSaldo();
13 | }
14 | }
--------------------------------------------------------------------------------
/docs/js/utils/constants.js:
--------------------------------------------------------------------------------
1 |
2 | export const SLIDES_SELECTOR = '.slides section';
3 | export const HORIZONTAL_SLIDES_SELECTOR = '.slides>section';
4 | export const VERTICAL_SLIDES_SELECTOR = '.slides>section.present>section';
5 |
6 | // Methods that may not be invoked via the postMessage API
7 | export const POST_MESSAGE_METHOD_BLACKLIST = /registerPlugin|registerKeyboardShortcut|addKeyBinding|addEventListener|showPreview/;
8 |
9 | // Regex for retrieving the fragment style from a class attribute
10 | export const FRAGMENT_STYLE_REGEX = /fade-(down|up|right|left|out|in-then-out|in-then-semi-out)|semi-fade-out|current-visible|shrink|grow/;
--------------------------------------------------------------------------------
/Curso de Java/array/Cartas.java:
--------------------------------------------------------------------------------
1 | package array;
2 |
3 | import java.util.Random;
4 |
5 | /**
6 | * Exemplo de uso do array (salvar como UTF-8 para exibir caracteres especiais)
7 | *
8 | * @author Professor Jose de Assis
9 | *
10 | */
11 | public class Cartas {
12 |
13 | public static void main(String[] args) {
14 | // Copas (alt + 3) Ouros (alt + 4) Paus (alt + 5) Espada (alt + 6)
15 | String[] nipes = { "♥", "♦", "♣", "♠" };
16 | String[] faces = { "A", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K" };
17 | Random sorteio = new Random();
18 | /*
19 | * a linha abaixo usa o objeto sorteio para gerar um número aleatorio entre (0 e
20 | * 12) e atribui este numero a variavel indice_faces
21 | */
22 | int indice_faces = sorteio.nextInt(faces.length);
23 | int indice_nipes = sorteio.nextInt(nipes.length);
24 | System.out.println(faces[indice_faces] + nipes[indice_nipes]);
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/docs/dist/reset.css:
--------------------------------------------------------------------------------
1 | /* http://meyerweb.com/eric/tools/css/reset/
2 | v4.0 | 20180602
3 | License: none (public domain)
4 | */
5 |
6 | html, body, div, span, applet, object, iframe,
7 | h1, h2, h3, h4, h5, h6, p, blockquote, pre,
8 | a, abbr, acronym, address, big, cite, code,
9 | del, dfn, em, img, ins, kbd, q, s, samp,
10 | small, strike, strong, sub, sup, tt, var,
11 | b, u, i, center,
12 | dl, dt, dd, ol, ul, li,
13 | fieldset, form, label, legend,
14 | table, caption, tbody, tfoot, thead, tr, th, td,
15 | article, aside, canvas, details, embed,
16 | figure, figcaption, footer, header, hgroup,
17 | main, menu, nav, output, ruby, section, summary,
18 | time, mark, audio, video {
19 | margin: 0;
20 | padding: 0;
21 | border: 0;
22 | font-size: 100%;
23 | font: inherit;
24 | vertical-align: baseline;
25 | }
26 | /* HTML5 display-role reset for older browsers */
27 | article, aside, details, figcaption, figure,
28 | footer, header, hgroup, main, menu, nav, section {
29 | display: block;
30 | }
--------------------------------------------------------------------------------
/Curso de Java/exercicios/PDV.java:
--------------------------------------------------------------------------------
1 | package exercicios;
2 |
3 | import java.text.DecimalFormat;
4 | import java.util.Scanner;
5 |
6 | /**
7 | * Exercicio
8 | *
9 | * @author Professor Jose de Assis
10 | *
11 | */
12 | public class PDV {
13 |
14 | public static void main(String[] args) {
15 | // variaveis
16 | double total, desconto, totalDesconto, valorPago, troco;
17 | // objetos
18 | Scanner teclado = new Scanner(System.in);
19 | DecimalFormat formatador = new DecimalFormat("#0.00");
20 | // entrada
21 | System.out.println("PDV");
22 | System.out.print("Valor total: ");
23 | total = teclado.nextDouble();
24 | System.out.print("Desconto(%): ");
25 | desconto = teclado.nextDouble();
26 | // processamento
27 | totalDesconto = total - (desconto * total) / 100;
28 | // saida
29 | System.out.println("Total com desconto: R$ " + totalDesconto);
30 | System.out.print("Valor pago em dinheiro: ");
31 | valorPago = teclado.nextDouble();
32 | troco = valorPago - totalDesconto;
33 | System.out.println("Troco: R$ " + formatador.format(troco));
34 | teclado.close();
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 José de Assis
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/docs/css/theme/source/night.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * Black theme for reveal.js.
3 | *
4 | * Copyright (C) 2011-2012 Hakim El Hattab, http://hakim.se
5 | */
6 |
7 |
8 | // Default mixins and settings -----------------
9 | @import "../template/mixins";
10 | @import "../template/settings";
11 | // ---------------------------------------------
12 |
13 |
14 | // Include theme-specific fonts
15 | @import url(https://fonts.googleapis.com/css?family=Montserrat:700);
16 | @import url(https://fonts.googleapis.com/css?family=Open+Sans:400,700,400italic,700italic);
17 |
18 |
19 | // Override theme settings (see ../template/settings.scss)
20 | $backgroundColor: #111;
21 |
22 | $mainFont: 'Open Sans', sans-serif;
23 | $linkColor: #e7ad52;
24 | $linkColorHover: lighten( $linkColor, 20% );
25 | $headingFont: 'Montserrat', Impact, sans-serif;
26 | $headingTextShadow: none;
27 | $headingLetterSpacing: -0.03em;
28 | $headingTextTransform: none;
29 | $selectionBackgroundColor: #e7ad52;
30 |
31 | // Change text colors against light slide backgrounds
32 | @include light-bg-text-color(#222);
33 |
34 |
35 | // Theme template ------------------------------
36 | @import "../template/theme";
37 | // ---------------------------------------------
--------------------------------------------------------------------------------
/docs/css/theme/source/serif.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * A simple theme for reveal.js presentations, similar
3 | * to the default theme. The accent color is brown.
4 | *
5 | * This theme is Copyright (C) 2012-2013 Owen Versteeg, http://owenversteeg.com - it is MIT licensed.
6 | */
7 |
8 |
9 | // Default mixins and settings -----------------
10 | @import "../template/mixins";
11 | @import "../template/settings";
12 | // ---------------------------------------------
13 |
14 |
15 |
16 | // Override theme settings (see ../template/settings.scss)
17 | $mainFont: 'Palatino Linotype', 'Book Antiqua', Palatino, FreeSerif, serif;
18 | $mainColor: #000;
19 | $headingFont: 'Palatino Linotype', 'Book Antiqua', Palatino, FreeSerif, serif;
20 | $headingColor: #383D3D;
21 | $headingTextShadow: none;
22 | $headingTextTransform: none;
23 | $backgroundColor: #F0F1EB;
24 | $linkColor: #51483D;
25 | $linkColorHover: lighten( $linkColor, 20% );
26 | $selectionBackgroundColor: #26351C;
27 |
28 | .reveal a {
29 | line-height: 1.3em;
30 | }
31 |
32 | // Change text colors against dark slide backgrounds
33 | @include dark-bg-text-color(#fff);
34 |
35 |
36 | // Theme template ------------------------------
37 | @import "../template/theme";
38 | // ---------------------------------------------
39 |
--------------------------------------------------------------------------------
/docs/css/theme/template/exposer.scss:
--------------------------------------------------------------------------------
1 | // Exposes theme's variables for easy re-use in CSS for plugin authors
2 |
3 | :root {
4 | --r-background-color: #{$backgroundColor};
5 | --r-main-font: #{$mainFont};
6 | --r-main-font-size: #{$mainFontSize};
7 | --r-main-color: #{$mainColor};
8 | --r-block-margin: #{$blockMargin};
9 | --r-heading-margin: #{$headingMargin};
10 | --r-heading-font: #{$headingFont};
11 | --r-heading-color: #{$headingColor};
12 | --r-heading-line-height: #{$headingLineHeight};
13 | --r-heading-letter-spacing: #{$headingLetterSpacing};
14 | --r-heading-text-transform: #{$headingTextTransform};
15 | --r-heading-text-shadow: #{$headingTextShadow};
16 | --r-heading-font-weight: #{$headingFontWeight};
17 | --r-heading1-text-shadow: #{$heading1TextShadow};
18 | --r-heading1-size: #{$heading1Size};
19 | --r-heading2-size: #{$heading2Size};
20 | --r-heading3-size: #{$heading3Size};
21 | --r-heading4-size: #{$heading4Size};
22 | --r-code-font: #{$codeFont};
23 | --r-link-color: #{$linkColor};
24 | --r-link-color-dark: #{darken($linkColor , 15% )};
25 | --r-link-color-hover: #{$linkColorHover};
26 | --r-selection-background-color: #{$selectionBackgroundColor};
27 | --r-selection-color: #{$selectionColor};
28 | }
29 |
--------------------------------------------------------------------------------
/docs/css/theme/template/settings.scss:
--------------------------------------------------------------------------------
1 | // Base settings for all themes that can optionally be
2 | // overridden by the super-theme
3 |
4 | // Background of the presentation
5 | $backgroundColor: #2b2b2b;
6 |
7 | // Primary/body text
8 | $mainFont: 'Lato', sans-serif;
9 | $mainFontSize: 40px;
10 | $mainColor: #eee;
11 |
12 | // Vertical spacing between blocks of text
13 | $blockMargin: 20px;
14 |
15 | // Headings
16 | $headingMargin: 0 0 $blockMargin 0;
17 | $headingFont: 'League Gothic', Impact, sans-serif;
18 | $headingColor: #eee;
19 | $headingLineHeight: 1.2;
20 | $headingLetterSpacing: normal;
21 | $headingTextTransform: uppercase;
22 | $headingTextShadow: none;
23 | $headingFontWeight: normal;
24 | $heading1TextShadow: $headingTextShadow;
25 |
26 | $heading1Size: 3.77em;
27 | $heading2Size: 2.11em;
28 | $heading3Size: 1.55em;
29 | $heading4Size: 1.00em;
30 |
31 | $codeFont: monospace;
32 |
33 | // Links and actions
34 | $linkColor: #13DAEC;
35 | $linkColorHover: lighten( $linkColor, 20% );
36 |
37 | // Text selection
38 | $selectionBackgroundColor: #FF5E99;
39 | $selectionColor: #fff;
40 |
41 | // Generates the presentation background, can be overridden
42 | // to return a background image or gradient
43 | @mixin bodyBackground() {
44 | background: $backgroundColor;
45 | }
46 |
--------------------------------------------------------------------------------
/docs/plugin/highlight/monokai.css:
--------------------------------------------------------------------------------
1 | /*
2 | Monokai style - ported by Luigi Maselli - http://grigio.org
3 | */
4 |
5 | .hljs {
6 | display: block;
7 | overflow-x: auto;
8 | padding: 0.5em;
9 | background: #272822;
10 | color: #ddd;
11 | }
12 |
13 | .hljs-tag,
14 | .hljs-keyword,
15 | .hljs-selector-tag,
16 | .hljs-literal,
17 | .hljs-strong,
18 | .hljs-name {
19 | color: #f92672;
20 | }
21 |
22 | .hljs-code {
23 | color: #66d9ef;
24 | }
25 |
26 | .hljs-class .hljs-title {
27 | color: white;
28 | }
29 |
30 | .hljs-attribute,
31 | .hljs-symbol,
32 | .hljs-regexp,
33 | .hljs-link {
34 | color: #bf79db;
35 | }
36 |
37 | .hljs-string,
38 | .hljs-bullet,
39 | .hljs-subst,
40 | .hljs-title,
41 | .hljs-section,
42 | .hljs-emphasis,
43 | .hljs-type,
44 | .hljs-built_in,
45 | .hljs-builtin-name,
46 | .hljs-selector-attr,
47 | .hljs-selector-pseudo,
48 | .hljs-addition,
49 | .hljs-variable,
50 | .hljs-template-tag,
51 | .hljs-template-variable {
52 | color: #a6e22e;
53 | }
54 |
55 | .hljs-comment,
56 | .hljs-quote,
57 | .hljs-deletion,
58 | .hljs-meta {
59 | color: #75715e;
60 | }
61 |
62 | .hljs-keyword,
63 | .hljs-selector-tag,
64 | .hljs-literal,
65 | .hljs-doctag,
66 | .hljs-title,
67 | .hljs-section,
68 | .hljs-type,
69 | .hljs-selector-id {
70 | font-weight: bold;
71 | }
72 |
--------------------------------------------------------------------------------
/docs/js/utils/loader.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Loads a JavaScript file from the given URL and executes it.
3 | *
4 | * @param {string} url Address of the .js file to load
5 | * @param {function} callback Method to invoke when the script
6 | * has loaded and executed
7 | */
8 | export const loadScript = ( url, callback ) => {
9 |
10 | const script = document.createElement( 'script' );
11 | script.type = 'text/javascript';
12 | script.async = false;
13 | script.defer = false;
14 | script.src = url;
15 |
16 | if( typeof callback === 'function' ) {
17 |
18 | // Success callback
19 | script.onload = script.onreadystatechange = event => {
20 | if( event.type === 'load' || /loaded|complete/.test( script.readyState ) ) {
21 |
22 | // Kill event listeners
23 | script.onload = script.onreadystatechange = script.onerror = null;
24 |
25 | callback();
26 |
27 | }
28 | };
29 |
30 | // Error callback
31 | script.onerror = err => {
32 |
33 | // Kill event listeners
34 | script.onload = script.onreadystatechange = script.onerror = null;
35 |
36 | callback( new Error( 'Failed loading script: ' + script.src + '\n' + err ) );
37 |
38 | };
39 |
40 | }
41 |
42 | // Append the script at the end of
43 | const head = document.querySelector( 'head' );
44 | head.insertBefore( script, head.lastChild );
45 |
46 | }
--------------------------------------------------------------------------------
/docs/plugin/highlight/zenburn.css:
--------------------------------------------------------------------------------
1 | /*
2 |
3 | Zenburn style from voldmar.ru (c) Vladimir Epifanov
4 | based on dark.css by Ivan Sagalaev
5 |
6 | */
7 |
8 | .hljs {
9 | display: block;
10 | overflow-x: auto;
11 | padding: 0.5em;
12 | background: #3f3f3f;
13 | color: #dcdcdc;
14 | }
15 |
16 | .hljs-keyword,
17 | .hljs-selector-tag,
18 | .hljs-tag {
19 | color: #e3ceab;
20 | }
21 |
22 | .hljs-template-tag {
23 | color: #dcdcdc;
24 | }
25 |
26 | .hljs-number {
27 | color: #8cd0d3;
28 | }
29 |
30 | .hljs-variable,
31 | .hljs-template-variable,
32 | .hljs-attribute {
33 | color: #efdcbc;
34 | }
35 |
36 | .hljs-literal {
37 | color: #efefaf;
38 | }
39 |
40 | .hljs-subst {
41 | color: #8f8f8f;
42 | }
43 |
44 | .hljs-title,
45 | .hljs-name,
46 | .hljs-selector-id,
47 | .hljs-selector-class,
48 | .hljs-section,
49 | .hljs-type {
50 | color: #efef8f;
51 | }
52 |
53 | .hljs-symbol,
54 | .hljs-bullet,
55 | .hljs-link {
56 | color: #dca3a3;
57 | }
58 |
59 | .hljs-deletion,
60 | .hljs-string,
61 | .hljs-built_in,
62 | .hljs-builtin-name {
63 | color: #cc9393;
64 | }
65 |
66 | .hljs-addition,
67 | .hljs-comment,
68 | .hljs-quote,
69 | .hljs-meta {
70 | color: #7f9f7f;
71 | }
72 |
73 |
74 | .hljs-emphasis {
75 | font-style: italic;
76 | }
77 |
78 | .hljs-strong {
79 | font-weight: bold;
80 | }
81 |
--------------------------------------------------------------------------------
/docs/css/theme/source/league.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * League theme for reveal.js.
3 | *
4 | * This was the default theme pre-3.0.0.
5 | *
6 | * Copyright (C) 2011-2012 Hakim El Hattab, http://hakim.se
7 | */
8 |
9 |
10 | // Default mixins and settings -----------------
11 | @import "../template/mixins";
12 | @import "../template/settings";
13 | // ---------------------------------------------
14 |
15 |
16 |
17 | // Include theme-specific fonts
18 | @import url(./fonts/league-gothic/league-gothic.css);
19 | @import url(https://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic);
20 |
21 | // Override theme settings (see ../template/settings.scss)
22 | $headingTextShadow: 0px 0px 6px rgba(0,0,0,0.2);
23 | $heading1TextShadow: 0 1px 0 #ccc, 0 2px 0 #c9c9c9, 0 3px 0 #bbb, 0 4px 0 #b9b9b9, 0 5px 0 #aaa, 0 6px 1px rgba(0,0,0,.1), 0 0 5px rgba(0,0,0,.1), 0 1px 3px rgba(0,0,0,.3), 0 3px 5px rgba(0,0,0,.2), 0 5px 10px rgba(0,0,0,.25), 0 20px 20px rgba(0,0,0,.15);
24 |
25 | // Background generator
26 | @mixin bodyBackground() {
27 | @include radial-gradient( rgba(28,30,32,1), rgba(85,90,95,1) );
28 | }
29 |
30 | // Change text colors against light slide backgrounds
31 | @include light-bg-text-color(#222);
32 |
33 |
34 | // Theme template ------------------------------
35 | @import "../template/theme";
36 | // ---------------------------------------------
37 |
--------------------------------------------------------------------------------
/Curso de Java/pooCarros/Garagem.java:
--------------------------------------------------------------------------------
1 | package pooCarros;
2 |
3 | public class Garagem {
4 |
5 | public static void main(String[] args) {
6 | // Objeto 1 - ferrari
7 | Carro ferrari = new Carro();
8 | ferrari.ano = 2012;
9 | ferrari.cor = "Vermelho";
10 | System.out.println("Carro: Ferrari");
11 | System.out.println("Ano: " + ferrari.ano);
12 | System.out.println("Cor: " + ferrari.cor);
13 | ferrari.ligar();
14 | ferrari.acelerar();
15 | // Objeto 2 - fusca
16 | Carro fusca = new Carro();
17 | fusca.ano = 1967;
18 | fusca.cor = "Azul";
19 | System.out.println("Carro: Fusca");
20 | System.out.println("Ano: " + fusca.ano);
21 | System.out.println("Cor: " + fusca.cor);
22 | fusca.ligar();
23 | fusca.acelerar();
24 | fusca.desligar();
25 | // Objeto 3 - camaro
26 | //Dica: identacao(alinhamento)
27 | Carro camaro = new Carro();
28 | camaro.ano = 2009;
29 | camaro.cor = "Amarelo";
30 | System.out.println("Carro: Camaro");
31 | System.out.println("Ano: " + camaro.ano);
32 | System.out.println("Cor: " + camaro.cor);
33 | camaro.ligar();
34 | // Objeto 4 - uno
35 | Carro uno = new Carro();
36 | uno.ano = 1991;
37 | uno.cor = "Branco";
38 | System.out.println("Carro: Uno");
39 | System.out.println("Ano: " + uno.ano);
40 | System.out.println("Cor: " + uno.cor);
41 | uno.ligar();
42 | uno.acelerar();
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/Curso de Java/exercicios/CalculoIMC.java:
--------------------------------------------------------------------------------
1 | package exercicios;
2 |
3 | import java.text.DecimalFormat;
4 | import java.util.Scanner;
5 |
6 | /**
7 | * Exercicio
8 | *
9 | * @author Professor Jose de Assis
10 | *
11 | */
12 | public class CalculoIMC {
13 |
14 | public static void main(String[] args) {
15 | // variaveis
16 | double peso, altura, imc;
17 | // objetos
18 | Scanner teclado = new Scanner(System.in);
19 | DecimalFormat formatador = new DecimalFormat("#0.00");
20 | // entrada
21 | System.out.println("Cálculo do IMC");
22 | System.out.print("Digite o seu peso em kilogramas: ");
23 | peso = teclado.nextDouble();
24 | System.out.print("Digite a sua altura em metros: ");
25 | altura = teclado.nextDouble();
26 | // processamento
27 | imc = peso / (altura * altura);
28 | // saida
29 | System.out.println("IMC: " + formatador.format(imc));
30 | teclado.close();
31 | // classificacao
32 | if (imc < 18.5) {
33 | System.out.println("abaixo do peso");
34 | } else if (imc < 25) {
35 | System.out.println("Peso ideal");
36 | } else if (imc < 30) {
37 | System.out.println("Levemente acima do peso");
38 | } else if (imc < 35) {
39 | System.out.println("Obesidade grau I");
40 | } else if (imc < 40) {
41 | System.out.println("Obesidade grau II (severa)");
42 | } else {
43 | System.out.println("Obesidade grau III (m�rbida)");
44 | }
45 | }
46 | }
--------------------------------------------------------------------------------
/docs/css/theme/source/black.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * Black theme for reveal.js. This is the opposite of the 'white' theme.
3 | *
4 | * By Hakim El Hattab, http://hakim.se
5 | */
6 |
7 |
8 | // Default mixins and settings -----------------
9 | @import "../template/mixins";
10 | @import "../template/settings";
11 | // ---------------------------------------------
12 |
13 |
14 | // Include theme-specific fonts
15 | @import url(./fonts/source-sans-pro/source-sans-pro.css);
16 |
17 |
18 | // Override theme settings (see ../template/settings.scss)
19 | $backgroundColor: #191919;
20 |
21 | $mainColor: #fff;
22 | $headingColor: #fff;
23 |
24 | $mainFontSize: 42px;
25 | $mainFont: 'Source Sans Pro', Helvetica, sans-serif;
26 | $headingFont: 'Source Sans Pro', Helvetica, sans-serif;
27 | $headingTextShadow: none;
28 | $headingLetterSpacing: normal;
29 | $headingTextTransform: uppercase;
30 | $headingFontWeight: 600;
31 | $linkColor: #42affa;
32 | $linkColorHover: lighten( $linkColor, 15% );
33 | $selectionBackgroundColor: rgba( $linkColor, 0.75 );
34 |
35 | $heading1Size: 2.5em;
36 | $heading2Size: 1.6em;
37 | $heading3Size: 1.3em;
38 | $heading4Size: 1.0em;
39 |
40 | // Change text colors against light slide backgrounds
41 | @include light-bg-text-color(#222);
42 |
43 |
44 | // Theme template ------------------------------
45 | @import "../template/theme";
46 | // ---------------------------------------------
47 |
--------------------------------------------------------------------------------
/docs/css/theme/source/white.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * White theme for reveal.js. This is the opposite of the 'black' theme.
3 | *
4 | * By Hakim El Hattab, http://hakim.se
5 | */
6 |
7 |
8 | // Default mixins and settings -----------------
9 | @import "../template/mixins";
10 | @import "../template/settings";
11 | // ---------------------------------------------
12 |
13 |
14 | // Include theme-specific fonts
15 | @import url(./fonts/source-sans-pro/source-sans-pro.css);
16 |
17 |
18 | // Override theme settings (see ../template/settings.scss)
19 | $backgroundColor: #fff;
20 |
21 | $mainColor: #222;
22 | $headingColor: #222;
23 |
24 | $mainFontSize: 42px;
25 | $mainFont: 'Source Sans Pro', Helvetica, sans-serif;
26 | $headingFont: 'Source Sans Pro', Helvetica, sans-serif;
27 | $headingTextShadow: none;
28 | $headingLetterSpacing: normal;
29 | $headingTextTransform: uppercase;
30 | $headingFontWeight: 600;
31 | $linkColor: #2a76dd;
32 | $linkColorHover: lighten( $linkColor, 15% );
33 | $selectionBackgroundColor: lighten( $linkColor, 25% );
34 |
35 | $heading1Size: 2.5em;
36 | $heading2Size: 1.6em;
37 | $heading3Size: 1.3em;
38 | $heading4Size: 1.0em;
39 |
40 | // Change text colors against dark slide backgrounds
41 | @include dark-bg-text-color(#fff);
42 |
43 |
44 | // Theme template ------------------------------
45 | @import "../template/theme";
46 | // ---------------------------------------------
47 |
--------------------------------------------------------------------------------
/docs/css/theme/source/simple.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * A simple theme for reveal.js presentations, similar
3 | * to the default theme. The accent color is darkblue.
4 | *
5 | * This theme is Copyright (C) 2012 Owen Versteeg, https://github.com/StereotypicalApps. It is MIT licensed.
6 | * reveal.js is Copyright (C) 2011-2012 Hakim El Hattab, http://hakim.se
7 | */
8 |
9 |
10 | // Default mixins and settings -----------------
11 | @import "../template/mixins";
12 | @import "../template/settings";
13 | // ---------------------------------------------
14 |
15 |
16 |
17 | // Include theme-specific fonts
18 | @import url(https://fonts.googleapis.com/css?family=News+Cycle:400,700);
19 | @import url(https://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic);
20 |
21 |
22 | // Override theme settings (see ../template/settings.scss)
23 | $mainFont: 'Lato', sans-serif;
24 | $mainColor: #000;
25 | $headingFont: 'News Cycle', Impact, sans-serif;
26 | $headingColor: #000;
27 | $headingTextShadow: none;
28 | $headingTextTransform: none;
29 | $backgroundColor: #fff;
30 | $linkColor: #00008B;
31 | $linkColorHover: lighten( $linkColor, 20% );
32 | $selectionBackgroundColor: rgba(0, 0, 0, 0.99);
33 |
34 | // Change text colors against dark slide backgrounds
35 | @include dark-bg-text-color(#fff);
36 |
37 |
38 | // Theme template ------------------------------
39 | @import "../template/theme";
40 | // ---------------------------------------------
--------------------------------------------------------------------------------
/docs/css/theme/source/sky.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * Sky theme for reveal.js.
3 | *
4 | * Copyright (C) 2011-2012 Hakim El Hattab, http://hakim.se
5 | */
6 |
7 |
8 | // Default mixins and settings -----------------
9 | @import "../template/mixins";
10 | @import "../template/settings";
11 | // ---------------------------------------------
12 |
13 |
14 |
15 | // Include theme-specific fonts
16 | @import url(https://fonts.googleapis.com/css?family=Quicksand:400,700,400italic,700italic);
17 | @import url(https://fonts.googleapis.com/css?family=Open+Sans:400italic,700italic,400,700);
18 |
19 |
20 | // Override theme settings (see ../template/settings.scss)
21 | $mainFont: 'Open Sans', sans-serif;
22 | $mainColor: #333;
23 | $headingFont: 'Quicksand', sans-serif;
24 | $headingColor: #333;
25 | $headingLetterSpacing: -0.08em;
26 | $headingTextShadow: none;
27 | $backgroundColor: #f7fbfc;
28 | $linkColor: #3b759e;
29 | $linkColorHover: lighten( $linkColor, 20% );
30 | $selectionBackgroundColor: #134674;
31 |
32 | // Fix links so they are not cut off
33 | .reveal a {
34 | line-height: 1.3em;
35 | }
36 |
37 | // Background generator
38 | @mixin bodyBackground() {
39 | @include radial-gradient( #add9e4, #f7fbfc );
40 | }
41 |
42 | // Change text colors against dark slide backgrounds
43 | @include dark-bg-text-color(#fff);
44 |
45 |
46 |
47 | // Theme template ------------------------------
48 | @import "../template/theme";
49 | // ---------------------------------------------
50 |
--------------------------------------------------------------------------------
/docs/css/theme/source/beige.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * Beige theme for reveal.js.
3 | *
4 | * Copyright (C) 2011-2012 Hakim El Hattab, http://hakim.se
5 | */
6 |
7 |
8 | // Default mixins and settings -----------------
9 | @import "../template/mixins";
10 | @import "../template/settings";
11 | // ---------------------------------------------
12 |
13 |
14 |
15 | // Include theme-specific fonts
16 | @import url(./fonts/league-gothic/league-gothic.css);
17 | @import url(https://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic);
18 |
19 |
20 | // Override theme settings (see ../template/settings.scss)
21 | $mainColor: #333;
22 | $headingColor: #333;
23 | $headingTextShadow: none;
24 | $backgroundColor: #f7f3de;
25 | $linkColor: #8b743d;
26 | $linkColorHover: lighten( $linkColor, 20% );
27 | $selectionBackgroundColor: rgba(79, 64, 28, 0.99);
28 | $heading1TextShadow: 0 1px 0 #ccc, 0 2px 0 #c9c9c9, 0 3px 0 #bbb, 0 4px 0 #b9b9b9, 0 5px 0 #aaa, 0 6px 1px rgba(0,0,0,.1), 0 0 5px rgba(0,0,0,.1), 0 1px 3px rgba(0,0,0,.3), 0 3px 5px rgba(0,0,0,.2), 0 5px 10px rgba(0,0,0,.25), 0 20px 20px rgba(0,0,0,.15);
29 |
30 | // Background generator
31 | @mixin bodyBackground() {
32 | @include radial-gradient( rgba(247,242,211,1), rgba(255,255,255,1) );
33 | }
34 |
35 | // Change text colors against dark slide backgrounds
36 | @include dark-bg-text-color(#fff);
37 |
38 |
39 | // Theme template ------------------------------
40 | @import "../template/theme";
41 | // ---------------------------------------------
42 |
--------------------------------------------------------------------------------
/docs/css/theme/source/white-contrast.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * White compact & high contrast reveal.js theme, with headers not in capitals.
3 | *
4 | * By Peter Kehl. Based on white.(s)css by Hakim El Hattab, http://hakim.se
5 | *
6 | * - Keep the source similar to black.css - for easy comparison.
7 | * - $mainFontSize controls code blocks, too (although under some ratio).
8 | */
9 |
10 |
11 | // Default mixins and settings -----------------
12 | @import "../template/mixins";
13 | @import "../template/settings";
14 | // ---------------------------------------------
15 |
16 |
17 | // Include theme-specific fonts
18 | @import url(./fonts/source-sans-pro/source-sans-pro.css);
19 |
20 |
21 | // Override theme settings (see ../template/settings.scss)
22 | $backgroundColor: #fff;
23 |
24 | $mainColor: #000;
25 | $headingColor: #000;
26 |
27 | $mainFontSize: 42px;
28 | $mainFont: 'Source Sans Pro', Helvetica, sans-serif;
29 | $headingFont: 'Source Sans Pro', Helvetica, sans-serif;
30 | $headingTextShadow: none;
31 | $headingLetterSpacing: normal;
32 | $headingTextTransform: uppercase;
33 | $headingFontWeight: 600;
34 | $linkColor: #2a76dd;
35 | $linkColorHover: lighten( $linkColor, 15% );
36 | $selectionBackgroundColor: lighten( $linkColor, 25% );
37 |
38 | $heading1Size: 2.5em;
39 | $heading2Size: 1.6em;
40 | $heading3Size: 1.3em;
41 | $heading4Size: 1.0em;
42 |
43 | // Change text colors against dark slide backgrounds
44 | @include dark-bg-text-color(#fff);
45 |
46 |
47 | // Theme template ------------------------------
48 | @import "../template/theme";
49 | // ---------------------------------------------
50 |
--------------------------------------------------------------------------------
/docs/css/theme/source/black-contrast.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * Black compact & high contrast reveal.js theme, with headers not in capitals.
3 | *
4 | * By Peter Kehl. Based on black.(s)css by Hakim El Hattab, http://hakim.se
5 | *
6 | * - Keep the source similar to black.css - for easy comparison.
7 | * - $mainFontSize controls code blocks, too (although under some ratio).
8 | */
9 |
10 |
11 | // Default mixins and settings -----------------
12 | @import "../template/mixins";
13 | @import "../template/settings";
14 | // ---------------------------------------------
15 |
16 |
17 | // Include theme-specific fonts
18 | @import url(./fonts/source-sans-pro/source-sans-pro.css);
19 |
20 |
21 | // Override theme settings (see ../template/settings.scss)
22 | $backgroundColor: #000000;
23 |
24 | $mainColor: #fff;
25 | $headingColor: #fff;
26 |
27 | $mainFontSize: 42px;
28 | $mainFont: 'Source Sans Pro', Helvetica, sans-serif;
29 | $headingFont: 'Source Sans Pro', Helvetica, sans-serif;
30 | $headingTextShadow: none;
31 | $headingLetterSpacing: normal;
32 | $headingTextTransform: uppercase;
33 | $headingFontWeight: 600;
34 | $linkColor: #42affa;
35 | $linkColorHover: lighten( $linkColor, 15% );
36 | $selectionBackgroundColor: lighten( $linkColor, 25% );
37 |
38 | $heading1Size: 2.5em;
39 | $heading2Size: 1.6em;
40 | $heading3Size: 1.3em;
41 | $heading4Size: 1.0em;
42 |
43 | // Change text colors against light slide backgrounds
44 | @include light-bg-text-color(#000);
45 |
46 |
47 | // Theme template ------------------------------
48 | @import "../template/theme";
49 | // ---------------------------------------------
50 |
--------------------------------------------------------------------------------
/docs/css/theme/source/moon.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * Solarized Dark theme for reveal.js.
3 | * Author: Achim Staebler
4 | */
5 |
6 |
7 | // Default mixins and settings -----------------
8 | @import "../template/mixins";
9 | @import "../template/settings";
10 | // ---------------------------------------------
11 |
12 |
13 |
14 | // Include theme-specific fonts
15 | @import url(./fonts/league-gothic/league-gothic.css);
16 | @import url(https://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic);
17 |
18 | /**
19 | * Solarized colors by Ethan Schoonover
20 | */
21 | html * {
22 | color-profile: sRGB;
23 | rendering-intent: auto;
24 | }
25 |
26 | // Solarized colors
27 | $base03: #002b36;
28 | $base02: #073642;
29 | $base01: #586e75;
30 | $base00: #657b83;
31 | $base0: #839496;
32 | $base1: #93a1a1;
33 | $base2: #eee8d5;
34 | $base3: #fdf6e3;
35 | $yellow: #b58900;
36 | $orange: #cb4b16;
37 | $red: #dc322f;
38 | $magenta: #d33682;
39 | $violet: #6c71c4;
40 | $blue: #268bd2;
41 | $cyan: #2aa198;
42 | $green: #859900;
43 |
44 | // Override theme settings (see ../template/settings.scss)
45 | $mainColor: $base1;
46 | $headingColor: $base2;
47 | $headingTextShadow: none;
48 | $backgroundColor: $base03;
49 | $linkColor: $blue;
50 | $linkColorHover: lighten( $linkColor, 20% );
51 | $selectionBackgroundColor: $magenta;
52 |
53 | // Change text colors against light slide backgrounds
54 | @include light-bg-text-color(#222);
55 |
56 | // Theme template ------------------------------
57 | @import "../template/theme";
58 | // ---------------------------------------------
59 |
--------------------------------------------------------------------------------
/docs/css/theme/README.md:
--------------------------------------------------------------------------------
1 | ## Dependencies
2 |
3 | Themes are written using Sass to keep things modular and reduce the need for repeated selectors across files. Make sure that you have the reveal.js development environment installed before proceeding: https://revealjs.com/installation/#full-setup
4 |
5 | ## Creating a Theme
6 |
7 | To create your own theme, start by duplicating a ```.scss``` file in [/css/theme/source](https://github.com/hakimel/reveal.js/blob/master/css/theme/source). It will be automatically compiled from Sass to CSS (see the [gulpfile](https://github.com/hakimel/reveal.js/blob/master/gulpfile.js)) when you run `npm run build -- css-themes`.
8 |
9 | Each theme file does four things in the following order:
10 |
11 | 1. **Include [/css/theme/template/mixins.scss](https://github.com/hakimel/reveal.js/blob/master/css/theme/template/mixins.scss)**
12 | Shared utility functions.
13 |
14 | 2. **Include [/css/theme/template/settings.scss](https://github.com/hakimel/reveal.js/blob/master/css/theme/template/settings.scss)**
15 | Declares a set of custom variables that the template file (step 4) expects. Can be overridden in step 3.
16 |
17 | 3. **Override**
18 | This is where you override the default theme. Either by specifying variables (see [settings.scss](https://github.com/hakimel/reveal.js/blob/master/css/theme/template/settings.scss) for reference) or by adding any selectors and styles you please.
19 |
20 | 4. **Include [/css/theme/template/theme.scss](https://github.com/hakimel/reveal.js/blob/master/css/theme/template/theme.scss)**
21 | The template theme file which will generate final CSS output based on the currently defined variables.
22 |
--------------------------------------------------------------------------------
/docs/dist/theme/fonts/source-sans-pro/source-sans-pro.css:
--------------------------------------------------------------------------------
1 | @font-face {
2 | font-family: 'Source Sans Pro';
3 | src: url('./source-sans-pro-regular.eot');
4 | src: url('./source-sans-pro-regular.eot?#iefix') format('embedded-opentype'),
5 | url('./source-sans-pro-regular.woff') format('woff'),
6 | url('./source-sans-pro-regular.ttf') format('truetype');
7 | font-weight: normal;
8 | font-style: normal;
9 | }
10 |
11 | @font-face {
12 | font-family: 'Source Sans Pro';
13 | src: url('./source-sans-pro-italic.eot');
14 | src: url('./source-sans-pro-italic.eot?#iefix') format('embedded-opentype'),
15 | url('./source-sans-pro-italic.woff') format('woff'),
16 | url('./source-sans-pro-italic.ttf') format('truetype');
17 | font-weight: normal;
18 | font-style: italic;
19 | }
20 |
21 | @font-face {
22 | font-family: 'Source Sans Pro';
23 | src: url('./source-sans-pro-semibold.eot');
24 | src: url('./source-sans-pro-semibold.eot?#iefix') format('embedded-opentype'),
25 | url('./source-sans-pro-semibold.woff') format('woff'),
26 | url('./source-sans-pro-semibold.ttf') format('truetype');
27 | font-weight: 600;
28 | font-style: normal;
29 | }
30 |
31 | @font-face {
32 | font-family: 'Source Sans Pro';
33 | src: url('./source-sans-pro-semibolditalic.eot');
34 | src: url('./source-sans-pro-semibolditalic.eot?#iefix') format('embedded-opentype'),
35 | url('./source-sans-pro-semibolditalic.woff') format('woff'),
36 | url('./source-sans-pro-semibolditalic.ttf') format('truetype');
37 | font-weight: 600;
38 | font-style: italic;
39 | }
40 |
--------------------------------------------------------------------------------
/docs/css/theme/source/solarized.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * Solarized Light theme for reveal.js.
3 | * Author: Achim Staebler
4 | */
5 |
6 |
7 | // Default mixins and settings -----------------
8 | @import "../template/mixins";
9 | @import "../template/settings";
10 | // ---------------------------------------------
11 |
12 |
13 |
14 | // Include theme-specific fonts
15 | @import url(./fonts/league-gothic/league-gothic.css);
16 | @import url(https://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic);
17 |
18 |
19 | /**
20 | * Solarized colors by Ethan Schoonover
21 | */
22 | html * {
23 | color-profile: sRGB;
24 | rendering-intent: auto;
25 | }
26 |
27 | // Solarized colors
28 | $base03: #002b36;
29 | $base02: #073642;
30 | $base01: #586e75;
31 | $base00: #657b83;
32 | $base0: #839496;
33 | $base1: #93a1a1;
34 | $base2: #eee8d5;
35 | $base3: #fdf6e3;
36 | $yellow: #b58900;
37 | $orange: #cb4b16;
38 | $red: #dc322f;
39 | $magenta: #d33682;
40 | $violet: #6c71c4;
41 | $blue: #268bd2;
42 | $cyan: #2aa198;
43 | $green: #859900;
44 |
45 | // Override theme settings (see ../template/settings.scss)
46 | $mainColor: $base00;
47 | $headingColor: $base01;
48 | $headingTextShadow: none;
49 | $backgroundColor: $base3;
50 | $linkColor: $blue;
51 | $linkColorHover: lighten( $linkColor, 20% );
52 | $selectionBackgroundColor: $magenta;
53 |
54 | // Background generator
55 | // @mixin bodyBackground() {
56 | // @include radial-gradient( rgba($base3,1), rgba(lighten($base3, 20%),1) );
57 | // }
58 |
59 |
60 |
61 | // Theme template ------------------------------
62 | @import "../template/theme";
63 | // ---------------------------------------------
64 |
--------------------------------------------------------------------------------
/docs/js/index.js:
--------------------------------------------------------------------------------
1 | import Deck, { VERSION } from './reveal.js'
2 |
3 | /**
4 | * Expose the Reveal class to the window. To create a
5 | * new instance:
6 | * let deck = new Reveal( document.querySelector( '.reveal' ), {
7 | * controls: false
8 | * } );
9 | * deck.initialize().then(() => {
10 | * // reveal.js is ready
11 | * });
12 | */
13 | let Reveal = Deck;
14 |
15 |
16 | /**
17 | * The below is a thin shell that mimics the pre 4.0
18 | * reveal.js API and ensures backwards compatibility.
19 | * This API only allows for one Reveal instance per
20 | * page, whereas the new API above lets you run many
21 | * presentations on the same page.
22 | *
23 | * Reveal.initialize( { controls: false } ).then(() => {
24 | * // reveal.js is ready
25 | * });
26 | */
27 |
28 | let enqueuedAPICalls = [];
29 |
30 | Reveal.initialize = options => {
31 |
32 | // Create our singleton reveal.js instance
33 | Object.assign( Reveal, new Deck( document.querySelector( '.reveal' ), options ) );
34 |
35 | // Invoke any enqueued API calls
36 | enqueuedAPICalls.map( method => method( Reveal ) );
37 |
38 | return Reveal.initialize();
39 |
40 | }
41 |
42 | /**
43 | * The pre 4.0 API let you add event listener before
44 | * initializing. We maintain the same behavior by
45 | * queuing up premature API calls and invoking all
46 | * of them when Reveal.initialize is called.
47 | */
48 | [ 'configure', 'on', 'off', 'addEventListener', 'removeEventListener', 'registerPlugin' ].forEach( method => {
49 | Reveal[method] = ( ...args ) => {
50 | enqueuedAPICalls.push( deck => deck[method].call( null, ...args ) );
51 | }
52 | } );
53 |
54 | Reveal.isReady = () => false;
55 |
56 | Reveal.VERSION = VERSION;
57 |
58 | export default Reveal;
--------------------------------------------------------------------------------
/docs/css/layout.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * Layout helpers.
3 | */
4 |
5 | // Stretch an element vertically based on available space
6 | .reveal .stretch,
7 | .reveal .r-stretch {
8 | max-width: none;
9 | max-height: none;
10 | }
11 |
12 | .reveal pre.stretch code,
13 | .reveal pre.r-stretch code {
14 | height: 100%;
15 | max-height: 100%;
16 | box-sizing: border-box;
17 | }
18 |
19 | // Text that auto-fits its container
20 | .reveal .r-fit-text {
21 | display: inline-block; // https://github.com/rikschennink/fitty#performance
22 | white-space: nowrap;
23 | }
24 |
25 | // Stack multiple elements on top of each other
26 | .reveal .r-stack {
27 | display: grid;
28 | }
29 |
30 | .reveal .r-stack > * {
31 | grid-area: 1/1;
32 | margin: auto;
33 | }
34 |
35 | // Horizontal and vertical stacks
36 | .reveal .r-vstack,
37 | .reveal .r-hstack {
38 | display: flex;
39 |
40 | img, video {
41 | min-width: 0;
42 | min-height: 0;
43 | object-fit: contain;
44 | }
45 | }
46 |
47 | .reveal .r-vstack {
48 | flex-direction: column;
49 | align-items: center;
50 | justify-content: center;
51 | }
52 |
53 | .reveal .r-hstack {
54 | flex-direction: row;
55 | align-items: center;
56 | justify-content: center;
57 | }
58 |
59 | // Naming based on tailwindcss
60 | .reveal .items-stretch { align-items: stretch; }
61 | .reveal .items-start { align-items: flex-start; }
62 | .reveal .items-center { align-items: center; }
63 | .reveal .items-end { align-items: flex-end; }
64 |
65 | .reveal .justify-between { justify-content: space-between; }
66 | .reveal .justify-around { justify-content: space-around; }
67 | .reveal .justify-start { justify-content: flex-start; }
68 | .reveal .justify-center { justify-content: center; }
69 | .reveal .justify-end { justify-content: flex-end; }
70 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | 
2 | # Programação com Java para iniciantes
3 | Aprenda Java de forma prática e divertida. Este curso também ensina lógica e programação orientada a objetos(POO) criando uma base sólida a todos que desejam iniciar no mundo Java.
4 | ### Conteúdo
5 | * Introdução ao Java
6 | * Ambiente de desenvolvimento
7 | * Fundamentos da Linguagem (variáveis, operadores, estruturas de controle etc.)
8 | * Métodos
9 | * POO (abstração, herança, polimorfismo e encapsulamento)
10 | * Array (simples, multidimensional e dinâmico)
11 | * Exercícios
12 | * ROBOCODE
13 | ### Autor
14 | Professor José de Assis
15 | ### Apresentação
16 | [](https://youtu.be/srNtqw2LEBU "Asssistir no YouTube")
17 |
18 | 
19 | ### Iniciar curso:
20 | ▶️ [Playlist](https://www.youtube.com/playlist?list=PLbEOwbQR9lqxdW98mY-40IZQ5i8ZZyeQx)
21 | ### Certificado deste curso:
22 | 🎓 [Iniciar teste](https://docs.google.com/forms/d/e/1FAIpQLScri9iCaDBShqXUvHRb5qp-iVQZvNrDM8P6TLWWdB8IcDBMpQ/viewform)
23 |
24 | ---
25 | ### Slides de apoio as aulas:
26 | [](https://professorjosedeassis.github.io/javaSE/ "Apresentação dos slides")
27 |
28 |
29 |
30 | ### ☕ Projetos sem café? Impossível!
31 | Criar e compartilhar projetos gratuitos exige tempo, dedicação e, claro, muito café! Se quiser apoiar, um "cafezinho" faz toda a diferença.
Sua doação incentiva mais projetos reais e mantém a motivação lá em cima!
32 | #### Chave PIX❖:
33 | ~~~txt
34 | josedeassisfilho@gmail.com
35 | ~~~
36 | *( em nome de José de Assis Filho )*
37 |
38 | E olha, só de dar uma estrela ⭐, seguir o repositório e compartilhar, você já está dando uma baita força!
39 |
40 | 😃 Valeu demais pelo apoio!
41 |
--------------------------------------------------------------------------------
/Curso de Java/exercicios/JogoDado.java:
--------------------------------------------------------------------------------
1 | package exercicios;
2 |
3 | import java.util.Scanner;
4 |
5 | /**
6 | * Exercicio (salvar como UTF-8 para exibir caracteres especiais)
7 | *
8 | * @author Professor Jose de Assis
9 | *
10 | */
11 | public class JogoDado {
12 |
13 | public static void main(String[] args) {
14 | char novoJogo = 'n';
15 | Scanner teclado = new Scanner(System.in);
16 | do {
17 | int dado = (int) (Math.random() * 6 + 1);
18 | switch (dado) {
19 | case 1:
20 | System.out.println("╔═══════╗");
21 | System.out.println("║ ║");
22 | System.out.println("║ ○ ║");
23 | System.out.println("║ ║");
24 | System.out.println("╚═══════╝");
25 | break;
26 | case 2:
27 | System.out.println("╔═══════╗");
28 | System.out.println("║ ○ ║");
29 | System.out.println("║ ║");
30 | System.out.println("║ ○ ║");
31 | System.out.println("╚═══════╝");
32 | break;
33 | case 3:
34 | System.out.println("╔═══════╗");
35 | System.out.println("║ ○ ║");
36 | System.out.println("║ ○ ║");
37 | System.out.println("║ ○ ║");
38 | System.out.println("╚═══════╝");
39 | break;
40 | case 4:
41 | System.out.println("╔═══════╗");
42 | System.out.println("║ ○ ○ ║");
43 | System.out.println("║ ║");
44 | System.out.println("║ ○ ○ ║");
45 | System.out.println("╚═══════╝");
46 | break;
47 | case 5:
48 | System.out.println("╔═══════╗");
49 | System.out.println("║ ○ ○ ║");
50 | System.out.println("║ ○ ║");
51 | System.out.println("║ ○ ○ ║");
52 | System.out.println("╚═══════╝");
53 | break;
54 | case 6:
55 | System.out.println("╔═══════╗");
56 | System.out.println("║ ○ ○ ║");
57 | System.out.println("║ ○ ○ ║");
58 | System.out.println("║ ○ ○ ║");
59 | System.out.println("╚═══════╝");
60 | break;
61 | }
62 | System.out.print("Deseja jogar novamente(s/n)? ");
63 | novoJogo = teclado.next().charAt(0);
64 | } while (novoJogo == 's');
65 | teclado.close();
66 | }
67 | }
--------------------------------------------------------------------------------
/docs/css/theme/template/mixins.scss:
--------------------------------------------------------------------------------
1 | @mixin vertical-gradient( $top, $bottom ) {
2 | background: $top;
3 | background: -moz-linear-gradient( top, $top 0%, $bottom 100% );
4 | background: -webkit-gradient( linear, left top, left bottom, color-stop(0%,$top), color-stop(100%,$bottom) );
5 | background: -webkit-linear-gradient( top, $top 0%, $bottom 100% );
6 | background: -o-linear-gradient( top, $top 0%, $bottom 100% );
7 | background: -ms-linear-gradient( top, $top 0%, $bottom 100% );
8 | background: linear-gradient( top, $top 0%, $bottom 100% );
9 | }
10 |
11 | @mixin horizontal-gradient( $top, $bottom ) {
12 | background: $top;
13 | background: -moz-linear-gradient( left, $top 0%, $bottom 100% );
14 | background: -webkit-gradient( linear, left top, right top, color-stop(0%,$top), color-stop(100%,$bottom) );
15 | background: -webkit-linear-gradient( left, $top 0%, $bottom 100% );
16 | background: -o-linear-gradient( left, $top 0%, $bottom 100% );
17 | background: -ms-linear-gradient( left, $top 0%, $bottom 100% );
18 | background: linear-gradient( left, $top 0%, $bottom 100% );
19 | }
20 |
21 | @mixin radial-gradient( $outer, $inner, $type: circle ) {
22 | background: $outer;
23 | background: -moz-radial-gradient( center, $type cover, $inner 0%, $outer 100% );
24 | background: -webkit-gradient( radial, center center, 0px, center center, 100%, color-stop(0%,$inner), color-stop(100%,$outer) );
25 | background: -webkit-radial-gradient( center, $type cover, $inner 0%, $outer 100% );
26 | background: -o-radial-gradient( center, $type cover, $inner 0%, $outer 100% );
27 | background: -ms-radial-gradient( center, $type cover, $inner 0%, $outer 100% );
28 | background: radial-gradient( center, $type cover, $inner 0%, $outer 100% );
29 | }
30 |
31 | @mixin light-bg-text-color( $color ) {
32 | section.has-light-background {
33 | &, h1, h2, h3, h4, h5, h6 {
34 | color: $color;
35 | }
36 | }
37 | }
38 |
39 | @mixin dark-bg-text-color( $color ) {
40 | section.has-dark-background {
41 | &, h1, h2, h3, h4, h5, h6 {
42 | color: $color;
43 | }
44 | }
45 | }
--------------------------------------------------------------------------------
/docs/js/utils/color.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Converts various color input formats to an {r:0,g:0,b:0} object.
3 | *
4 | * @param {string} color The string representation of a color
5 | * @example
6 | * colorToRgb('#000');
7 | * @example
8 | * colorToRgb('#000000');
9 | * @example
10 | * colorToRgb('rgb(0,0,0)');
11 | * @example
12 | * colorToRgb('rgba(0,0,0)');
13 | *
14 | * @return {{r: number, g: number, b: number, [a]: number}|null}
15 | */
16 | export const colorToRgb = ( color ) => {
17 |
18 | let hex3 = color.match( /^#([0-9a-f]{3})$/i );
19 | if( hex3 && hex3[1] ) {
20 | hex3 = hex3[1];
21 | return {
22 | r: parseInt( hex3.charAt( 0 ), 16 ) * 0x11,
23 | g: parseInt( hex3.charAt( 1 ), 16 ) * 0x11,
24 | b: parseInt( hex3.charAt( 2 ), 16 ) * 0x11
25 | };
26 | }
27 |
28 | let hex6 = color.match( /^#([0-9a-f]{6})$/i );
29 | if( hex6 && hex6[1] ) {
30 | hex6 = hex6[1];
31 | return {
32 | r: parseInt( hex6.slice( 0, 2 ), 16 ),
33 | g: parseInt( hex6.slice( 2, 4 ), 16 ),
34 | b: parseInt( hex6.slice( 4, 6 ), 16 )
35 | };
36 | }
37 |
38 | let rgb = color.match( /^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i );
39 | if( rgb ) {
40 | return {
41 | r: parseInt( rgb[1], 10 ),
42 | g: parseInt( rgb[2], 10 ),
43 | b: parseInt( rgb[3], 10 )
44 | };
45 | }
46 |
47 | let rgba = color.match( /^rgba\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\,\s*([\d]+|[\d]*.[\d]+)\s*\)$/i );
48 | if( rgba ) {
49 | return {
50 | r: parseInt( rgba[1], 10 ),
51 | g: parseInt( rgba[2], 10 ),
52 | b: parseInt( rgba[3], 10 ),
53 | a: parseFloat( rgba[4] )
54 | };
55 | }
56 |
57 | return null;
58 |
59 | }
60 |
61 | /**
62 | * Calculates brightness on a scale of 0-255.
63 | *
64 | * @param {string} color See colorToRgb for supported formats.
65 | * @see {@link colorToRgb}
66 | */
67 | export const colorBrightness = ( color ) => {
68 |
69 | if( typeof color === 'string' ) color = colorToRgb( color );
70 |
71 | if( color ) {
72 | return ( color.r * 299 + color.g * 587 + color.b * 114 ) / 1000;
73 | }
74 |
75 | return null;
76 |
77 | }
--------------------------------------------------------------------------------
/docs/css/theme/source/blood.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * Blood theme for reveal.js
3 | * Author: Walther http://github.com/Walther
4 | *
5 | * Designed to be used with highlight.js theme
6 | * "monokai_sublime.css" available from
7 | * https://github.com/isagalaev/highlight.js/
8 | *
9 | * For other themes, change $codeBackground accordingly.
10 | *
11 | */
12 |
13 | // Default mixins and settings -----------------
14 | @import "../template/mixins";
15 | @import "../template/settings";
16 | // ---------------------------------------------
17 |
18 | // Include theme-specific fonts
19 |
20 | @import url(https://fonts.googleapis.com/css?family=Ubuntu:300,700,300italic,700italic);
21 |
22 | // Colors used in the theme
23 | $blood: #a23;
24 | $coal: #222;
25 | $codeBackground: #23241f;
26 |
27 | $backgroundColor: $coal;
28 |
29 | // Main text
30 | $mainFont: Ubuntu, 'sans-serif';
31 | $mainColor: #eee;
32 |
33 | // Headings
34 | $headingFont: Ubuntu, 'sans-serif';
35 | $headingTextShadow: 2px 2px 2px $coal;
36 |
37 | // h1 shadow, borrowed humbly from
38 | // (c) Default theme by Hakim El Hattab
39 | $heading1TextShadow: 0 1px 0 #ccc, 0 2px 0 #c9c9c9, 0 3px 0 #bbb, 0 4px 0 #b9b9b9, 0 5px 0 #aaa, 0 6px 1px rgba(0,0,0,.1), 0 0 5px rgba(0,0,0,.1), 0 1px 3px rgba(0,0,0,.3), 0 3px 5px rgba(0,0,0,.2), 0 5px 10px rgba(0,0,0,.25), 0 20px 20px rgba(0,0,0,.15);
40 |
41 | // Links
42 | $linkColor: $blood;
43 | $linkColorHover: lighten( $linkColor, 20% );
44 |
45 | // Text selection
46 | $selectionBackgroundColor: $blood;
47 | $selectionColor: #fff;
48 |
49 | // Change text colors against dark slide backgrounds
50 | @include light-bg-text-color(#222);
51 |
52 |
53 | // Theme template ------------------------------
54 | @import "../template/theme";
55 | // ---------------------------------------------
56 |
57 | // some overrides after theme template import
58 |
59 | .reveal p {
60 | font-weight: 300;
61 | text-shadow: 1px 1px $coal;
62 | }
63 |
64 | section.has-light-background {
65 | p, h1, h2, h3, h4 {
66 | text-shadow: none;
67 | }
68 | }
69 |
70 | .reveal h1,
71 | .reveal h2,
72 | .reveal h3,
73 | .reveal h4,
74 | .reveal h5,
75 | .reveal h6 {
76 | font-weight: 700;
77 | }
78 |
79 | .reveal p code {
80 | background-color: $codeBackground;
81 | display: inline-block;
82 | border-radius: 7px;
83 | }
84 |
85 | .reveal small code {
86 | vertical-align: baseline;
87 | }
--------------------------------------------------------------------------------
/docs/plugin/math/mathjax2.js:
--------------------------------------------------------------------------------
1 | /**
2 | * A plugin which enables rendering of math equations inside
3 | * of reveal.js slides. Essentially a thin wrapper for MathJax.
4 | *
5 | * @author Hakim El Hattab
6 | */
7 | export const MathJax2 = () => {
8 |
9 | // The reveal.js instance this plugin is attached to
10 | let deck;
11 |
12 | let defaultOptions = {
13 | messageStyle: 'none',
14 | tex2jax: {
15 | inlineMath: [ [ '$', '$' ], [ '\\(', '\\)' ] ],
16 | skipTags: [ 'script', 'noscript', 'style', 'textarea', 'pre' ]
17 | },
18 | skipStartupTypeset: true
19 | };
20 |
21 | function loadScript( url, callback ) {
22 |
23 | let head = document.querySelector( 'head' );
24 | let script = document.createElement( 'script' );
25 | script.type = 'text/javascript';
26 | script.src = url;
27 |
28 | // Wrapper for callback to make sure it only fires once
29 | let finish = () => {
30 | if( typeof callback === 'function' ) {
31 | callback.call();
32 | callback = null;
33 | }
34 | }
35 |
36 | script.onload = finish;
37 |
38 | // IE
39 | script.onreadystatechange = () => {
40 | if ( this.readyState === 'loaded' ) {
41 | finish();
42 | }
43 | }
44 |
45 | // Normal browsers
46 | head.appendChild( script );
47 |
48 | }
49 |
50 | return {
51 | id: 'mathjax2',
52 |
53 | init: function( reveal ) {
54 |
55 | deck = reveal;
56 |
57 | let revealOptions = deck.getConfig().mathjax2 || deck.getConfig().math || {};
58 |
59 | let options = { ...defaultOptions, ...revealOptions };
60 | let mathjax = options.mathjax || 'https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.js';
61 | let config = options.config || 'TeX-AMS_HTML-full';
62 | let url = mathjax + '?config=' + config;
63 |
64 | options.tex2jax = { ...defaultOptions.tex2jax, ...revealOptions.tex2jax };
65 |
66 | options.mathjax = options.config = null;
67 |
68 | loadScript( url, function() {
69 |
70 | MathJax.Hub.Config( options );
71 |
72 | // Typeset followed by an immediate reveal.js layout since
73 | // the typesetting process could affect slide height
74 | MathJax.Hub.Queue( [ 'Typeset', MathJax.Hub, deck.getRevealElement() ] );
75 | MathJax.Hub.Queue( deck.layout );
76 |
77 | // Reprocess equations in slides when they turn visible
78 | deck.on( 'slidechanged', function( event ) {
79 |
80 | MathJax.Hub.Queue( [ 'Typeset', MathJax.Hub, event.currentSlide ] );
81 |
82 | } );
83 |
84 | } );
85 |
86 | }
87 | }
88 |
89 | };
90 |
--------------------------------------------------------------------------------
/docs/js/controllers/focus.js:
--------------------------------------------------------------------------------
1 | import { closest } from '../utils/util.js'
2 |
3 | /**
4 | * Manages focus when a presentation is embedded. This
5 | * helps us only capture keyboard from the presentation
6 | * a user is currently interacting with in a page where
7 | * multiple presentations are embedded.
8 | */
9 |
10 | const STATE_FOCUS = 'focus';
11 | const STATE_BLUR = 'blur';
12 |
13 | export default class Focus {
14 |
15 | constructor( Reveal ) {
16 |
17 | this.Reveal = Reveal;
18 |
19 | this.onRevealPointerDown = this.onRevealPointerDown.bind( this );
20 | this.onDocumentPointerDown = this.onDocumentPointerDown.bind( this );
21 |
22 | }
23 |
24 | /**
25 | * Called when the reveal.js config is updated.
26 | */
27 | configure( config, oldConfig ) {
28 |
29 | if( config.embedded ) {
30 | this.blur();
31 | }
32 | else {
33 | this.focus();
34 | this.unbind();
35 | }
36 |
37 | }
38 |
39 | bind() {
40 |
41 | if( this.Reveal.getConfig().embedded ) {
42 | this.Reveal.getRevealElement().addEventListener( 'pointerdown', this.onRevealPointerDown, false );
43 | }
44 |
45 | }
46 |
47 | unbind() {
48 |
49 | this.Reveal.getRevealElement().removeEventListener( 'pointerdown', this.onRevealPointerDown, false );
50 | document.removeEventListener( 'pointerdown', this.onDocumentPointerDown, false );
51 |
52 | }
53 |
54 | focus() {
55 |
56 | if( this.state !== STATE_FOCUS ) {
57 | this.Reveal.getRevealElement().classList.add( 'focused' );
58 | document.addEventListener( 'pointerdown', this.onDocumentPointerDown, false );
59 | }
60 |
61 | this.state = STATE_FOCUS;
62 |
63 | }
64 |
65 | blur() {
66 |
67 | if( this.state !== STATE_BLUR ) {
68 | this.Reveal.getRevealElement().classList.remove( 'focused' );
69 | document.removeEventListener( 'pointerdown', this.onDocumentPointerDown, false );
70 | }
71 |
72 | this.state = STATE_BLUR;
73 |
74 | }
75 |
76 | isFocused() {
77 |
78 | return this.state === STATE_FOCUS;
79 |
80 | }
81 |
82 | destroy() {
83 |
84 | this.Reveal.getRevealElement().classList.remove( 'focused' );
85 |
86 | }
87 |
88 | onRevealPointerDown( event ) {
89 |
90 | this.focus();
91 |
92 | }
93 |
94 | onDocumentPointerDown( event ) {
95 |
96 | let revealElement = closest( event.target, '.reveal' );
97 | if( !revealElement || revealElement !== this.Reveal.getRevealElement() ) {
98 | this.blur();
99 | }
100 |
101 | }
102 |
103 | }
--------------------------------------------------------------------------------
/docs/plugin/math/mathjax3.js:
--------------------------------------------------------------------------------
1 | /**
2 | * A plugin which enables rendering of math equations inside
3 | * of reveal.js slides. Essentially a thin wrapper for MathJax 3
4 | *
5 | * @author Hakim El Hattab
6 | * @author Gerhard Burger
7 | */
8 | export const MathJax3 = () => {
9 |
10 | // The reveal.js instance this plugin is attached to
11 | let deck;
12 |
13 | let defaultOptions = {
14 | tex: {
15 | inlineMath: [ [ '$', '$' ], [ '\\(', '\\)' ] ]
16 | },
17 | options: {
18 | skipHtmlTags: [ 'script', 'noscript', 'style', 'textarea', 'pre' ]
19 | },
20 | startup: {
21 | ready: () => {
22 | MathJax.startup.defaultReady();
23 | MathJax.startup.promise.then(() => {
24 | Reveal.layout();
25 | });
26 | }
27 | }
28 | };
29 |
30 | function loadScript( url, callback ) {
31 |
32 | let script = document.createElement( 'script' );
33 | script.type = "text/javascript"
34 | script.id = "MathJax-script"
35 | script.src = url;
36 | script.async = true
37 |
38 | // Wrapper for callback to make sure it only fires once
39 | script.onload = () => {
40 | if (typeof callback === 'function') {
41 | callback.call();
42 | callback = null;
43 | }
44 | };
45 |
46 | document.head.appendChild( script );
47 |
48 | }
49 |
50 | return {
51 | id: 'mathjax3',
52 | init: function(reveal) {
53 |
54 | deck = reveal;
55 |
56 | let revealOptions = deck.getConfig().mathjax3 || {};
57 | let options = {...defaultOptions, ...revealOptions};
58 | options.tex = {...defaultOptions.tex, ...revealOptions.tex}
59 | options.options = {...defaultOptions.options, ...revealOptions.options}
60 | options.startup = {...defaultOptions.startup, ...revealOptions.startup}
61 |
62 | let url = options.mathjax || 'https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js';
63 | options.mathjax = null;
64 |
65 | window.MathJax = options;
66 |
67 | loadScript( url, function() {
68 | // Reprocess equations in slides when they turn visible
69 | Reveal.addEventListener( 'slidechanged', function( event ) {
70 | MathJax.typeset();
71 | } );
72 | } );
73 |
74 | }
75 | }
76 |
77 | };
78 |
--------------------------------------------------------------------------------
/docs/js/controllers/progress.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Creates a visual progress bar for the presentation.
3 | */
4 | export default class Progress {
5 |
6 | constructor( Reveal ) {
7 |
8 | this.Reveal = Reveal;
9 |
10 | this.onProgressClicked = this.onProgressClicked.bind( this );
11 |
12 | }
13 |
14 | render() {
15 |
16 | this.element = document.createElement( 'div' );
17 | this.element.className = 'progress';
18 | this.Reveal.getRevealElement().appendChild( this.element );
19 |
20 | this.bar = document.createElement( 'span' );
21 | this.element.appendChild( this.bar );
22 |
23 | }
24 |
25 | /**
26 | * Called when the reveal.js config is updated.
27 | */
28 | configure( config, oldConfig ) {
29 |
30 | this.element.style.display = config.progress ? 'block' : 'none';
31 |
32 | }
33 |
34 | bind() {
35 |
36 | if( this.Reveal.getConfig().progress && this.element ) {
37 | this.element.addEventListener( 'click', this.onProgressClicked, false );
38 | }
39 |
40 | }
41 |
42 | unbind() {
43 |
44 | if ( this.Reveal.getConfig().progress && this.element ) {
45 | this.element.removeEventListener( 'click', this.onProgressClicked, false );
46 | }
47 |
48 | }
49 |
50 | /**
51 | * Updates the progress bar to reflect the current slide.
52 | */
53 | update() {
54 |
55 | // Update progress if enabled
56 | if( this.Reveal.getConfig().progress && this.bar ) {
57 |
58 | let scale = this.Reveal.getProgress();
59 |
60 | // Don't fill the progress bar if there's only one slide
61 | if( this.Reveal.getTotalSlides() < 2 ) {
62 | scale = 0;
63 | }
64 |
65 | this.bar.style.transform = 'scaleX('+ scale +')';
66 |
67 | }
68 |
69 | }
70 |
71 | getMaxWidth() {
72 |
73 | return this.Reveal.getRevealElement().offsetWidth;
74 |
75 | }
76 |
77 | /**
78 | * Clicking on the progress bar results in a navigation to the
79 | * closest approximate horizontal slide using this equation:
80 | *
81 | * ( clickX / presentationWidth ) * numberOfSlides
82 | *
83 | * @param {object} event
84 | */
85 | onProgressClicked( event ) {
86 |
87 | this.Reveal.onUserInput( event );
88 |
89 | event.preventDefault();
90 |
91 | let slides = this.Reveal.getSlides();
92 | let slidesTotal = slides.length;
93 | let slideIndex = Math.floor( ( event.clientX / this.getMaxWidth() ) * slidesTotal );
94 |
95 | if( this.Reveal.getConfig().rtl ) {
96 | slideIndex = slidesTotal - slideIndex;
97 | }
98 |
99 | let targetIndices = this.Reveal.getIndices(slides[slideIndex]);
100 | this.Reveal.slide( targetIndices.h, targetIndices.v );
101 |
102 | }
103 |
104 | destroy() {
105 |
106 | this.element.remove();
107 |
108 | }
109 |
110 | }
--------------------------------------------------------------------------------
/docs/plugin/search/search.esm.js:
--------------------------------------------------------------------------------
1 | /*!
2 | * Handles finding a text string anywhere in the slides and showing the next occurrence to the user
3 | * by navigatating to that slide and highlighting it.
4 | *
5 | * @author Jon Snyder , February 2013
6 | */
7 | export default()=>{let e,t,n,l,i,o,r;function s(){t=document.createElement("div"),t.classList.add("searchbox"),t.style.position="absolute",t.style.top="10px",t.style.right="10px",t.style.zIndex=10,t.innerHTML='\n\t\t',n=t.querySelector(".searchinput"),n.style.width="240px",n.style.fontSize="14px",n.style.padding="4px 6px",n.style.color="#000",n.style.background="#fff",n.style.borderRadius="2px",n.style.border="0",n.style.outline="0",n.style.boxShadow="0 2px 18px rgba(0, 0, 0, 0.2)",n.style["-webkit-appearance"]="none",e.getRevealElement().appendChild(t),n.addEventListener("keyup",(function(t){if(13===t.keyCode)t.preventDefault(),function(){if(o){var t=n.value;""===t?(r&&r.remove(),l=null):(r=new c("slidecontent"),l=r.apply(t),i=0)}l&&(l.length&&l.length<=i&&(i=0),l.length>i&&(e.slide(l[i].h,l[i].v),i++))}(),o=!1;else o=!0}),!1),d()}function a(){t||s(),t.style.display="inline",n.focus(),n.select()}function d(){t||s(),t.style.display="none",r&&r.remove()}function c(t,n){var l=document.getElementById(t)||document.body,i=n||"EM",o=new RegExp("^(?:"+i+"|SCRIPT|FORM)$"),r=["#ff6","#a0ffff","#9f9","#f99","#f6f"],s=[],a=0,d="",c=[];this.setRegex=function(e){e=e.replace(/^[^\w]+|[^\w]+$/g,"").replace(/[^\w'-]+/g,"|"),d=new RegExp("("+e+")","i")},this.getRegex=function(){return d.toString().replace(/^\/\\b\(|\)\\b\/i$/g,"").replace(/\|/g," ")},this.hiliteWords=function(t){if(null!=t&&t&&d&&!o.test(t.nodeName)){if(t.hasChildNodes())for(var n=0;n{e=n,e.registerKeyboardShortcut("CTRL + Shift + F","Search"),document.addEventListener("keydown",(function(e){"F"==e.key&&(e.ctrlKey||e.metaKey)&&(e.preventDefault(),t||s(),"inline"!==t.style.display?a():d())}),!1)},open:a}};
8 |
--------------------------------------------------------------------------------
/docs/plugin/zoom/zoom.esm.js:
--------------------------------------------------------------------------------
1 | /*!
2 | * reveal.js Zoom plugin
3 | */
4 | const e={id:"zoom",init:function(e){e.getRevealElement().addEventListener("mousedown",(function(o){var n=/Linux/.test(window.navigator.platform)?"ctrl":"alt",i=(e.getConfig().zoomKey?e.getConfig().zoomKey:n)+"Key",d=e.getConfig().zoomLevel?e.getConfig().zoomLevel:2;o[i]&&!e.isOverview()&&(o.preventDefault(),t.to({x:o.clientX,y:o.clientY,scale:d,pan:!1}))}))},destroy:()=>{t.reset()}};var t=function(){var e=1,o=0,n=0,i=-1,d=-1,l="transform"in document.body.style;function s(t,o){var n=r();if(t.width=t.width||1,t.height=t.height||1,t.x-=(window.innerWidth-t.width*o)/2,t.y-=(window.innerHeight-t.height*o)/2,l)if(1===o)document.body.style.transform="";else{var i=n.x+"px "+n.y+"px",d="translate("+-t.x+"px,"+-t.y+"px) scale("+o+")";document.body.style.transformOrigin=i,document.body.style.transform=d}else 1===o?(document.body.style.position="",document.body.style.left="",document.body.style.top="",document.body.style.width="",document.body.style.height="",document.body.style.zoom=""):(document.body.style.position="relative",document.body.style.left=-(n.x+t.x)/o+"px",document.body.style.top=-(n.y+t.y)/o+"px",document.body.style.width=100*o+"%",document.body.style.height=100*o+"%",document.body.style.zoom=o);e=o,document.documentElement.classList&&(1!==e?document.documentElement.classList.add("zoomed"):document.documentElement.classList.remove("zoomed"))}function c(){var t=.12*window.innerWidth,i=.12*window.innerHeight,d=r();nwindow.innerHeight-i&&window.scroll(d.x,d.y+(1-(window.innerHeight-n)/i)*(14/e)),owindow.innerWidth-t&&window.scroll(d.x+(1-(window.innerWidth-o)/t)*(14/e),d.y)}function r(){return{x:void 0!==window.scrollX?window.scrollX:window.pageXOffset,y:void 0!==window.scrollY?window.scrollY:window.pageYOffset}}return l&&(document.body.style.transition="transform 0.8s ease"),document.addEventListener("keyup",(function(o){1!==e&&27===o.keyCode&&t.out()})),document.addEventListener("mousemove",(function(t){1!==e&&(o=t.clientX,n=t.clientY)})),{to:function(o){if(1!==e)t.out();else{if(o.x=o.x||0,o.y=o.y||0,o.element){var n=o.element.getBoundingClientRect();o.x=n.left-20,o.y=n.top-20,o.width=n.width+40,o.height=n.height+40}void 0!==o.width&&void 0!==o.height&&(o.scale=Math.max(Math.min(window.innerWidth/o.width,window.innerHeight/o.height),1)),o.scale>1&&(o.x*=o.scale,o.y*=o.scale,s(o,o.scale),!1!==o.pan&&(i=setTimeout((function(){d=setInterval(c,1e3/60)}),800)))}},out:function(){clearTimeout(i),clearInterval(d),s({x:0,y:0},1),e=1},magnify:function(e){this.to(e)},reset:function(){this.out()},zoomLevel:function(){return e}}}();
5 | /*!
6 | * zoom.js 0.3 (modified for use with reveal.js)
7 | * http://lab.hakim.se/zoom-js
8 | * MIT licensed
9 | *
10 | * Copyright (C) 2011-2014 Hakim El Hattab, http://hakim.se
11 | */export default()=>e;
12 |
--------------------------------------------------------------------------------
/docs/plugin/math/katex.js:
--------------------------------------------------------------------------------
1 | /**
2 | * A plugin which enables rendering of math equations inside
3 | * of reveal.js slides. Essentially a thin wrapper for KaTeX.
4 | *
5 | * @author Hakim El Hattab
6 | * @author Gerhard Burger
7 | */
8 | export const KaTeX = () => {
9 | let deck;
10 |
11 | let defaultOptions = {
12 | version: 'latest',
13 | delimiters: [
14 | {left: '$$', right: '$$', display: true}, // Note: $$ has to come before $
15 | {left: '$', right: '$', display: false},
16 | {left: '\\(', right: '\\)', display: false},
17 | {left: '\\[', right: '\\]', display: true}
18 | ],
19 | ignoredTags: ['script', 'noscript', 'style', 'textarea', 'pre']
20 | }
21 |
22 | const loadCss = src => {
23 | let link = document.createElement('link');
24 | link.rel = 'stylesheet';
25 | link.href = src;
26 | document.head.appendChild(link);
27 | };
28 |
29 | /**
30 | * Loads a JavaScript file and returns a Promise for when it is loaded
31 | * Credits: https://aaronsmith.online/easily-load-an-external-script-using-javascript/
32 | */
33 | const loadScript = src => {
34 | return new Promise((resolve, reject) => {
35 | const script = document.createElement('script')
36 | script.type = 'text/javascript'
37 | script.onload = resolve
38 | script.onerror = reject
39 | script.src = src
40 | document.head.append(script)
41 | })
42 | };
43 |
44 | async function loadScripts(urls) {
45 | for(const url of urls) {
46 | await loadScript(url);
47 | }
48 | }
49 |
50 | return {
51 | id: 'katex',
52 |
53 | init: function (reveal) {
54 |
55 | deck = reveal;
56 |
57 | let revealOptions = deck.getConfig().katex || {};
58 |
59 | let options = {...defaultOptions, ...revealOptions};
60 | const {local, version, extensions, ...katexOptions} = options;
61 |
62 | let baseUrl = options.local || 'https://cdn.jsdelivr.net/npm/katex';
63 | let versionString = options.local ? '' : '@' + options.version;
64 |
65 | let cssUrl = baseUrl + versionString + '/dist/katex.min.css';
66 | let katexUrl = baseUrl + versionString + '/dist/katex.min.js';
67 | let mhchemUrl = baseUrl + versionString + '/dist/contrib/mhchem.min.js'
68 | let karUrl = baseUrl + versionString + '/dist/contrib/auto-render.min.js';
69 |
70 | let katexScripts = [katexUrl];
71 | if(options.extensions && options.extensions.includes("mhchem")) {
72 | katexScripts.push(mhchemUrl);
73 | }
74 | katexScripts.push(karUrl);
75 |
76 | const renderMath = () => {
77 | renderMathInElement(reveal.getSlidesElement(), katexOptions);
78 | deck.layout();
79 | }
80 |
81 | loadCss(cssUrl);
82 |
83 | // For some reason dynamically loading with defer attribute doesn't result in the expected behavior, the below code does
84 | loadScripts(katexScripts).then(() => {
85 | if( deck.isReady() ) {
86 | renderMath();
87 | }
88 | else {
89 | deck.on( 'ready', renderMath.bind( this ) );
90 | }
91 | });
92 |
93 | }
94 | }
95 |
96 | };
97 |
--------------------------------------------------------------------------------
/docs/plugin/math/math.esm.js:
--------------------------------------------------------------------------------
1 | const t=()=>{let t,e={messageStyle:"none",tex2jax:{inlineMath:[["$","$"],["\\(","\\)"]],skipTags:["script","noscript","style","textarea","pre"]},skipStartupTypeset:!0};return{id:"mathjax2",init:function(a){t=a;let n=t.getConfig().mathjax2||t.getConfig().math||{},i={...e,...n},s=(i.mathjax||"https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.js")+"?config="+(i.config||"TeX-AMS_HTML-full");i.tex2jax={...e.tex2jax,...n.tex2jax},i.mathjax=i.config=null,function(t,e){let a=document.querySelector("head"),n=document.createElement("script");n.type="text/javascript",n.src=t;let i=()=>{"function"==typeof e&&(e.call(),e=null)};n.onload=i,n.onreadystatechange=()=>{"loaded"===this.readyState&&i()},a.appendChild(n)}(s,(function(){MathJax.Hub.Config(i),MathJax.Hub.Queue(["Typeset",MathJax.Hub,t.getRevealElement()]),MathJax.Hub.Queue(t.layout),t.on("slidechanged",(function(t){MathJax.Hub.Queue(["Typeset",MathJax.Hub,t.currentSlide])}))}))}}},e=t;
2 | /*!
3 | * This plugin is a wrapper for the MathJax2,
4 | * MathJax3 and KaTeX typesetter plugins.
5 | */
6 | var a=Plugin=Object.assign(e(),{KaTeX:()=>{let t,e={version:"latest",delimiters:[{left:"$$",right:"$$",display:!0},{left:"$",right:"$",display:!1},{left:"\\(",right:"\\)",display:!1},{left:"\\[",right:"\\]",display:!0}],ignoredTags:["script","noscript","style","textarea","pre"]};const a=t=>new Promise(((e,a)=>{const n=document.createElement("script");n.type="text/javascript",n.onload=e,n.onerror=a,n.src=t,document.head.append(n)}));return{id:"katex",init:function(n){t=n;let i=t.getConfig().katex||{},s={...e,...i};const{local:l,version:o,extensions:r,...c}=s;let d=s.local||"https://cdn.jsdelivr.net/npm/katex",p=s.local?"":"@"+s.version,u=d+p+"/dist/katex.min.css",h=d+p+"/dist/contrib/mhchem.min.js",x=d+p+"/dist/contrib/auto-render.min.js",m=[d+p+"/dist/katex.min.js"];s.extensions&&s.extensions.includes("mhchem")&&m.push(h),m.push(x);const f=()=>{renderMathInElement(n.getSlidesElement(),c),t.layout()};(t=>{let e=document.createElement("link");e.rel="stylesheet",e.href=t,document.head.appendChild(e)})(u),async function(t){for(const e of t)await a(e)}(m).then((()=>{t.isReady()?f():t.on("ready",f.bind(this))}))}}},MathJax2:t,MathJax3:()=>{let t,e={tex:{inlineMath:[["$","$"],["\\(","\\)"]]},options:{skipHtmlTags:["script","noscript","style","textarea","pre"]},startup:{ready:()=>{MathJax.startup.defaultReady(),MathJax.startup.promise.then((()=>{Reveal.layout()}))}}};return{id:"mathjax3",init:function(a){t=a;let n=t.getConfig().mathjax3||{},i={...e,...n};i.tex={...e.tex,...n.tex},i.options={...e.options,...n.options},i.startup={...e.startup,...n.startup};let s=i.mathjax||"https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js";i.mathjax=null,window.MathJax=i,function(t,e){let a=document.createElement("script");a.type="text/javascript",a.id="MathJax-script",a.src=t,a.async=!0,a.onload=()=>{"function"==typeof e&&(e.call(),e=null)},document.head.appendChild(a)}(s,(function(){Reveal.addEventListener("slidechanged",(function(t){MathJax.typeset()}))}))}}}});export default a;
7 |
--------------------------------------------------------------------------------
/docs/plugin/search/search.js:
--------------------------------------------------------------------------------
1 | !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).RevealSearch=t()}(this,(function(){"use strict";
2 | /*!
3 | * Handles finding a text string anywhere in the slides and showing the next occurrence to the user
4 | * by navigatating to that slide and highlighting it.
5 | *
6 | * @author Jon Snyder , February 2013
7 | */return()=>{let e,t,n,l,o,i,r;function s(){t=document.createElement("div"),t.classList.add("searchbox"),t.style.position="absolute",t.style.top="10px",t.style.right="10px",t.style.zIndex=10,t.innerHTML='\n\t\t',n=t.querySelector(".searchinput"),n.style.width="240px",n.style.fontSize="14px",n.style.padding="4px 6px",n.style.color="#000",n.style.background="#fff",n.style.borderRadius="2px",n.style.border="0",n.style.outline="0",n.style.boxShadow="0 2px 18px rgba(0, 0, 0, 0.2)",n.style["-webkit-appearance"]="none",e.getRevealElement().appendChild(t),n.addEventListener("keyup",(function(t){if(13===t.keyCode)t.preventDefault(),function(){if(i){var t=n.value;""===t?(r&&r.remove(),l=null):(r=new c("slidecontent"),l=r.apply(t),o=0)}l&&(l.length&&l.length<=o&&(o=0),l.length>o&&(e.slide(l[o].h,l[o].v),o++))}(),i=!1;else i=!0}),!1),d()}function a(){t||s(),t.style.display="inline",n.focus(),n.select()}function d(){t||s(),t.style.display="none",r&&r.remove()}function c(t,n){var l=document.getElementById(t)||document.body,o=n||"EM",i=new RegExp("^(?:"+o+"|SCRIPT|FORM)$"),r=["#ff6","#a0ffff","#9f9","#f99","#f6f"],s=[],a=0,d="",c=[];this.setRegex=function(e){e=e.replace(/^[^\w]+|[^\w]+$/g,"").replace(/[^\w'-]+/g,"|"),d=new RegExp("("+e+")","i")},this.getRegex=function(){return d.toString().replace(/^\/\\b\(|\)\\b\/i$/g,"").replace(/\|/g," ")},this.hiliteWords=function(t){if(null!=t&&t&&d&&!i.test(t.nodeName)){if(t.hasChildNodes())for(var n=0;n{e=n,e.registerKeyboardShortcut("CTRL + Shift + F","Search"),document.addEventListener("keydown",(function(e){"F"==e.key&&(e.ctrlKey||e.metaKey)&&(e.preventDefault(),t||s(),"inline"!==t.style.display?a():d())}),!1)},open:a}}}));
8 |
--------------------------------------------------------------------------------
/docs/plugin/zoom/zoom.js:
--------------------------------------------------------------------------------
1 | !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).RevealZoom=t()}(this,(function(){"use strict";
2 | /*!
3 | * reveal.js Zoom plugin
4 | */const e={id:"zoom",init:function(e){e.getRevealElement().addEventListener("mousedown",(function(o){var n=/Linux/.test(window.navigator.platform)?"ctrl":"alt",i=(e.getConfig().zoomKey?e.getConfig().zoomKey:n)+"Key",d=e.getConfig().zoomLevel?e.getConfig().zoomLevel:2;o[i]&&!e.isOverview()&&(o.preventDefault(),t.to({x:o.clientX,y:o.clientY,scale:d,pan:!1}))}))},destroy:()=>{t.reset()}};var t=function(){var e=1,o=0,n=0,i=-1,d=-1,l="transform"in document.body.style;function s(t,o){var n=r();if(t.width=t.width||1,t.height=t.height||1,t.x-=(window.innerWidth-t.width*o)/2,t.y-=(window.innerHeight-t.height*o)/2,l)if(1===o)document.body.style.transform="";else{var i=n.x+"px "+n.y+"px",d="translate("+-t.x+"px,"+-t.y+"px) scale("+o+")";document.body.style.transformOrigin=i,document.body.style.transform=d}else 1===o?(document.body.style.position="",document.body.style.left="",document.body.style.top="",document.body.style.width="",document.body.style.height="",document.body.style.zoom=""):(document.body.style.position="relative",document.body.style.left=-(n.x+t.x)/o+"px",document.body.style.top=-(n.y+t.y)/o+"px",document.body.style.width=100*o+"%",document.body.style.height=100*o+"%",document.body.style.zoom=o);e=o,document.documentElement.classList&&(1!==e?document.documentElement.classList.add("zoomed"):document.documentElement.classList.remove("zoomed"))}function c(){var t=.12*window.innerWidth,i=.12*window.innerHeight,d=r();nwindow.innerHeight-i&&window.scroll(d.x,d.y+(1-(window.innerHeight-n)/i)*(14/e)),owindow.innerWidth-t&&window.scroll(d.x+(1-(window.innerWidth-o)/t)*(14/e),d.y)}function r(){return{x:void 0!==window.scrollX?window.scrollX:window.pageXOffset,y:void 0!==window.scrollY?window.scrollY:window.pageYOffset}}return l&&(document.body.style.transition="transform 0.8s ease"),document.addEventListener("keyup",(function(o){1!==e&&27===o.keyCode&&t.out()})),document.addEventListener("mousemove",(function(t){1!==e&&(o=t.clientX,n=t.clientY)})),{to:function(o){if(1!==e)t.out();else{if(o.x=o.x||0,o.y=o.y||0,o.element){var n=o.element.getBoundingClientRect();o.x=n.left-20,o.y=n.top-20,o.width=n.width+40,o.height=n.height+40}void 0!==o.width&&void 0!==o.height&&(o.scale=Math.max(Math.min(window.innerWidth/o.width,window.innerHeight/o.height),1)),o.scale>1&&(o.x*=o.scale,o.y*=o.scale,s(o,o.scale),!1!==o.pan&&(i=setTimeout((function(){d=setInterval(c,1e3/60)}),800)))}},out:function(){clearTimeout(i),clearInterval(d),s({x:0,y:0},1),e=1},magnify:function(e){this.to(e)},reset:function(){this.out()},zoomLevel:function(){return e}}}();
5 | /*!
6 | * zoom.js 0.3 (modified for use with reveal.js)
7 | * http://lab.hakim.se/zoom-js
8 | * MIT licensed
9 | *
10 | * Copyright (C) 2011-2014 Hakim El Hattab, http://hakim.se
11 | */return()=>e}));
12 |
--------------------------------------------------------------------------------
/docs/plugin/math/math.js:
--------------------------------------------------------------------------------
1 | !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).RevealMath=e()}(this,(function(){"use strict";const t=()=>{let t,e={messageStyle:"none",tex2jax:{inlineMath:[["$","$"],["\\(","\\)"]],skipTags:["script","noscript","style","textarea","pre"]},skipStartupTypeset:!0};return{id:"mathjax2",init:function(n){t=n;let a=t.getConfig().mathjax2||t.getConfig().math||{},i={...e,...a},s=(i.mathjax||"https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.js")+"?config="+(i.config||"TeX-AMS_HTML-full");i.tex2jax={...e.tex2jax,...a.tex2jax},i.mathjax=i.config=null,function(t,e){let n=document.querySelector("head"),a=document.createElement("script");a.type="text/javascript",a.src=t;let i=()=>{"function"==typeof e&&(e.call(),e=null)};a.onload=i,a.onreadystatechange=()=>{"loaded"===this.readyState&&i()},n.appendChild(a)}(s,(function(){MathJax.Hub.Config(i),MathJax.Hub.Queue(["Typeset",MathJax.Hub,t.getRevealElement()]),MathJax.Hub.Queue(t.layout),t.on("slidechanged",(function(t){MathJax.Hub.Queue(["Typeset",MathJax.Hub,t.currentSlide])}))}))}}},e=t;return Plugin=Object.assign(e(),{KaTeX:()=>{let t,e={version:"latest",delimiters:[{left:"$$",right:"$$",display:!0},{left:"$",right:"$",display:!1},{left:"\\(",right:"\\)",display:!1},{left:"\\[",right:"\\]",display:!0}],ignoredTags:["script","noscript","style","textarea","pre"]};const n=t=>new Promise(((e,n)=>{const a=document.createElement("script");a.type="text/javascript",a.onload=e,a.onerror=n,a.src=t,document.head.append(a)}));return{id:"katex",init:function(a){t=a;let i=t.getConfig().katex||{},s={...e,...i};const{local:o,version:l,extensions:r,...c}=s;let d=s.local||"https://cdn.jsdelivr.net/npm/katex",u=s.local?"":"@"+s.version,p=d+u+"/dist/katex.min.css",h=d+u+"/dist/contrib/mhchem.min.js",x=d+u+"/dist/contrib/auto-render.min.js",m=[d+u+"/dist/katex.min.js"];s.extensions&&s.extensions.includes("mhchem")&&m.push(h),m.push(x);const f=()=>{renderMathInElement(a.getSlidesElement(),c),t.layout()};(t=>{let e=document.createElement("link");e.rel="stylesheet",e.href=t,document.head.appendChild(e)})(p),async function(t){for(const e of t)await n(e)}(m).then((()=>{t.isReady()?f():t.on("ready",f.bind(this))}))}}},MathJax2:t,MathJax3:()=>{let t,e={tex:{inlineMath:[["$","$"],["\\(","\\)"]]},options:{skipHtmlTags:["script","noscript","style","textarea","pre"]},startup:{ready:()=>{MathJax.startup.defaultReady(),MathJax.startup.promise.then((()=>{Reveal.layout()}))}}};return{id:"mathjax3",init:function(n){t=n;let a=t.getConfig().mathjax3||{},i={...e,...a};i.tex={...e.tex,...a.tex},i.options={...e.options,...a.options},i.startup={...e.startup,...a.startup};let s=i.mathjax||"https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js";i.mathjax=null,window.MathJax=i,function(t,e){let n=document.createElement("script");n.type="text/javascript",n.id="MathJax-script",n.src=t,n.async=!0,n.onload=()=>{"function"==typeof e&&(e.call(),e=null)},document.head.appendChild(n)}(s,(function(){Reveal.addEventListener("slidechanged",(function(t){MathJax.typeset()}))}))}}}})}));
2 |
--------------------------------------------------------------------------------
/docs/css/theme/source/dracula.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * Dracula Dark theme for reveal.js.
3 | * Based on https://draculatheme.com
4 | */
5 |
6 |
7 | // Default mixins and settings -----------------
8 | @import "../template/mixins";
9 | @import "../template/settings";
10 | // ---------------------------------------------
11 |
12 |
13 |
14 | // Include theme-specific fonts
15 | $systemFontsSansSerif: -apple-system,
16 | BlinkMacSystemFont,
17 | avenir next,
18 | avenir,
19 | segoe ui,
20 | helvetica neue,
21 | helvetica,
22 | Cantarell,
23 | Ubuntu,
24 | roboto,
25 | noto,
26 | arial,
27 | sans-serif;
28 | $systemFontsMono: Menlo,
29 | Consolas,
30 | Monaco,
31 | Liberation Mono,
32 | Lucida Console,
33 | monospace;
34 |
35 | /**
36 | * Dracula colors by Zeno Rocha
37 | * https://draculatheme.com/contribute
38 | */
39 | html * {
40 | color-profile: sRGB;
41 | rendering-intent: auto;
42 | }
43 |
44 | $background: #282A36;
45 | $foreground: #F8F8F2;
46 | $selection: #44475A;
47 | $comment: #6272A4;
48 | $red: #FF5555;
49 | $orange: #FFB86C;
50 | $yellow: #F1FA8C;
51 | $green: #50FA7B;
52 | $purple: #BD93F9;
53 | $cyan: #8BE9FD;
54 | $pink: #FF79C6;
55 |
56 |
57 |
58 | // Override theme settings (see ../template/settings.scss)
59 | $mainColor: $foreground;
60 | $headingColor: $purple;
61 | $headingTextShadow: none;
62 | $headingTextTransform: none;
63 | $backgroundColor: $background;
64 | $linkColor: $pink;
65 | $linkColorHover: $cyan;
66 | $selectionBackgroundColor: $selection;
67 | $inlineCodeColor: $green;
68 | $listBulletColor: $cyan;
69 |
70 | $mainFont: $systemFontsSansSerif;
71 | $codeFont: "Fira Code", $systemFontsMono;
72 |
73 | // Change text colors against light slide backgrounds
74 | @include light-bg-text-color($background);
75 |
76 | // Theme template ------------------------------
77 | @import "../template/theme";
78 | // ---------------------------------------------
79 |
80 | // Define additional color effects based on Dracula spec
81 | // https://spec.draculatheme.com/
82 | :root {
83 | --r-bold-color: #{$orange};
84 | --r-italic-color: #{$yellow};
85 | --r-inline-code-color: #{$inlineCodeColor};
86 | --r-list-bullet-color: #{$listBulletColor};
87 | }
88 |
89 | .reveal strong, .reveal b {
90 | color: var(--r-bold-color);
91 | }
92 |
93 | .reveal em, .reveal i, .reveal blockquote {
94 | color: var(--r-italic-color);
95 | }
96 |
97 | .reveal code {
98 | color: var(--r-inline-code-color);
99 | }
100 |
101 | // Dracula colored list bullets and numbers
102 | .reveal ul {
103 | list-style: none;
104 | }
105 |
106 | .reveal ul li::before {
107 | content: "•";
108 | color: var(--r-list-bullet-color);
109 | display: inline-block;
110 | width: 1em;
111 | margin-left: -1em
112 | }
113 |
114 | .reveal ol {
115 | list-style: none;
116 | counter-reset: li;
117 | }
118 |
119 | .reveal ol li::before {
120 | content: counter(li) ".";
121 | color: var(--r-list-bullet-color);
122 | display: inline-block;
123 | width: 2em;
124 |
125 | margin-left: -2.5em;
126 | margin-right: 0.5em;
127 | text-align: right;
128 | }
129 |
130 | .reveal ol li {
131 | counter-increment: li
132 | }
133 |
--------------------------------------------------------------------------------
/docs/js/controllers/notes.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Handles the showing of speaker notes
3 | */
4 | export default class Notes {
5 |
6 | constructor( Reveal ) {
7 |
8 | this.Reveal = Reveal;
9 |
10 | }
11 |
12 | render() {
13 |
14 | this.element = document.createElement( 'div' );
15 | this.element.className = 'speaker-notes';
16 | this.element.setAttribute( 'data-prevent-swipe', '' );
17 | this.element.setAttribute( 'tabindex', '0' );
18 | this.Reveal.getRevealElement().appendChild( this.element );
19 |
20 | }
21 |
22 | /**
23 | * Called when the reveal.js config is updated.
24 | */
25 | configure( config, oldConfig ) {
26 |
27 | if( config.showNotes ) {
28 | this.element.setAttribute( 'data-layout', typeof config.showNotes === 'string' ? config.showNotes : 'inline' );
29 | }
30 |
31 | }
32 |
33 | /**
34 | * Pick up notes from the current slide and display them
35 | * to the viewer.
36 | *
37 | * @see {@link config.showNotes}
38 | */
39 | update() {
40 |
41 | if( this.Reveal.getConfig().showNotes && this.element && this.Reveal.getCurrentSlide() && !this.Reveal.print.isPrintingPDF() ) {
42 |
43 | this.element.innerHTML = this.getSlideNotes() || 'No notes on this slide.';
44 |
45 | }
46 |
47 | }
48 |
49 | /**
50 | * Updates the visibility of the speaker notes sidebar that
51 | * is used to share annotated slides. The notes sidebar is
52 | * only visible if showNotes is true and there are notes on
53 | * one or more slides in the deck.
54 | */
55 | updateVisibility() {
56 |
57 | if( this.Reveal.getConfig().showNotes && this.hasNotes() && !this.Reveal.print.isPrintingPDF() ) {
58 | this.Reveal.getRevealElement().classList.add( 'show-notes' );
59 | }
60 | else {
61 | this.Reveal.getRevealElement().classList.remove( 'show-notes' );
62 | }
63 |
64 | }
65 |
66 | /**
67 | * Checks if there are speaker notes for ANY slide in the
68 | * presentation.
69 | */
70 | hasNotes() {
71 |
72 | return this.Reveal.getSlidesElement().querySelectorAll( '[data-notes], aside.notes' ).length > 0;
73 |
74 | }
75 |
76 | /**
77 | * Checks if this presentation is running inside of the
78 | * speaker notes window.
79 | *
80 | * @return {boolean}
81 | */
82 | isSpeakerNotesWindow() {
83 |
84 | return !!window.location.search.match( /receiver/gi );
85 |
86 | }
87 |
88 | /**
89 | * Retrieves the speaker notes from a slide. Notes can be
90 | * defined in two ways:
91 | * 1. As a data-notes attribute on the slide
92 | * 2. With