@hellkite/pipkin 0.6.1 → 0.7.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.
Files changed (52) hide show
  1. package/build/src/lib/template.d.ts +9 -10
  2. package/build/src/lib/template.js +75 -40
  3. package/build/src/lib/template.js.map +1 -1
  4. package/build/src/lib/types/containers.d.ts +14 -2
  5. package/build/src/lib/types/containers.js.map +1 -1
  6. package/build/src/lib/types/hypernode.d.ts +2 -0
  7. package/build/src/lib/types/hypernode.js +3 -0
  8. package/build/src/lib/types/hypernode.js.map +1 -0
  9. package/build/src/lib/types/image.d.ts +5 -0
  10. package/build/src/lib/types/image.js.map +1 -1
  11. package/build/src/lib/types/index.d.ts +1 -0
  12. package/build/src/lib/types/index.js +1 -0
  13. package/build/src/lib/types/index.js.map +1 -1
  14. package/build/src/lib/types/text.d.ts +11 -2
  15. package/build/src/lib/types/text.js +4 -0
  16. package/build/src/lib/types/text.js.map +1 -1
  17. package/build/src/lib/utils/container.js +10 -45
  18. package/build/src/lib/utils/container.js.map +1 -1
  19. package/build/src/lib/utils/htmlToImage.d.ts +2 -3
  20. package/build/src/lib/utils/htmlToImage.js.map +1 -1
  21. package/build/src/lib/utils/index.d.ts +2 -3
  22. package/build/src/lib/utils/index.js +2 -3
  23. package/build/src/lib/utils/index.js.map +1 -1
  24. package/build/src/lib/utils/placeBoundingBox.d.ts +2 -0
  25. package/build/src/lib/utils/placeBoundingBox.js +21 -0
  26. package/build/src/lib/utils/placeBoundingBox.js.map +1 -0
  27. package/build/src/lib/utils/placeImage.d.ts +7 -6
  28. package/build/src/lib/utils/placeImage.js +20 -20
  29. package/build/src/lib/utils/placeImage.js.map +1 -1
  30. package/build/src/lib/utils/placeText.d.ts +14 -0
  31. package/build/src/lib/utils/placeText.js +69 -0
  32. package/build/src/lib/utils/placeText.js.map +1 -0
  33. package/build/src/lib/utils/renderText.js +1 -0
  34. package/build/src/lib/utils/renderText.js.map +1 -1
  35. package/build/src/test.js +36 -10
  36. package/build/src/test.js.map +1 -1
  37. package/package.json +3 -1
  38. package/roadmap.md +3 -2
  39. package/src/lib/template.ts +100 -70
  40. package/src/lib/types/containers.ts +22 -4
  41. package/src/lib/types/hypernode.ts +4 -0
  42. package/src/lib/types/image.ts +6 -0
  43. package/src/lib/types/index.ts +1 -0
  44. package/src/lib/types/text.ts +18 -4
  45. package/src/lib/utils/container.ts +13 -70
  46. package/src/lib/utils/htmlToImage.ts +3 -3
  47. package/src/lib/utils/index.ts +2 -3
  48. package/src/lib/utils/{drawBoundingBox.ts → placeBoundingBox.ts} +3 -9
  49. package/src/lib/utils/placeImage.ts +34 -27
  50. package/src/lib/utils/placeText.ts +110 -0
  51. package/src/lib/utils/buildFontString.ts +0 -17
  52. package/src/lib/utils/renderText.ts +0 -105
@@ -1,13 +1,14 @@
1
- import { ImageLayerOptions, ImageType, BoundingBox } from '../types';
1
+ import { ImageLayerOptions, ImageType, BoundingBox, HyperNode, ImageLayerSpecificOptions } from '../types';
2
2
  import { RequiredDeep } from 'type-fest';
3
3
  type PlaceImageProps<EntryType extends Record<string, string>> = {
4
4
  image: ImageType;
5
5
  box: BoundingBox;
6
- backgroundSize: {
7
- width: number;
8
- height: number;
9
- };
10
6
  options: RequiredDeep<ImageLayerOptions<EntryType>>;
11
7
  };
12
- export declare const placeImage: <EntryType extends Record<string, string>>({ image, box, backgroundSize, options, }: PlaceImageProps<EntryType>) => Promise<ImageType>;
8
+ export declare const placeImage: <EntryType extends Record<string, string>>({ image, box, options, }: PlaceImageProps<EntryType>) => Promise<HyperNode>;
9
+ type PrepareImageProps<EntryType extends Record<string, string>> = {
10
+ image: ImageType;
11
+ options: RequiredDeep<ImageLayerSpecificOptions<EntryType>>;
12
+ };
13
+ export declare const prepareImage: <EntryType extends Record<string, string>>({ image, options, }: PrepareImageProps<EntryType>) => Promise<HyperNode>;
13
14
  export {};
@@ -9,30 +9,30 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.placeImage = void 0;
12
+ exports.prepareImage = exports.placeImage = void 0;
13
13
  const virtual_dom_1 = require("virtual-dom");
14
14
  const toPx_1 = require("./toPx");
15
15
  const types_1 = require("../types");
16
- const htmlToImage_1 = require("./htmlToImage");
17
- const placeImage = (_a) => __awaiter(void 0, [_a], void 0, function* ({ image, box, backgroundSize, options, }) {
18
- const imageBase64 = yield image.getBase64('image/png');
19
- const objectFit = types_1.SCALE_MODE_TO_OBJECT_FIT[options.scale];
20
- const document = (0, virtual_dom_1.h)('div', {
16
+ const placeImage = (_a) => __awaiter(void 0, [_a], void 0, function* ({ image, box, options, }) {
17
+ return (0, virtual_dom_1.h)('div', {
21
18
  style: Object.assign({ display: 'flex', position: 'absolute', scale: 1, justifyContent: options.justifyContent, alignItems: options.alignItems }, (0, toPx_1.boundingBoxToPx)(box)),
22
- }, [
23
- (0, virtual_dom_1.h)('img', {
24
- style: {
25
- objectFit,
26
- flex: '1 1 auto',
27
- minWidth: 0,
28
- minHeight: 0,
29
- maxWidth: '100%',
30
- maxHeight: '100%',
31
- },
32
- src: imageBase64,
33
- }, []),
34
- ]);
35
- return (0, htmlToImage_1.htmlToImage)(document, backgroundSize);
19
+ }, [yield (0, exports.prepareImage)({ image, options })]);
36
20
  });
37
21
  exports.placeImage = placeImage;
22
+ const prepareImage = (_a) => __awaiter(void 0, [_a], void 0, function* ({ image, options, }) {
23
+ const imageBase64 = yield image.getBase64('image/png');
24
+ const objectFit = types_1.SCALE_MODE_TO_OBJECT_FIT[options.scale];
25
+ return (0, virtual_dom_1.h)('img', {
26
+ style: {
27
+ objectFit,
28
+ flex: '1 1 auto',
29
+ minWidth: 0,
30
+ minHeight: 0,
31
+ maxWidth: '100%',
32
+ maxHeight: '100%',
33
+ },
34
+ src: imageBase64,
35
+ }, []);
36
+ });
37
+ exports.prepareImage = prepareImage;
38
38
  //# sourceMappingURL=placeImage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"placeImage.js","sourceRoot":"","sources":["../../../../src/lib/utils/placeImage.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAgC;AAChC,iCAAyC;AACzC,oCAKkB;AAClB,+CAA4C;AAUrC,MAAM,UAAU,GAAG,KAKyB,EAAE,4CALsB,EACvE,KAAK,EACL,GAAG,EACH,cAAc,EACd,OAAO,GACkB;IACzB,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IACvD,MAAM,SAAS,GAAG,gCAAwB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAE1D,MAAM,QAAQ,GAAG,IAAA,eAAC,EACd,KAAK,EACL;QACI,KAAK,kBACD,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,UAAU,EACpB,KAAK,EAAE,CAAC,EAER,cAAc,EAAE,OAAO,CAAC,cAAc,EACtC,UAAU,EAAE,OAAO,CAAC,UAAU,IAE3B,IAAA,sBAAe,EAAC,GAAG,CAAC,CAC1B;KACJ,EACD;QACI,IAAA,eAAC,EACG,KAAK,EACL;YACI,KAAK,EAAE;gBACH,SAAS;gBACT,IAAI,EAAE,UAAU;gBAChB,QAAQ,EAAE,CAAC;gBACX,SAAS,EAAE,CAAC;gBACZ,QAAQ,EAAE,MAAM;gBAChB,SAAS,EAAE,MAAM;aACpB;YACD,GAAG,EAAE,WAAW;SACnB,EACD,EAAE,CACL;KACJ,CACJ,CAAC;IAEF,OAAO,IAAA,yBAAW,EAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;AACjD,CAAC,CAAA,CAAA;AA3CY,QAAA,UAAU,cA2CtB"}
1
+ {"version":3,"file":"placeImage.js","sourceRoot":"","sources":["../../../../src/lib/utils/placeImage.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAgC;AAChC,iCAAyC;AACzC,oCAOkB;AASX,MAAM,UAAU,GAAG,KAIyB,EAAE,4CAJsB,EACvE,KAAK,EACL,GAAG,EACH,OAAO,GACkB;IACzB,OAAO,IAAA,eAAC,EACJ,KAAK,EACL;QACI,KAAK,kBACD,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,UAAU,EACpB,KAAK,EAAE,CAAC,EAER,cAAc,EAAE,OAAO,CAAC,cAAc,EACtC,UAAU,EAAE,OAAO,CAAC,UAAU,IAE3B,IAAA,sBAAe,EAAC,GAAG,CAAC,CAC1B;KACJ,EACD,CAAC,MAAM,IAAA,oBAAY,EAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,CAC3C,CAAC;AACN,CAAC,CAAA,CAAC;AArBW,QAAA,UAAU,cAqBrB;AAOK,MAAM,YAAY,GAAG,KAGyB,EAAE,4CAHsB,EACzE,KAAK,EACL,OAAO,GACoB;IAC3B,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IACvD,MAAM,SAAS,GAAG,gCAAwB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAE1D,OAAO,IAAA,eAAC,EACJ,KAAK,EACL;QACI,KAAK,EAAE;YACH,SAAS;YACT,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE,CAAC;YACX,SAAS,EAAE,CAAC;YACZ,QAAQ,EAAE,MAAM;YAChB,SAAS,EAAE,MAAM;SACpB;QACD,GAAG,EAAE,WAAW;KACnB,EACD,EAAE,CACL,CAAC;AACN,CAAC,CAAA,CAAC;AAtBW,QAAA,YAAY,gBAsBvB"}
@@ -0,0 +1,14 @@
1
+ import { BoundingBox, TextLayerOptions, HyperNode, TextLayerSpecificOptions } from '../types';
2
+ import { RequiredDeep } from 'type-fest';
3
+ type PlaceTextProps<EntryType extends Record<string, string>> = {
4
+ text: string;
5
+ box: BoundingBox;
6
+ options: RequiredDeep<TextLayerOptions<EntryType>>;
7
+ };
8
+ export declare const placeText: <EntryType extends Record<string, string>>({ text, box, options, }: PlaceTextProps<EntryType>) => Promise<HyperNode>;
9
+ type PrepareTextProps<EntryType extends Record<string, string>> = {
10
+ text: string;
11
+ options: RequiredDeep<TextLayerSpecificOptions<EntryType>>;
12
+ };
13
+ export declare const prepareText: <EntryType extends Record<string, string>>({ text, options, }: PrepareTextProps<EntryType>) => Promise<HyperNode>;
14
+ export {};
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.prepareText = exports.placeText = void 0;
13
+ const virtual_dom_1 = require("virtual-dom");
14
+ const toPx_1 = require("./toPx");
15
+ const placeText = (_a) => __awaiter(void 0, [_a], void 0, function* ({ text, box, options, }) {
16
+ return (0, virtual_dom_1.h)('div', {
17
+ style: Object.assign({ display: 'flex', overflow: 'visible', position: 'absolute', justifyContent: options.justifyContent, alignItems: options.alignItems }, (0, toPx_1.boundingBoxToPx)(box)),
18
+ }, [
19
+ yield (0, exports.prepareText)({
20
+ text,
21
+ options,
22
+ }),
23
+ ]);
24
+ });
25
+ exports.placeText = placeText;
26
+ const prepareText = (_a) => __awaiter(void 0, [_a], void 0, function* ({ text, options, }) {
27
+ let textChildren = [text];
28
+ for (const [word, image] of Object.entries(options.replacement)) {
29
+ const regex = new RegExp(word, 'gi');
30
+ const imageBase64 = yield image.getBase64('image/png');
31
+ let tmpChildren = [];
32
+ for (const textSegment of textChildren) {
33
+ if (typeof textSegment !== 'string') {
34
+ continue;
35
+ }
36
+ const parts = textSegment.split(regex);
37
+ for (let index = 0; index < parts.length; index++) {
38
+ if (index > 0) {
39
+ tmpChildren.push((0, virtual_dom_1.h)('img', {
40
+ style: {
41
+ display: 'inline',
42
+ verticalAlign: 'middle',
43
+ height: (0, toPx_1.toPx)(options.font.size),
44
+ width: 'auto',
45
+ },
46
+ src: imageBase64,
47
+ }, []));
48
+ }
49
+ tmpChildren.push(parts[index]);
50
+ }
51
+ }
52
+ textChildren = tmpChildren;
53
+ }
54
+ return (0, virtual_dom_1.h)('div', {
55
+ style: {
56
+ overflow: 'visible',
57
+ overflowWrap: 'word-wrap',
58
+ whiteSpace: 'normal',
59
+ color: options.color,
60
+ fontFamily: options.font.family,
61
+ fontSize: options.font.size,
62
+ fontStyle: options.font.italic ? 'italic' : undefined,
63
+ fontWeight: options.font.bold ? 'bold' : undefined,
64
+ '-webkit-text-stroke': `${options.border.width}px ${options.border.color}`,
65
+ },
66
+ }, textChildren);
67
+ });
68
+ exports.prepareText = prepareText;
69
+ //# sourceMappingURL=placeText.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"placeText.js","sourceRoot":"","sources":["../../../../src/lib/utils/placeText.ts"],"names":[],"mappings":"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"}
@@ -54,6 +54,7 @@ const renderText = (text, box, backgroundSize, options, fonts) => __awaiter(void
54
54
  fontSize: options.font.size,
55
55
  fontStyle: options.font.italic ? 'italic' : undefined,
56
56
  fontWeight: options.font.bold ? 'bold' : undefined,
57
+ '-webkit-text-stroke': `${options.border.width}px ${options.border.color}`
57
58
  },
58
59
  }, textChildren),
59
60
  ]);
@@ -1 +1 @@
1
- {"version":3,"file":"renderText.js","sourceRoot":"","sources":["../../../../src/lib/utils/renderText.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"renderText.js","sourceRoot":"","sources":["../../../../src/lib/utils/renderText.ts"],"names":[],"mappings":"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"}
package/build/src/test.js CHANGED
@@ -17,7 +17,7 @@ const lib_1 = require("./lib");
17
17
  const result = yield lib_1.Template.new({
18
18
  defaultFontFamily: 'branela',
19
19
  defaultAssetsPath: 'assets',
20
- color: 0xC3C3C3FF,
20
+ color: 0xc3c3c3ff,
21
21
  })
22
22
  .text({ key: 'title' }, {
23
23
  left: 25,
@@ -29,6 +29,10 @@ const lib_1 = require("./lib");
29
29
  size: 48,
30
30
  family: 'blackflag',
31
31
  },
32
+ border: {
33
+ width: 1,
34
+ color: 'red',
35
+ },
32
36
  })
33
37
  .font('assets/BlackFlag.ttf', 'blackflag')
34
38
  .text({ key: 'subtitle' }, {
@@ -40,8 +44,12 @@ const lib_1 = require("./lib");
40
44
  font: {
41
45
  size: 38,
42
46
  },
43
- color: 'purple',
44
- skip: (entry) => entry.title.toLowerCase() === 'luigi'
47
+ color: 'pink',
48
+ border: {
49
+ width: 2,
50
+ color: 'purple',
51
+ },
52
+ skip: entry => entry.title.toLowerCase() === 'luigi',
45
53
  })
46
54
  .font('assets/branela.otf', 'branela')
47
55
  .image({ pathFn: entry => `${entry.title.toLowerCase()}.png` }, { left: 25, top: 225, width: 700, height: 700 }, {
@@ -61,7 +69,12 @@ const lib_1 = require("./lib");
61
69
  .replace(['Fireball'], fireball)
62
70
  .build(),
63
71
  })
64
- .hbox(() => Promise.resolve([luigi.clone(), luigi.clone()]), {
72
+ .hbox(() => __awaiter(void 0, void 0, void 0, function* () {
73
+ return [
74
+ { image: { buffer: yield luigi.clone().getBuffer('image/png') }, options: { scale: 'keep-ratio' } },
75
+ { image: { buffer: yield luigi.clone().getBuffer('image/png') }, options: { scale: 'keep-ratio' } },
76
+ ];
77
+ }), {
65
78
  left: 25,
66
79
  top: 25,
67
80
  width: 300,
@@ -69,7 +82,12 @@ const lib_1 = require("./lib");
69
82
  }, {
70
83
  gap: 100,
71
84
  })
72
- .vbox(() => Promise.resolve([luigi.clone(), luigi.clone()]), {
85
+ .vbox(() => __awaiter(void 0, void 0, void 0, function* () {
86
+ return [
87
+ { image: { buffer: yield luigi.clone().getBuffer('image/png') }, options: { scale: 'stretch' } },
88
+ { image: { buffer: yield luigi.clone().getBuffer('image/png') }, options: { scale: 'stretch' } },
89
+ ];
90
+ }), {
73
91
  left: 25,
74
92
  top: 325,
75
93
  width: 100,
@@ -78,11 +96,19 @@ const lib_1 = require("./lib");
78
96
  scale: 'stretch',
79
97
  gap: 50,
80
98
  })
81
- .grid(() => Promise.resolve([
82
- luigi.clone(), luigi.clone(), luigi.clone(),
83
- luigi.clone(), luigi.clone(), luigi.clone(),
84
- luigi.clone(), luigi.clone(), luigi.clone(),
85
- ]), {
99
+ .grid(() => __awaiter(void 0, void 0, void 0, function* () {
100
+ return [
101
+ { image: { buffer: yield luigi.clone().getBuffer('image/png') } },
102
+ { image: { buffer: yield luigi.clone().getBuffer('image/png') } },
103
+ { image: { buffer: yield luigi.clone().getBuffer('image/png') } },
104
+ { image: { buffer: yield luigi.clone().getBuffer('image/png') } },
105
+ { image: { buffer: yield luigi.clone().getBuffer('image/png') } },
106
+ { image: { buffer: yield luigi.clone().getBuffer('image/png') } },
107
+ { image: { buffer: yield luigi.clone().getBuffer('image/png') } },
108
+ { image: { buffer: yield luigi.clone().getBuffer('image/png') } },
109
+ { image: { buffer: yield luigi.clone().getBuffer('image/png') } },
110
+ ];
111
+ }), {
86
112
  left: 300,
87
113
  top: 325,
88
114
  width: 400,
@@ -1 +1 @@
1
- {"version":3,"file":"test.js","sourceRoot":"","sources":["../../src/test.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,+BAA4B;AAC5B,+BAAkE;AASlE,CAAC,GAAS,EAAE;IACR,MAAM,QAAQ,GAAG,CAAC,MAAM,WAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAc,CAAC;IACvE,MAAM,KAAK,GAAG,CAAC,MAAM,WAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAc,CAAC;IACjE,MAAM,MAAM,GAAG,MAAM,cAAQ,CAAC,GAAG,CAAe;QAC5C,iBAAiB,EAAE,SAAS;QAC5B,iBAAiB,EAAE,QAAQ;QAC3B,KAAK,EAAE,UAAU;KACpB,CAAC;SACG,IAAI,CACD,EAAE,GAAG,EAAE,OAAO,EAAE,EAChB;QACI,IAAI,EAAE,EAAE;QACR,GAAG,EAAE,EAAE;QACP,KAAK,EAAE,GAAG;QACV,MAAM,EAAE,GAAG;KACd,EACD;QACI,IAAI,EAAE;YACF,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,WAAW;SACtB;KACJ,CACJ;SACA,IAAI,CAAC,sBAAsB,EAAE,WAAW,CAAC;SACzC,IAAI,CACD,EAAE,GAAG,EAAE,UAAU,EAAE,EACnB;QACI,IAAI,EAAE,EAAE;QACR,GAAG,EAAE,GAAG;QACR,KAAK,EAAE,GAAG;QACV,MAAM,EAAE,GAAG;KACd,EACD;QACI,IAAI,EAAE;YACF,IAAI,EAAE,EAAE;SACX;QACD,KAAK,EAAE,QAAQ;QACf,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,OAAO;KACzD,CACJ;SACA,IAAI,CAAC,oBAAoB,EAAE,SAAS,CAAC;SACrC,KAAK,CACF,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,MAAM,EAAE,EACvD,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,EAC/C;QACI,KAAK,EAAE,SAAS;QAChB,UAAU,EAAE,QAAQ;KACvB,CACJ;SACA,IAAI,CACD,EAAE,GAAG,EAAE,QAAQ,EAAE,EACjB;QACI,IAAI,EAAE,EAAE;QACR,GAAG,EAAE,GAAG;QACR,KAAK,EAAE,GAAG;QACV,MAAM,EAAE,GAAG;KACd,EACD;QACI,IAAI,EAAE;YACF,IAAI,EAAE,EAAE;SACX;QACD,WAAW,EAAE,IAAI,iBAAW,EAAE;aACzB,OAAO,CAAC,CAAC,UAAU,CAAC,EAAE,QAAqB,CAAC;aAC5C,KAAK,EAAE;KACf,CACJ;SACA,IAAI,CACD,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,EACrD;QACI,IAAI,EAAE,EAAE;QACR,GAAG,EAAE,EAAE;QACP,KAAK,EAAE,GAAG;QACV,MAAM,EAAE,GAAG;KACd,EACD;QACI,GAAG,EAAE,GAAG;KACX,CACJ;SACA,IAAI,CACD,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,EACrD;QACI,IAAI,EAAE,EAAE;QACR,GAAG,EAAE,GAAG;QACR,KAAK,EAAE,GAAG;QACV,MAAM,EAAE,GAAG;KACd,EACD;QACI,KAAK,EAAE,SAAS;QAChB,GAAG,EAAE,EAAE;KACV,CACJ;SACA,IAAI,CACD,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC;QAClB,KAAK,CAAC,KAAK,EAAE,EAAE,KAAK,CAAC,KAAK,EAAE,EAAE,KAAK,CAAC,KAAK,EAAE;QAC3C,KAAK,CAAC,KAAK,EAAE,EAAE,KAAK,CAAC,KAAK,EAAE,EAAE,KAAK,CAAC,KAAK,EAAE;QAC3C,KAAK,CAAC,KAAK,EAAE,EAAE,KAAK,CAAC,KAAK,EAAE,EAAE,KAAK,CAAC,KAAK,EAAE;KAC9C,CAAC,EACF;QACI,IAAI,EAAE,GAAG;QACT,GAAG,EAAE,GAAG;QACR,KAAK,EAAE,GAAG;QACV,MAAM,EAAE,GAAG;KACd,EACD;QACI,KAAK,EAAE,SAAS;QAChB,GAAG,EAAE,EAAE;QACP,UAAU,EAAE,YAAY;QACxB,cAAc,EAAE,YAAY;QAC5B,IAAI,EAAE,IAAI;KACb,CACJ;SACA,KAAK,EAAE;SACP,OAAO,CAAC,iBAAiB,EAAE;QACxB,WAAW,EAAE;YACT,UAAU,EAAE,QAAQ;SACvB;KACJ,CAAC,CAAC;IAEP,MAAM,OAAO,CAAC,GAAG,CACb,aAAO,CAAC,GAAG,EAAE;SACR,MAAM,CAAC,MAAM,CAAC;SACd,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,eAAe,KAAK,GAAG,CAAC,MAAM,CAAC,CAAC,CAClE,CAAC;AACN,CAAC,CAAA,CAAC,EAAE,CAAC"}
1
+ {"version":3,"file":"test.js","sourceRoot":"","sources":["../../src/test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hellkite/pipkin",
3
- "version": "0.6.1",
3
+ "version": "0.7.0",
4
4
  "description": "Library for board game card generation",
5
5
  "main": "build/src/index.js",
6
6
  "types": "build/src/index.d.ts",
@@ -20,6 +20,7 @@
20
20
  "lodash.camelcase": "^4.3.0",
21
21
  "lodash.chunk": "^4.2.0",
22
22
  "lodash.concat": "^4.5.0",
23
+ "lodash.flatten": "^4.4.0",
23
24
  "lodash.merge": "^4.6.2",
24
25
  "node-html-to-image": "^5.0.0",
25
26
  "papaparse": "^5.5.2",
@@ -30,6 +31,7 @@
30
31
  "@types/lodash.camelcase": "^4.3.9",
31
32
  "@types/lodash.chunk": "^4.2.9",
32
33
  "@types/lodash.concat": "^4.5.9",
34
+ "@types/lodash.flatten": "^4.4.9",
33
35
  "@types/lodash.merge": "^4.6.9",
34
36
  "@types/node": "^22.7.5",
35
37
  "@types/papaparse": "^5.3.15",
package/roadmap.md CHANGED
@@ -5,15 +5,16 @@
5
5
  - [ ] Storage adaptors for fs, web, browser, s3, etc
6
6
  - [ ] Draw geometry
7
7
  - [ ] Noise/texture overlays
8
- - [ ] Text border
8
+ - [x] Text border
9
9
 
10
10
  ### Bugfixes
11
11
  - [x] Broken custom fonts
12
+ - [ ] keep-ration scale option seem broken
12
13
 
13
14
  ### Optimizations
14
15
  - [ ] Optional image registry that reduce repeating loading of same images
15
16
  - [ ] Stream processing support
16
- - [ ] Overlay the entire card in HTML and render to image only once
17
+ - [x] Overlay the entire card in HTML and render to image only once
17
18
 
18
19
 
19
20
  ### Quality of Life Improvements