Compare commits
7 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1e61719838 | ||
|
|
227188b012 | ||
|
|
790c043c70 | ||
|
|
02bba5fef0 | ||
|
|
c3a1b4566a | ||
|
|
7e90096586 | ||
|
|
158653e726 |
@@ -10,5 +10,5 @@ include:
|
|||||||
ref: 1.0.1
|
ref: 1.0.1
|
||||||
file: '/release-node.yml'
|
file: '/release-node.yml'
|
||||||
- project: '$CI_PROJECT_ROOT_NAMESPACE/ci-tools/pipeline/ci-tools-pipeline-project-foundry-module'
|
- project: '$CI_PROJECT_ROOT_NAMESPACE/ci-tools/pipeline/ci-tools-pipeline-project-foundry-module'
|
||||||
ref: main
|
ref: 1.0.1
|
||||||
file: '/pipeline-foundry-module.yml'
|
file: '/pipeline-foundry-module.yml'
|
||||||
|
|||||||
@@ -1,5 +1,9 @@
|
|||||||
## In development
|
## In development
|
||||||
|
|
||||||
|
## 1.1.0
|
||||||
|
|
||||||
|
- Add contextual menu to actor to PDF Export Characters sheet
|
||||||
|
|
||||||
## 1.0.0
|
## 1.0.0
|
||||||
|
|
||||||
### New features
|
### New features
|
||||||
|
|||||||
12
README.md
12
README.md
@@ -28,12 +28,8 @@ A print buton is added on top of sheet to export as pdf
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
|
A Contextual menu is added on Actor menu
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
## Comming soon
|
## Comming soon
|
||||||
|
|
||||||
## Module link
|
|
||||||
|
|
||||||
https://raw.githubusercontent.com/mcailleaux/WFRP4-FoundryVTT-wfrp4e-actor-sheet-print/dist/module.json
|
|
||||||
|
|
||||||
## Module Beta link
|
|
||||||
|
|
||||||
https://raw.githubusercontent.com/mcailleaux/WFRP4-FoundryVTT-wfrp4e-actor-sheet-print/dist-beta/module-beta.json
|
|
||||||
|
|||||||
@@ -1 +1,3 @@
|
|||||||
{}
|
{
|
||||||
|
"WFRP4SHEETPRINT.export.pdf": "Export to PDF"
|
||||||
|
}
|
||||||
|
|||||||
@@ -1 +1,3 @@
|
|||||||
{}
|
{
|
||||||
|
"WFRP4SHEETPRINT.export.pdf": "Exporter en PDF"
|
||||||
|
}
|
||||||
|
|||||||
3
local-deploy.sh
Normal file
3
local-deploy.sh
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
cp -r ./dist/* $LOCAL_FOUNDRY
|
||||||
|
|
||||||
|
|
||||||
BIN
media/actor-sheet-print-actor-button.png
Executable file
BIN
media/actor-sheet-print-actor-button.png
Executable file
Binary file not shown.
|
After Width: | Height: | Size: 96 KiB |
@@ -4,7 +4,7 @@
|
|||||||
"description": "Functions to print actor sheet",
|
"description": "Functions to print actor sheet",
|
||||||
"version": "${MODULE_VERSION}",
|
"version": "${MODULE_VERSION}",
|
||||||
"minimumCoreVersion": "0.8.0",
|
"minimumCoreVersion": "0.8.0",
|
||||||
"compatibleCoreVersion": "0.8.9",
|
"compatibleCoreVersion": "9",
|
||||||
"author": "Skeroujvapluvit",
|
"author": "Skeroujvapluvit",
|
||||||
"systems": ["wfrp4e"],
|
"systems": ["wfrp4e"],
|
||||||
"dependencies": [],
|
"dependencies": [],
|
||||||
@@ -22,7 +22,7 @@
|
|||||||
}
|
}
|
||||||
],
|
],
|
||||||
"styles": ["./styles/main.css"],
|
"styles": ["./styles/main.css"],
|
||||||
"url": "https://github.com/mcailleaux/WFRP4-FoundryVTT-wfrp4e-actor-sheet-print",
|
"url": "https://gitlab.com/greenskin-foundryvtt/wfrp4-actor-sheet-print",
|
||||||
"download": "https://gitlab.com/greenskin-foundryvtt/wfrp4-actor-sheet-print/-/releases/${MODULE_VERSION}/downloads/dist/wfrp4-actor-sheet-print.zip",
|
"download": "https://gitlab.com/greenskin-foundryvtt/wfrp4-actor-sheet-print/-/releases/${MODULE_VERSION}/downloads/dist/wfrp4-actor-sheet-print.zip",
|
||||||
"manifest": "https://gitlab.com/greenskin-foundryvtt/wfrp4-actor-sheet-print/-/releases/${MODULE_VERSION}/downloads/dist/module.json",
|
"manifest": "https://gitlab.com/greenskin-foundryvtt/wfrp4-actor-sheet-print/-/releases/${MODULE_VERSION}/downloads/dist/module.json",
|
||||||
"readme": "https://gitlab.com/greenskin-foundryvtt/wfrp4-actor-sheet-print/-/raw/${MODULE_VERSION}/README.md",
|
"readme": "https://gitlab.com/greenskin-foundryvtt/wfrp4-actor-sheet-print/-/raw/${MODULE_VERSION}/README.md",
|
||||||
|
|||||||
184
package-lock.json
generated
184
package-lock.json
generated
@@ -1,6 +1,7 @@
|
|||||||
{
|
{
|
||||||
"requires": true,
|
"version": "1.0.4",
|
||||||
"lockfileVersion": 1,
|
"lockfileVersion": 1,
|
||||||
|
"requires": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/code-frame": {
|
"@babel/code-frame": {
|
||||||
"version": "7.15.8",
|
"version": "7.15.8",
|
||||||
@@ -89,15 +90,15 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@discoveryjs/json-ext": {
|
"@discoveryjs/json-ext": {
|
||||||
"version": "0.5.5",
|
"version": "0.5.6",
|
||||||
"resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.5.tgz",
|
"resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.6.tgz",
|
||||||
"integrity": "sha512-6nFkfkmSeV/rqSaS4oWHgmpnYw194f6hmWF5is6b0J1naJZoiD0NTc9AiUwPHvWsowkjuHErCZT1wa0jg+BLIA==",
|
"integrity": "sha512-ws57AidsDvREKrZKYffXddNkyaF14iHNHm8VQnZH6t99E8gczjNN0GpvcGny0imC80yQ0tHz1xVUKk/KFQSUyA==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"@league-of-foundry-developers/foundry-vtt-types": {
|
"@league-of-foundry-developers/foundry-vtt-types": {
|
||||||
"version": "0.8.8-8",
|
"version": "0.8.9-9",
|
||||||
"resolved": "https://registry.npmjs.org/@league-of-foundry-developers/foundry-vtt-types/-/foundry-vtt-types-0.8.8-8.tgz",
|
"resolved": "https://registry.npmjs.org/@league-of-foundry-developers/foundry-vtt-types/-/foundry-vtt-types-0.8.9-9.tgz",
|
||||||
"integrity": "sha512-DjWRdl9PHh5CrnqmQBw19Swe/W1asmD5PjU0arMHL1Ni7Zo91o7eHoHqciOAU0M/Nu1BK0CH/Q+nXpNY9dsr3Q==",
|
"integrity": "sha512-CLpFu5XY6BnxVNou28MKZcvmjWWzv+UYLZ21QL+9OxFegMr5iE15pqyNHcTuJPhmJwnBD2WYUzl+vsAMjUfLLg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@types/jquery": "~3.5.6",
|
"@types/jquery": "~3.5.6",
|
||||||
@@ -106,8 +107,7 @@
|
|||||||
"pixi-particles": "4.3.1",
|
"pixi-particles": "4.3.1",
|
||||||
"pixi.js": "5.3.4",
|
"pixi.js": "5.3.4",
|
||||||
"socket.io-client": "4.1.2",
|
"socket.io-client": "4.1.2",
|
||||||
"tinymce": "5.8.1",
|
"tinymce": "5.8.1"
|
||||||
"typescript": "^4.3.5"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@pixi/accessibility": {
|
"@pixi/accessibility": {
|
||||||
@@ -488,15 +488,15 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@types/component-emitter": {
|
"@types/component-emitter": {
|
||||||
"version": "1.2.10",
|
"version": "1.2.11",
|
||||||
"resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.10.tgz",
|
"resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.11.tgz",
|
||||||
"integrity": "sha512-bsjleuRKWmGqajMerkzox19aGbscQX5rmmvvXl3wlIp5gMG1HgkiwPxsN5p070fBDKTNSPgojVbuY1+HWMbFhg==",
|
"integrity": "sha512-SRXjM+tfsSlA9VuG8hGO2nft2p8zjXCK1VcC6N4NXbBbYbSia9kzCChYQajIjzIqOOOuh5Ock6MmV2oux4jDZQ==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"@types/eslint": {
|
"@types/eslint": {
|
||||||
"version": "7.28.1",
|
"version": "8.2.1",
|
||||||
"resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-7.28.1.tgz",
|
"resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.2.1.tgz",
|
||||||
"integrity": "sha512-XhZKznR3i/W5dXqUhgU9fFdJekufbeBd5DALmkuXoeFcjbQcPk+2cL+WLHf6Q81HWAnM2vrslIHpGVyCAviRwg==",
|
"integrity": "sha512-UP9rzNn/XyGwb5RQ2fok+DzcIRIYwc16qTXse5+Smsy8MOIccCChT15KAwnsgQx4PzJkaMq4myFyZ4CL5TjhIQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@types/estree": "*",
|
"@types/estree": "*",
|
||||||
@@ -504,9 +504,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@types/eslint-scope": {
|
"@types/eslint-scope": {
|
||||||
"version": "3.7.1",
|
"version": "3.7.2",
|
||||||
"resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.1.tgz",
|
"resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.2.tgz",
|
||||||
"integrity": "sha512-SCFeogqiptms4Fg29WpOTk5nHIzfpKCemSN63ksBQYKTcXoJEmJagV+DhVmbapZzY4/5YaOV1nZwrsU79fFm1g==",
|
"integrity": "sha512-TzgYCWoPiTeRg6RQYgtuW7iODtVoKu3RVL72k3WohqhjfaOLK5Mg2T4Tg1o2bSfu0vPkoI48wdQFv5b/Xe04wQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@types/eslint": "*",
|
"@types/eslint": "*",
|
||||||
@@ -520,9 +520,9 @@
|
|||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"@types/jquery": {
|
"@types/jquery": {
|
||||||
"version": "3.5.7",
|
"version": "3.5.11",
|
||||||
"resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.5.7.tgz",
|
"resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.5.11.tgz",
|
||||||
"integrity": "sha512-Why+9t1KuqWtIqYKtbk6wgWbE1PjyXJOyGkpmTUh0RX5p4HL7nnRuBkjAO9P2r9tGQP6bLWxl77jRLew3V5xXg==",
|
"integrity": "sha512-lYZGdfOtUa0XFjIATQgiogqeTY5PNNMOmp3Jq48ghmJALL8t/IqABRqlEwdHfuUdA8iIE1uGD1HoI4a7Tiy6OA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@types/sizzle": "*"
|
"@types/sizzle": "*"
|
||||||
@@ -541,9 +541,9 @@
|
|||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"@types/node": {
|
"@types/node": {
|
||||||
"version": "16.10.4",
|
"version": "17.0.5",
|
||||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-16.10.4.tgz",
|
"resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.5.tgz",
|
||||||
"integrity": "sha512-EITwVTX5B4nDjXjGeQAfXOrm+Jn+qNjDmyDRtWoD+wZsl/RDPRTFRKivs4Mt74iOFlLOrE5+Kf+p5yjyhm3+cA==",
|
"integrity": "sha512-w3mrvNXLeDYV1GKTZorGJQivK6XLCoGwpnyJFbJVK/aTBQUxOCaa/GlFAAN3OTDFcb7h5tiFG+YXCO2By+riZw==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"@types/parse-json": {
|
"@types/parse-json": {
|
||||||
@@ -753,9 +753,9 @@
|
|||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"acorn": {
|
"acorn": {
|
||||||
"version": "8.5.0",
|
"version": "8.7.0",
|
||||||
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.5.0.tgz",
|
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz",
|
||||||
"integrity": "sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q==",
|
"integrity": "sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"acorn-import-assertions": {
|
"acorn-import-assertions": {
|
||||||
@@ -852,15 +852,15 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"browserslist": {
|
"browserslist": {
|
||||||
"version": "4.17.4",
|
"version": "4.19.1",
|
||||||
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.4.tgz",
|
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.19.1.tgz",
|
||||||
"integrity": "sha512-Zg7RpbZpIJRW3am9Lyckue7PLytvVxxhJj1CaJVlCWENsGEAOlnlt8X0ZxGRPp7Bt9o8tIRM5SEXy4BCPMJjLQ==",
|
"integrity": "sha512-u2tbbG5PdKRTUoctO3NBD8FQ5HdPh1ZXPHzp1rwaa5jTc+RV9/+RlWiAIKmjRPQF+xbGM9Kklj5bZQFa2s/38A==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"caniuse-lite": "^1.0.30001265",
|
"caniuse-lite": "^1.0.30001286",
|
||||||
"electron-to-chromium": "^1.3.867",
|
"electron-to-chromium": "^1.4.17",
|
||||||
"escalade": "^3.1.1",
|
"escalade": "^3.1.1",
|
||||||
"node-releases": "^2.0.0",
|
"node-releases": "^2.0.1",
|
||||||
"picocolors": "^1.0.0"
|
"picocolors": "^1.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -882,9 +882,9 @@
|
|||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"caniuse-lite": {
|
"caniuse-lite": {
|
||||||
"version": "1.0.30001267",
|
"version": "1.0.30001293",
|
||||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001267.tgz",
|
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001293.tgz",
|
||||||
"integrity": "sha512-r1mjTzAuJ9W8cPBGbbus8E0SKcUP7gn03R14Wk8FlAlqhH9hroy9nLqmpuXlfKEw/oILW+FGz47ipXV2O7x8lg==",
|
"integrity": "sha512-A4I5fB8Kxo0p/H3aXlaOkBp9mD0GspKmXfWHXOzcl0iHLi07EEVJdJeQPT4Yv3/dffRnrwluYZyXvMjbr6WhIA==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"canvg": {
|
"canvg": {
|
||||||
@@ -1029,9 +1029,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"debug": {
|
"debug": {
|
||||||
"version": "4.3.2",
|
"version": "4.3.3",
|
||||||
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
|
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
|
||||||
"integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
|
"integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"ms": "2.1.2"
|
"ms": "2.1.2"
|
||||||
@@ -1050,9 +1050,9 @@
|
|||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"electron-to-chromium": {
|
"electron-to-chromium": {
|
||||||
"version": "1.3.868",
|
"version": "1.4.28",
|
||||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.868.tgz",
|
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.28.tgz",
|
||||||
"integrity": "sha512-kZYCHqwJ1ctGrYDlOcWQH+/AftAm/KD4lEnLDNwS0kKwx1x6dU4zv+GuDjsPPOGn/2TjnKBaZjDyjXaoix0q/A==",
|
"integrity": "sha512-Gzbf0wUtKfyPaqf0Plz+Ctinf9eQIzxEqBHwSvbGfeOm9GMNdLxyu1dNiCUfM+x6r4BE0xUJNh3Nmg9gfAtTmg==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"end-of-stream": {
|
"end-of-stream": {
|
||||||
@@ -1159,9 +1159,9 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"estraverse": {
|
"estraverse": {
|
||||||
"version": "5.2.0",
|
"version": "5.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
|
||||||
"integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==",
|
"integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
|
||||||
"dev": true
|
"dev": true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1482,9 +1482,9 @@
|
|||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"jest-worker": {
|
"jest-worker": {
|
||||||
"version": "27.2.5",
|
"version": "27.4.5",
|
||||||
"resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.2.5.tgz",
|
"resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.4.5.tgz",
|
||||||
"integrity": "sha512-HTjEPZtcNKZ4LnhSp02NEH4vE+5OpJ0EsOWYvGQpHgUMLngydESAAMH5Wd/asPf29+XUDQZszxpLg1BkIIA2aw==",
|
"integrity": "sha512-f2s8kEdy15cv9r7q4KkzGXvlY0JTcmCbMHZBfSQDwW77REr45IDWwd0lksDFeVHH2jJ5pqb90T77XscrjeGzzg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@types/node": "*",
|
"@types/node": "*",
|
||||||
@@ -1595,18 +1595,18 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"mime-db": {
|
"mime-db": {
|
||||||
"version": "1.50.0",
|
"version": "1.51.0",
|
||||||
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.50.0.tgz",
|
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.51.0.tgz",
|
||||||
"integrity": "sha512-9tMZCDlYHqeERXEHO9f/hKfNXhre5dK2eE/krIvUjZbS2KPcqGDfNShIWS1uW9XOTKQKqK6qbeOci18rbfW77A==",
|
"integrity": "sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"mime-types": {
|
"mime-types": {
|
||||||
"version": "2.1.33",
|
"version": "2.1.34",
|
||||||
"resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.33.tgz",
|
"resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.34.tgz",
|
||||||
"integrity": "sha512-plLElXp7pRDd0bNZHw+nMd52vRYjLwQjygaNg7ddJ2uJtTlmnTCjWuPKxVu6//AdaRuME84SvLW91sIkBqGT0g==",
|
"integrity": "sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"mime-db": "1.50.0"
|
"mime-db": "1.51.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"mimic-fn": {
|
"mimic-fn": {
|
||||||
@@ -1668,9 +1668,9 @@
|
|||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node-releases": {
|
"node-releases": {
|
||||||
"version": "2.0.0",
|
"version": "2.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.1.tgz",
|
||||||
"integrity": "sha512-aA87l0flFYMzCHpTM3DERFSYxc6lv/BltdbRTOMZuxZ0cwZCD3mejE5n9vLhSJCN++/eOqr77G1IO5uXxlQYWA==",
|
"integrity": "sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"npm-run-path": {
|
"npm-run-path": {
|
||||||
@@ -2171,9 +2171,9 @@
|
|||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"source-map-support": {
|
"source-map-support": {
|
||||||
"version": "0.5.20",
|
"version": "0.5.21",
|
||||||
"resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.20.tgz",
|
"resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz",
|
||||||
"integrity": "sha512-n1lZZ8Ve4ksRqizaBQgxXDgKwttHDhyfQjA6YZZn8+AroHbsIz+JjwxQDxbp+7y5OYCI8t1Yk7etjD9CRd2hIw==",
|
"integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"buffer-from": "^1.0.0",
|
"buffer-from": "^1.0.0",
|
||||||
@@ -2214,9 +2214,9 @@
|
|||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"terser": {
|
"terser": {
|
||||||
"version": "5.9.0",
|
"version": "5.10.0",
|
||||||
"resolved": "https://registry.npmjs.org/terser/-/terser-5.9.0.tgz",
|
"resolved": "https://registry.npmjs.org/terser/-/terser-5.10.0.tgz",
|
||||||
"integrity": "sha512-h5hxa23sCdpzcye/7b8YqbE5OwKca/ni0RQz1uRX3tGh8haaGHqcuSqbGRybuAKNdntZ0mDgFNXPJ48xQ2RXKQ==",
|
"integrity": "sha512-AMmF99DMfEDiRJfxfY5jj5wNH/bYO09cniSqhfoyxc8sFoYIgkJy86G04UoZU5VjlpnplVu0K6Tx6E9b5+DlHA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"commander": "^2.20.0",
|
"commander": "^2.20.0",
|
||||||
@@ -2233,13 +2233,12 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"terser-webpack-plugin": {
|
"terser-webpack-plugin": {
|
||||||
"version": "5.2.4",
|
"version": "5.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.2.4.tgz",
|
"resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.0.tgz",
|
||||||
"integrity": "sha512-E2CkNMN+1cho04YpdANyRrn8CyN4yMy+WdFKZIySFZrGXZxJwJP6PMNGGc/Mcr6qygQHUUqRxnAPmi0M9f00XA==",
|
"integrity": "sha512-LPIisi3Ol4chwAaPP8toUJ3L4qCM1G0wao7L3qNv57Drezxj6+VEyySpPw4B1HSO2Eg/hDY/MNF5XihCAoqnsQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"jest-worker": "^27.0.6",
|
"jest-worker": "^27.4.1",
|
||||||
"p-limit": "^3.1.0",
|
|
||||||
"schema-utils": "^3.1.1",
|
"schema-utils": "^3.1.1",
|
||||||
"serialize-javascript": "^6.0.0",
|
"serialize-javascript": "^6.0.0",
|
||||||
"source-map": "^0.6.1",
|
"source-map": "^0.6.1",
|
||||||
@@ -2283,15 +2282,15 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"typescript": {
|
"typescript": {
|
||||||
"version": "4.3.5",
|
"version": "4.5.4",
|
||||||
"resolved": "https://registry.npmjs.org/typescript/-/typescript-4.3.5.tgz",
|
"resolved": "https://registry.npmjs.org/typescript/-/typescript-4.5.4.tgz",
|
||||||
"integrity": "sha512-DqQgihaQ9cUrskJo9kIyW/+g0Vxsk8cDtZ52a3NGh0YNTfpUSArXSohyUGnvbPazEPLu398C0UxmKSOrPumUzA==",
|
"integrity": "sha512-VgYs2A2QIRuGphtzFV7aQJduJ2gyfTljngLzjpfW9FoYZF6xuw1W0vW9ghCKLfcWrCFxK81CSGRAvS1pn4fIUg==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"uglify-js": {
|
"uglify-js": {
|
||||||
"version": "3.14.2",
|
"version": "3.14.5",
|
||||||
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.14.2.tgz",
|
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.14.5.tgz",
|
||||||
"integrity": "sha512-rtPMlmcO4agTUfz10CbgJ1k6UAoXM2gWb3GoMPPZB/+/Ackf8lNWk11K4rYi2D0apgoFRLtQOZhb+/iGNJq26A==",
|
"integrity": "sha512-qZukoSxOG0urUTvjc2ERMTcAy+BiFh3weWAkeurLwjrCba73poHmG3E36XEjd/JGukMzwTL7uCxZiAexj8ppvQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
@@ -2339,16 +2338,10 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"v8-compile-cache": {
|
|
||||||
"version": "2.3.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz",
|
|
||||||
"integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"watchpack": {
|
"watchpack": {
|
||||||
"version": "2.2.0",
|
"version": "2.3.1",
|
||||||
"resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.3.1.tgz",
|
||||||
"integrity": "sha512-up4YAn/XHgZHIxFBVCdlMiWDj6WaLKpwVeGQk2I5thdYxF/KmF0aaz6TfJZ/hfl1h/XlcDr7k1KH7ThDagpFaA==",
|
"integrity": "sha512-x0t0JuydIo8qCNctdDrn1OzH/qDzk2+rdCOC3YzumZ42fiMqmQ7T3xQurykYMhYfHaPHTp4ZxAx2NfUo1K6QaA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"glob-to-regexp": "^0.4.1",
|
"glob-to-regexp": "^0.4.1",
|
||||||
@@ -2356,9 +2349,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"webpack": {
|
"webpack": {
|
||||||
"version": "5.58.2",
|
"version": "5.65.0",
|
||||||
"resolved": "https://registry.npmjs.org/webpack/-/webpack-5.58.2.tgz",
|
"resolved": "https://registry.npmjs.org/webpack/-/webpack-5.65.0.tgz",
|
||||||
"integrity": "sha512-3S6e9Vo1W2ijk4F4PPWRIu6D/uGgqaPmqw+av3W3jLDujuNkdxX5h5c+RQ6GkjVR+WwIPOfgY8av+j5j4tMqJw==",
|
"integrity": "sha512-Q5or2o6EKs7+oKmJo7LaqZaMOlDWQse9Tm5l1WAfU/ujLGN5Pb0SqGeVkN/4bpPmEqEP5RnVhiqsOtWtUVwGRw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@types/eslint-scope": "^3.7.0",
|
"@types/eslint-scope": "^3.7.0",
|
||||||
@@ -2383,14 +2376,14 @@
|
|||||||
"schema-utils": "^3.1.0",
|
"schema-utils": "^3.1.0",
|
||||||
"tapable": "^2.1.1",
|
"tapable": "^2.1.1",
|
||||||
"terser-webpack-plugin": "^5.1.3",
|
"terser-webpack-plugin": "^5.1.3",
|
||||||
"watchpack": "^2.2.0",
|
"watchpack": "^2.3.1",
|
||||||
"webpack-sources": "^3.2.0"
|
"webpack-sources": "^3.2.2"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"webpack-cli": {
|
"webpack-cli": {
|
||||||
"version": "4.9.0",
|
"version": "4.9.1",
|
||||||
"resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.9.0.tgz",
|
"resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.9.1.tgz",
|
||||||
"integrity": "sha512-n/jZZBMzVEl4PYIBs+auy2WI0WTQ74EnJDiyD98O2JZY6IVIHJNitkYp/uTXOviIOMfgzrNvC9foKv/8o8KSZw==",
|
"integrity": "sha512-JYRFVuyFpzDxMDB+v/nanUdQYcZtqFPGzmlW4s+UkPMFhSpfRNmf1z4AwYcHJVdvEFAM7FFCQdNTpsBYhDLusQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@discoveryjs/json-ext": "^0.5.0",
|
"@discoveryjs/json-ext": "^0.5.0",
|
||||||
@@ -2404,7 +2397,6 @@
|
|||||||
"import-local": "^3.0.2",
|
"import-local": "^3.0.2",
|
||||||
"interpret": "^2.2.0",
|
"interpret": "^2.2.0",
|
||||||
"rechoir": "^0.7.0",
|
"rechoir": "^0.7.0",
|
||||||
"v8-compile-cache": "^2.2.0",
|
|
||||||
"webpack-merge": "^5.7.3"
|
"webpack-merge": "^5.7.3"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@@ -2456,9 +2448,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"webpack-sources": {
|
"webpack-sources": {
|
||||||
"version": "3.2.1",
|
"version": "3.2.2",
|
||||||
"resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.2.tgz",
|
||||||
"integrity": "sha512-t6BMVLQ0AkjBOoRTZgqrWm7xbXMBzD+XDq2EZ96+vMfn3qKgsvdXZhbPZ4ElUOpdv4u+iiGe+w3+J75iy/bYGA==",
|
"integrity": "sha512-cp5qdmHnu5T8wRg2G3vZZHoJPN14aqQ89SyQ11NpGH5zEMDCclt49rzo+MaRazk7/UeILhAI+/sEtcM+7Fr0nw==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"which": {
|
"which": {
|
||||||
|
|||||||
13
package.json
13
package.json
@@ -2,18 +2,19 @@
|
|||||||
"scripts": {
|
"scripts": {
|
||||||
"old-build": "tsc -p tsconfig.json && cp -r ./src ./dist",
|
"old-build": "tsc -p tsconfig.json && cp -r ./src ./dist",
|
||||||
"package": "sh ./package.sh",
|
"package": "sh ./package.sh",
|
||||||
"build": "webpack"
|
"build": "webpack",
|
||||||
|
"local-deploy": "npm run package && sh ./local-deploy.sh"
|
||||||
},
|
},
|
||||||
"version": "1.0.4",
|
"version": "1.1.0",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@league-of-foundry-developers/foundry-vtt-types": "0.8.8-8",
|
"@league-of-foundry-developers/foundry-vtt-types": "0.8.9-9",
|
||||||
"husky": "4.3.7",
|
"husky": "4.3.7",
|
||||||
"prettier": "2.2.1",
|
"prettier": "2.2.1",
|
||||||
"pretty-quick": "3.1.0",
|
"pretty-quick": "3.1.0",
|
||||||
"typescript": "4.3.5",
|
"typescript": "4.5.4",
|
||||||
"ts-loader": "9.2.6",
|
"ts-loader": "9.2.6",
|
||||||
"webpack": "5.58.2",
|
"webpack": "5.65.0",
|
||||||
"webpack-cli": "4.9.0"
|
"webpack-cli": "4.9.1"
|
||||||
},
|
},
|
||||||
"husky": {
|
"husky": {
|
||||||
"hooks": {
|
"hooks": {
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
|
rm -fr dist
|
||||||
npm run build
|
npm run build
|
||||||
mkdir -p ./dist/lang
|
cp -r $MODULE_DIRS dist/
|
||||||
mkdir -p ./dist/styles
|
export MODULE_VERSION=$(jq ".version" package.json | sed -r 's/["]+//g')
|
||||||
cp ./lang/* ./dist/lang/
|
envsubst '${MODULE_VERSION}' < ./module.json > ./dist/module.json
|
||||||
cp ./styles/* ./dist/styles/
|
|
||||||
cp module.json ./dist/module.json
|
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
export const i18n = () => (<any>game).i18n;
|
export const i18n = () => (<any>game).i18n;
|
||||||
export const i18nLocalize = (id: string) => i18n().localize(id);
|
export const i18nLocalize = (id: string) => i18n().localize(id);
|
||||||
export const i18nFormat = (id: string, data?: any) => i18n().format(id, data);
|
export const i18nFormat = (id: string, data?: any) => i18n().format(id, data);
|
||||||
|
export const user = () => (<any>game).user;
|
||||||
|
export const isGM = () => user()?.isGM ?? false;
|
||||||
|
|
||||||
export const TEXT_SIZE = 8;
|
export const TEXT_SIZE = 8;
|
||||||
export const LABEL_SIZE = 6;
|
export const LABEL_SIZE = 6;
|
||||||
|
|||||||
188
src/main.ts
188
src/main.ts
@@ -4,7 +4,13 @@ import { Row } from './elements/row';
|
|||||||
import { Image } from './elements/image';
|
import { Image } from './elements/image';
|
||||||
import { Box } from './elements/box';
|
import { Box } from './elements/box';
|
||||||
import { Util } from './util';
|
import { Util } from './util';
|
||||||
import { i18nLocalize, LABEL_SIZE, MARGINS, TEXT_SIZE } from './constants';
|
import {
|
||||||
|
i18nLocalize,
|
||||||
|
isGM,
|
||||||
|
LABEL_SIZE,
|
||||||
|
MARGINS,
|
||||||
|
TEXT_SIZE,
|
||||||
|
} from './constants';
|
||||||
import { ItemData } from '@league-of-foundry-developers/foundry-vtt-types/src/foundry/common/data/data.mjs';
|
import { ItemData } from '@league-of-foundry-developers/foundry-vtt-types/src/foundry/common/data/data.mjs';
|
||||||
import { LabelledValues } from './elements/labelled-values';
|
import { LabelledValues } from './elements/labelled-values';
|
||||||
import { Text } from './elements/text';
|
import { Text } from './elements/text';
|
||||||
@@ -13,10 +19,48 @@ import { Column } from './elements/column';
|
|||||||
import { Separator } from './elements/separator';
|
import { Separator } from './elements/separator';
|
||||||
import { Blank } from './elements/blank';
|
import { Blank } from './elements/blank';
|
||||||
|
|
||||||
|
Hooks.on('getActorDirectoryEntryContext', async (_, options) => {
|
||||||
|
options.push({
|
||||||
|
name: i18nLocalize('WFRP4SHEETPRINT.export.pdf'),
|
||||||
|
condition: isGM(),
|
||||||
|
icon: '<i class="fas fa-file-pdf"></i>',
|
||||||
|
callback: async (target) => {
|
||||||
|
const actor: Actor & any = (<any>game).actors.get(
|
||||||
|
target.attr('data-document-id')
|
||||||
|
);
|
||||||
|
await generatePdf(actor);
|
||||||
|
},
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
Hooks.on(
|
Hooks.on(
|
||||||
'renderActorSheetWfrp4eCharacter',
|
'renderActorSheetWfrp4eCharacter',
|
||||||
async (app: ActorSheet, html: JQuery) => {
|
async (app: ActorSheet, html: JQuery) => {
|
||||||
const actor: Actor & any = app.actor;
|
const actor: Actor & any = app.actor;
|
||||||
|
|
||||||
|
addActorSheetActionButton(html, 'print', async () => {
|
||||||
|
await generatePdf(actor);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
function addActorSheetActionButton(
|
||||||
|
html: JQuery,
|
||||||
|
icon: string,
|
||||||
|
onClick: () => void
|
||||||
|
) {
|
||||||
|
const button = document.createElement('a');
|
||||||
|
button.classList.add('print');
|
||||||
|
button.innerHTML = `<i class="fas fa-${icon}"> </i>`;
|
||||||
|
button.addEventListener('click', () => {
|
||||||
|
onClick();
|
||||||
|
});
|
||||||
|
const header = html.find('.window-header');
|
||||||
|
const title = header.find('.window-title');
|
||||||
|
title.after(button);
|
||||||
|
}
|
||||||
|
|
||||||
|
async function generatePdf(actor: Actor & any) {
|
||||||
const actorData = actor.data;
|
const actorData = actor.data;
|
||||||
// @ts-ignore
|
// @ts-ignore
|
||||||
const actorDetails = actorData.data.details;
|
const actorDetails = actorData.data.details;
|
||||||
@@ -31,7 +75,7 @@ Hooks.on(
|
|||||||
const currentCareer: Item & any = actor.currentCareer;
|
const currentCareer: Item & any = actor.currentCareer;
|
||||||
const careerData: ItemData = currentCareer?.data;
|
const careerData: ItemData = currentCareer?.data;
|
||||||
const careerDetail: any = careerData?.data;
|
const careerDetail: any = careerData?.data;
|
||||||
addActorSheetActionButton(html, 'print', () => {
|
|
||||||
const docBuilder = new PdfBuilder({
|
const docBuilder = new PdfBuilder({
|
||||||
orientation: 'p',
|
orientation: 'p',
|
||||||
unit: 'mm',
|
unit: 'mm',
|
||||||
@@ -46,9 +90,7 @@ Hooks.on(
|
|||||||
actor.itemCategories.skill
|
actor.itemCategories.skill
|
||||||
.map((item) => {
|
.map((item) => {
|
||||||
return {
|
return {
|
||||||
label: `${item.name} (${i18nLocalize(
|
label: `${item.name} (${i18nLocalize(item.characteristic.abrev)})`,
|
||||||
item.characteristic.abrev
|
|
||||||
)})`,
|
|
||||||
value: item.data.data.total.value,
|
value: item.data.data.total.value,
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
@@ -111,9 +153,7 @@ Hooks.on(
|
|||||||
item.data.data.range.value
|
item.data.data.range.value
|
||||||
} (${item.Range}), ${item.data.data.damage.rangedValue} (${
|
} (${item.Range}), ${item.data.data.damage.rangedValue} (${
|
||||||
item.Damage
|
item.Damage
|
||||||
}), ${item.OriginalQualities.concat(item.OriginalFlaws).join(
|
}), ${item.OriginalQualities.concat(item.OriginalFlaws).join(', ')}`;
|
||||||
', '
|
|
||||||
)}`;
|
|
||||||
})
|
})
|
||||||
.sort((a, b) => a.localeCompare(b)),
|
.sort((a, b) => a.localeCompare(b)),
|
||||||
1,
|
1,
|
||||||
@@ -231,17 +271,14 @@ Hooks.on(
|
|||||||
if (moneyByName[money.name] == null) {
|
if (moneyByName[money.name] == null) {
|
||||||
moneyByName[money.name] = 0;
|
moneyByName[money.name] = 0;
|
||||||
}
|
}
|
||||||
moneyByName[money.name] =
|
moneyByName[money.name] = moneyByName[money.name] + money.quantity.value;
|
||||||
moneyByName[money.name] + money.quantity.value;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const trappingsHeader = new Texts(
|
const trappingsHeader = new Texts(
|
||||||
0,
|
0,
|
||||||
0,
|
0,
|
||||||
[
|
[
|
||||||
`${i18nLocalize('Trappings')} : ${i18nLocalize(
|
`${i18nLocalize('Trappings')} : ${i18nLocalize('Money')} : ${moneyNames
|
||||||
'Money'
|
|
||||||
)} : ${moneyNames
|
|
||||||
.map((m) => {
|
.map((m) => {
|
||||||
return `${m} : ${moneyByName[m]}`;
|
return `${m} : ${moneyByName[m]}`;
|
||||||
})
|
})
|
||||||
@@ -339,12 +376,7 @@ Hooks.on(
|
|||||||
new Column(0, 0, [
|
new Column(0, 0, [
|
||||||
new Row(0, 0, [
|
new Row(0, 0, [
|
||||||
new LabelledText(0, 0, 'Name', `${actor.name}`),
|
new LabelledText(0, 0, 'Name', `${actor.name}`),
|
||||||
new LabelledText(
|
new LabelledText(0, 0, 'Species', `${actorDetails?.species?.value}`),
|
||||||
0,
|
|
||||||
0,
|
|
||||||
'Species',
|
|
||||||
`${actorDetails?.species?.value}`
|
|
||||||
),
|
|
||||||
new LabelledText(0, 0, 'Gender', `${actorDetails?.gender?.value}`),
|
new LabelledText(0, 0, 'Gender', `${actorDetails?.gender?.value}`),
|
||||||
]),
|
]),
|
||||||
new Row(imageWidth + MARGINS.left + 1, 0, [
|
new Row(imageWidth + MARGINS.left + 1, 0, [
|
||||||
@@ -382,60 +414,20 @@ Hooks.on(
|
|||||||
'Distinguishing Mark',
|
'Distinguishing Mark',
|
||||||
`${actorDetails?.distinguishingmark?.value}`
|
`${actorDetails?.distinguishingmark?.value}`
|
||||||
),
|
),
|
||||||
new LabelledText(
|
new LabelledText(0, 0, 'Star Sign', `${actorDetails?.starsign?.value}`),
|
||||||
0,
|
|
||||||
0,
|
|
||||||
'Star Sign',
|
|
||||||
`${actorDetails?.starsign?.value}`
|
|
||||||
),
|
|
||||||
]),
|
]),
|
||||||
Blank.heightBlank(2),
|
Blank.heightBlank(2),
|
||||||
new Row(0, 0, [
|
new Row(0, 0, [
|
||||||
new LabelledText(
|
new LabelledText(0, 0, 'CHARAbbrev.WS', `${actorCharacs?.ws?.value}`),
|
||||||
0,
|
new LabelledText(0, 0, 'CHARAbbrev.BS', `${actorCharacs?.bs?.value}`),
|
||||||
0,
|
|
||||||
'CHARAbbrev.WS',
|
|
||||||
`${actorCharacs?.ws?.value}`
|
|
||||||
),
|
|
||||||
new LabelledText(
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
'CHARAbbrev.BS',
|
|
||||||
`${actorCharacs?.bs?.value}`
|
|
||||||
),
|
|
||||||
new LabelledText(0, 0, 'CHARAbbrev.S', `${actorCharacs?.s?.value}`),
|
new LabelledText(0, 0, 'CHARAbbrev.S', `${actorCharacs?.s?.value}`),
|
||||||
new LabelledText(0, 0, 'CHARAbbrev.T', `${actorCharacs?.t?.value}`),
|
new LabelledText(0, 0, 'CHARAbbrev.T', `${actorCharacs?.t?.value}`),
|
||||||
new LabelledText(0, 0, 'CHARAbbrev.I', `${actorCharacs?.i?.value}`),
|
new LabelledText(0, 0, 'CHARAbbrev.I', `${actorCharacs?.i?.value}`),
|
||||||
new LabelledText(
|
new LabelledText(0, 0, 'CHARAbbrev.Ag', `${actorCharacs?.ag?.value}`),
|
||||||
0,
|
new LabelledText(0, 0, 'CHARAbbrev.Dex', `${actorCharacs?.dex?.value}`),
|
||||||
0,
|
new LabelledText(0, 0, 'CHARAbbrev.Int', `${actorCharacs?.int?.value}`),
|
||||||
'CHARAbbrev.Ag',
|
new LabelledText(0, 0, 'CHARAbbrev.WP', `${actorCharacs?.wp?.value}`),
|
||||||
`${actorCharacs?.ag?.value}`
|
new LabelledText(0, 0, 'CHARAbbrev.Fel', `${actorCharacs?.fel?.value}`),
|
||||||
),
|
|
||||||
new LabelledText(
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
'CHARAbbrev.Dex',
|
|
||||||
`${actorCharacs?.dex?.value}`
|
|
||||||
),
|
|
||||||
new LabelledText(
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
'CHARAbbrev.Int',
|
|
||||||
`${actorCharacs?.int?.value}`
|
|
||||||
),
|
|
||||||
new LabelledText(
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
'CHARAbbrev.WP',
|
|
||||||
`${actorCharacs?.wp?.value}`
|
|
||||||
),
|
|
||||||
new LabelledText(
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
'CHARAbbrev.Fel',
|
|
||||||
`${actorCharacs?.fel?.value}`
|
|
||||||
),
|
|
||||||
]),
|
]),
|
||||||
new Row(0, 0, [
|
new Row(0, 0, [
|
||||||
new LabelledText(0, 0, 'Move', `${actorDetails?.move?.value}`),
|
new LabelledText(0, 0, 'Move', `${actorDetails?.move?.value}`),
|
||||||
@@ -461,15 +453,9 @@ Hooks.on(
|
|||||||
new Text(0, 0, 'Skills'),
|
new Text(0, 0, 'Skills'),
|
||||||
skills,
|
skills,
|
||||||
new Separator(0, 0),
|
new Separator(0, 0),
|
||||||
new Text(
|
new Text(0, 0, `${i18nLocalize('Talents')} : ${i18nLocalize('Tests')}`),
|
||||||
0,
|
|
||||||
0,
|
|
||||||
`${i18nLocalize('Talents')} : ${i18nLocalize('Tests')}`
|
|
||||||
),
|
|
||||||
talents,
|
talents,
|
||||||
traits.elements.length > 0
|
traits.elements.length > 0 ? new Separator(0, 0) : Blank.heightBlank(0),
|
||||||
? new Separator(0, 0)
|
|
||||||
: Blank.heightBlank(0),
|
|
||||||
traits.elements.length > 0
|
traits.elements.length > 0
|
||||||
? new Text(0, 0, 'Traits')
|
? new Text(0, 0, 'Traits')
|
||||||
: Blank.heightBlank(0),
|
: Blank.heightBlank(0),
|
||||||
@@ -519,16 +505,12 @@ Hooks.on(
|
|||||||
)
|
)
|
||||||
: Blank.heightBlank(0),
|
: Blank.heightBlank(0),
|
||||||
ammunitions,
|
ammunitions,
|
||||||
armours.elements.length > 0
|
armours.elements.length > 0 ? new Separator(0, 0) : Blank.heightBlank(0),
|
||||||
? new Separator(0, 0)
|
|
||||||
: Blank.heightBlank(0),
|
|
||||||
armours.elements.length > 0
|
armours.elements.length > 0
|
||||||
? new Text(0, 0, 'Armour')
|
? new Text(0, 0, 'Armour')
|
||||||
: Blank.heightBlank(0),
|
: Blank.heightBlank(0),
|
||||||
armours,
|
armours,
|
||||||
petty.elements.length > 0
|
petty.elements.length > 0 ? new Separator(0, 0) : Blank.heightBlank(0),
|
||||||
? new Separator(0, 0)
|
|
||||||
: Blank.heightBlank(0),
|
|
||||||
petty.elements.length > 0
|
petty.elements.length > 0
|
||||||
? new Text(
|
? new Text(
|
||||||
0,
|
0,
|
||||||
@@ -541,9 +523,7 @@ Hooks.on(
|
|||||||
)
|
)
|
||||||
: Blank.heightBlank(0),
|
: Blank.heightBlank(0),
|
||||||
petty,
|
petty,
|
||||||
spell.elements.length > 0
|
spell.elements.length > 0 ? new Separator(0, 0) : Blank.heightBlank(0),
|
||||||
? new Separator(0, 0)
|
|
||||||
: Blank.heightBlank(0),
|
|
||||||
spell.elements.length > 0
|
spell.elements.length > 0
|
||||||
? new Text(
|
? new Text(
|
||||||
0,
|
0,
|
||||||
@@ -558,9 +538,7 @@ Hooks.on(
|
|||||||
)
|
)
|
||||||
: Blank.heightBlank(0),
|
: Blank.heightBlank(0),
|
||||||
spell,
|
spell,
|
||||||
blessing.elements.length > 0
|
blessing.elements.length > 0 ? new Separator(0, 0) : Blank.heightBlank(0),
|
||||||
? new Separator(0, 0)
|
|
||||||
: Blank.heightBlank(0),
|
|
||||||
blessing.elements.length > 0
|
blessing.elements.length > 0
|
||||||
? new Text(
|
? new Text(
|
||||||
0,
|
0,
|
||||||
@@ -571,9 +549,7 @@ Hooks.on(
|
|||||||
)
|
)
|
||||||
: Blank.heightBlank(0),
|
: Blank.heightBlank(0),
|
||||||
blessing,
|
blessing,
|
||||||
miracle.elements.length > 0
|
miracle.elements.length > 0 ? new Separator(0, 0) : Blank.heightBlank(0),
|
||||||
? new Separator(0, 0)
|
|
||||||
: Blank.heightBlank(0),
|
|
||||||
miracle.elements.length > 0
|
miracle.elements.length > 0
|
||||||
? new Text(
|
? new Text(
|
||||||
0,
|
0,
|
||||||
@@ -594,23 +570,17 @@ Hooks.on(
|
|||||||
? new Text(0, 0, 'Psychology')
|
? new Text(0, 0, 'Psychology')
|
||||||
: Blank.heightBlank(0),
|
: Blank.heightBlank(0),
|
||||||
psychology,
|
psychology,
|
||||||
critical.elements.length > 0
|
critical.elements.length > 0 ? new Separator(0, 0) : Blank.heightBlank(0),
|
||||||
? new Separator(0, 0)
|
|
||||||
: Blank.heightBlank(0),
|
|
||||||
critical.elements.length > 0
|
critical.elements.length > 0
|
||||||
? new Text(0, 0, 'Criticals')
|
? new Text(0, 0, 'Criticals')
|
||||||
: Blank.heightBlank(0),
|
: Blank.heightBlank(0),
|
||||||
critical,
|
critical,
|
||||||
disease.elements.length > 0
|
disease.elements.length > 0 ? new Separator(0, 0) : Blank.heightBlank(0),
|
||||||
? new Separator(0, 0)
|
|
||||||
: Blank.heightBlank(0),
|
|
||||||
disease.elements.length > 0
|
disease.elements.length > 0
|
||||||
? new Text(0, 0, 'Diseases')
|
? new Text(0, 0, 'Diseases')
|
||||||
: Blank.heightBlank(0),
|
: Blank.heightBlank(0),
|
||||||
disease,
|
disease,
|
||||||
injury.elements.length > 0
|
injury.elements.length > 0 ? new Separator(0, 0) : Blank.heightBlank(0),
|
||||||
? new Separator(0, 0)
|
|
||||||
: Blank.heightBlank(0),
|
|
||||||
injury.elements.length > 0
|
injury.elements.length > 0
|
||||||
? new Text(0, 0, 'Injuries')
|
? new Text(0, 0, 'Injuries')
|
||||||
: Blank.heightBlank(0),
|
: Blank.heightBlank(0),
|
||||||
@@ -639,23 +609,5 @@ Hooks.on(
|
|||||||
mutationM,
|
mutationM,
|
||||||
]),
|
]),
|
||||||
]);
|
]);
|
||||||
docBuilder.doc.save(`${app.actor.name}.pdf`);
|
docBuilder.doc.save(`${actor.name}.pdf`);
|
||||||
});
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
function addActorSheetActionButton(
|
|
||||||
html: JQuery,
|
|
||||||
icon: string,
|
|
||||||
onClick: () => void
|
|
||||||
) {
|
|
||||||
const button = document.createElement('a');
|
|
||||||
button.classList.add('print');
|
|
||||||
button.innerHTML = `<i class="fas fa-${icon}"> </i>`;
|
|
||||||
button.addEventListener('click', () => {
|
|
||||||
onClick();
|
|
||||||
});
|
|
||||||
const header = html.find('.window-header');
|
|
||||||
const title = header.find('.window-title');
|
|
||||||
title.after(button);
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user