Dhalang 0.2.0 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +52 -51
- data/.travis.yml +12 -8
- data/Dhalang.gemspec +30 -39
- data/Gemfile +6 -6
- data/Gemfile.lock +18 -17
- data/LICENSE +21 -21
- data/README.md +108 -42
- data/Rakefile +6 -6
- data/lib/Dhalang.rb +14 -4
- data/lib/Dhalang/error.rb +1 -0
- data/lib/Dhalang/file_utils.rb +37 -0
- data/lib/Dhalang/puppeteer.rb +95 -0
- data/lib/Dhalang/url_utils.rb +14 -0
- data/lib/Dhalang/version.rb +3 -3
- data/lib/PDF.rb +54 -65
- data/lib/Screenshot.rb +57 -51
- data/lib/js/dhalang.js +146 -0
- data/lib/js/pdf-generator.js +30 -0
- data/lib/js/screenshot-generator.js +32 -0
- data/package-lock.json +990 -0
- data/package.json +25 -25
- metadata +14 -10
- data/lib/js/pdfgenerator.js +0 -27
- data/lib/js/screenshotgenerator.js +0 -26
    
        data/package.json
    CHANGED
    
    | @@ -1,25 +1,25 @@ | |
| 1 | 
            -
            {
         | 
| 2 | 
            -
              "name": "dhalang",
         | 
| 3 | 
            -
              "version": " | 
| 4 | 
            -
              "description": "",
         | 
| 5 | 
            -
              "main": "index.js",
         | 
| 6 | 
            -
              "directories": {
         | 
| 7 | 
            -
                "lib": "lib"
         | 
| 8 | 
            -
              },
         | 
| 9 | 
            -
              "scripts": {
         | 
| 10 | 
            -
                "test": "echo \"Error: no test specified\" && exit 1"
         | 
| 11 | 
            -
              },
         | 
| 12 | 
            -
              "repository": {
         | 
| 13 | 
            -
                "type": "git",
         | 
| 14 | 
            -
                "url": "git+https://github.com/NielsSteensma/Dhalang.git"
         | 
| 15 | 
            -
              },
         | 
| 16 | 
            -
              "author": "",
         | 
| 17 | 
            -
              "license": " | 
| 18 | 
            -
              "bugs": {
         | 
| 19 | 
            -
                "url": "https://github.com/NielsSteensma/Dhalang/issues"
         | 
| 20 | 
            -
              },
         | 
| 21 | 
            -
              "homepage": "https://github.com/NielsSteensma/Dhalang#readme",
         | 
| 22 | 
            -
              "devDependencies": {
         | 
| 23 | 
            -
                "puppeteer": "^ | 
| 24 | 
            -
              }
         | 
| 25 | 
            -
            }
         | 
| 1 | 
            +
            {
         | 
| 2 | 
            +
              "name": "dhalang",
         | 
| 3 | 
            +
              "version": "0.6.0",
         | 
| 4 | 
            +
              "description": "",
         | 
| 5 | 
            +
              "main": "index.js",
         | 
| 6 | 
            +
              "directories": {
         | 
| 7 | 
            +
                "lib": "lib"
         | 
| 8 | 
            +
              },
         | 
| 9 | 
            +
              "scripts": {
         | 
| 10 | 
            +
                "test": "echo \"Error: no test specified\" && exit 1"
         | 
| 11 | 
            +
              },
         | 
| 12 | 
            +
              "repository": {
         | 
| 13 | 
            +
                "type": "git",
         | 
| 14 | 
            +
                "url": "git+https://github.com/NielsSteensma/Dhalang.git"
         | 
| 15 | 
            +
              },
         | 
| 16 | 
            +
              "author": "",
         | 
| 17 | 
            +
              "license": "MIT",
         | 
| 18 | 
            +
              "bugs": {
         | 
| 19 | 
            +
                "url": "https://github.com/NielsSteensma/Dhalang/issues"
         | 
| 20 | 
            +
              },
         | 
| 21 | 
            +
              "homepage": "https://github.com/NielsSteensma/Dhalang#readme",
         | 
| 22 | 
            +
              "devDependencies": {
         | 
| 23 | 
            +
                "puppeteer": "^5.5.0"
         | 
| 24 | 
            +
              }
         | 
| 25 | 
            +
            }
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: Dhalang
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0. | 
| 4 | 
            +
              version: 0.6.0
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Niels Steensma
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: exe
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date:  | 
| 11 | 
            +
            date: 2021-01-23 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: bundler
         | 
| @@ -30,14 +30,14 @@ dependencies: | |
| 30 30 | 
             
                requirements:
         | 
| 31 31 | 
             
                - - "~>"
         | 
| 32 32 | 
             
                  - !ruby/object:Gem::Version
         | 
| 33 | 
            -
                    version:  | 
| 33 | 
            +
                    version: 13.0.1
         | 
| 34 34 | 
             
              type: :development
         | 
| 35 35 | 
             
              prerelease: false
         | 
| 36 36 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 37 37 | 
             
                requirements:
         | 
| 38 38 | 
             
                - - "~>"
         | 
| 39 39 | 
             
                  - !ruby/object:Gem::Version
         | 
| 40 | 
            -
                    version:  | 
| 40 | 
            +
                    version: 13.0.1
         | 
| 41 41 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 42 42 | 
             
              name: rspec
         | 
| 43 43 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| @@ -96,17 +96,22 @@ files: | |
| 96 96 | 
             
            - README.md
         | 
| 97 97 | 
             
            - Rakefile
         | 
| 98 98 | 
             
            - lib/Dhalang.rb
         | 
| 99 | 
            +
            - lib/Dhalang/error.rb
         | 
| 100 | 
            +
            - lib/Dhalang/file_utils.rb
         | 
| 101 | 
            +
            - lib/Dhalang/puppeteer.rb
         | 
| 102 | 
            +
            - lib/Dhalang/url_utils.rb
         | 
| 99 103 | 
             
            - lib/Dhalang/version.rb
         | 
| 100 104 | 
             
            - lib/PDF.rb
         | 
| 101 105 | 
             
            - lib/Screenshot.rb
         | 
| 102 | 
            -
            - lib/js/ | 
| 103 | 
            -
            - lib/js/ | 
| 106 | 
            +
            - lib/js/dhalang.js
         | 
| 107 | 
            +
            - lib/js/pdf-generator.js
         | 
| 108 | 
            +
            - lib/js/screenshot-generator.js
         | 
| 109 | 
            +
            - package-lock.json
         | 
| 104 110 | 
             
            - package.json
         | 
| 105 111 | 
             
            homepage: https://github.com/NielsSteensma/Dhalang
         | 
| 106 112 | 
             
            licenses:
         | 
| 107 113 | 
             
            - MIT
         | 
| 108 | 
            -
            metadata:
         | 
| 109 | 
            -
              allowed_push_host: https://rubygems.org
         | 
| 114 | 
            +
            metadata: {}
         | 
| 110 115 | 
             
            post_install_message: 
         | 
| 111 116 | 
             
            rdoc_options: []
         | 
| 112 117 | 
             
            require_paths:
         | 
| @@ -122,8 +127,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 122 127 | 
             
                - !ruby/object:Gem::Version
         | 
| 123 128 | 
             
                  version: '0'
         | 
| 124 129 | 
             
            requirements: []
         | 
| 125 | 
            -
             | 
| 126 | 
            -
            rubygems_version: 2.7.6
         | 
| 130 | 
            +
            rubygems_version: 3.0.3
         | 
| 127 131 | 
             
            signing_key: 
         | 
| 128 132 | 
             
            specification_version: 4
         | 
| 129 133 | 
             
            summary: Ruby wrapper for Puppeteer. Generate screenshots and PDF's from HTML!
         | 
    
        data/lib/js/pdfgenerator.js
    DELETED
    
    | @@ -1,27 +0,0 @@ | |
| 1 | 
            -
            'use strict';
         | 
| 2 | 
            -
             | 
| 3 | 
            -
            const createPdf = async() => {
         | 
| 4 | 
            -
                module.paths.push(process.argv[4]);
         | 
| 5 | 
            -
                const puppeteer = require('puppeteer');
         | 
| 6 | 
            -
                let browser;
         | 
| 7 | 
            -
                try {
         | 
| 8 | 
            -
                    browser = await puppeteer.launch({args: ['--no-sandbox', '--disable-setuid-sandbox']});
         | 
| 9 | 
            -
                    const page = await browser.newPage();
         | 
| 10 | 
            -
                    await page.goto(process.argv[2], {timeout: 10000, waitUntil: 'networkidle2'});
         | 
| 11 | 
            -
                    await page.waitFor(250);
         | 
| 12 | 
            -
                    await page.pdf({
         | 
| 13 | 
            -
                        path: process.argv[3],
         | 
| 14 | 
            -
                        format: 'A4',
         | 
| 15 | 
            -
                        margin: { top: 36, right: 36, bottom: 20, left: 36 },
         | 
| 16 | 
            -
                        printBackground: true
         | 
| 17 | 
            -
                    });
         | 
| 18 | 
            -
                } catch (err) {
         | 
| 19 | 
            -
                    console.log(err.message);
         | 
| 20 | 
            -
                } finally {
         | 
| 21 | 
            -
                    if (browser) {
         | 
| 22 | 
            -
                        browser.close();
         | 
| 23 | 
            -
                    }
         | 
| 24 | 
            -
                    process.exit();
         | 
| 25 | 
            -
                }
         | 
| 26 | 
            -
            };
         | 
| 27 | 
            -
            createPdf();
         | 
| @@ -1,26 +0,0 @@ | |
| 1 | 
            -
            'use strict';
         | 
| 2 | 
            -
             | 
| 3 | 
            -
            const createPdf = async() => {
         | 
| 4 | 
            -
                module.paths.push(process.argv[4]);
         | 
| 5 | 
            -
                const puppeteer = require('puppeteer');
         | 
| 6 | 
            -
                let browser;
         | 
| 7 | 
            -
                try {
         | 
| 8 | 
            -
                    browser = await puppeteer.launch({args: ['--no-sandbox', '--disable-setuid-sandbox']});
         | 
| 9 | 
            -
                    const page = await browser.newPage();
         | 
| 10 | 
            -
                    await page.goto(process.argv[2], {timeout: 10000, waitUntil: 'networkidle2'});
         | 
| 11 | 
            -
                    await page.waitFor(250);
         | 
| 12 | 
            -
                    await page.screenshot({
         | 
| 13 | 
            -
                        path: process.argv[3],
         | 
| 14 | 
            -
                        type: process.argv[5],
         | 
| 15 | 
            -
                        fullPage: true
         | 
| 16 | 
            -
                    });
         | 
| 17 | 
            -
                } catch (err) {
         | 
| 18 | 
            -
                    console.log(err.message);
         | 
| 19 | 
            -
                } finally {
         | 
| 20 | 
            -
                    if (browser) {
         | 
| 21 | 
            -
                        browser.close();
         | 
| 22 | 
            -
                    }
         | 
| 23 | 
            -
                    process.exit();
         | 
| 24 | 
            -
                }
         | 
| 25 | 
            -
            };
         | 
| 26 | 
            -
            createPdf();
         |