@azuro-org/images-generator 1.0.6 → 1.0.8

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.
package/README.md CHANGED
@@ -36,8 +36,8 @@ type PuppeteerInitialOptions = {
36
36
  }
37
37
 
38
38
  generateImage({
39
- output?: string // output filepath
40
- filename?: string // default "image"
39
+ output?: string // the folder path where the image will be generated
40
+ filename?: string // image name, default is "image"
41
41
  props: any
42
42
  modifyPuppeteerOptions?(options: PuppeteerInitialOptions): PuppeteerOptions
43
43
  })
@@ -47,7 +47,7 @@ generateImage({
47
47
  # Examples
48
48
 
49
49
  <details>
50
- <summary><h3>Bet Opengraph</h3></summary>
50
+ <summary><b>Bet Opengraph</b></summary>
51
51
  <p>
52
52
 
53
53
  ```typescript
@@ -80,13 +80,13 @@ generateImage({
80
80
  ### Result
81
81
 
82
82
  <p>
83
- <img src="./src/templates/bet-og/example.jpeg" width="600" />
83
+ <img src="https://github.com/Azuro-protocol/images-generator/raw/main/src/templates/bet-og/example.jpeg" width="600" />
84
84
  </p>
85
85
  </p>
86
86
  </details>
87
87
 
88
88
  <details>
89
- <summary><h3>Bet NFT</h3></summary>
89
+ <summary><b>Bet NFT</b></summary>
90
90
  <p>
91
91
 
92
92
  ```typescript
@@ -119,13 +119,13 @@ generateImage({
119
119
  ### Result
120
120
 
121
121
  <p>
122
- <img src="./src/templates/bet-nft/example.png" width="255" />
122
+ <img src="https://github.com/Azuro-protocol/images-generator/raw/main/src/templates/bet-nft/example.png" width="255" />
123
123
  </p>
124
124
  </p>
125
125
  </details>
126
126
 
127
127
  <details>
128
- <summary><h3>Bet Opengraph</h3></summary>
128
+ <summary><b>Bet Opengraph</b></summary>
129
129
  <p>
130
130
 
131
131
  ```typescript
@@ -144,7 +144,7 @@ generateImage({
144
144
  ### Result
145
145
 
146
146
  <p>
147
- <img src="./src/templates/freebet/example.png" width="416" />
147
+ <img src="https://github.com/Azuro-protocol/images-generator/raw/main/src/templates/freebet/example.png" width="416" />
148
148
  </p>
149
149
  </p>
150
150
  </details>
package/dist/index.es.js CHANGED
@@ -1,4 +1,4 @@
1
- import puppeteer from'puppeteer';/******************************************************************************
1
+ import fs from'fs';import puppeteer from'puppeteer';/******************************************************************************
2
2
  Copyright (c) Microsoft Corporation.
3
3
 
4
4
  Permission to use, copy, modify, and/or distribute this software for any
@@ -79,10 +79,16 @@ function __generator(thisArg, body) {
79
79
  return [4 /*yield*/, browser.newPage()];
80
80
  case 3:
81
81
  page = _d.sent();
82
- return [4 /*yield*/, page.setViewport({ width: width, height: height, deviceScaleFactor: scaleFactor })];
82
+ return [4 /*yield*/, page.setViewport({
83
+ width: width,
84
+ height: height,
85
+ deviceScaleFactor: scaleFactor,
86
+ })];
83
87
  case 4:
84
88
  _d.sent();
85
- return [4 /*yield*/, page.setContent(html)];
89
+ return [4 /*yield*/, page.goto("data:text/html;charset=UTF-8,".concat(encodeURIComponent(html)), {
90
+ waitUntil: 'networkidle0',
91
+ })];
86
92
  case 5:
87
93
  _d.sent();
88
94
  return [4 /*yield*/, page.$('body')
@@ -97,6 +103,9 @@ function __generator(thisArg, body) {
97
103
  _d.label = 8;
98
104
  case 8:
99
105
  if (!output) return [3 /*break*/, 12];
106
+ if (!fs.existsSync(output)) {
107
+ fs.mkdirSync(output);
108
+ }
100
109
  filePath = "".concat(output.replace(/\/$/, ''), "/").concat(filename.replace(/\..+$/, ''), ".").concat(type);
101
110
  return [4 /*yield*/, content.screenshot({ path: filePath })];
102
111
  case 9:
@@ -4,17 +4,8 @@
4
4
  <meta charset="UTF-8">
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
6
  <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet" />
7
+ <link href="//raw.githubusercontent.com/Azuro-protocol/public-assets/main/fonts/fivo-sans-modern/style.css" rel="stylesheet" />
7
8
  <style>
8
- @font-face {
9
- font-weight: 700;
10
- font-family: 'Fivo Sans Modern';
11
- font-style: normal;
12
- src: url('/fonts/fivo-sans-modern/bold.woff2') format('woff2'),
13
- url('/fonts/fivo-sans-modern/bold.woff') format('woff');
14
- font-display: swap;
15
- unicode-range: U+000-5FF; /* Latin glyphs */
16
- }
17
-
18
9
  html {
19
10
  font-family: 'Inter', sans-serif;
20
11
  font-weight: 500;
@@ -1,6 +1,6 @@
1
1
  import { type Template } from '../../utils';
2
2
  export type Props = {
3
- amount: number | string;
3
+ amount: string;
4
4
  date: string;
5
5
  };
6
6
  declare const template: Template;
@@ -10,6 +10,7 @@
10
10
  height: 250px;
11
11
  margin: 0;
12
12
  padding: 0;
13
+ background-color: #2d2f34;
13
14
  }
14
15
 
15
16
  .image {
@@ -17,13 +18,12 @@
17
18
  height: 250px;
18
19
  padding-top: 75px;
19
20
  padding-left: 30px;
20
- font-family: 'Fivo Sans Modern';
21
+ font-family: 'Fivo Sans Modern', sans-serif;
21
22
  font-weight: 700;
22
23
  background-size: cover;
23
24
  background-position: center;
24
25
  overflow: hidden;
25
26
  box-sizing: border-box;
26
- border-radius: 10px;
27
27
  }
28
28
 
29
29
  .amount {
@@ -54,7 +54,7 @@
54
54
  <body>
55
55
  <div class="image" style="background-image: url({bgImage});">
56
56
  <div class="amount">
57
- <div class="text-gradient">{amount} xDAI</div>
57
+ <div class="text-gradient">{amount}</div>
58
58
  <span>freebet!</span>
59
59
  </div>
60
60
  <div class="date">Valid until {date}</div>
@@ -1,7 +1,7 @@
1
1
  import {_ as __awaiter,a as __generator,g as getFile,b as getBase64Image}from'../../index-401c8546.js';import path from'path';import'fs';import'http';import'https';import'url';import'stream';import'assert';import'tty';import'util';import'os';import'zlib';var template = {
2
2
  width: 416,
3
3
  height: 250,
4
- type: 'png',
4
+ type: 'jpeg',
5
5
  scaleFactor: 2,
6
6
  html: function (props) { return __awaiter(void 0, void 0, void 0, function () {
7
7
  var amount, date, html, bgImage;
@@ -11,7 +11,7 @@ import {_ as __awaiter,a as __generator,g as getFile,b as getBase64Image}from'..
11
11
  bgImage = getBase64Image(path.resolve(__dirname, 'images/bg.png'));
12
12
  return [2 /*return*/, html
13
13
  .replace('{bgImage}', bgImage)
14
- .replace('{amount}', String(amount))
14
+ .replace('{amount}', amount)
15
15
  .replace('{date}', date)];
16
16
  });
17
17
  }); }
package/lib/index.js CHANGED
@@ -1,4 +1,4 @@
1
- 'use strict';Object.defineProperty(exports,'__esModule',{value:true});var puppeteer=require('puppeteer');function _interopDefaultLegacy(e){return e&&typeof e==='object'&&'default'in e?e:{'default':e}}var puppeteer__default=/*#__PURE__*/_interopDefaultLegacy(puppeteer);/******************************************************************************
1
+ 'use strict';Object.defineProperty(exports,'__esModule',{value:true});var fs=require('fs'),puppeteer=require('puppeteer');function _interopDefaultLegacy(e){return e&&typeof e==='object'&&'default'in e?e:{'default':e}}var fs__default=/*#__PURE__*/_interopDefaultLegacy(fs);var puppeteer__default=/*#__PURE__*/_interopDefaultLegacy(puppeteer);/******************************************************************************
2
2
  Copyright (c) Microsoft Corporation.
3
3
 
4
4
  Permission to use, copy, modify, and/or distribute this software for any
@@ -79,10 +79,16 @@ function __generator(thisArg, body) {
79
79
  return [4 /*yield*/, browser.newPage()];
80
80
  case 3:
81
81
  page = _d.sent();
82
- return [4 /*yield*/, page.setViewport({ width: width, height: height, deviceScaleFactor: scaleFactor })];
82
+ return [4 /*yield*/, page.setViewport({
83
+ width: width,
84
+ height: height,
85
+ deviceScaleFactor: scaleFactor,
86
+ })];
83
87
  case 4:
84
88
  _d.sent();
85
- return [4 /*yield*/, page.setContent(html)];
89
+ return [4 /*yield*/, page.goto("data:text/html;charset=UTF-8,".concat(encodeURIComponent(html)), {
90
+ waitUntil: 'networkidle0',
91
+ })];
86
92
  case 5:
87
93
  _d.sent();
88
94
  return [4 /*yield*/, page.$('body')
@@ -97,6 +103,9 @@ function __generator(thisArg, body) {
97
103
  _d.label = 8;
98
104
  case 8:
99
105
  if (!output) return [3 /*break*/, 12];
106
+ if (!fs__default["default"].existsSync(output)) {
107
+ fs__default["default"].mkdirSync(output);
108
+ }
100
109
  filePath = "".concat(output.replace(/\/$/, ''), "/").concat(filename.replace(/\..+$/, ''), ".").concat(type);
101
110
  return [4 /*yield*/, content.screenshot({ path: filePath })];
102
111
  case 9:
@@ -4,17 +4,8 @@
4
4
  <meta charset="UTF-8">
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
6
  <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet" />
7
+ <link href="//raw.githubusercontent.com/Azuro-protocol/public-assets/main/fonts/fivo-sans-modern/style.css" rel="stylesheet" />
7
8
  <style>
8
- @font-face {
9
- font-weight: 700;
10
- font-family: 'Fivo Sans Modern';
11
- font-style: normal;
12
- src: url('/fonts/fivo-sans-modern/bold.woff2') format('woff2'),
13
- url('/fonts/fivo-sans-modern/bold.woff') format('woff');
14
- font-display: swap;
15
- unicode-range: U+000-5FF; /* Latin glyphs */
16
- }
17
-
18
9
  html {
19
10
  font-family: 'Inter', sans-serif;
20
11
  font-weight: 500;
@@ -1,6 +1,6 @@
1
1
  import { type Template } from '../../utils';
2
2
  export type Props = {
3
- amount: number | string;
3
+ amount: string;
4
4
  date: string;
5
5
  };
6
6
  declare const template: Template;
@@ -10,6 +10,7 @@
10
10
  height: 250px;
11
11
  margin: 0;
12
12
  padding: 0;
13
+ background-color: #2d2f34;
13
14
  }
14
15
 
15
16
  .image {
@@ -17,13 +18,12 @@
17
18
  height: 250px;
18
19
  padding-top: 75px;
19
20
  padding-left: 30px;
20
- font-family: 'Fivo Sans Modern';
21
+ font-family: 'Fivo Sans Modern', sans-serif;
21
22
  font-weight: 700;
22
23
  background-size: cover;
23
24
  background-position: center;
24
25
  overflow: hidden;
25
26
  box-sizing: border-box;
26
- border-radius: 10px;
27
27
  }
28
28
 
29
29
  .amount {
@@ -54,7 +54,7 @@
54
54
  <body>
55
55
  <div class="image" style="background-image: url({bgImage});">
56
56
  <div class="amount">
57
- <div class="text-gradient">{amount} xDAI</div>
57
+ <div class="text-gradient">{amount}</div>
58
58
  <span>freebet!</span>
59
59
  </div>
60
60
  <div class="date">Valid until {date}</div>
@@ -1,7 +1,7 @@
1
1
  'use strict';var index=require('../../index-7f0cb09b.js'),path=require('path');require('fs'),require('http'),require('https'),require('url'),require('stream'),require('assert'),require('tty'),require('util'),require('os'),require('zlib');function _interopDefaultLegacy(e){return e&&typeof e==='object'&&'default'in e?e:{'default':e}}var path__default=/*#__PURE__*/_interopDefaultLegacy(path);var template = {
2
2
  width: 416,
3
3
  height: 250,
4
- type: 'png',
4
+ type: 'jpeg',
5
5
  scaleFactor: 2,
6
6
  html: function (props) { return index._(void 0, void 0, void 0, function () {
7
7
  var amount, date, html, bgImage;
@@ -11,7 +11,7 @@
11
11
  bgImage = index.b(path__default["default"].resolve(__dirname, 'images/bg.png'));
12
12
  return [2 /*return*/, html
13
13
  .replace('{bgImage}', bgImage)
14
- .replace('{amount}', String(amount))
14
+ .replace('{amount}', amount)
15
15
  .replace('{date}', date)];
16
16
  });
17
17
  }); }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@azuro-org/images-generator",
3
- "version": "1.0.6",
3
+ "version": "1.0.8",
4
4
  "license": "ISC",
5
5
  "engines": {
6
6
  "node": "=16.15.1",
@@ -10,10 +10,11 @@
10
10
  "main": "lib/index.js",
11
11
  "types": "lib/index.d.ts",
12
12
  "scripts": {
13
+ "test": "rimraf ./test/images && node ./test",
13
14
  "dev": "rollup -c ./rollup.config.js -w",
14
15
  "build": "rimraf ./dist && rimraf ./lib && rollup -c ./rollup.config.js --compact",
15
16
  "build-and-test": "npm run build && npm run test",
16
- "prepublish": "npm run build"
17
+ "prepublishOnly": "npm run build"
17
18
  },
18
19
  "dependencies": {
19
20
  "axios": "^0.26.1",