1 | ## 5.1 Apr 26, 2019
|
2 |
|
3 | - *Breaking* Requires Node >= 10.1 (we use `fs.promises` etc)
|
4 | - *Feature* template.setCertificate(process.env.APPLE_PASS_CERTIFICATE);
|
5 | - *Feature* template.setPrivateKey(
|
6 | process.env.APPLE_PASS_PRIVATE_KEY,
|
7 | process.env.APPLE_PASS_KEY_PASSWORD,
|
8 | )
|
9 | - *Feature* use `process.env.APPLE_WWDR_CERT_PEM` to override Apple Certificate
|
10 | - Lot of refactoring...
|
11 |
|
12 | ## 4.3 Nov 1, 2017
|
13 |
|
14 | - Switched from using _in-house_ Zip implementation to `yazl` and refactored `Pass.pipe` for simplier form using `async` function.
|
15 |
|
16 | ## 4.2 Nov 1, 2017
|
17 |
|
18 | - switched from our fork of `node-apn` to native HTTP2 implementation from Node 8.8 LTS.
|
19 | - don't compress any file, just store inside of Zip, so, it suppose to be faster and more compatible
|
20 |
|
21 | ## 4.1 October 14, 2017
|
22 |
|
23 | - added `textDirection` to constants
|
24 | - added `associatedStoreIdentifiers` into templatable fields (thanks to @antoniomika)
|
25 |
|
26 | ## 4.0 August 19, 2017
|
27 |
|
28 | - Replaced `openssl` spawning for native JavaScript `node-forge` implementation of manifest signing.
|
29 |
|
30 | ## 3.8 August 17, 2017
|
31 |
|
32 | - Implemented `Template.pushUpdates(pushToken)` that sends APN update request for a given pass type to a pushToken (get pushToken at PassKit Web Service)
|
33 |
|
34 | ## 3.7 August 15, 2017
|
35 |
|
36 | - Implemented `Fields.setDateTime(key, label, date, formatOptions = {})` to set date/time style values to a structure fields. Example: `pass.auxiliaryFields.setDateTime('arrival', 'ARRIVAL TIME', arrivalDateObj, { dateStyle: constants.dateTimeFormat.NONE, timeStyle: constants.dateTimeFormat.SHORT })`
|
37 |
|
38 | ## 3.6 August 14, 2017
|
39 |
|
40 | - Added `setValue(key, value)` method for structure fields to make templating easier. Example: `pass.headerFields.setValue('port', 'New Port')`
|
41 | - Added tests for `Fields` class to increase test coverage
|
42 |
|
43 | ## 3.5 August 14, 2017
|
44 |
|
45 | - Impletmented `Pass.stream` that returns `Pass` as a readable stream. Useful for `Koa` responses, etc.
|
46 |
|
47 | ## 3.4 August 13, 2017
|
48 |
|
49 | - Color values setters at `Template` (`backgroundColor`, `foregroundColor` and `labelColor`) now can accept any valid CSS color string (like 'purple', '#fff', etc) and converts them into `rgb(...)` format that is only acceptable by Apple Wallet pass
|
50 | - `Pass.validate` enforces `rgb()` style values for color fields
|
51 | - `Pass.validate` enforces `webServiceURL` and `authenticationToken` to be either both present or both missing
|
52 | - Exporting `PASS_MIME_TYPE` from `contants`
|
53 | - Added `expirationDate` and `relevantDate` setters and getter to the `Pass` class that accepts both, `Date` or a `string` and converts that to correct W3C date string (or throws if it's impossible)
|
54 | - Added `Pass.addLocation` that accepts point value either as GeoJSON array, `{lat, lng}` or `{ longitude: number, latitude: number, altitude?: number }`
|
55 |
|
56 | ## 3.3 August 12, 2017
|
57 |
|
58 | - implemented `Pass.transitType()` to set/get transit type for board passes (with values validation and constants)
|
59 | - `Temlate` now loads/stores structure level values and passes them to Passes
|
60 |
|
61 | ## 3.1.0 August 9, 2017
|
62 |
|
63 | - Added `Template.load` static method to load template, images and key from a folder (no localization support yet, but coming)
|
64 | - Added blank templates for all possible images
|
65 | - Increased test coverage
|
66 |
|
67 | ## 3.0.0 August 8, 2017
|
68 |
|
69 | - Rewritten in ES6 Classes, targetting Node 8
|
70 | - Moved tests to Jest
|
71 | - Added some fields values validation
|
72 | - Refactored deprecated calls
|
73 | - Addes ESLint + prettier code style enforcement
|
74 | - Moved to `@destinationstransfers` scoped package (original module seems to not merging any PR in last two years)
|
75 |
|
76 | ## 2.1.1 April 16, 2015
|
77 |
|
78 | Update package.json with async dependency (tomasdev)
|
79 |
|
80 | Emit error if it failed to sign the zip with manifest file (tomasdev)
|
81 |
|
82 | ## 2.1.0 March 2, 2015
|
83 |
|
84 | Add support for Node.js 0.12 and io.js 1.4
|
85 |
|
86 | Fix failing image tests on Node.js 0.12 and io.js 1.4
|
87 |
|
88 | Fix failing signature check on Node.js 0.12 and io.js 1.4
|
89 |
|
90 | Remove unused async dependency
|
91 |
|
92 | ## 2.0.1 November 14, 2012
|
93 |
|
94 | Fix addImage not working with buffers.
|
95 |
|
96 | ## 2.0.0 November 1, 2012
|
97 |
|
98 | New API for updating structure fields:
|
99 |
|
100 | passbook.headerFields.add("time", "The Time", "10:00AM");
|
101 | passbook.backFields.add({ key: "url", label: "Web site", value: "<http://example.com>" });
|
102 | console.log(passbook.backFields.get("url"));
|
103 | passbook.backFields.remove("url");
|
104 | console.log(passbook.backFields.all());
|
105 |
|
106 | The `pipe` method no longer accepts a callback, instead, register listener on
|
107 | the `end` and `error` events.
|
108 |
|
109 | For HTTP servers, you can use the `render` method.
|
110 |
|
111 | New optimization to send completes resources first (useful when downloading
|
112 | images from URLs).
|
113 |
|
114 | Renamed `createPassbook` to `createPass`.
|
115 |
|
116 | ## 1.1.1 October 24, 2012
|
117 |
|
118 | Fix piping support for files/HTTP resources.
|
119 |
|
120 | ## 1.1.0 October 24, 2012
|
121 |
|
122 | API change: instead of generating passbook into a buffer, we pipe it into an
|
123 | output stream. Like so:
|
124 |
|
125 | fs = File.createWriteStream("demo.pkpass");
|
126 | passbook.pipe(fs, function(error) {
|
127 | . . .
|
128 | });
|
129 |
|
130 | You can now add images by specifing an HTTP/S URL.
|
131 |
|
132 | You can now add images directly to the template, every passbook created from
|
133 | that template will include these images.
|
134 |
|
135 | New streaming zip implementation. Passbook is now able to acquire resources
|
136 | (images) in paralle.
|
137 |
|
138 | ## 1.0.2 October 15, 2012
|
139 |
|
140 | Should not fail on boardingPass.
|
141 |
|
142 | Should be able to inspect pass.json: call getPassbookJSON().
|
143 |
|
144 | ## 1.0.1 October 9, 2012
|
145 |
|
146 | First release. Yay!
|