├── .gitignore ├── AdvancedNodeStarter ├── .gitignore ├── .travis.yml ├── README.md ├── client │ ├── .gitignore │ ├── README.md │ ├── package-lock.json │ ├── package.json │ ├── public │ │ ├── favicon.ico │ │ ├── index.html │ │ └── manifest.json │ └── src │ │ ├── actions │ │ ├── index.js │ │ └── types.js │ │ ├── components │ │ ├── App.js │ │ ├── Dashboard.js │ │ ├── Header.js │ │ ├── Landing.js │ │ └── blogs │ │ │ ├── BlogField.js │ │ │ ├── BlogForm.js │ │ │ ├── BlogFormReview.js │ │ │ ├── BlogList.js │ │ │ ├── BlogNew.js │ │ │ ├── BlogShow.js │ │ │ └── formFields.js │ │ ├── index.js │ │ └── reducers │ │ ├── authReducer.js │ │ ├── blogsReducer.js │ │ └── index.js ├── config │ ├── ci.js │ ├── dev.js │ ├── keys.js │ └── prod.js ├── index.js ├── middlewares │ ├── cleanCache.js │ └── requireLogin.js ├── models │ ├── Blog.js │ └── User.js ├── package-lock.json ├── package.json ├── routes │ ├── authRoutes.js │ ├── blogRoutes.js │ └── uploadRoutes.js ├── services │ ├── cache.js │ └── passport.js └── tests │ ├── blogs.test.js │ ├── factories │ ├── sessionFactory.js │ └── userFactory.js │ ├── header.test.js │ ├── helpers │ └── page.js │ └── setup.js ├── README.md ├── code ├── async.js ├── index.js ├── loop.js ├── multitask.js ├── package.json └── threads.js └── diagrams ├── 10 ├── .gitkeep └── diagrams.xml ├── 01 ├── .gitkeep └── diagrams.xml ├── 02 ├── .gitkeep └── diagrams.xml ├── 03 └── .gitkeep ├── 04 ├── .gitkeep └── diagrams.xml ├── 05 ├── .gitkeep └── diagrams.xml ├── 06 ├── .gitkeep └── diagrams.xml ├── 07 ├── .gitkeep └── diagrams.xml ├── 08 ├── .gitkeep └── diagrams.xml └── 09 ├── .gitkeep └── diagrams.xml /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | nohup.out 4 | .DS_Store 5 | dev.js 6 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - "8" 4 | dist: trusty 5 | services: 6 | - mongodb 7 | - redis-server 8 | env: 9 | - NODE_ENV=ci PORT=3000 10 | cache: 11 | directories: 12 | - node_modules 13 | - client/node_modules 14 | install: 15 | - npm install 16 | - npm run build 17 | script: 18 | - nohup npm run start & 19 | - sleep 3 20 | - npm run test 21 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/README.md: -------------------------------------------------------------------------------- 1 | # AdvancedNodeStarter 2 | Starting project for a course on Advanced Node @ Udemy 3 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/client/.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/ignore-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | 6 | # testing 7 | /coverage 8 | 9 | # production 10 | /build 11 | 12 | # misc 13 | .DS_Store 14 | .env.local 15 | .env.development.local 16 | .env.test.local 17 | .env.production.local 18 | 19 | npm-debug.log* 20 | yarn-debug.log* 21 | yarn-error.log* 22 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/client/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "client", 3 | "version": "0.1.0", 4 | "private": true, 5 | "proxy": { 6 | "/auth/*": { 7 | "target": "http://localhost:5000" 8 | }, 9 | "/api/*": { 10 | "target": "http://localhost:5000" 11 | } 12 | }, 13 | "dependencies": { 14 | "axios": "^0.16.2", 15 | "materialize-css": "^0.100.2", 16 | "react": "^16.0.0-alpha.13", 17 | "react-dom": "^16.0.0-alpha.13", 18 | "react-redux": "^5.0.5", 19 | "react-router-dom": "^4.1.1", 20 | "react-scripts": "1.0.10", 21 | "redux": "^3.7.1", 22 | "redux-form": "^7.0.1", 23 | "redux-thunk": "^2.2.0" 24 | }, 25 | "scripts": { 26 | "start": "react-scripts start", 27 | "build": "react-scripts build", 28 | "test": "react-scripts test --env=jsdom", 29 | "eject": "react-scripts eject" 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/client/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/StephenGrider/AdvancedNodeComplete/916f1ce3faf5ccff9503beb61ecc849e0784a29e/AdvancedNodeStarter/client/public/favicon.ico -------------------------------------------------------------------------------- /AdvancedNodeStarter/client/public/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | Blog App 11 | 12 | 13 | 16 |
17 | 18 | 19 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/client/public/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "short_name": "React App", 3 | "name": "Create React App Sample", 4 | "icons": [ 5 | { 6 | "src": "favicon.ico", 7 | "sizes": "192x192", 8 | "type": "image/png" 9 | } 10 | ], 11 | "start_url": "./index.html", 12 | "display": "standalone", 13 | "theme_color": "#000000", 14 | "background_color": "#ffffff" 15 | } 16 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/client/src/actions/index.js: -------------------------------------------------------------------------------- 1 | import axios from 'axios'; 2 | import { FETCH_USER, FETCH_BLOGS, FETCH_BLOG } from './types'; 3 | 4 | export const fetchUser = () => async dispatch => { 5 | const res = await axios.get('/api/current_user'); 6 | 7 | dispatch({ type: FETCH_USER, payload: res.data }); 8 | }; 9 | 10 | export const handleToken = token => async dispatch => { 11 | const res = await axios.post('/api/stripe', token); 12 | 13 | dispatch({ type: FETCH_USER, payload: res.data }); 14 | }; 15 | 16 | export const submitBlog = (values, file, history) => async dispatch => { 17 | const uploadConfig = await axios.get('/api/upload'); 18 | 19 | const upload = await axios.put(uploadConfig.data.url, file, { 20 | headers: { 21 | 'Content-Type': file.type 22 | } 23 | }); 24 | 25 | const res = await axios.post('/api/blogs', { 26 | ...values, 27 | imageUrl: uploadConfig.data.key 28 | }); 29 | 30 | history.push('/blogs'); 31 | dispatch({ type: FETCH_BLOG, payload: res.data }); 32 | }; 33 | 34 | export const fetchBlogs = () => async dispatch => { 35 | const res = await axios.get('/api/blogs'); 36 | 37 | dispatch({ type: FETCH_BLOGS, payload: res.data }); 38 | }; 39 | 40 | export const fetchBlog = id => async dispatch => { 41 | const res = await axios.get(`/api/blogs/${id}`); 42 | 43 | dispatch({ type: FETCH_BLOG, payload: res.data }); 44 | }; 45 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/client/src/actions/types.js: -------------------------------------------------------------------------------- 1 | export const FETCH_USER = 'fetch_user'; 2 | export const FETCH_BLOGS = 'fetch_blogs'; 3 | export const FETCH_BLOG = 'fetch_blog'; 4 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/client/src/components/App.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { BrowserRouter, Route, Switch } from 'react-router-dom'; 3 | import { connect } from 'react-redux'; 4 | import * as actions from '../actions'; 5 | 6 | import Header from './Header'; 7 | import Landing from './Landing'; 8 | import Dashboard from './Dashboard'; 9 | import BlogNew from './blogs/BlogNew'; 10 | import BlogShow from './blogs/BlogShow'; 11 | 12 | class App extends Component { 13 | componentDidMount() { 14 | this.props.fetchUser(); 15 | } 16 | 17 | render() { 18 | return ( 19 |
20 | 21 |
22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 |
31 |
32 | ); 33 | } 34 | } 35 | 36 | export default connect(null, actions)(App); 37 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/client/src/components/Dashboard.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import { Link } from 'react-router-dom'; 3 | import BlogList from './blogs/BlogList'; 4 | 5 | const Dashboard = () => { 6 | return ( 7 |
8 | 9 |
10 | 11 | add 12 | 13 |
14 |
15 | ); 16 | }; 17 | 18 | export default Dashboard; 19 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/client/src/components/Header.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { connect } from 'react-redux'; 3 | import { Link } from 'react-router-dom'; 4 | 5 | class Header extends Component { 6 | renderContent() { 7 | switch (this.props.auth) { 8 | case null: 9 | return; 10 | case false: 11 | return ( 12 |
  • 13 | Login With Google 14 |
  • 15 | ); 16 | default: 17 | return [ 18 |
  • 19 | My Blogs 20 |
  • , 21 |
  • 22 | Logout 23 |
  • 24 | ]; 25 | } 26 | } 27 | 28 | render() { 29 | return ( 30 | 42 | ); 43 | } 44 | } 45 | 46 | function mapStateToProps({ auth }) { 47 | return { auth }; 48 | } 49 | 50 | export default connect(mapStateToProps)(Header); 51 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/client/src/components/Landing.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | const Landing = () => { 4 | return ( 5 |
    6 |

    7 | Blogster! 8 |

    9 | Write private blogs 10 |
    11 | ); 12 | }; 13 | 14 | export default Landing; 15 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/client/src/components/blogs/BlogField.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | export default ({ input, label, meta: { error, touched } }) => { 4 | return ( 5 |
    6 | 7 | 8 |
    9 | {touched && error} 10 |
    11 |
    12 | ); 13 | }; 14 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/client/src/components/blogs/BlogForm.js: -------------------------------------------------------------------------------- 1 | // BlogForm shows a form for a user to add input 2 | import _ from 'lodash'; 3 | import React, { Component } from 'react'; 4 | import { reduxForm, Field } from 'redux-form'; 5 | import { Link } from 'react-router-dom'; 6 | import BlogField from './BlogField'; 7 | import formFields from './formFields'; 8 | 9 | class BlogForm extends Component { 10 | renderFields() { 11 | return _.map(formFields, ({ label, name }) => { 12 | return ( 13 | 20 | ); 21 | }); 22 | } 23 | 24 | render() { 25 | return ( 26 |
    27 |
    28 | {this.renderFields()} 29 | 30 | Cancel 31 | 32 | 36 |
    37 |
    38 | ); 39 | } 40 | } 41 | 42 | function validate(values) { 43 | const errors = {}; 44 | 45 | _.each(formFields, ({ name }) => { 46 | if (!values[name]) { 47 | errors[name] = 'You must provide a value'; 48 | } 49 | }); 50 | 51 | return errors; 52 | } 53 | 54 | export default reduxForm({ 55 | validate, 56 | form: 'blogForm', 57 | destroyOnUnmount: false 58 | })(BlogForm); 59 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/client/src/components/blogs/BlogFormReview.js: -------------------------------------------------------------------------------- 1 | // BlogFormReview shows users their form inputs for review 2 | import _ from 'lodash'; 3 | import React, { Component } from 'react'; 4 | import { connect } from 'react-redux'; 5 | import formFields from './formFields'; 6 | import { withRouter } from 'react-router-dom'; 7 | import * as actions from '../../actions'; 8 | 9 | class BlogFormReview extends Component { 10 | state = { file: null }; 11 | 12 | renderFields() { 13 | const { formValues } = this.props; 14 | 15 | return _.map(formFields, ({ name, label }) => { 16 | return ( 17 |
    18 | 19 |
    {formValues[name]}
    20 |
    21 | ); 22 | }); 23 | } 24 | 25 | renderButtons() { 26 | const { onCancel } = this.props; 27 | 28 | return ( 29 |
    30 | 36 | 40 |
    41 | ); 42 | } 43 | 44 | onSubmit(event) { 45 | event.preventDefault(); 46 | 47 | const { submitBlog, history, formValues } = this.props; 48 | 49 | submitBlog(formValues, this.state.file, history); 50 | } 51 | 52 | onFileChange(event) { 53 | this.setState({ file: event.target.files[0] }); 54 | } 55 | 56 | render() { 57 | return ( 58 |
    59 |
    Please confirm your entries
    60 | {this.renderFields()} 61 | 62 |
    Add An Image
    63 | 68 | 69 | {this.renderButtons()} 70 |
    71 | ); 72 | } 73 | } 74 | 75 | function mapStateToProps(state) { 76 | return { formValues: state.form.blogForm.values }; 77 | } 78 | 79 | export default connect(mapStateToProps, actions)(withRouter(BlogFormReview)); 80 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/client/src/components/blogs/BlogList.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import map from 'lodash/map'; 3 | import { connect } from 'react-redux'; 4 | import { Link } from 'react-router-dom'; 5 | import { fetchBlogs } from '../../actions'; 6 | 7 | class BlogList extends Component { 8 | componentDidMount() { 9 | this.props.fetchBlogs(); 10 | } 11 | 12 | renderBlogs() { 13 | return map(this.props.blogs, blog => { 14 | return ( 15 |
    16 |
    17 |
    18 | {blog.title} 19 |

    {blog.content}

    20 |
    21 |
    22 | Read 23 |
    24 |
    25 |
    26 | ); 27 | }); 28 | } 29 | 30 | render() { 31 | return
    {this.renderBlogs()}
    ; 32 | } 33 | } 34 | 35 | function mapStateToProps({ blogs }) { 36 | return { blogs }; 37 | } 38 | 39 | export default connect(mapStateToProps, { fetchBlogs })(BlogList); 40 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/client/src/components/blogs/BlogNew.js: -------------------------------------------------------------------------------- 1 | // BlogNew shows BlogForm and BlogFormReview 2 | import React, { Component } from 'react'; 3 | import { reduxForm } from 'redux-form'; 4 | import BlogForm from './BlogForm'; 5 | import BlogFormReview from './BlogFormReview'; 6 | 7 | class BlogNew extends Component { 8 | state = { showFormReview: false }; 9 | 10 | renderContent() { 11 | if (this.state.showFormReview) { 12 | return ( 13 | this.setState({ showFormReview: false })} 15 | /> 16 | ); 17 | } 18 | 19 | return ( 20 | this.setState({ showFormReview: true })} 22 | /> 23 | ); 24 | } 25 | 26 | render() { 27 | return ( 28 |
    29 | {this.renderContent()} 30 |
    31 | ); 32 | } 33 | } 34 | 35 | export default reduxForm({ 36 | form: 'blogForm' 37 | })(BlogNew); 38 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/client/src/components/blogs/BlogShow.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { connect } from 'react-redux'; 3 | import { fetchBlog } from '../../actions'; 4 | 5 | class BlogShow extends Component { 6 | componentDidMount() { 7 | this.props.fetchBlog(this.props.match.params._id); 8 | } 9 | 10 | renderImage() { 11 | if (this.props.blog.imageUrl) { 12 | return ( 13 | 19 | ); 20 | } 21 | } 22 | 23 | render() { 24 | if (!this.props.blog) { 25 | return ''; 26 | } 27 | 28 | const { title, content } = this.props.blog; 29 | 30 | return ( 31 |
    32 |

    {title}

    33 |

    {content}

    34 | {this.renderImage()} 35 |
    36 | ); 37 | } 38 | } 39 | 40 | function mapStateToProps({ blogs }, ownProps) { 41 | return { blog: blogs[ownProps.match.params._id] }; 42 | } 43 | 44 | export default connect(mapStateToProps, { fetchBlog })(BlogShow); 45 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/client/src/components/blogs/formFields.js: -------------------------------------------------------------------------------- 1 | export default [ 2 | { label: 'Blog Title', name: 'title' }, 3 | { label: 'Content', name: 'content' } 4 | ]; 5 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/client/src/index.js: -------------------------------------------------------------------------------- 1 | import 'materialize-css/dist/css/materialize.min.css'; 2 | import React from 'react'; 3 | import ReactDOM from 'react-dom'; 4 | import { Provider } from 'react-redux'; 5 | import { createStore, applyMiddleware } from 'redux'; 6 | import reduxThunk from 'redux-thunk'; 7 | 8 | import App from './components/App'; 9 | import reducers from './reducers'; 10 | 11 | import axios from 'axios'; 12 | window.axios = axios; 13 | 14 | const store = createStore(reducers, {}, applyMiddleware(reduxThunk)); 15 | 16 | ReactDOM.render( 17 | 18 | 19 | , 20 | document.querySelector('#root') 21 | ); 22 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/client/src/reducers/authReducer.js: -------------------------------------------------------------------------------- 1 | import { FETCH_USER } from '../actions/types'; 2 | 3 | export default function(state = null, action) { 4 | switch (action.type) { 5 | case FETCH_USER: 6 | return action.payload || false; 7 | default: 8 | return state; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/client/src/reducers/blogsReducer.js: -------------------------------------------------------------------------------- 1 | import mapKeys from 'lodash/mapKeys'; 2 | import { FETCH_BLOGS, FETCH_BLOG } from '../actions/types'; 3 | 4 | export default function(state = {}, action) { 5 | switch (action.type) { 6 | case FETCH_BLOG: 7 | const blog = action.payload; 8 | return { ...state, [blog._id]: blog }; 9 | case FETCH_BLOGS: 10 | return { ...state, ...mapKeys(action.payload, '_id') }; 11 | default: 12 | return state; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/client/src/reducers/index.js: -------------------------------------------------------------------------------- 1 | import { combineReducers } from 'redux'; 2 | import { reducer as reduxForm } from 'redux-form'; 3 | import authReducer from './authReducer'; 4 | import blogsReducer from './blogsReducer'; 5 | 6 | export default combineReducers({ 7 | auth: authReducer, 8 | form: reduxForm, 9 | blogs: blogsReducer 10 | }); 11 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/config/ci.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | googleClientID: 3 | '964808011168-29vqsooppd769hk90kjbjm5gld0glssb.apps.googleusercontent.com', 4 | googleClientSecret: 'KnH-rZC23z4fr2CN4ISK4srN', 5 | mongoURI: 'mongodb://127.0.0.1:27017/blog_ci', 6 | cookieKey: '123123123', 7 | redisUrl: 'redis://127.0.0.1:6379' 8 | }; 9 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/config/dev.js: -------------------------------------------------------------------------------- 1 | // Don't be like me and commit this file! 2 | // These keys have been disabled, but remain here for reference purposes. 3 | module.exports = { 4 | googleClientID: 5 | '964808011168-29vqsooppd769hk90kjbjm5gld0glssb.apps.googleusercontent.com', 6 | googleClientSecret: 'KnH-rZC23z4fr2CN4ISK4srN', 7 | mongoURI: 'mongodb://stephen:password@ds239128.mlab.com:39128/blog_dev', 8 | cookieKey: '123123123', 9 | redisUrl: 'redis://127.0.0.1:6379', 10 | accessKeyId: 'AKIAIWSXFHRM7F6Z3NWQ', 11 | secretAccessKey: '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' 12 | }; 13 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/config/keys.js: -------------------------------------------------------------------------------- 1 | if (process.env.NODE_ENV === 'production') { 2 | module.exports = require('./prod'); 3 | } else if (process.env.NODE_ENV === 'ci') { 4 | module.exports = require('./ci'); 5 | } else { 6 | module.exports = require('./dev'); 7 | } 8 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/config/prod.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | googleClientID: process.env.GOOGLE_CLIENT_ID, 3 | googleClientSecret: process.env.GOOGLE_CLIENT_SECRET, 4 | mongoURI: process.env.MONGO_URI, 5 | cookieKey: process.env.COOKIE_KEY 6 | }; 7 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/index.js: -------------------------------------------------------------------------------- 1 | const express = require('express'); 2 | const mongoose = require('mongoose'); 3 | const cookieSession = require('cookie-session'); 4 | const passport = require('passport'); 5 | const bodyParser = require('body-parser'); 6 | const keys = require('./config/keys'); 7 | 8 | require('./models/User'); 9 | require('./models/Blog'); 10 | require('./services/passport'); 11 | require('./services/cache'); 12 | 13 | mongoose.Promise = global.Promise; 14 | mongoose.connect(keys.mongoURI, { useMongoClient: true }); 15 | 16 | const app = express(); 17 | 18 | app.use(bodyParser.json()); 19 | app.use( 20 | cookieSession({ 21 | maxAge: 30 * 24 * 60 * 60 * 1000, 22 | keys: [keys.cookieKey] 23 | }) 24 | ); 25 | app.use(passport.initialize()); 26 | app.use(passport.session()); 27 | 28 | require('./routes/authRoutes')(app); 29 | require('./routes/blogRoutes')(app); 30 | require('./routes/uploadRoutes')(app); 31 | 32 | if (['production', 'ci'].includes(process.env.NODE_ENV)) { 33 | app.use(express.static('client/build')); 34 | 35 | const path = require('path'); 36 | app.get('*', (req, res) => { 37 | res.sendFile(path.resolve('client', 'build', 'index.html')); 38 | }); 39 | } 40 | 41 | const PORT = process.env.PORT || 5000; 42 | app.listen(PORT, () => { 43 | console.log(`Listening on port`, PORT); 44 | }); 45 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/middlewares/cleanCache.js: -------------------------------------------------------------------------------- 1 | const { clearHash } = require('../services/cache'); 2 | 3 | module.exports = async (req, res, next) => { 4 | await next(); 5 | 6 | clearHash(req.user.id); 7 | }; 8 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/middlewares/requireLogin.js: -------------------------------------------------------------------------------- 1 | module.exports = (req, res, next) => { 2 | if (!req.user) { 3 | return res.status(401).send({ error: 'You must log in!' }); 4 | } 5 | 6 | next(); 7 | }; 8 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/models/Blog.js: -------------------------------------------------------------------------------- 1 | const mongoose = require('mongoose'); 2 | const { Schema } = mongoose; 3 | 4 | const blogSchema = new Schema({ 5 | title: String, 6 | content: String, 7 | imageUrl: String, 8 | createdAt: { type: Date, default: Date.now }, 9 | _user: { type: Schema.Types.ObjectId, ref: 'User' } 10 | }); 11 | 12 | mongoose.model('Blog', blogSchema); 13 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/models/User.js: -------------------------------------------------------------------------------- 1 | const mongoose = require('mongoose'); 2 | const { Schema } = mongoose; 3 | 4 | const userSchema = new Schema({ 5 | googleId: String, 6 | displayName: String 7 | }); 8 | 9 | mongoose.model('User', userSchema); 10 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "server", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "jest": { 7 | "setupTestFrameworkScriptFile": "./tests/setup.js" 8 | }, 9 | "scripts": { 10 | "start": "node index.js", 11 | "server": "nodemon index.js --ignore tests", 12 | "client": "npm run start --prefix client", 13 | "dev": "concurrently \"npm run server\" \"npm run client\"", 14 | "build": "NPM_CONFIG_PRODUCTION=false npm install --prefix client && npm run build --prefix client", 15 | "heroku-postbuild": "npm run build", 16 | "test": "jest" 17 | }, 18 | "author": "", 19 | "license": "ISC", 20 | "dependencies": { 21 | "aws-sdk": "^2.208.0", 22 | "body-parser": "^1.17.2", 23 | "concurrently": "^3.5.0", 24 | "cookie-session": "^2.0.0-beta.2", 25 | "express": "^4.15.3", 26 | "jest": "^22.1.4", 27 | "migrate-mongoose": "^3.2.2", 28 | "mongoose": "^4.11.1", 29 | "nodemon": "^1.11.0", 30 | "passport": "^0.3.2", 31 | "passport-google-oauth20": "^1.0.0", 32 | "path-parser": "^2.0.2", 33 | "puppeteer": "^1.0.0", 34 | "redis": "^2.8.0", 35 | "uuid": "^3.2.1" 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/routes/authRoutes.js: -------------------------------------------------------------------------------- 1 | const passport = require('passport'); 2 | 3 | module.exports = app => { 4 | app.get( 5 | '/auth/google', 6 | passport.authenticate('google', { 7 | scope: ['profile', 'email'] 8 | }) 9 | ); 10 | 11 | app.get( 12 | '/auth/google/callback', 13 | passport.authenticate('google'), 14 | (req, res) => { 15 | res.redirect('/blogs'); 16 | } 17 | ); 18 | 19 | app.get('/auth/logout', (req, res) => { 20 | req.logout(); 21 | res.redirect('/'); 22 | }); 23 | 24 | app.get('/api/current_user', (req, res) => { 25 | res.send(req.user); 26 | }); 27 | }; 28 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/routes/blogRoutes.js: -------------------------------------------------------------------------------- 1 | const mongoose = require('mongoose'); 2 | const requireLogin = require('../middlewares/requireLogin'); 3 | const cleanCache = require('../middlewares/cleanCache'); 4 | 5 | const Blog = mongoose.model('Blog'); 6 | 7 | module.exports = app => { 8 | app.get('/api/blogs/:id', requireLogin, async (req, res) => { 9 | const blog = await Blog.findOne({ 10 | _user: req.user.id, 11 | _id: req.params.id 12 | }); 13 | 14 | res.send(blog); 15 | }); 16 | 17 | app.get('/api/blogs', requireLogin, async (req, res) => { 18 | const blogs = await Blog.find({ _user: req.user.id }).cache({ 19 | key: req.user.id 20 | }); 21 | 22 | res.send(blogs); 23 | }); 24 | 25 | app.post('/api/blogs', requireLogin, cleanCache, async (req, res) => { 26 | const { title, content, imageUrl } = req.body; 27 | 28 | const blog = new Blog({ 29 | imageUrl, 30 | title, 31 | content, 32 | _user: req.user.id 33 | }); 34 | 35 | try { 36 | await blog.save(); 37 | res.send(blog); 38 | } catch (err) { 39 | res.send(400, err); 40 | } 41 | }); 42 | }; 43 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/routes/uploadRoutes.js: -------------------------------------------------------------------------------- 1 | const AWS = require('aws-sdk'); 2 | const uuid = require('uuid/v1'); 3 | const requireLogin = require('../middlewares/requireLogin'); 4 | const keys = require('../config/keys'); 5 | 6 | const s3 = new AWS.S3({ 7 | accessKeyId: keys.accessKeyId, 8 | secretAccessKey: keys.secretAccessKey 9 | }); 10 | 11 | module.exports = app => { 12 | app.get('/api/upload', requireLogin, (req, res) => { 13 | const key = `${req.user.id}/${uuid()}.jpeg`; 14 | 15 | s3.getSignedUrl( 16 | 'putObject', 17 | { 18 | Bucket: 'my-blog-bucket-123', 19 | ContentType: 'image/jpeg', 20 | Key: key 21 | }, 22 | (err, url) => res.send({ key, url }) 23 | ); 24 | }); 25 | }; 26 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/services/cache.js: -------------------------------------------------------------------------------- 1 | const mongoose = require('mongoose'); 2 | const redis = require('redis'); 3 | const util = require('util'); 4 | const keys = require('../config/keys'); 5 | 6 | const client = redis.createClient(keys.redisUrl); 7 | client.hget = util.promisify(client.hget); 8 | const exec = mongoose.Query.prototype.exec; 9 | 10 | mongoose.Query.prototype.cache = function(options = {}) { 11 | this.useCache = true; 12 | this.hashKey = JSON.stringify(options.key || ''); 13 | 14 | return this; 15 | }; 16 | 17 | mongoose.Query.prototype.exec = async function() { 18 | if (!this.useCache) { 19 | return exec.apply(this, arguments); 20 | } 21 | 22 | const key = JSON.stringify( 23 | Object.assign({}, this.getQuery(), { 24 | collection: this.mongooseCollection.name 25 | }) 26 | ); 27 | 28 | // See if we have a value for 'key' in redis 29 | const cacheValue = await client.hget(this.hashKey, key); 30 | 31 | // If we do, return that 32 | if (cacheValue) { 33 | const doc = JSON.parse(cacheValue); 34 | 35 | return Array.isArray(doc) 36 | ? doc.map(d => new this.model(d)) 37 | : new this.model(doc); 38 | } 39 | 40 | // Otherwise, issue the query and store the result in redis 41 | const result = await exec.apply(this, arguments); 42 | 43 | client.hset(this.hashKey, key, JSON.stringify(result), 'EX', 10); 44 | 45 | return result; 46 | }; 47 | 48 | module.exports = { 49 | clearHash(hashKey) { 50 | client.del(JSON.stringify(hashKey)); 51 | } 52 | }; 53 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/services/passport.js: -------------------------------------------------------------------------------- 1 | const passport = require('passport'); 2 | const GoogleStrategy = require('passport-google-oauth20').Strategy; 3 | const mongoose = require('mongoose'); 4 | const keys = require('../config/keys'); 5 | 6 | const User = mongoose.model('User'); 7 | 8 | passport.serializeUser((user, done) => { 9 | done(null, user.id); 10 | }); 11 | 12 | passport.deserializeUser((id, done) => { 13 | User.findById(id).then(user => { 14 | done(null, user); 15 | }); 16 | }); 17 | 18 | passport.use( 19 | new GoogleStrategy( 20 | { 21 | callbackURL: '/auth/google/callback', 22 | clientID: keys.googleClientID, 23 | clientSecret: keys.googleClientSecret, 24 | proxy: true 25 | }, 26 | async (accessToken, refreshToken, profile, done) => { 27 | try { 28 | const existingUser = await User.findOne({ googleId: profile.id }); 29 | if (existingUser) { 30 | return done(null, existingUser); 31 | } 32 | const user = await new User({ 33 | googleId: profile.id, 34 | displayName: profile.displayName 35 | }).save(); 36 | done(null, user); 37 | } catch (err) { 38 | done(err, null); 39 | } 40 | } 41 | ) 42 | ); 43 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/tests/blogs.test.js: -------------------------------------------------------------------------------- 1 | const Page = require('./helpers/page'); 2 | 3 | let page; 4 | 5 | beforeEach(async () => { 6 | page = await Page.build(); 7 | await page.goto('http://localhost:3000'); 8 | }); 9 | 10 | afterEach(async () => { 11 | await page.close(); 12 | }); 13 | 14 | describe('When logged in', async () => { 15 | beforeEach(async () => { 16 | await page.login(); 17 | await page.click('a.btn-floating'); 18 | }); 19 | 20 | test('can see blog create form', async () => { 21 | const label = await page.getContentsOf('form label'); 22 | 23 | expect(label).toEqual('Blog Title'); 24 | }); 25 | 26 | describe('And using valid inputs', async () => { 27 | beforeEach(async () => { 28 | await page.type('.title input', 'My Title'); 29 | await page.type('.content input', 'My Content'); 30 | await page.click('form button'); 31 | }); 32 | 33 | test('Submitting takes user to review screen', async () => { 34 | const text = await page.getContentsOf('h5'); 35 | 36 | expect(text).toEqual('Please confirm your entries'); 37 | }); 38 | 39 | test('Submitting then saving adds blog to index page', async () => { 40 | await page.click('button.green'); 41 | await page.waitFor('.card'); 42 | 43 | const title = await page.getContentsOf('.card-title'); 44 | const content = await page.getContentsOf('p'); 45 | 46 | expect(title).toEqual('My Title'); 47 | expect(content).toEqual('My Content'); 48 | }); 49 | }); 50 | 51 | describe('And using invalid inputs', async () => { 52 | beforeEach(async () => { 53 | await page.click('form button'); 54 | }); 55 | 56 | test('the form shows an error message', async () => { 57 | const titleError = await page.getContentsOf('.title .red-text'); 58 | const contentError = await page.getContentsOf('.content .red-text'); 59 | 60 | expect(titleError).toEqual('You must provide a value'); 61 | expect(contentError).toEqual('You must provide a value'); 62 | }); 63 | }); 64 | }); 65 | 66 | describe('User is not logged in', async () => { 67 | const actions = [ 68 | { 69 | method: 'get', 70 | path: '/api/blogs' 71 | }, 72 | { 73 | method: 'post', 74 | path: '/api/blogs', 75 | data: { 76 | title: 'T', 77 | content: 'C' 78 | } 79 | } 80 | ]; 81 | 82 | test('Blog related actions are prohibited', async () => { 83 | const results = await page.execRequests(actions); 84 | 85 | for (let result of results) { 86 | expect(result).toEqual({ error: 'You must log in!' }); 87 | } 88 | }); 89 | }); 90 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/tests/factories/sessionFactory.js: -------------------------------------------------------------------------------- 1 | const Buffer = require('safe-buffer').Buffer; 2 | const Keygrip = require('keygrip'); 3 | const keys = require('../../config/keys'); 4 | const keygrip = new Keygrip([keys.cookieKey]); 5 | 6 | module.exports = user => { 7 | const sessionObject = { 8 | passport: { 9 | user: user._id.toString() 10 | } 11 | }; 12 | const session = Buffer.from(JSON.stringify(sessionObject)).toString('base64'); 13 | const sig = keygrip.sign('session=' + session); 14 | 15 | return { session, sig }; 16 | }; 17 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/tests/factories/userFactory.js: -------------------------------------------------------------------------------- 1 | const mongoose = require('mongoose'); 2 | const User = mongoose.model('User'); 3 | 4 | module.exports = () => { 5 | return new User({}).save(); 6 | }; 7 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/tests/header.test.js: -------------------------------------------------------------------------------- 1 | const Page = require('./helpers/page'); 2 | 3 | let page; 4 | 5 | beforeEach(async () => { 6 | page = await Page.build(); 7 | await page.goto('http://localhost:3000'); 8 | }); 9 | 10 | afterEach(async () => { 11 | await page.close(); 12 | }); 13 | 14 | test('the header has the correct text', async () => { 15 | const text = await page.getContentsOf('a.brand-logo'); 16 | 17 | expect(text).toEqual('Blogster'); 18 | }); 19 | 20 | test('clicking login starts oauth flow', async () => { 21 | await page.click('.right a'); 22 | 23 | const url = await page.url(); 24 | 25 | expect(url).toMatch(/accounts\.google\.com/); 26 | }); 27 | 28 | test('When signed in, shows logout button', async () => { 29 | await page.login(); 30 | 31 | const text = await page.$eval('a[href="/auth/logout"]', el => el.innerHTML); 32 | 33 | expect(text).toEqual('Logout'); 34 | }); 35 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/tests/helpers/page.js: -------------------------------------------------------------------------------- 1 | const puppeteer = require('puppeteer'); 2 | const sessionFactory = require('../factories/sessionFactory'); 3 | const userFactory = require('../factories/userFactory'); 4 | 5 | class CustomPage { 6 | static async build() { 7 | const browser = await puppeteer.launch({ 8 | headless: true, 9 | args: ['--no-sandbox'] 10 | }); 11 | 12 | const page = await browser.newPage(); 13 | const customPage = new CustomPage(page); 14 | 15 | return new Proxy(customPage, { 16 | get: function(target, property) { 17 | return customPage[property] || browser[property] || page[property]; 18 | } 19 | }); 20 | } 21 | 22 | constructor(page) { 23 | this.page = page; 24 | } 25 | 26 | async login() { 27 | const user = await userFactory(); 28 | const { session, sig } = sessionFactory(user); 29 | 30 | await this.page.setCookie({ name: 'session', value: session }); 31 | await this.page.setCookie({ name: 'session.sig', value: sig }); 32 | await this.page.goto('http://localhost:3000/blogs'); 33 | await this.page.waitFor('a[href="/auth/logout"]'); 34 | } 35 | 36 | async getContentsOf(selector) { 37 | return this.page.$eval(selector, el => el.innerHTML); 38 | } 39 | 40 | get(path) { 41 | return this.page.evaluate(_path => { 42 | return fetch(_path, { 43 | method: 'GET', 44 | credentials: 'same-origin', 45 | headers: { 46 | 'Content-Type': 'application/json' 47 | } 48 | }).then(res => res.json()); 49 | }, path); 50 | } 51 | 52 | post(path, data) { 53 | return this.page.evaluate( 54 | (_path, _data) => { 55 | return fetch(_path, { 56 | method: 'POST', 57 | credentials: 'same-origin', 58 | headers: { 59 | 'Content-Type': 'application/json' 60 | }, 61 | body: JSON.stringify(_data) 62 | }).then(res => res.json()); 63 | }, 64 | path, 65 | data 66 | ); 67 | } 68 | 69 | execRequests(actions) { 70 | return Promise.all( 71 | actions.map(({ method, path, data }) => { 72 | return this[method](path, data); 73 | }) 74 | ); 75 | } 76 | } 77 | 78 | module.exports = CustomPage; 79 | -------------------------------------------------------------------------------- /AdvancedNodeStarter/tests/setup.js: -------------------------------------------------------------------------------- 1 | jest.setTimeout(30000); 2 | 3 | require('../models/User'); 4 | 5 | const mongoose = require('mongoose'); 6 | const keys = require('../config/keys'); 7 | 8 | mongoose.Promise = global.Promise; 9 | mongoose.connect(keys.mongoURI, { useMongoClient: true }); 10 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # AdvancedNodeComplete 2 | *Completed* code for a course on Udemy. 3 | 4 | If you are *just starting* the course then you probably want this repo instead: https://github.com/StephenGrider/AdvancedNodeStarter 5 | -------------------------------------------------------------------------------- /code/async.js: -------------------------------------------------------------------------------- 1 | const https = require('https'); 2 | 3 | const start = Date.now(); 4 | 5 | function doRequest() { 6 | https 7 | .request('https://www.google.com', res => { 8 | res.on('data', () => {}); 9 | res.on('end', () => { 10 | console.log(Date.now() - start); 11 | }); 12 | }) 13 | .end(); 14 | } 15 | 16 | doRequest(); 17 | doRequest(); 18 | doRequest(); 19 | doRequest(); 20 | doRequest(); 21 | doRequest(); 22 | doRequest(); 23 | -------------------------------------------------------------------------------- /code/index.js: -------------------------------------------------------------------------------- 1 | const express = require('express'); 2 | const crypto = require('crypto'); 3 | const app = express(); 4 | const Worker = require('webworker-threads').Worker; 5 | 6 | app.get('/', (req, res) => { 7 | const worker = new Worker(function() { 8 | this.onmessage = function() { 9 | let counter = 0; 10 | while (counter < 1e9) { 11 | counter++; 12 | } 13 | 14 | postMessage(counter); 15 | }; 16 | }); 17 | 18 | worker.onmessage = function(message) { 19 | console.log(message.data); 20 | res.send('' + message.data); 21 | }; 22 | 23 | worker.postMessage(); 24 | }); 25 | 26 | app.get('/fast', (req, res) => { 27 | res.send('This was fast!'); 28 | }); 29 | 30 | app.listen(3000); 31 | -------------------------------------------------------------------------------- /code/loop.js: -------------------------------------------------------------------------------- 1 | const pendingTimers = []; 2 | const pendingOSTasks = []; 3 | const pendingOperations = []; 4 | 5 | // New timers, tasks, operations are recorded from myFile running 6 | myFile.runContents(); 7 | 8 | function shouldContinue() { 9 | // Check one: Any pending setTimeout, setInterval, setImmediate? 10 | // Check two: Any pending OS tasks? (Like server listening to port) 11 | // Check three: Any pending long running operations? (Like fs module) 12 | return ( 13 | pendingTimers.length || pendingOSTasks.length || pendingOperations.length 14 | ); 15 | } 16 | 17 | // Entire body executes in one 'tick' 18 | while (shouldContinue()) { 19 | // 1) Node looks at pendingTimers and sees if any functions 20 | // are ready to be called. setTimeout, setInterval 21 | // 2) Node looks at pendingOSTasks and pendingOperations 22 | // and calls relevant callbacks 23 | // 3) Pause execution. Continue when... 24 | // - a new pendingOSTask is done 25 | // - a new pendingOperation is done 26 | // - a timer is about to complete 27 | // 4) Look at pendingTimers. Call any setImmediate 28 | // 5) Handle any 'close' events 29 | } 30 | 31 | // exit back to terminal 32 | -------------------------------------------------------------------------------- /code/multitask.js: -------------------------------------------------------------------------------- 1 | process.env.UV_THREADPOOL_SIZE = 1; 2 | 3 | const https = require('https'); 4 | const crypto = require('crypto'); 5 | const fs = require('fs'); 6 | 7 | const start = Date.now(); 8 | 9 | function doRequest() { 10 | https 11 | .request('https://www.google.com', res => { 12 | res.on('data', () => {}); 13 | res.on('end', () => { 14 | console.log(Date.now() - start); 15 | }); 16 | }) 17 | .end(); 18 | } 19 | 20 | function doHash() { 21 | crypto.pbkdf2('a', 'b', 100000, 512, 'sha512', () => { 22 | console.log('Hash:', Date.now() - start); 23 | }); 24 | } 25 | 26 | doRequest(); 27 | 28 | fs.readFile('multitask.js', 'utf8', () => { 29 | console.log('FS:', Date.now() - start); 30 | }); 31 | 32 | doHash(); 33 | doHash(); 34 | doHash(); 35 | doHash(); 36 | -------------------------------------------------------------------------------- /code/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "main", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1" 8 | }, 9 | "author": "", 10 | "license": "ISC", 11 | "dependencies": { 12 | "express": "^4.16.2", 13 | "webworker-threads": "^0.7.13" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /code/threads.js: -------------------------------------------------------------------------------- 1 | process.env.UV_THREADPOOL_SIZE = 5; 2 | 3 | const crypto = require('crypto'); 4 | 5 | const start = Date.now(); 6 | crypto.pbkdf2('a', 'b', 100000, 512, 'sha512', () => { 7 | console.log('1:', Date.now() - start); 8 | }); 9 | 10 | crypto.pbkdf2('a', 'b', 100000, 512, 'sha512', () => { 11 | console.log('2:', Date.now() - start); 12 | }); 13 | 14 | crypto.pbkdf2('a', 'b', 100000, 512, 'sha512', () => { 15 | console.log('3:', Date.now() - start); 16 | }); 17 | 18 | crypto.pbkdf2('a', 'b', 100000, 512, 'sha512', () => { 19 | console.log('4:', Date.now() - start); 20 | }); 21 | 22 | crypto.pbkdf2('a', 'b', 100000, 512, 'sha512', () => { 23 | console.log('5:', Date.now() - start); 24 | }); 25 | -------------------------------------------------------------------------------- /diagrams/01/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/StephenGrider/AdvancedNodeComplete/916f1ce3faf5ccff9503beb61ecc849e0784a29e/diagrams/01/.gitkeep -------------------------------------------------------------------------------- /diagrams/01/diagrams.xml: -------------------------------------------------------------------------------- 1 | 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 -------------------------------------------------------------------------------- /diagrams/02/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/StephenGrider/AdvancedNodeComplete/916f1ce3faf5ccff9503beb61ecc849e0784a29e/diagrams/02/.gitkeep -------------------------------------------------------------------------------- /diagrams/02/diagrams.xml: -------------------------------------------------------------------------------- 1 | 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 -------------------------------------------------------------------------------- /diagrams/03/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/StephenGrider/AdvancedNodeComplete/916f1ce3faf5ccff9503beb61ecc849e0784a29e/diagrams/03/.gitkeep -------------------------------------------------------------------------------- /diagrams/04/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/StephenGrider/AdvancedNodeComplete/916f1ce3faf5ccff9503beb61ecc849e0784a29e/diagrams/04/.gitkeep -------------------------------------------------------------------------------- /diagrams/05/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/StephenGrider/AdvancedNodeComplete/916f1ce3faf5ccff9503beb61ecc849e0784a29e/diagrams/05/.gitkeep -------------------------------------------------------------------------------- /diagrams/05/diagrams.xml: -------------------------------------------------------------------------------- 1 | 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 -------------------------------------------------------------------------------- /diagrams/06/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/StephenGrider/AdvancedNodeComplete/916f1ce3faf5ccff9503beb61ecc849e0784a29e/diagrams/06/.gitkeep -------------------------------------------------------------------------------- /diagrams/06/diagrams.xml: -------------------------------------------------------------------------------- 1 | 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 -------------------------------------------------------------------------------- /diagrams/07/.gitkeep: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /diagrams/07/diagrams.xml: -------------------------------------------------------------------------------- 1 | 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 -------------------------------------------------------------------------------- /diagrams/08/.gitkeep: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /diagrams/08/diagrams.xml: -------------------------------------------------------------------------------- 1 | 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 -------------------------------------------------------------------------------- /diagrams/09/.gitkeep: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /diagrams/09/diagrams.xml: -------------------------------------------------------------------------------- 1 | 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 -------------------------------------------------------------------------------- /diagrams/10/.gitkeep: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /diagrams/10/diagrams.xml: -------------------------------------------------------------------------------- 1 | 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 --------------------------------------------------------------------------------