4 Commits

Author SHA1 Message Date
cf02cd86e5 1.0.8 2019-11-21 14:01:42 +00:00
d50cb5449a fix(core): update 2019-11-21 14:01:41 +00:00
c40d745f98 1.0.7 2019-11-18 16:26:02 +00:00
a619fbb239 fix(readme): show how to instantiate account 2019-11-18 16:26:01 +00:00
5 changed files with 74 additions and 51 deletions

68
package-lock.json generated
View File

@@ -1,6 +1,6 @@
{
"name": "@mojoio/letterxpress",
"version": "1.0.6",
"version": "1.0.8",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
@@ -99,7 +99,6 @@
"version": "3.0.11",
"resolved": "https://verdaccio.lossless.one/@pushrocks%2flik/-/lik-3.0.11.tgz",
"integrity": "sha512-SDKRPj9+xBTqozlDPcA7O6BcccM1Tw/sXPVP+OnhNxCubDZ/L2kGNpPpqm43NJUoNxSSo5wdBw4N7MAFYCGdVg==",
"dev": true,
"requires": {
"@pushrocks/smartdelay": "^2.0.3",
"@pushrocks/smartpromise": "^3.0.2",
@@ -160,20 +159,12 @@
"@pushrocks/smartpromise": "^3.0.6",
"@types/node": "^12.12.7",
"is-wsl": "^2.1.1"
},
"dependencies": {
"@types/node": {
"version": "12.12.8",
"resolved": "https://verdaccio.lossless.one/@types%2fnode/-/node-12.12.8.tgz",
"integrity": "sha512-XLla8N+iyfjvsa0KKV+BP/iGSoTmwxsu5Ci5sM33z9TjohF72DEz95iNvD6pPmemvbQgxAv/909G73gUn8QR7w=="
}
}
},
"@pushrocks/smartevent": {
"version": "2.0.3",
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartevent/-/smartevent-2.0.3.tgz",
"integrity": "sha512-x4B1mzzE6LrMATXsRLNuZpMTlB2JodL44MA4bF4FucU3SBBiWhFv3CFJRlO9B23SKZ1fwdJQrk2lT7YTUHXXJQ==",
"dev": true,
"requires": {
"@pushrocks/smartpromise": "^2.0.5"
},
@@ -181,8 +172,7 @@
"@pushrocks/smartpromise": {
"version": "2.0.5",
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartpromise/-/smartpromise-2.0.5.tgz",
"integrity": "sha512-9j/chLtIiNkR0MDw7Mpxg9slxAVvAQwUZuiaPYX5KpHdKxQaHLI1VZ8IN0vPhwlfgNO4i4vGXV0wB8BvSDj03g==",
"dev": true
"integrity": "sha512-9j/chLtIiNkR0MDw7Mpxg9slxAVvAQwUZuiaPYX5KpHdKxQaHLI1VZ8IN0vPhwlfgNO4i4vGXV0wB8BvSDj03g=="
}
}
},
@@ -234,13 +224,13 @@
}
},
"@pushrocks/smartletter": {
"version": "1.0.10",
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartletter/-/smartletter-1.0.10.tgz",
"integrity": "sha512-ya2IBEAmH1YfZ+DYsrGBksFShUJkyjpJDgd+pB3uA87tUCkvVDoskAFYFthnMk/RWm7IG1Tml0v1Vj/9QSiz3Q==",
"version": "1.0.15",
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartletter/-/smartletter-1.0.15.tgz",
"integrity": "sha512-ErW0VoRqJtFKIaIG+VlPfmfBtdTmd3dTnlW6SF2zxRaZf0cIq43P2h+wdKYpJO8lKESl3kidItVSXZ7WB9pLpg==",
"requires": {
"@pushrocks/smartdelay": "^2.0.6",
"@pushrocks/smartmarkdown": "^2.0.2",
"@pushrocks/smartpdf": "^1.0.29",
"@pushrocks/smartpdf": "^2.0.2",
"@tsclass/tsclass": "^2.0.13",
"lit-ntml": "^2.10.0"
}
@@ -323,9 +313,9 @@
"integrity": "sha512-MaI0+uLQPCr2V3WGnbdgb0pWa9xkWyrP4qYcbsHIjeismGLbn9s3jmP/HIXU8LkgzRgaVb+BJxmZJHOwl32DyA=="
},
"@pushrocks/smartpdf": {
"version": "1.0.29",
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartpdf/-/smartpdf-1.0.29.tgz",
"integrity": "sha512-McJ9EVEzPs9F6nNT+6okJMwLlJ8kerzevyVjgQPCgjnxk3atdcbc91ojoBerQp3Cjf3c0Dh3xeC4CFDqx2ACKQ==",
"version": "2.0.2",
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartpdf/-/smartpdf-2.0.2.tgz",
"integrity": "sha512-fzKFWCBbmx76h/rStJckx3dGHOgWRuMalBBCLKLtY+KZk4/fT/kL88Bax4dZ3cCGKDaBfSiJNL9CJX7gsHl70w==",
"requires": {
"@pushrocks/smartfile": "^7.0.6",
"@pushrocks/smartnetwork": "^1.1.14",
@@ -367,7 +357,6 @@
"version": "2.0.5",
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartrx/-/smartrx-2.0.5.tgz",
"integrity": "sha512-BOlIJmnCO8pxqu9f18D9UV5rIsyrmKeK/mWNMiAe/NH2OTeRPNLpgmhZBkXSKNVD8tSsD8aazs4BcACgYOg1FQ==",
"dev": true,
"requires": {
"@pushrocks/lik": "^3.0.11",
"@pushrocks/smartevent": "^2.0.3",
@@ -404,7 +393,6 @@
"version": "3.0.12",
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmarttime/-/smarttime-3.0.12.tgz",
"integrity": "sha512-NoMt1NUhNqcF5y7fCTHoC3d/+MobzgNUg6yHbSGxFRaentQzCrMPNahQIVLbrAStf03LUUBePUjSRdPYucP1gw==",
"dev": true,
"requires": {
"@pushrocks/smartpromise": "^3.0.2",
"@types/cron": "^1.7.1",
@@ -425,12 +413,13 @@
}
},
"@pushrocks/tapbundle": {
"version": "3.0.13",
"resolved": "https://verdaccio.lossless.one/@pushrocks%2ftapbundle/-/tapbundle-3.0.13.tgz",
"integrity": "sha512-23O4UMBafCuD+RnUlXNvtT9DGbL1HMD+xZE1Zcr7Ll7WvgxUgRQQfk9kq6qbLLbjaRe1J2Ijsgh1HuZbBaucLQ==",
"version": "3.2.0",
"resolved": "https://verdaccio.lossless.one/@pushrocks%2ftapbundle/-/tapbundle-3.2.0.tgz",
"integrity": "sha512-xnKIGe7NJqxWBaFeKIEXShDjV2wap1XJqmlp3m1MKqmIF62vRpZnkzpyE1ZAoNwiYQmIsXIpvP/PDv+iPevPfw==",
"requires": {
"@pushrocks/early": "^3.0.3",
"@pushrocks/smartdelay": "^2.0.3",
"@pushrocks/smartfile": "^7.0.6",
"@pushrocks/smartpromise": "^3.0.2",
"smartchai": "^2.0.1"
}
@@ -485,7 +474,6 @@
"version": "1.7.1",
"resolved": "https://verdaccio.lossless.one/@types%2fcron/-/cron-1.7.1.tgz",
"integrity": "sha512-48brwgU18DqA0mQX1As5OcJEo1yNjaXMM6Mk4r8K1dOzLJRQ37FE/kCivKx7ClKEHfhX2FdcxKzJ1B744a+V3A==",
"dev": true,
"requires": {
"@types/node": "*",
"moment": ">=2.14.0"
@@ -548,8 +536,7 @@
"@types/luxon": {
"version": "1.15.2",
"resolved": "https://verdaccio.lossless.one/@types%2fluxon/-/luxon-1.15.2.tgz",
"integrity": "sha512-zHPoyVrLvNaiMRYdhmh88Rn489ZgAgbc6iLxR5Yi0VCNfeNYHcszbhJV2vDHLNrVGy35BPtWBRn4OP2F9BBvFw==",
"dev": true
"integrity": "sha512-zHPoyVrLvNaiMRYdhmh88Rn489ZgAgbc6iLxR5Yi0VCNfeNYHcszbhJV2vDHLNrVGy35BPtWBRn4OP2F9BBvFw=="
},
"@types/marked": {
"version": "0.6.5",
@@ -564,13 +551,12 @@
"@types/minimatch": {
"version": "3.0.3",
"resolved": "https://verdaccio.lossless.one/@types%2fminimatch/-/minimatch-3.0.3.tgz",
"integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==",
"dev": true
"integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA=="
},
"@types/node": {
"version": "10.17.5",
"resolved": "https://verdaccio.lossless.one/@types%2fnode/-/node-10.17.5.tgz",
"integrity": "sha512-RElZIr/7JreF1eY6oD5RF3kpmdcreuQPjg5ri4oQ5g9sq7YWU8HkfB3eH8GwAwxf5OaCh0VPi7r4N/yoTGelrA=="
"version": "12.12.11",
"resolved": "https://verdaccio.lossless.one/@types%2fnode/-/node-12.12.11.tgz",
"integrity": "sha512-O+x6uIpa6oMNTkPuHDa9MhMMehlxLAd5QcOvKRjAFsBVpeFWTOPnXbDvILvFgFFZfQ1xh1EZi1FbXxUix+zpsQ=="
},
"@types/portscanner": {
"version": "2.1.0",
@@ -1076,7 +1062,6 @@
"version": "1.7.2",
"resolved": "https://verdaccio.lossless.one/cron/-/cron-1.7.2.tgz",
"integrity": "sha512-+SaJ2OfeRvfQqwXQ2kgr0Y5pzBR/lijf5OpnnaruwWnmI799JfWr2jN2ItOV9s3A/+TFOt6mxvKzQq5F0Jp6VQ==",
"dev": true,
"requires": {
"moment-timezone": "^0.5.x"
}
@@ -1260,9 +1245,9 @@
"integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A=="
},
"which": {
"version": "2.0.1",
"resolved": "https://verdaccio.lossless.one/which/-/which-2.0.1.tgz",
"integrity": "sha512-N7GBZOTswtB9lkQBZA4+zAXrjEIWAUOB93AvzUiudRzRxhUdLURQ7D/gAIMY1gatT/LTbmbcv8SiYazy3eYB7w==",
"version": "2.0.2",
"resolved": "https://verdaccio.lossless.one/which/-/which-2.0.2.tgz",
"integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
"requires": {
"isexe": "^2.0.0"
}
@@ -2126,8 +2111,7 @@
"luxon": {
"version": "1.21.1",
"resolved": "https://verdaccio.lossless.one/luxon/-/luxon-1.21.1.tgz",
"integrity": "sha512-3zxaKX7mj7eA80TU0sm4CfNEtiUZ2QXGjMc80rfG4d1dOnnOOWz63U9j4nYR7+1w716DYtWfdOeVhDXYlH+D4w==",
"dev": true
"integrity": "sha512-3zxaKX7mj7eA80TU0sm4CfNEtiUZ2QXGjMc80rfG4d1dOnnOOWz63U9j4nYR7+1w716DYtWfdOeVhDXYlH+D4w=="
},
"make-error": {
"version": "1.3.5",
@@ -2237,14 +2221,12 @@
"moment": {
"version": "2.24.0",
"resolved": "https://verdaccio.lossless.one/moment/-/moment-2.24.0.tgz",
"integrity": "sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg==",
"dev": true
"integrity": "sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg=="
},
"moment-timezone": {
"version": "0.5.27",
"resolved": "https://verdaccio.lossless.one/moment-timezone/-/moment-timezone-0.5.27.tgz",
"integrity": "sha512-EIKQs7h5sAsjhPCqN6ggx6cEbs94GK050254TIJySD1bzoM5JTYDwAU1IoVOeTOL6Gm27kYJ51/uuvq1kIlrbw==",
"dev": true,
"requires": {
"moment": ">= 2.9.0"
}
@@ -2744,7 +2726,6 @@
"version": "6.5.3",
"resolved": "https://verdaccio.lossless.one/rxjs/-/rxjs-6.5.3.tgz",
"integrity": "sha512-wuYsAYYFdWTAnAaPoKGNhfpWwKZbJW+HgAJ+mImp+Epl7BG8oNWBCTyRM8gba9k4lk8BgWdoYm21Mo/RYhhbgA==",
"dev": true,
"requires": {
"tslib": "^1.9.0"
}
@@ -3066,8 +3047,7 @@
"tslib": {
"version": "1.10.0",
"resolved": "https://verdaccio.lossless.one/tslib/-/tslib-1.10.0.tgz",
"integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==",
"dev": true
"integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ=="
},
"tslint": {
"version": "5.20.1",

View File

@@ -1,6 +1,6 @@
{
"name": "@mojoio/letterxpress",
"version": "1.0.6",
"version": "1.0.8",
"private": false,
"description": "an unofficial API package for the letterxpress API",
"main": "dist/index.js",
@@ -16,14 +16,15 @@
"@gitzone/tsbuild": "^2.0.22",
"@gitzone/tstest": "^1.0.15",
"@pushrocks/qenv": "^4.0.6",
"@pushrocks/tapbundle": "^3.0.7",
"@types/node": "^10.11.7",
"@pushrocks/tapbundle": "^3.2.0",
"@types/node": "^12.12.11",
"tslint": "^5.11.0",
"tslint-config-prettier": "^1.15.0"
},
"dependencies": {
"@pushrocks/smartletter": "^1.0.10",
"@pushrocks/smartrequest": "^1.1.42"
"@pushrocks/smartletter": "^1.0.15",
"@pushrocks/smartrequest": "^1.1.42",
"@pushrocks/smartrx": "^2.0.5"
},
"files": [
"ts/**/*",

View File

@@ -22,6 +22,15 @@ Use TypeScript for best in class intellisense.
letterxpress implements the LXP API documented here: [LXP API Documentation](https://www.letterxpress.de/briefe-uebertragen/api)
```typescript
import * as letterxpress from '@mojoio/letterxpress'
const account = new letterxpress.LetterXpressAccount({
email: 'myemail@example.com',
apiToken: 'abcdefghijklmnop1234567890'
})
```
## Contribution
We are always happy for code contributions. If you are not the code contributing type that is ok. Still, maintaining Open Source repositories takes considerable time and thought. If you like the quality of what we do and our modules are useful to you we would appreciate a little monthly contribution: You can [contribute one time](https://lossless.link/contribute-onetime) or [contribute monthly](https://lossless.link/contribute). :)

View File

@@ -6,11 +6,42 @@ export interface ILetterXpressConstructorOptions {
}
export class LetterXpressAccount {
public baseApiUrl = 'https://api.letterxpress.de/v1/';
public options: ILetterXpressConstructorOptions;
public letterSentObservable = new plugins.smartrx.rxjs.Subject<plugins.smartletter.Letter>();
constructor(optionsArg: ILetterXpressConstructorOptions) {
this.options = optionsArg;
}
public request() {}
/**
* sends a letter
* @param letterArg
*/
public async sendLetter(letterArg: plugins.smartletter.Letter) {
const letterPdfResult = await letterArg.getPdfResult();
const response = await this.request('/setJob', 'POST', {});
}
/**
* fires the request
*/
private async request(routeArg: string, methodArg: 'GET' | 'POST', payload?: any) {
const requestUrl = `${this.baseApiUrl}`;
const requestData = {
auth: {
username: this.options.email,
apikey: this.options.apiKey
},
...payload
};
const response = await plugins.smartrequest.request(routeArg, {
method: methodArg,
headers: {
'Content-Type': 'application/json'
},
requestBody: JSON.stringify(requestData)
});
}
}

View File

@@ -1,3 +1,5 @@
import * as smartletter from '@pushrocks/smartletter';
import * as smartrequest from '@pushrocks/smartrequest';
import * as smartrx from '@pushrocks/smartrx';
export { smartrequest };
export { smartletter, smartrequest, smartrx };