From 9f56018e29d0e638efd606dedc1e4f1a7d577352 Mon Sep 17 00:00:00 2001 From: Stephan Gerbeth Date: Sun, 19 Aug 2018 12:08:57 +0200 Subject: [PATCH 1/5] chore(readme): fixed badges --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index baa1029..3269547 100755 --- a/README.md +++ b/README.md @@ -2,8 +2,8 @@ [![license](https://img.shields.io/github/license/basics/code-snippet-to-svg.svg)](https://github.com/basics/code-snippet-to-svg) [![OSX/Linux Build Status](https://travis-ci.org/basics/code-snippet-to-svg.svg?branch=master)](https://travis-ci.org/basics/code-snippet-to-svg) -[![Windows Build status](https://ci.appveyor.com/api/projects/status/7v3b1mv72vll3fd8?svg=true)](https://ci.appveyor.com/project/StephanGerbeth/blueprint-npm-module) -[![NSP Status](https://nodesecurity.io/orgs/basics/projects/4c593704-b3ef-4475-95ce-5e3bfeaf3261/badge)](https://nodesecurity.io/orgs/basics/projects/4c593704-b3ef-4475-95ce-5e3bfeaf3261) +[![Build status](https://ci.appveyor.com/api/projects/status/jrxx8092yxd8d07b?svg=true)](https://ci.appveyor.com/project/StephanGerbeth/code-snippet-to-svg) +[![NSP Status](https://nodesecurity.io/orgs/basics/projects/d5bb0c4d-6232-4370-9886-571c516cd985/badge)](https://nodesecurity.io/orgs/basics/projects/d5bb0c4d-6232-4370-9886-571c516cd985) [![Dependencies Status](https://david-dm.org/basics/code-snippet-to-svg/status.svg)](https://david-dm.org/basics/code-snippet-to-svg) [![DevDependencies Status](https://david-dm.org/basics/code-snippet-to-svg/dev-status.svg)](https://david-dm.org/basics/code-snippet-to-svg?type=dev) From 87a3fe419beedeb42fb0f5e43ad3c86ace03faf5 Mon Sep 17 00:00:00 2001 From: "greenkeeper[bot]" Date: Sun, 19 Aug 2018 10:13:41 +0000 Subject: [PATCH 2/5] chore: add Greenkeeper config file --- greenkeeper.json | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 greenkeeper.json diff --git a/greenkeeper.json b/greenkeeper.json new file mode 100644 index 0000000..a963723 --- /dev/null +++ b/greenkeeper.json @@ -0,0 +1,10 @@ +{ + "groups": { + "default": { + "packages": [ + "functions/package.json", + "package.json" + ] + } + } +} From 73458eaa836f12e36451c3ae2e3ea7fa87deb63c Mon Sep 17 00:00:00 2001 From: "greenkeeper[bot]" Date: Sun, 19 Aug 2018 10:13:44 +0000 Subject: [PATCH 3/5] docs(readme): add Greenkeeper badge --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) mode change 100755 => 100644 README.md diff --git a/README.md b/README.md old mode 100755 new mode 100644 index 3269547..b988ef3 --- a/README.md +++ b/README.md @@ -8,6 +8,6 @@ [![DevDependencies Status](https://david-dm.org/basics/code-snippet-to-svg/dev-status.svg)](https://david-dm.org/basics/code-snippet-to-svg?type=dev) [![start with why](https://img.shields.io/badge/start%20with-why%3F-brightgreen.svg?style=flat)](http://www.ted.com/talks/simon_sinek_how_great_leaders_inspire_action) -[![JavaScript Style Guide: Good Parts](https://img.shields.io/badge/code%20style-goodparts-brightgreen.svg?style=flat)](https://github.com/dwyl/goodparts "JavaScript The Good Parts") +[![JavaScript Style Guide: Good Parts](https://img.shields.io/badge/code%20style-goodparts-brightgreen.svg?style=flat)](https://github.com/dwyl/goodparts "JavaScript The Good Parts") [![Greenkeeper badge](https://badges.greenkeeper.io/basics/code-snippet-to-svg.svg)](https://greenkeeper.io/) # Code snippet to SVG converter From f683f6cd5d090a1bf311a77d79426a6191dfc0db Mon Sep 17 00:00:00 2001 From: Stephan Gerbeth Date: Sun, 19 Aug 2018 19:25:10 +0200 Subject: [PATCH 4/5] feat(cleanup): cleaned up code fix(chalk): overwrite auto color detection by env var --- .firebaserc | 6 +- .gitignore | 1 + examples/example.js | 18 ++ functions/index.js | 35 +++- functions/package-lock.json | 354 +++++++++++++++++++++++++++++++++--- functions/package.json | 14 +- package-lock.json | 28 +-- src/index.js | 16 -- test.svg | 1 - 9 files changed, 400 insertions(+), 73 deletions(-) delete mode 100644 test.svg diff --git a/.firebaserc b/.firebaserc index 0967ef4..ba3d7ca 100644 --- a/.firebaserc +++ b/.firebaserc @@ -1 +1,5 @@ -{} +{ + "projects": { + "default": "code-snippet-to-svg" + } +} diff --git a/.gitignore b/.gitignore index 9e013c6..45c1c8f 100755 --- a/.gitignore +++ b/.gitignore @@ -38,3 +38,4 @@ lib others .DS_Store +test.svg diff --git a/examples/example.js b/examples/example.js index e69de29..b096596 100755 --- a/examples/example.js +++ b/examples/example.js @@ -0,0 +1,18 @@ +const fs = require('fs'); +const request = require('request-promise'); +const codeToSVG = require('../lib'); + +const url = 'https://raw.githubusercontent.com/GrabarzUndPartner/gp-vue-boilerplate/blob/master/src/store/index.js'; +const uri = url.replace(/([\w-]*\/[\w-]*)(\/blob)/, '$1'); + +request({ + uri +}).then((code) => { + const result = codeToSVG(code, 3, 7); + fs.writeFile('./test.svg', result, (err) => { + if (err) { + return console.log(err); + } + return console.log('The file was saved!'); + }); +}); diff --git a/functions/index.js b/functions/index.js index ae2028a..e3f0a4a 100644 --- a/functions/index.js +++ b/functions/index.js @@ -1,16 +1,43 @@ +process.env.FORCE_COLOR = 1; + +const request = require('request-promise'); const functions = require('firebase-functions'); const express = require('express'); const cors = require('cors'); +const codeToSVG = require('@js-basics/code-snippet-to-svg'); +const githubRawUrl = 'https://raw.githubusercontent.com'; const app = express(); app.use(cors({ origin: true })); -exports.helloWorld = functions.https.onRequest((request, response) => { - response.send('Hello from Firebase!'); +function getMinMax(value = '1') { + return value.split('-'); +} + +function getCodeAsSVG(path, range = '1') { + const url = githubRawUrl + path; + return request({ uri: url }).then((code) => { + const [min, max] = getMinMax(range); + return codeToSVG(code, min, max); + }); +} + +exports.test = functions.https.onRequest((req, res) => { + const path = '/GrabarzUndPartner/gp-vue-boilerplate/master/src/components/molecules/LinkList.vue'; + getCodeAsSVG(path, req.query.L).then((svg) => { + res.setHeader('Content-Type', 'image/svg+xml'); + res.setHeader('Cache-Control', 'no-cache'); + res.send(Buffer.from(svg)); + }); }); app.get(['/:foo/:bar/*'], (req, res) => { - res.send(req.path + req.params.foo); + const path = req.path.replace(/([\w-]*\/[\w-]*)(\/blob)/, '$1'); + getCodeAsSVG(path, req.query.L).then((svg) => { + res.setHeader('Content-Type', 'image/svg+xml'); + res.setHeader('Cache-Control', 'no-cache'); + res.send(Buffer.from(svg)); + }); }); -exports.svg = functions.https.onRequest(app); +exports.default = functions.https.onRequest(app); diff --git a/functions/package-lock.json b/functions/package-lock.json index e7d5c1e..4e826f6 100644 --- a/functions/package-lock.json +++ b/functions/package-lock.json @@ -140,6 +140,14 @@ "stream-events": "^1.0.1", "through2": "^2.0.0", "xdg-basedir": "^3.0.0" + }, + "dependencies": { + "mime": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.3.1.tgz", + "integrity": "sha512-OEUllcVoydBHGN1z84yfQDimn58pZNNNXgZlHXSboxMlFvgI6MXSWpWKpFRra7H1HxpVhHTkrghfRW49k6yjeg==", + "optional": true + } } }, "@grpc/proto-loader": { @@ -162,6 +170,58 @@ } } }, + "@js-basics/code-snippet-to-svg": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@js-basics/code-snippet-to-svg/-/code-snippet-to-svg-1.0.0.tgz", + "integrity": "sha512-mFzM9PSFqO2O0mcK7K43EEmk8EF6uX/F2m0eLRpnf8qGoLp1jSxE76JuyJdEAtv82bwLcnjV4Wyj8fnUTBtmUQ==", + "requires": { + "ansi-to-svg": "github:StephanGerbeth/ansi-to-svg#662f2ccda6e506fbaf76e1005becd162348a0eb0", + "emphasize": "^2.0.0", + "highlight.js": "^9.12.0", + "request": "^2.88.0", + "request-promise": "^4.2.2" + }, + "dependencies": { + "request": { + "version": "2.88.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", + "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.0", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.4.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + } + }, + "request-promise": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/request-promise/-/request-promise-4.2.2.tgz", + "integrity": "sha1-0epG1lSm7k+O5qT+oQGMIpEZBLQ=", + "requires": { + "bluebird": "^3.5.0", + "request-promise-core": "1.1.1", + "stealthy-require": "^1.1.0", + "tough-cookie": ">=2.3.3" + } + } + } + }, "@mrmlnc/readdir-enhanced": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz", @@ -172,9 +232,9 @@ } }, "@nodelib/fs.stat": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.0.tgz", - "integrity": "sha512-LAQ1d4OPfSJ/BMbI2DuizmYrrkD9JMaTdi2hQTlI53lQ4kRQPyZQRS4CYQ7O66bnBBnP/oYdRxbk++X0xuFU6A==" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.1.tgz", + "integrity": "sha512-KU/VDjC5RwtDUZiz3d+DHXJF2lp5hB9dn552TXIyptj8SH1vXmR40mG0JgGq03IlYsOgGfcv8xrLpSQ0YUMQdA==" }, "@protobufjs/aspromise": { "version": "1.1.2", @@ -396,9 +456,35 @@ } }, "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "requires": { + "color-convert": "^1.9.0" + } + }, + "ansi-to": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/ansi-to/-/ansi-to-1.5.1.tgz", + "integrity": "sha512-fsfvV6jp4lUKB9+13WLWpd7h0d5oU7oSUITyBmNXWQwuIaGTxpgFe5GUUVzajj0Wb2oHn7mHkizoPNXReitinA==", + "requires": { + "deepmerge": "^2.1.0", + "itermcolors-to-hex": "^1.0.1", + "parse-ansi": "^1.0.3" + } + }, + "ansi-to-svg": { + "version": "1.4.2", + "resolved": "github:StephanGerbeth/ansi-to-svg#662f2ccda6e506fbaf76e1005becd162348a0eb0", + "requires": { + "ansi-to": "^1.3.0", + "he": "^1.1.1" + } }, "arr-diff": { "version": "4.0.0", @@ -568,6 +654,11 @@ } } }, + "base64-js": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", + "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==" + }, "bcrypt-pbkdf": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", @@ -577,6 +668,11 @@ "tweetnacl": "^0.14.3" } }, + "bluebird": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz", + "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==" + }, "body-parser": { "version": "1.18.2", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz", @@ -720,6 +816,16 @@ "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" }, + "chalk": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, "class-utils": { "version": "0.3.6", "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", @@ -750,6 +856,23 @@ "string-width": "^1.0.1", "strip-ansi": "^3.0.1", "wrap-ansi": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "optional": true + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "optional": true, + "requires": { + "ansi-regex": "^2.0.0" + } + } } }, "co": { @@ -771,6 +894,19 @@ "object-visit": "^1.0.0" } }, + "color-convert": { + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.2.tgz", + "integrity": "sha512-3NUJZdhMhcdPn8vJ9v2UQJoH0qqoGUkYTgFEPZaPjEtwmmKUfNV46zZmgB2M5M4DCEQHMaCfWHCxiBflLm04Tg==", + "requires": { + "color-name": "1.1.1" + } + }, + "color-name": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.1.tgz", + "integrity": "sha1-SxQVMEz1ACjqgWQ2Q72C6gWANok=" + }, "colour": { "version": "0.7.1", "resolved": "https://registry.npmjs.org/colour/-/colour-0.7.1.tgz", @@ -949,6 +1085,11 @@ "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", "optional": true }, + "deepmerge": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-2.1.1.tgz", + "integrity": "sha512-urQxA1smbLZ2cBbXbaYObM1dJ82aJ2H57A1C/Kklfh/ZN1bgH4G/n5KWhdNfOK11W98gqZfyYj7W4frJJRwA2w==" + }, "define-properties": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", @@ -1105,6 +1246,16 @@ "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, + "emphasize": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/emphasize/-/emphasize-2.0.0.tgz", + "integrity": "sha512-r5M8UQJaOivabzsee1KoF5C0rqeyWZeV4Y3c9XGzG6RRtuMD4/n8pEzOEzGwVJjobfZD/jOYw+9911/5SPnF7w==", + "requires": { + "chalk": "^2.4.0", + "highlight.js": "~9.12.0", + "lowlight": "~1.9.0" + } + }, "empower": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/empower/-/empower-1.3.0.tgz", @@ -1147,6 +1298,11 @@ "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + }, "espurify": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/espurify/-/espurify-1.8.1.tgz", @@ -1357,6 +1513,14 @@ "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" }, + "fault": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/fault/-/fault-1.0.2.tgz", + "integrity": "sha512-o2eo/X2syzzERAtN5LcGbiVQ0WwZSlN3qLtadwAz3X8Bu+XWD16dja/KMsjZLiQr+BLGPDnHGkc4yUJf1Xpkpw==", + "requires": { + "format": "^0.2.2" + } + }, "faye-websocket": { "version": "0.11.1", "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.1.tgz", @@ -1491,6 +1655,11 @@ "mime-types": "^2.1.12" } }, + "format": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", + "integrity": "sha1-1hcBB+nv3E7TDJ3DkBbflCtctYs=" + }, "forwarded": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", @@ -2158,6 +2327,13 @@ "jws": "^3.1.4", "mime": "^2.2.0", "pify": "^3.0.0" + }, + "dependencies": { + "mime": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.3.1.tgz", + "integrity": "sha512-OEUllcVoydBHGN1z84yfQDimn58pZNNNXgZlHXSboxMlFvgI6MXSWpWKpFRra7H1HxpVhHTkrghfRW49k6yjeg==" + } } }, "har-schema": { @@ -2174,6 +2350,11 @@ "har-schema": "^2.0.0" } }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + }, "has-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", @@ -2212,6 +2393,16 @@ "through2": "^2.0.0" } }, + "he": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", + "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=" + }, + "highlight.js": { + "version": "9.12.0", + "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-9.12.0.tgz", + "integrity": "sha1-5tnb5Xy+/mB1HwKvM2GVhwyQwB4=" + }, "http-errors": { "version": "1.6.3", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", @@ -2437,6 +2628,15 @@ "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" }, + "itermcolors-to-hex": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/itermcolors-to-hex/-/itermcolors-to-hex-1.0.1.tgz", + "integrity": "sha512-DGcY7JCmmPL9oLQKUW+vOcnlnwhUmcK2upZVAg5htz0sK3/a0sF4n/X01vC5N+vzRxI9tWR92RdW0aDpu/urDA==", + "requires": { + "plist": "^3.0.1", + "rgb-hex": "^2.1.0" + } + }, "jsbn": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", @@ -2576,6 +2776,15 @@ "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==" }, + "lowlight": { + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/lowlight/-/lowlight-1.9.2.tgz", + "integrity": "sha512-Ek18ElVCf/wF/jEm1b92gTnigh94CtBNWiZ2ad+vTgW7cTmQxUY3I98BjHK68gZAJEWmybGBZgx9qv3QxLQB/Q==", + "requires": { + "fault": "^1.0.2", + "highlight.js": "~9.12.0" + } + }, "lru-cache": { "version": "4.1.3", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz", @@ -2654,9 +2863,9 @@ } }, "mime": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.3.1.tgz", - "integrity": "sha512-OEUllcVoydBHGN1z84yfQDimn58pZNNNXgZlHXSboxMlFvgI6MXSWpWKpFRra7H1HxpVhHTkrghfRW49k6yjeg==" + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", + "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==" }, "mime-db": { "version": "1.35.0", @@ -2838,6 +3047,18 @@ "lcid": "^1.0.0" } }, + "parse-ansi": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/parse-ansi/-/parse-ansi-1.0.3.tgz", + "integrity": "sha512-xrvGsb43DHlcwmVuurG44PYJXUwd/obLocHbSSVofi+QX6lPxnShVYmRU+GZbKNuvMYbkbWU2TGgmLGl3F1dEw==", + "requires": { + "ansi-regex": "^3.0.0", + "array-uniq": "^1.0.3", + "deepmerge": "^2.1.0", + "strip-ansi": "^4.0.0", + "super-split": "^1.1.0" + } + }, "parseurl": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", @@ -2881,6 +3102,16 @@ "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" }, + "plist": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/plist/-/plist-3.0.1.tgz", + "integrity": "sha512-GpgvHHocGRyQm74b6FWEZZVRroHKE1I0/BTjAmySaohK+cUn+hZpbqXkc3KWgW3gQYkqcQej35FohcT0FRlkRQ==", + "requires": { + "base64-js": "^1.2.3", + "xmlbuilder": "^9.0.7", + "xmldom": "0.1.x" + } + }, "posix-character-classes": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", @@ -3136,9 +3367,9 @@ } }, "repeat-element": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", - "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=" + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==" }, "repeat-string": { "version": "1.6.1", @@ -3172,6 +3403,25 @@ "uuid": "^3.3.2" } }, + "request-promise": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/request-promise/-/request-promise-4.2.2.tgz", + "integrity": "sha1-0epG1lSm7k+O5qT+oQGMIpEZBLQ=", + "requires": { + "bluebird": "^3.5.0", + "request-promise-core": "1.1.1", + "stealthy-require": "^1.1.0", + "tough-cookie": ">=2.3.3" + } + }, + "request-promise-core": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.1.tgz", + "integrity": "sha1-Pu4AssWqgyOc+wTFcA2jb4HNCLY=", + "requires": { + "lodash": "^4.13.1" + } + }, "resolve-url": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", @@ -3196,6 +3446,11 @@ "through2": "^2.0.0" } }, + "rgb-hex": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/rgb-hex/-/rgb-hex-2.1.0.tgz", + "integrity": "sha1-x3PF/iJoolV42SU5qCp6XOU77aY=" + }, "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", @@ -3232,13 +3487,6 @@ "on-finished": "~2.3.0", "range-parser": "~1.2.0", "statuses": "~1.4.0" - }, - "dependencies": { - "mime": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", - "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==" - } } }, "serve-static": { @@ -3472,6 +3720,11 @@ "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==" }, + "stealthy-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", + "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=" + }, "stream-events": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/stream-events/-/stream-events-1.0.4.tgz", @@ -3499,6 +3752,21 @@ "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", "strip-ansi": "^3.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "^2.0.0" + } + } } }, "string_decoder": { @@ -3518,11 +3786,11 @@ } }, "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "requires": { - "ansi-regex": "^2.0.0" + "ansi-regex": "^3.0.0" } }, "stubs": { @@ -3530,6 +3798,19 @@ "resolved": "https://registry.npmjs.org/stubs/-/stubs-3.0.0.tgz", "integrity": "sha1-6NK6H6nJBXAwPAMLaQD31fiavls=" }, + "super-split": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/super-split/-/super-split-1.1.0.tgz", + "integrity": "sha512-I4bA5mgcb6Fw5UJ+EkpzqXfiuvVGS/7MuND+oBxNFmxu3ugLNrdIatzBLfhFRMVMLxgSsRy+TjIktgkF9RFSNQ==" + }, + "supports-color": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", + "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", + "requires": { + "has-flag": "^3.0.0" + } + }, "through2": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", @@ -3823,6 +4104,23 @@ "requires": { "string-width": "^1.0.1", "strip-ansi": "^3.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "optional": true + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "optional": true, + "requires": { + "ansi-regex": "^2.0.0" + } + } } }, "wrappy": { @@ -3846,6 +4144,16 @@ "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=" }, + "xmlbuilder": { + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", + "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=" + }, + "xmldom": { + "version": "0.1.27", + "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.27.tgz", + "integrity": "sha1-1QH5ezvbQDr4757MIFcxh6rawOk=" + }, "xmlhttprequest": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz", diff --git a/functions/package.json b/functions/package.json index 8fe3139..89d267a 100644 --- a/functions/package.json +++ b/functions/package.json @@ -12,15 +12,15 @@ "node": "8" }, "dependencies": { - "ansi-to-svg": "github:StephanGerbeth/ansi-to-svg", - "emphasize": "^2.0.0", - "highlight.js": "^9.12.0", - "request": "^2.88.0", - "request-promise": "^4.2.2", + "@js-basics/code-snippet-to-svg": "^1.0.0", "cors": "^2.8.4", "express": "^4.16.3", "firebase-admin": "~6.0.0", - "firebase-functions": "^2.0.3" + "firebase-functions": "^2.0.3", + "request": "^2.88.0", + "request-promise": "^4.2.2" }, - "private": true + "optionalDependencies": { + "ansi-to-svg": "github:StephanGerbeth/ansi-to-svg" + } } diff --git a/package-lock.json b/package-lock.json index 596ddac..c1fe791 100755 --- a/package-lock.json +++ b/package-lock.json @@ -5724,14 +5724,12 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, - "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -5746,20 +5744,17 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "core-util-is": { "version": "1.0.2", @@ -5876,8 +5871,7 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "ini": { "version": "1.3.5", @@ -5889,7 +5883,6 @@ "version": "1.0.0", "bundled": true, "dev": true, - "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -5904,7 +5897,6 @@ "version": "3.0.4", "bundled": true, "dev": true, - "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -5912,14 +5904,12 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "minipass": { "version": "2.2.4", "bundled": true, "dev": true, - "optional": true, "requires": { "safe-buffer": "^5.1.1", "yallist": "^3.0.0" @@ -5938,7 +5928,6 @@ "version": "0.5.1", "bundled": true, "dev": true, - "optional": true, "requires": { "minimist": "0.0.8" } @@ -6019,8 +6008,7 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "object-assign": { "version": "4.1.1", @@ -6032,7 +6020,6 @@ "version": "1.4.0", "bundled": true, "dev": true, - "optional": true, "requires": { "wrappy": "1" } @@ -6154,7 +6141,6 @@ "version": "1.0.2", "bundled": true, "dev": true, - "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", diff --git a/src/index.js b/src/index.js index 397ba6b..8bcfb12 100755 --- a/src/index.js +++ b/src/index.js @@ -1,7 +1,5 @@ const ansiToSVG = require('ansi-to-svg'); const emphasize = require('emphasize'); -// const fs = require('fs'); -// const request = require('request'); function extract(content, min = 1, max) { return content @@ -17,17 +15,3 @@ function codeToSVG(code, min, max) { } module.exports = codeToSVG; - -// request( -// 'https://raw.githubusercontent.com/GrabarzUndPartner/gp-vue-boilerplate/master/src/store/index.js', -// (error, resp) => { -// const result = codeToSVG(resp.body, 3, 7); -// fs.writeFile('./test.svg', result, (err) => { -// if (err) { -// return console.log(err); -// } - -// return console.log('The file was saved!'); -// }); -// } -// ); diff --git a/test.svg b/test.svg deleted file mode 100644 index 8c7f56d..0000000 --- a/test.svg +++ /dev/null @@ -1 +0,0 @@ - locales: ['de', 'en']});export const mutations = { SET_LANG(state, locale) { \ No newline at end of file From 9715bb9b04420731bf452c23fc05034a0b66a848 Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Sun, 19 Aug 2018 17:26:56 +0000 Subject: [PATCH 5/5] chore(release): 1.1.0 [skip ci] # [1.1.0](https://github.com/basics/code-snippet-to-svg/compare/v1.0.0...v1.1.0) (2018-08-19) ### Features * **cleanup:** cleaned up code ([f683f6c](https://github.com/basics/code-snippet-to-svg/commit/f683f6c)) --- CHANGELOG.md | 7 +++++++ package-lock.json | 30 ++++++++++++++++++++++-------- package.json | 2 +- 3 files changed, 30 insertions(+), 9 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index afaefe3..1da8211 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +# [1.1.0](https://github.com/basics/code-snippet-to-svg/compare/v1.0.0...v1.1.0) (2018-08-19) + + +### Features + +* **cleanup:** cleaned up code ([f683f6c](https://github.com/basics/code-snippet-to-svg/commit/f683f6c)) + # 1.0.0 (2018-08-19) diff --git a/package-lock.json b/package-lock.json index c1fe791..2146458 100755 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "@js-basics/code-snippet-to-svg", - "version": "1.0.0", + "version": "1.1.0", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -5724,12 +5724,14 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, + "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -5744,17 +5746,20 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -5871,7 +5876,8 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -5883,6 +5889,7 @@ "version": "1.0.0", "bundled": true, "dev": true, + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -5897,6 +5904,7 @@ "version": "3.0.4", "bundled": true, "dev": true, + "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -5904,12 +5912,14 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.2.4", "bundled": true, "dev": true, + "optional": true, "requires": { "safe-buffer": "^5.1.1", "yallist": "^3.0.0" @@ -5928,6 +5938,7 @@ "version": "0.5.1", "bundled": true, "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -6008,7 +6019,8 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -6020,6 +6032,7 @@ "version": "1.4.0", "bundled": true, "dev": true, + "optional": true, "requires": { "wrappy": "1" } @@ -6141,6 +6154,7 @@ "version": "1.0.2", "bundled": true, "dev": true, + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", diff --git a/package.json b/package.json index da2131a..73984e2 100755 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@js-basics/code-snippet-to-svg", - "version": "1.0.0", + "version": "1.1.0", "description": "service to convert code (syntax highlighted) into svg by url", "main": "./lib/index.js", "directories": {