-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
added documentdefinitions straiiiight into api
in case we split the fylks, this will be useful for faster editing
- Loading branch information
Showing
23 changed files
with
1,195 additions
and
405 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
# document-definitions | ||
|
||
Node module for document-definitions | ||
|
||
## API | ||
|
||
*id* the id for requested document definition | ||
*language* the language for the document definition, defaults to `no_nb` | ||
|
||
## Usage | ||
|
||
``` | ||
$ npm i @vtfk/document-definitions | ||
``` | ||
|
||
```JavaScript | ||
const getDD = require('@vtfk/document-definitions') | ||
const dd = getDD('brevmal', 'no_nn') | ||
const pdfDefinition = dd(data) | ||
``` | ||
|
||
## Definitions | ||
|
||
- [brevmal](./docs/brevmal.md) | ||
- [notatmal](./docs/notatmal.md) | ||
|
||
## License | ||
|
||
[MIT](LICENSE) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,114 @@ | ||
const formatDate = require('../lib/format-date') | ||
const style = require('../shared/style') | ||
const header = require('../shared/header') | ||
const helpers = require('../shared/helpers') | ||
const watermark = require('../shared/watermark') | ||
|
||
module.exports = ({ metadata, content }) => { | ||
const address = metadata.address || {} | ||
const document = metadata.document || {} | ||
const info = metadata.info || {} | ||
const footer = metadata.footer || {} | ||
|
||
const infoFields = [] | ||
const appendInfo = (field, title, parseField) => { | ||
if (field) { | ||
infoFields.push({ | ||
title, | ||
field: (parseField && typeof (parseField) === 'function' ? parseField(field) : field) | ||
}) | ||
} | ||
} | ||
|
||
appendInfo(info['our-date'] || new Date(), 'Our date', formatDate) | ||
appendInfo(info['your-date'], 'Your date', formatDate) | ||
appendInfo(info['our-reference'], 'Our reference') | ||
appendInfo(info['your-reference'], 'Your reference') | ||
appendInfo(info['our-caseworker'], 'Our caseworker') | ||
appendInfo(info.paragraph, 'Exempted from public disclosure') | ||
|
||
const defintion = { | ||
pageSize: 'A4', | ||
pageOrientation: 'portrait', | ||
pageMargins: [65, 120, 65, 70], | ||
info: { | ||
title: document.title, | ||
author: document.author, | ||
subject: document.subject, | ||
keywords: document.keywords | ||
}, | ||
watermark: watermark(metadata, 'Preview'), | ||
header, | ||
content: [ | ||
{ | ||
table: { | ||
widths: ['50%', '*', '*'], | ||
body: [ | ||
[ | ||
{ text: [address.name, address.street, address.city].filter(text => !!text).join('\n'), style: 'address', rowSpan: 2 }, | ||
{ text: `${info.sector || ''}`, style: 'info', bold: true, colSpan: 2, marginTop: 30 }, | ||
'' | ||
], | ||
[ | ||
'', | ||
infoFields.map(info => ({ text: `${info.title}:`, style: 'info' })), | ||
infoFields.map(info => ({ text: info.field, style: 'info' })) | ||
] | ||
] | ||
}, | ||
layout: { | ||
defaultBorder: false, | ||
paddingLeft: () => 0, | ||
paddingRight: () => 0, | ||
paddingTop: () => 0, | ||
paddingBottom: () => 5 | ||
} | ||
}, | ||
content | ||
], | ||
footer: (page) => ({ | ||
table: { | ||
widths: [93, 138, 97, 52, 70, 29], | ||
body: [ | ||
[ | ||
[ | ||
{ text: 'Postal address:', style: 'footer', bold: true }, | ||
{ text: `${footer['postal-address'] || 'Postboks 2844\n2702 Skien'}`, style: 'footer' } | ||
], | ||
[ | ||
{ text: 'Visiting address:', style: 'footer', bold: true }, | ||
{ text: `${footer['visiting-address'] || 'Torggata 18, Skien\nSvend Foyns gate 9, Tønsberg'}`, style: 'footer' } | ||
], | ||
[ | ||
{ text: 'Contact:', style: 'footer', bold: true }, | ||
{ text: `${footer.phone || '35 91 70 00'}`, style: 'footer' }, | ||
{ text: `${footer.email || 'post@vtfk.no'}`, style: 'footer' } | ||
], | ||
[ | ||
{ text: 'Org. no.:', style: 'footer', bold: true }, | ||
{ text: `${footer.orgnr || '821 227 062'}`, style: 'footer' } | ||
], | ||
[ | ||
{ text: `${footer.url || 'vtfk.no'}`, style: 'footer', bold: true, alignment: 'right', fontSize: 10 } | ||
], | ||
[ | ||
{ text: footer['page-numbers'] === false ? '' : page, style: 'pagenumber' } | ||
] | ||
] | ||
] | ||
}, | ||
layout: { | ||
defaultBorder: false, | ||
paddingLeft: () => 0, | ||
paddingRight: () => 0, | ||
paddingTop: () => 0, | ||
paddingBottom: () => 0 | ||
}, | ||
margin: [65, 5, 65, 0] | ||
}), | ||
...style, | ||
...helpers | ||
} | ||
|
||
return defintion | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,114 @@ | ||
const formatDate = require('../lib/format-date') | ||
const style = require('../shared/style') | ||
const header = require('../shared/header') | ||
const helpers = require('../shared/helpers') | ||
const watermark = require('../shared/watermark') | ||
|
||
module.exports = ({ metadata, content }) => { | ||
const address = metadata.address || {} | ||
const document = metadata.document || {} | ||
const info = metadata.info || {} | ||
const footer = metadata.footer || {} | ||
|
||
const infoFields = [] | ||
const appendInfo = (field, title, parseField) => { | ||
if (field) { | ||
infoFields.push({ | ||
title, | ||
field: (parseField && typeof (parseField) === 'function' ? parseField(field) : field) | ||
}) | ||
} | ||
} | ||
|
||
appendInfo(info['our-date'] || new Date(), 'Vår dato', formatDate) | ||
appendInfo(info['your-date'], 'Deres dato', formatDate) | ||
appendInfo(info['our-reference'], 'Vår referanse') | ||
appendInfo(info['your-reference'], 'Deres referanse') | ||
appendInfo(info['our-caseworker'], 'Vår saksbehandler') | ||
appendInfo(info.paragraph, 'Unntatt offentlighet iht.') | ||
|
||
const defintion = { | ||
pageSize: 'A4', | ||
pageOrientation: 'portrait', | ||
pageMargins: [65, 120, 65, 70], | ||
info: { | ||
title: document.title, | ||
author: document.author, | ||
subject: document.subject, | ||
keywords: document.keywords | ||
}, | ||
watermark: watermark(metadata, 'Forhåndsvisning'), | ||
header, | ||
content: [ | ||
{ | ||
table: { | ||
widths: ['50%', '*', '*'], | ||
body: [ | ||
[ | ||
{ text: [address.name, address.street, address.city].filter(text => !!text).join('\n'), style: 'address', rowSpan: 2 }, | ||
{ text: `${info.sector || ''}`, style: 'info', bold: true, colSpan: 2, marginTop: 30 }, | ||
'' | ||
], | ||
[ | ||
'', | ||
infoFields.map(info => ({ text: `${info.title}:`, style: 'info' })), | ||
infoFields.map(info => ({ text: info.field, style: 'info' })) | ||
] | ||
] | ||
}, | ||
layout: { | ||
defaultBorder: false, | ||
paddingLeft: () => 0, | ||
paddingRight: () => 0, | ||
paddingTop: () => 0, | ||
paddingBottom: () => 5 | ||
} | ||
}, | ||
content | ||
], | ||
footer: (page) => ({ | ||
table: { | ||
widths: [93, 138, 97, 52, 70, 29], | ||
body: [ | ||
[ | ||
[ | ||
{ text: 'Postadresse:', style: 'footer', bold: true }, | ||
{ text: `${footer['postal-address'] || 'Postboks 2844\n2702 Skien'}`, style: 'footer' } | ||
], | ||
[ | ||
{ text: 'Besøksadresse:', style: 'footer', bold: true }, | ||
{ text: `${footer['visiting-address'] || 'Torggata 18, Skien\nSvend Foyns gate 9, Tønsberg'}`, style: 'footer' } | ||
], | ||
[ | ||
{ text: 'Sentralbord:', style: 'footer', bold: true }, | ||
{ text: `${footer.phone || '35 91 70 00'}`, style: 'footer' }, | ||
{ text: `${footer.email || 'post@vtfk.no'}`, style: 'footer' } | ||
], | ||
[ | ||
{ text: 'Org. nr.:', style: 'footer', bold: true }, | ||
{ text: `${footer.orgnr || '821 227 062'}`, style: 'footer' } | ||
], | ||
[ | ||
{ text: `${footer.url || 'vtfk.no'}`, style: 'footer', bold: true, alignment: 'right', fontSize: 10 } | ||
], | ||
[ | ||
{ text: footer['page-numbers'] === false ? '' : page, style: 'pagenumber' } | ||
] | ||
] | ||
] | ||
}, | ||
layout: { | ||
defaultBorder: false, | ||
paddingLeft: () => 0, | ||
paddingRight: () => 0, | ||
paddingTop: () => 0, | ||
paddingBottom: () => 0 | ||
}, | ||
margin: [65, 5, 65, 0] | ||
}), | ||
...style, | ||
...helpers | ||
} | ||
|
||
return defintion | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,114 @@ | ||
const formatDate = require('../lib/format-date') | ||
const style = require('../shared/style') | ||
const header = require('../shared/header') | ||
const helpers = require('../shared/helpers') | ||
const watermark = require('../shared/watermark') | ||
|
||
module.exports = ({ metadata, content }) => { | ||
const address = metadata.address || {} | ||
const document = metadata.document || {} | ||
const info = metadata.info || {} | ||
const footer = metadata.footer || {} | ||
|
||
const infoFields = [] | ||
const appendInfo = (field, title, parseField) => { | ||
if (field) { | ||
infoFields.push({ | ||
title, | ||
field: (parseField && typeof (parseField) === 'function' ? parseField(field) : field) | ||
}) | ||
} | ||
} | ||
|
||
appendInfo(info['our-date'] || new Date(), 'Vår dato', formatDate) | ||
appendInfo(info['your-date'], 'Dykkar dato', formatDate) | ||
appendInfo(info['our-reference'], 'Vår referanse') | ||
appendInfo(info['your-reference'], 'Dykkar referanse') | ||
appendInfo(info['our-caseworker'], 'Vår saksbehandlar') | ||
appendInfo(info.paragraph, 'Unnateke offentlegheit') | ||
|
||
const defintion = { | ||
pageSize: 'A4', | ||
pageOrientation: 'portrait', | ||
pageMargins: [65, 120, 65, 70], | ||
info: { | ||
title: document.title, | ||
author: document.author, | ||
subject: document.subject, | ||
keywords: document.keywords | ||
}, | ||
watermark: watermark(metadata, 'Førehandsvisning'), | ||
header, | ||
content: [ | ||
{ | ||
table: { | ||
widths: ['50%', '*', '*'], | ||
body: [ | ||
[ | ||
{ text: [address.name, address.street, address.city].filter(text => !!text).join('\n'), style: 'address', rowSpan: 2 }, | ||
{ text: `${info.sector || ''}`, style: 'info', bold: true, colSpan: 2, marginTop: 30 }, | ||
'' | ||
], | ||
[ | ||
'', | ||
infoFields.map(info => ({ text: `${info.title}:`, style: 'info' })), | ||
infoFields.map(info => ({ text: info.field, style: 'info' })) | ||
] | ||
] | ||
}, | ||
layout: { | ||
defaultBorder: false, | ||
paddingLeft: () => 0, | ||
paddingRight: () => 0, | ||
paddingTop: () => 0, | ||
paddingBottom: () => 5 | ||
} | ||
}, | ||
content | ||
], | ||
footer: (page) => ({ | ||
table: { | ||
widths: [93, 138, 97, 52, 70, 29], | ||
body: [ | ||
[ | ||
[ | ||
{ text: 'Postadresse:', style: 'footer', bold: true }, | ||
{ text: `${footer['postal-address'] || 'Postboks 2844\n2702 Skien'}`, style: 'footer' } | ||
], | ||
[ | ||
{ text: 'Besøksadresse:', style: 'footer', bold: true }, | ||
{ text: `${footer['visiting-address'] || 'Torggata 18, Skien\nSvend Foyns gate 9, Tønsberg'}`, style: 'footer' } | ||
], | ||
[ | ||
{ text: 'Sentralbord:', style: 'footer', bold: true }, | ||
{ text: `${footer.phone || '35 91 70 00'}`, style: 'footer' }, | ||
{ text: `${footer.email || 'post@vtfk.no'}`, style: 'footer' } | ||
], | ||
[ | ||
{ text: 'Org. nr.:', style: 'footer', bold: true }, | ||
{ text: `${footer.orgnr || '821 227 062'}`, style: 'footer' } | ||
], | ||
[ | ||
{ text: `${footer.url || 'vtfk.no'}`, style: 'footer', bold: true, alignment: 'right', fontSize: 10 } | ||
], | ||
[ | ||
{ text: footer['page-numbers'] === false ? '' : page, style: 'pagenumber' } | ||
] | ||
] | ||
] | ||
}, | ||
layout: { | ||
defaultBorder: false, | ||
paddingLeft: () => 0, | ||
paddingRight: () => 0, | ||
paddingTop: () => 0, | ||
paddingBottom: () => 0 | ||
}, | ||
margin: [65, 5, 65, 0] | ||
}), | ||
...style, | ||
...helpers | ||
} | ||
|
||
return defintion | ||
} |
Oops, something went wrong.