Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
482 commits
Select commit Hold shift + click to select a range
ee828c1
Update line ending config
Hopding Dec 29, 2019
dfd525e
Add JSFiddle demos to README
Hopding Dec 30, 2019
3ed2383
Merge branch 'master' of github.com:Hopding/pdf-lib
Hopding Dec 30, 2019
22e75e4
Fix cmaps (#298)
Hopding Dec 31, 2019
4d58586
Update package.json contributors
Hopding Dec 31, 2019
3959b54
Export decodePDFRawStream (#301)
Hopding Jan 1, 2020
61f9f67
Update dependencies and rollup plugins (#302)
Hopding Jan 1, 2020
da5c10c
Fix extra page bug (#303)
Hopding Jan 1, 2020
bd65cd1
Bump version to 1.3.1
Hopding Jan 1, 2020
c8dd8a2
Update png lib (#361)
Hopding Feb 21, 2020
a349264
Handle missing comments on binary "line" when parsing (#364)
Hopding Feb 23, 2020
404ee94
Bump version to 1.3.2
Hopding Feb 23, 2020
43b462f
Update README.md
Hopding Feb 26, 2020
d2b259b
Implement embedded PDFs (#348)
tessi Feb 26, 2020
4ffcfa7
Update contributors list
Hopding Feb 26, 2020
fefe416
Cleanup and minor refactoring
Hopding Feb 26, 2020
e2598db
Polish up page embedding
Hopding Feb 28, 2020
2af994a
Add page embedding example to README
Hopding Feb 28, 2020
1c75237
Export PDFEmbeddedPage and Embeddable
Hopding Feb 29, 2020
ff89407
Add downlevel-dts (#368)
Hopding Feb 29, 2020
d854c85
Bump version to 1.4.0
Hopding Feb 29, 2020
d85a500
Update JSFiddles
Hopding Feb 29, 2020
5cf1f84
Update README.md
Hopding Feb 29, 2020
6f296c6
Handle parsing empty dicts with whitespace between brackets (#370)
Hopding Mar 1, 2020
603c0f6
Fix page deletion bug (#378)
Hopding Mar 7, 2020
f8518ae
Bump version to 1.4.1
Hopding Mar 7, 2020
55fd5b1
Bump acorn from 5.7.3 to 5.7.4 (#383)
dependabot[bot] Mar 31, 2020
6bda122
Bump acorn from 5.7.3 to 5.7.4 in /apps/rn (#394)
dependabot[bot] Mar 31, 2020
9cd8d3a
Update README.md (#384)
ajmeese7 Apr 2, 2020
a73b629
Update dependencies (#403)
Hopding Apr 10, 2020
40ee586
Bump acorn from 6.1.1 to 6.4.1 (#404)
dependabot[bot] Apr 10, 2020
e88e70f
Enhance PDFPage set/get height (#405)
Hopding Apr 12, 2020
030109d
Add PDFObject accessors (#414)
Hopding Apr 18, 2020
73581cc
Read metadata fields (#423)
Hopding Apr 25, 2020
b363383
Fix embedded CMYK image (#415)
zwaldowski Apr 26, 2020
f00a23b
Fixups (#426)
Hopding Apr 26, 2020
2ba9e53
Update dependencies (#427)
Hopding Apr 26, 2020
6827c79
Bump version to 1.5.0
Hopding Apr 26, 2020
f7f9304
Add JSFiddle example to README
Hopding Apr 26, 2020
0bc4f7b
Handle non ASCII characters in PDF name objects (#429)
Hopding Apr 29, 2020
86ce8ab
Fix page removal bug (#441)
Hopding May 9, 2020
f056973
Feature/draw line cap style (#437)
taxilian May 9, 2020
36dd1fd
Add PDFPage.drawText.lineCap to tests
Hopding May 9, 2020
ff7e0f5
Bump version to 1.6.0
Hopding May 16, 2020
4eb4692
Support Deno (#448)
Hopding May 17, 2020
b0a1464
Update README.md
Hopding May 17, 2020
654aa9a
Cap parsed numbers at Number.MAX_SAFE_INTEGER (#458)
Hopding May 24, 2020
6e50f05
Make lineCap prop optional (#460)
Hopding May 25, 2020
d307d53
Add PDFDocument.load.capNumbers option (#461)
Hopding May 25, 2020
cbccb1f
Bump version to 1.6.1
Hopding May 25, 2020
126a7f3
Embed files (#455)
sebastinez May 26, 2020
4a1d507
Polish attachments code
Hopding May 29, 2020
05a53b5
Update attachment tests
Hopding May 30, 2020
cd2da77
Bump version to 1.7.0
Hopding May 30, 2020
1865ebe
Add attachments JSFiddle
Hopding May 30, 2020
72bca1f
Opacity - semi transparent objects (#487)
soadzoor Jun 17, 2020
c944857
Run prettier
Hopding Jun 17, 2020
52b1fe9
Refactor opacity code
Hopding Jun 18, 2020
05e34dd
Remove indirect objects with objectNumber=0 after parsing (#496)
Hopding Jun 20, 2020
c61aa4c
Update dependencies (#497)
Hopding Jun 20, 2020
d991ed4
Bump version to 1.8.0
Hopding Jun 20, 2020
d3d166e
Fix doc comment indentation
Hopding Jun 20, 2020
70fec5f
Fix doc comment indentation
Hopding Jun 20, 2020
c986165
Fix for #483 - Semi-transparent PNG rendered opaque in PDF (#502)
soadzoor Jun 23, 2020
cde65c0
Cleanup
Hopding Jun 23, 2020
b50bfdd
Fix dev experience Windows issues
Hopding Jun 23, 2020
09eab7d
Add blendMode options (#503)
bockoblur Jun 24, 2020
899dd74
Cleanup
Hopding Jun 25, 2020
1936c5f
Added highlevel ability to provide dashArray and dashPhase (#498)
soadzoor Jun 25, 2020
4efbdcc
Fix import mistake
Hopding Jun 25, 2020
e3be266
Merge branch 'master' of github.com:Hopding/pdf-lib
Hopding Jun 25, 2020
0990673
Added highlevel ability to provide lineCap style (#499)
soadzoor Jun 26, 2020
219a358
Cleanup
Hopding Jun 26, 2020
de10a77
Bump version to 1.9.0
Hopding Jun 26, 2020
44addc3
Add link to Discord server in README
Hopding Jun 27, 2020
1522af6
Rotation for ellipse and svgPath (#511)
soadzoor Jul 15, 2020
b1d7f45
Cleanup
Hopding Jul 15, 2020
e2c9e57
Bump lodash from 4.17.15 to 4.17.19 (#533)
dependabot[bot] Aug 2, 2020
795f617
Bump lodash from 4.17.15 to 4.17.19 in /apps/rn (#535)
dependabot[bot] Aug 2, 2020
8da936c
Fix breaking change to PDFPage.drawEllipse() (#547)
Hopding Aug 2, 2020
3b80ce6
Allow custom font name on embed (#543)
ztoben Aug 6, 2020
db40749
Add apps:node to clean script
Hopding Aug 8, 2020
b976da9
Fix circular dependency
Hopding Aug 8, 2020
496cdde
Bump version to 1.10.0
Hopding Aug 8, 2020
a9d3d1b
Support AcroForm Creation, Filling, and Reading (#599)
Hopding Sep 13, 2020
7c8f11f
Bump version to 1.11.0
Hopding Sep 13, 2020
efedc93
Add form jsfiddles
Hopding Sep 14, 2020
7ab0719
Make new widgets printable (#604)
Hopding Sep 15, 2020
17e1b22
Bump version to 1.11.1
Hopding Sep 15, 2020
74eae69
Fix null dict entries (#608)
Hopding Sep 18, 2020
255271d
Update README.md
Hopding Sep 22, 2020
c1a0b7e
Return false for PDFSignature.needsAppearancesUpdate (#626)
Hopding Oct 9, 2020
81bade3
Bump node-fetch from 2.6.0 to 2.6.1 (#598)
dependabot[bot] Oct 9, 2020
b5c80ea
Update references to Pika - must reference new name "Skypack" (#621)
zackdotcomputer Oct 9, 2020
18ff428
Bump version to 1.11.2
Hopding Oct 9, 2020
aaf7590
Add PDFDocument.addJavaScript method (#654)
Hopding Oct 31, 2020
2037a41
Bump version to 1.12.0
Hopding Nov 15, 2020
f6be8f9
Additional support for factur-x (PDF-A3) (#508)
DkDavid Nov 29, 2020
854bfef
Merge branch 'master' of github.com:Hopding/pdf-lib
Hopding Nov 29, 2020
e4de666
Add AFRelationship to tests
Hopding Nov 29, 2020
32ebd57
Support Hex String Default Appearances (#693)
Hopding Dec 6, 2020
f2db93f
Handle negative bounds (#687)
btecu Dec 6, 2020
2fbc010
Bump version to 1.13.0
Hopding Dec 6, 2020
2063765
Update package.json contributors
Hopding Dec 6, 2020
6596ae5
Font features (#704)
Hopding Dec 13, 2020
0b5c0e4
Bump ini from 1.3.5 to 1.3.7 in /apps/rn (#702)
dependabot[bot] Dec 13, 2020
2bc57a1
Expose widget page reference (#695)
btecu Dec 13, 2020
ad8858f
Do not add border when none is defined or set to transparent (#696)
btecu Dec 13, 2020
94f48b0
Add image stamping for TextField elements (#718)
Hopding Dec 20, 2020
79e414c
Add option to show document's title in window's title bar (#719)
Hopding Dec 20, 2020
560aec6
Form Flatten (#716)
btecu Dec 21, 2020
f5a91a2
Add form flattening to README
Hopding Dec 21, 2020
ac9f958
Bump version to 1.14.0
Hopding Dec 21, 2020
67e12ed
Add JSFiddle to README
Hopding Dec 21, 2020
fa7e275
Check all radio buttons in a group when deciding if the appearance ne…
btecu Dec 29, 2020
522f1ca
Bump version to 1.14.1
Hopding Dec 30, 2020
bfbc3ed
Support hidden form fields
jbeuckm Jan 2, 2021
4af026b
Update README.md
Hopding Jan 2, 2021
8449ca7
adding docs for embedding with subset
Jan 2, 2021
a10beb9
refactoring
Jan 2, 2021
ee0d482
removing extra space
Jan 2, 2021
8eebed4
test hidden flag
jbeuckm Jan 3, 2021
5d00f6d
support hidden in more field types
jbeuckm Jan 3, 2021
cb1025f
optional chaining
jbeuckm Jan 3, 2021
414fbbf
Fallback to finding the page using the reference (#723)
btecu Jan 5, 2021
8e19881
Update node test18
Hopding Jan 5, 2021
adf5a2e
Update deno test18
Hopding Jan 5, 2021
d6c5458
Update web test18
Hopding Jan 5, 2021
fb27819
Update rn test18
Hopding Jan 5, 2021
7e6ea3a
Merge pull request #732 from Hopding/723-cleanup
Hopding Jan 5, 2021
3afd2e1
Rotate in place when flattening
btecu Jan 5, 2021
fb10fad
Merge pull request #734 from btecu/flatten
Hopding Jan 9, 2021
a0f0dab
Merge pull request #730 from jbeuckm/support-hidden-form-fields
Hopding Jan 9, 2021
9da3431
Merge pull request #731 from vlio20/master
Hopding Jan 9, 2021
8af7fbd
Cleanup
Hopding Jan 9, 2021
92aa187
Merge pull request #741 from Hopding/731-cleanup
Hopding Jan 9, 2021
63645fb
Update README.md
lucashmorais Jan 9, 2021
1eae75d
Merge pull request #742 from lucashmorais/master
Hopding Jan 9, 2021
bace366
Ensure RadioGroups and CheckBoxes have APs (#743)
Hopding Jan 9, 2021
ea5e6ad
Bump version to 1.15.0
Hopding Jan 9, 2021
65b74ed
more ViewerPreferences (#745)
mcshaz Jan 24, 2021
1bb69d2
Cleanup #745
Hopding Jan 25, 2021
8458159
Merge pull request #769 from Hopding/cleanup-745
Hopding Jan 25, 2021
18b4bfa
Cleanup all annotations (#750)
btecu Jan 25, 2021
dff24c4
Update tests
Hopding Jan 25, 2021
97affb0
Merge conflicts
Hopding Jan 25, 2021
0b0729f
Merge pull request #770 from Hopding/cleanup-750
Hopding Jan 25, 2021
a778fa3
Cleanup 754a (#776)
Hopding Jan 27, 2021
2047bb8
Cleanup #754
Hopding Jan 27, 2021
2e0c7ef
Merge pull request #777 from Hopding/cleanup-754b
Hopding Jan 27, 2021
76bf633
Bump version to 1.16.0
Hopding Jan 27, 2021
3e45076
Ignore undocumented ViewerPreferences fields
Hopding Jan 27, 2021
9680b21
Create FUNDING.yml
Hopding Aug 19, 2021
e272d32
Remove pdf_specification.pdf
Hopding Aug 30, 2021
ffe15eb
Remove pdf_specification.pdf from tests
Hopding Aug 30, 2021
9689290
Explain the git history rewrite in README
Hopding Aug 30, 2021
6614b75
Fix punctuation ;)
Hopding Aug 30, 2021
e10290a
Add link to Adobe PDF specification
Hopding Aug 30, 2021
1cf24b5
Bump tar from 4.4.13 to 4.4.19 in /apps/rn
dependabot[bot] Sep 1, 2021
37bb1e6
Add bug issue template
Hopding Sep 18, 2021
4f68e77
Update bug.yml
Hopding Sep 18, 2021
13fcd17
Create other issue template
Hopding Sep 18, 2021
1877d38
Update other.yml
Hopding Sep 18, 2021
794a6ff
Merge pull request #978 from Hopding/dependabot/npm_and_yarn/apps/rn/…
Hopding Sep 18, 2021
919f5eb
Add maintainership details (#995)
Hopding Sep 19, 2021
c0bcf33
Fix markdown error in README
Hopding Sep 19, 2021
5b6095d
Update CONTRIBUTING.md
Hopding Sep 19, 2021
dc53369
Update bug.yml
Hopding Sep 19, 2021
1ec3a4e
Update bug.yml
Hopding Sep 19, 2021
8d1a264
Update bug.yml
Hopding Sep 19, 2021
2b6e937
Create issue_template.md
Hopding Sep 19, 2021
fe83dab
Update bug.yml
Hopding Sep 19, 2021
5423aae
Create proposal.yml
Hopding Sep 19, 2021
e540b39
Update proposal.yml
Hopding Sep 19, 2021
e315ed8
Update proposal.yml
Hopding Sep 19, 2021
ad3601f
Update bug.yml
Hopding Sep 19, 2021
2907411
Update bug.yml
Hopding Sep 19, 2021
ee0dc0e
Update proposal.yml
Hopding Sep 19, 2021
02ce7bc
Update proposal.yml
Hopding Sep 19, 2021
17bbba8
Create config.yml
Hopding Sep 19, 2021
a4bd56f
Update config.yml
Hopding Sep 19, 2021
cd8e5a9
Delete other.yml
Hopding Sep 19, 2021
2cd4189
Delete issue_template.md
Hopding Sep 19, 2021
865ac72
Update config.yml
Hopding Sep 19, 2021
36d4799
Create share.yml
Hopding Sep 19, 2021
27eb9d1
Create PULL_REQUEST_TEMPLATE.md
Hopding Sep 19, 2021
60efeb3
Update PULL_REQUEST_TEMPLATE.md
Hopding Sep 19, 2021
c1558a6
Update PULL_REQUEST_TEMPLATE.md
Hopding Sep 19, 2021
e9a1eff
Update PULL_REQUEST_TEMPLATE.md
Hopding Sep 19, 2021
1130bdb
Update PULL_REQUEST_TEMPLATE.md
Hopding Sep 19, 2021
44e2644
Add new dependencies section to CONTRIBUTING.md
Hopding Sep 19, 2021
457225f
Merge branch 'master' of github.com:Hopding/pdf-lib
Hopding Sep 19, 2021
3f0e7fb
Update PULL_REQUEST_TEMPLATE.md
Hopding Sep 19, 2021
7960c96
Update MAINTAINERSHIP.md
Hopding Sep 19, 2021
f3d3ef1
Update PULL_REQUEST_TEMPLATE.md
Hopding Sep 19, 2021
f27f8f2
Update PULL_REQUEST_TEMPLATE.md
Hopding Sep 19, 2021
4699a01
Create stale.yml
Hopding Sep 19, 2021
ae1a1ef
Update stale.yml
Hopding Sep 19, 2021
14e307d
Update PULL_REQUEST_TEMPLATE.md
Hopding Sep 19, 2021
5678941
Update stale.yml
Hopding Sep 19, 2021
7f5e6d4
Update stale.yml
Hopding Sep 20, 2021
67334e7
Update stale.yml
Hopding Sep 20, 2021
1d06a54
Update stale.yml
Hopding Sep 20, 2021
177856d
Create sponsors.yml
Hopding Sep 20, 2021
1518124
Create pr-labeler.yml
Hopding Sep 20, 2021
c51f3ac
Create labeler.yml
Hopding Sep 20, 2021
159a219
Create issue_template.md
Hopding Sep 20, 2021
119363d
Update RELEASING.md
Hopding Sep 21, 2021
803d77e
Update RELEASING.md
Hopding Sep 21, 2021
f3a305b
use flateStream to compress embedded PDF pages (#817)
cymen Sep 21, 2021
3b4fdd9
fix copy paste typo in radioGroup example (#985)
adrianjost Sep 21, 2021
9168383
Give access to ImageAlignment (#988)
oktapodia Sep 21, 2021
7b7f62f
Add Unit Tests To Check For Page Reference
andrew-trefethen Sep 23, 2021
c7a0588
add function to allow setting page reference for newly added fields
andrew-trefethen Sep 23, 2021
4298199
Set Page Reference for field widgets when added to a page
andrew-trefethen Sep 23, 2021
b07c4c3
Update README.md
Hopding Sep 26, 2021
e6861c5
Update RELEASING.md
Hopding Oct 1, 2021
1e9a8e4
Add the ability to copy a pdf (#986)
mohamedsalem401 Oct 1, 2021
155a6e5
Minor tweaks
Hopding Oct 1, 2021
5cb111a
Merge pull request #1011 from Hopding/load-a-copy-of-a-pdf-polish
Hopding Oct 1, 2021
9a71625
add Option to setPage Reference to PDFWidgetAnnotation
andrew-trefethen Oct 2, 2021
44ca0bc
Add option to Add page reference when calling PDFField.createWidget
andrew-trefethen Oct 2, 2021
1cb3e76
Have Fields.addToPage functions use new page option.
andrew-trefethen Oct 2, 2021
7bb4856
Remove unnecessary function
andrew-trefethen Oct 2, 2021
0dfe3fa
Merge pull request #1003 from Trapfether/setPageReferenceForNewFields
Hopding Oct 7, 2021
e0243db
Find and remove child widgets from the document context (#1002)
Trapfether Oct 7, 2021
b57b257
Scale page content (#991)
Oct 16, 2021
b3219d5
Cleanup
Hopding Oct 16, 2021
1ec56a0
Fix indentation
Hopding Oct 16, 2021
98e8777
Fix indentation
Hopding Oct 16, 2021
1ff8ef4
Merge pull request #1035 from Hopding/scale-page-content-tweaks
Hopding Oct 16, 2021
07bf247
Don't emit unused Helvetica (#820)
ssssota Oct 16, 2021
adeb734
deterministic key generation using pseudo randomness (#1033)
cocoliliace Oct 16, 2021
ed6a7b3
Cleanup
Hopding Oct 16, 2021
5fdefe9
Restore deleted function
Hopding Oct 16, 2021
60b3498
Restore deleted line
Hopding Oct 16, 2021
2f36ae3
Merge pull request #1036 from Hopding/1033-cleanup
Hopding Oct 16, 2021
b8a44bd
Bump version to 1.17.0
Hopding Oct 16, 2021
739dc59
Compute multiline font size for multiline inputs (#983)
milesnash Oct 31, 2021
d9c8c95
Tweak code for multiline text layout
Hopding Oct 31, 2021
49a1701
Fix key reuse bug (#1078)
Hopding Nov 6, 2021
a1abda4
Improved memory usage (#1032)
Masterwow3 Nov 6, 2021
fbdfbd9
#1032 cleanup
Hopding Nov 6, 2021
b692b96
Fix formatter error
Hopding Nov 6, 2021
c32a8bc
Actually fix the formatter error
Hopding Nov 6, 2021
4beebbe
Bump version to 1.17.1
Hopding Nov 6, 2021
0a328c4
Update PULL_REQUEST_TEMPLATE.md
Hopding Nov 6, 2021
ee6f3d2
Update bug.yml
Hopding Nov 6, 2021
49b8e5e
Update bug.yml
Hopding Nov 6, 2021
93dd36e
Merge branch 'master' of github.com:Hopding/pdf-lib
Hopding Nov 12, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
9 changes: 1 addition & 8 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,6 @@ jobs:
# specify the version you desire here
- image: circleci/node:11.4.0

# Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images
# documented at https://circleci.com/docs/2.0/circleci-images/
# - image: circleci/mongo:3.4.4

working_directory: ~/repo

steps:
Expand All @@ -22,9 +17,7 @@ jobs:
# Download and cache dependencies
- restore_cache:
keys:
- v1-dependencies-{{ checksum "package.json" }}
# fallback to using the latest cache if no exact match is found
- v1-dependencies-
- v1-dependencies-{{ checksum "package.json" }}

- run: yarn install

Expand Down
16 changes: 16 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
* text eol=lf

tests/**/*.encoded binary eol=lf
tests/**/*.decoded binary eol=lf

*.otf binary
*.ttf binary
*.woff binary
*.woff2 binary
*.pdf binary
*.png binary
*.jpg binary
*.eot binary
assets/**/* binary
*.jar binary
*.bat binary
12 changes: 12 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# These are supported funding model platforms

github: [Hopding] # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
patreon: # Replace with a single Patreon username
open_collective: # Replace with a single Open Collective username
ko_fi: # Replace with a single Ko-fi username
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
liberapay: # Replace with a single Liberapay username
issuehunt: # Replace with a single IssueHunt username
otechie: # Replace with a single Otechie username
custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
97 changes: 97 additions & 0 deletions .github/ISSUE_TEMPLATE/bug.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
name: Bug Report 🐛
description: Something not working? Let us know! Just be sure it's something we can reproduce.
labels: ["bug", "needs-triage"]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to submit a bug report! 😃
* Be sure to answer **all** of the questions below.
* Provide lots of detail. Too much info is better than not enough.
* If we can't reproduce the issue, we can't fix it.

If you've never created an issue on GitHub before, you might find these links helpful:
* [45 GitHub Issues Dos and Don'ts](https://davidwalsh.name/45-github-issues-dos-donts)
* [Smart Questions](http://catb.org/~esr/faqs/smart-questions.html)

You can read [MAINTAINERSHIP.md](https://github.com/Hopding/pdf-lib/blob/master/docs/MAINTAINERSHIP.md) to learn more about how this repo is maintained.
- type: textarea
attributes:
label: What were you trying to do?
description: Clearly describe what you were trying to do when you found this bug.
validations:
required: true
- type: textarea
attributes:
label: How did you attempt to do it?
description: Clearly describe, in detail, how you attempted to do this. Include both prose and code snippets in your response.
validations:
required: true
- type: textarea
attributes:
label: What actually happened?
description: Clearly describe what actually happened as a result of what you attempted. Be sure to include all relevant stacktraces, CLI output, and screenshots.
validations:
required: true
- type: textarea
attributes:
label: What did you expect to happen?
description: Clearly describe what you expected to happen as a result of what you attempted. Include examples of what you expected in your response.
validations:
required: true
- type: textarea
attributes:
label: How can we reproduce the issue?
description: |
📣 _This is a very important part of your report._

Provide **complete**, **executable** code that can be used to reproduce the bug (e.g. a git repo, ZIP file, or JSFiddle). You must attach (or provide links to) any PDFs, images, or other files necessary to run your code.

Your code example should be a [SSCCE](http://www.sscce.org/):
- Short (Small) - Don't include code that is irrelevant or unnecessary.
- Self Contained - Ensure everything is included, ready to go.
- Correct - No additional code or changes are needed to copy, paste, and execute it.
- Example - Demonstrates the problem you are reporting.

Please also type out a list of specific steps we can take to run your code and reproduce the issue. Depending on what you're reporting, this might be simple as running a JSFiddle or downloading a ZIP file and executing `node index.js`. Some issues will require more instructions.

> If you are unable to share certain files (e.g. confidential PDFs), then state this in your response. Be prepared to share the files privately (e.g. via email). If you are unable to do this then we probably can't fix the issue.

⚠️ If your response includes incomplete code or doesn't clearly state how to execute the code you've provided, your report will be closed without comment.

💖 Thank you for taking the time to create a well-defined report! This helps reduce the demand placed on maintainers trying to help you. We want to make this a pleasant, efficient process for both you and us!
validations:
required: true
- type: input
attributes:
label: Version
description: What version of `pdf-lib` are you using?
validations:
required: true
- type: dropdown
attributes:
label: What environment are you running pdf-lib in?
multiple: true
options:
- Browser
- Node
- Deno
- React Native
- Other
validations:
required: true
- type: checkboxes
attributes:
label: Checklist
options:
- label: My report includes a Short, Self Contained, Correct (Compilable) Example.
required: true
- label: I have attached all PDFs, images, and other files needed to run my SSCCE.
required: true
- type: textarea
attributes:
label: Additional Notes
description: |
Please provide any additional information or observations here.
validations:
required: false
9 changes: 9 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
blank_issues_enabled: false

contact_links:
- name: Get Help in GitHub Discussions 🎉
url: https://github.com/Hopding/pdf-lib/discussions
about: Have a question or idea? Want to talk to the community? Join us in pdf-lib's GitHub Discussions!
- name: Maintainership Information 🛠️
url: https://github.com/Hopding/pdf-lib/blob/master/docs/MAINTAINERSHIP.md
about: Learn how this repo is maintained and how we handle communication.
82 changes: 82 additions & 0 deletions .github/ISSUE_TEMPLATE/proposal.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
name: Proposal 💡
description: We're eager to improve pdf-lib! Have an idea you'd like to propose?
labels: ["proposal", "needs-triage"]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to submit a proposal!

In most cases, [discussions](https://github.com/Hopding/pdf-lib/discussions) are a better place to submit feedback and discuss ideas. This form is meant for ideas that have a clear path to implementation. You should only use this form to submit a proposal if:
* You have a specific idea in mind to improve `pdf-lib`.
* You've done your research.
* You've read [CONTRIBUTING.md](https://github.com/Hopding/pdf-lib/blob/master/docs/CONTRIBUTING.md) and understand what involved in making a change to `pdf-lib`.
* You've read the sections of the PDF specification listed [here](https://github.com/Hopding/pdf-lib/blob/master/docs/CONTRIBUTING.md#understanding-pdfs).
* You can describe a technical approach to implementing your idea.

If you still think this is the right form to propose you're idea, then please fill it out. We love well thought out, detailed, technical proposals! 💖

Keep the following in mind when filling out this form:
* Be sure to answer **all** of the questions below.
* Provide lots of detail. Too much info is better than not enough.

Please help us help you by reading the following posts before submitting your report! 😃
* [www.sscce.org](http://www.sscce.org/)
* [Smart Questions](http://catb.org/~esr/faqs/smart-questions.html)
* [45 GitHub Issues Dos and Don'ts](https://davidwalsh.name/45-github-issues-dos-donts)

(These posts are focused more on issues/questions, but can still help you write a good proposal).

You can read [MAINTAINERSHIP.md](https://github.com/Hopding/pdf-lib/blob/master/docs/MAINTAINERSHIP.md) to learn more about how this repo is maintained.
- type: textarea
attributes:
label: Describe your idea
description: Clearly describe your idea. How would it improve `pdf-lib`? Include code snippets to demonstrate what an API implementing your proposal could look like. Please provide visualizations (screenshots, diagrams, videos, etc...) if possible.
validations:
required: true
- type: textarea
attributes:
label: How could this be implemented?
description: Clearly describe how your idea could be implemented. Your response should be technical. What specific changes would be required to make this a reality?
validations:
required: true
- type: textarea
attributes:
label: What problem are you trying to solve?
description: Clearly explain the problem your proposal would solve. This might seem redundant in light of the previous question and that's okay.
validations:
required: true
- type: textarea
attributes:
label: Why does this matter to you?
description: Clearly explain why this proposal matters to you. What led you to think of it? Would it help you solve a problem or build a project?
validations:
required: true
- type: textarea
attributes:
label: Would others find this helpful?
description: Is this a niche problem/solution? How many other `pdf-lib` users do you think would benefit from your proposal?
validations:
required: true
- type: dropdown
attributes:
label: Are you interested in implementing your proposal?
multiple: false
options:
- 'Yes'
- 'No'
validations:
required: true
- type: textarea
attributes:
label: Why are you submitting a proposal?
description: Are you looking for somebody to work on this? Do you want to know if it's feasible? Just want to share your ideas & research? Do you want somebody to bounce ideas off of? Or something else?
validations:
required: true
- type: textarea
attributes:
label: Additional Notes
description: |
Please provide any additional information or observations here.
validations:
required: false
23 changes: 23 additions & 0 deletions .github/ISSUE_TEMPLATE/share.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Share What You're Working On ✨
description: Working on something? Let us know!
labels: ["in-progress", "needs-triage"]
body:
- type: markdown
attributes:
value: |
Use this form to let other contributors and the `pdf-lib` maintainers know that you're working on something.

You can read [MAINTAINERSHIP.md](https://github.com/Hopding/pdf-lib/blob/master/docs/MAINTAINERSHIP.md) to learn more about how this repo is maintained.
- type: textarea
attributes:
label: What are you working on?
description: Clearly describe what you're working on.
validations:
required: true
- type: textarea
attributes:
label: Additional Notes
description: |
Please provide any additional information or observations here.
validations:
required: false
58 changes: 58 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
<!--
👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇
👉 🚨 Do not remove or skip any sections in this template ⛔️ 👈
👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆

Thank you for taking the time to make a PR! 💖
Please fill out this template completely to help us provide a prompt review. 😃
You can add more sections if you like. ✅
-->

## What?
<!-- Describe what your PR does. Include code snippets demonstrating how to use any APIs you added/updated. -->

## Why?
<!-- Describe why you created this PR. Explain why others would find it useful. -->

## How?
<!-- Describe how your PR works. Did you consider any alternative implementations? -->

## Testing?
<!-- Describe how you tested your PR. Why are you confident it is correct? -->


## New Dependencies?
<!--
If you added a new dependency then please read https://github.com/Hopding/pdf-lib/blob/master/docs/CONTRIBUTING.md#adding-dependencies and then:
* Clearly explain why it is necessary.
* Explain how you know it is well tested.
* Explain how you know it is well documented.
* Explain how you know it is actively supported.
* State how much it will increase pdf-lib's bundle size.
* State how you know it will work in all JS environments.
If you did not add a new dependency, simply state "No".
-->

## Screenshots
<!-- If your changes can affect the visual appearance of a PDF, then provide screenshots demonstrating this. Otherwise state "N/A". -->

## Suggested Reading?
<!--
Have you read the PDF specification sections recommended in https://github.com/Hopding/pdf-lib/blob/master/docs/CONTRIBUTING.md#understanding-pdfs?
State "Yes" or "No".
-->

## Anything Else?
<!-- Please share any additional notes here. -->

## Checklist
- [ ] I read [CONTRIBUTING.md](https://github.com/Hopding/pdf-lib/blob/master/docs/CONTRIBUTING.md).
- [ ] I read [MAINTAINERSHIP.md#pull-requests](https://github.com/Hopding/pdf-lib/blob/master/docs/MAINTAINERSHIP.md#pull-requests).
- [ ] I added/updated unit tests for my changes.
- [ ] I added/updated integration tests for my changes.
- [ ] I [ran the integration tests](https://github.com/Hopding/pdf-lib/blob/master/docs/CONTRIBUTING.md#running-the-integration-tests).
- [ ] I tested my changes in Node, Deno, and the browser.
- [ ] I viewed documents produced with my changes in Adobe Acrobat, Foxit Reader, Firefox, and Chrome.
- [ ] I added/updated doc comments for any new/modified public APIs.
- [ ] My changes work for both **new** and **existing** PDF files.
- [ ] I [ran the linter](https://github.com/Hopding/pdf-lib/blob/master/docs/CONTRIBUTING.md#running-the-linter) on my changes.
13 changes: 13 additions & 0 deletions .github/issue_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# 🚨⚠️ STOP!!! ⚠️🚨

👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇

**All new issues must be created from a template: https://github.com/Hopding/pdf-lib/issues/new/choose**

👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆

* If you create an issue without using a template it will be closed without comment.
* Do not create an issue if you have a question. Open a [discussion](https://github.com/Hopding/pdf-lib/discussions/new) instead.
* If none of the templates match what you're looking for, then you should not create an issue. Start a [discussion](https://github.com/Hopding/pdf-lib/discussions/new) instead.

See [MAINTAINERSHIP.md#issues](https://github.com/Hopding/pdf-lib/blob/master/docs/MAINTAINERSHIP.md#issues) for more information.
4 changes: 4 additions & 0 deletions .github/labeler.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@

needs-triage:
- '*'
- '**/*'
13 changes: 13 additions & 0 deletions .github/workflows/pr-labeler.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Uses https://github.com/marketplace/actions/labeler

name: "Pull Request Labeler"
on:
- pull_request_target

jobs:
triage:
runs-on: ubuntu-latest
steps:
- uses: actions/labeler@v3
with:
repo-token: "${{ secrets.GITHUB_TOKEN }}"
16 changes: 16 additions & 0 deletions .github/workflows/sponsors.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Uses https://github.com/marketplace/actions/sponsor-labels

name: Label sponsors
on:
pull_request:
types: [opened]
issues:
types: [opened]
jobs:
build:
name: is-sponsor-label
runs-on: ubuntu-latest
steps:
- uses: JasonEtco/is-sponsor-label-action@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
Loading