@lpdfio/lpdf 0.16.0 → 0.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE CHANGED
@@ -8,13 +8,13 @@ License inquiries: license@lpdf.io
8
8
 
9
9
  ## Choosing Your License
10
10
 
11
- Lpdf is available under three license tiers: a free Community License for individuals and qualifying organizations, a Professional License for mid-size commercial use, and an Enterprise License for larger organizations. All license tiers receive the complete feature set — no capabilities are gated behind paid plans.
11
+ Lpdf is available under three license tiers: a free Community License for individuals and qualifying organizations, a Professional License for mid-size commercial use, and an Enterprise License for larger organizations. Which tier applies matters only in production: use in non-production environments is covered by the Community License for every organization, whatever its revenue. All license tiers receive the complete feature set — no capabilities are gated behind paid plans.
12
12
 
13
13
  ### Definitions
14
14
 
15
15
  "Production environment" means any environment in which the Software processes real user data or supports live business operations, including staging environments accessible by end users.
16
16
 
17
- "Production Context" means a distinct, independently operated system, application, or automated workflow that uses the Software in a production environment, where "independently operated" means it serves a separate and identifiable purpose, user base, or business function. For the avoidance of doubt: multiple delivery channels (web, mobile, desktop, API) of the same system serving the same purpose and user base constitute a single Production Context; all internal business operations of an organization where the organization's own personnel are the sole end users constitute a single Production Context regardless of the number of internal systems or services involved; a service or component that operates exclusively as part of a larger system and has no independent production deployment is not a separate Production Context.
17
+ "Production System" means a distinct, independently operated system, application, or automated workflow that uses the Software in a production environment, where "independently operated" means it serves a separate and identifiable purpose, user base, or business function. For the avoidance of doubt: multiple delivery channels (web, mobile, desktop, API) of the same system serving the same purpose and user base constitute a single Production System; all internal business operations of an organization where the organization's own personnel are the sole end users constitute a single Production System regardless of the number of internal systems or services involved; a service or component that operates exclusively as part of a larger system and has no independent production deployment is not a separate Production System.
18
18
 
19
19
  ### Equal Features Across All Tiers
20
20
 
@@ -28,6 +28,10 @@ The author of the wrapping library or framework is responsible for obtaining a v
28
28
 
29
29
  This exemption does not apply if the dependency was introduced, created, or controlled by the licensee's organization for the purpose of circumventing license requirements.
30
30
 
31
+ ### Non-Production Use
32
+
33
+ Use of the Software in non-production environments is covered by the Community License for any organization, whatever its annual gross revenue, with no time limit. The revenue thresholds below determine which license is required for use in a production environment.
34
+
31
35
  ### Individuals and Open-Source Projects
32
36
 
33
37
  Personal use and open-source projects whose source code is publicly available under an OSI-approved license qualify for the Community License at no cost.
@@ -44,11 +48,11 @@ Organizations whose revenue crosses the 1,000,000 USD threshold have a **90-day
44
48
 
45
49
  ### Mid-Size Businesses
46
50
 
47
- Companies and organizations whose total annual gross revenue exceeded **1,000,000 USD** but did not exceed **10,000,000 USD** in the most recent 12-month fiscal year must obtain a Professional License for each Production Context in which they use the Software.
51
+ Companies and organizations whose total annual gross revenue exceeded **1,000,000 USD** but did not exceed **10,000,000 USD** in the most recent 12-month fiscal year must obtain a Professional License for each Production System in which they use the Software.
48
52
 
49
53
  ### Larger Businesses
50
54
 
51
- Companies and organizations whose total annual gross revenue exceeded **10,000,000 USD** in the most recent 12-month fiscal year must obtain an Enterprise License for each Production Context in which they use the Software.
55
+ Companies and organizations whose total annual gross revenue exceeded **10,000,000 USD** in the most recent 12-month fiscal year must obtain an Enterprise License for each Production System in which they use the Software.
52
56
 
53
57
  Organizations whose revenue crosses the 10,000,000 USD threshold have a **90-day grace period** following the close of their fiscal year to obtain an Enterprise license. During this grace period, continued use under a Professional License is permitted. The licensee remains subject to the terms of their existing Professional License and does not gain Enterprise rights until an Enterprise License is obtained.
54
58
 
@@ -58,11 +62,13 @@ Paid licenses directly fund the continued development, maintenance, and improvem
58
62
 
59
63
  ---
60
64
 
61
- ## Unregistered Use
65
+ ## Unlicensed Use
62
66
 
63
- Use of the Software without a valid license key ("Unregistered Use") is permitted solely for evaluation and local testing. It does not constitute a license for use in a production environment, commercial deployment, or distribution.
67
+ Use of the Software without a valid license key, including with an expired key or after the license under which a key was issued has ended ("Unlicensed Use"), is permitted in non-production environments by anyone, with no time limit, and in production environments by those who qualify for the Community License.
64
68
 
65
- Unregistered Use is subject to the following restriction:
69
+ Unlicensed Use is not a substitute for a Professional or Enterprise License. An organization that requires one for a Production System may not use the Software in that Production System without it, whether or not the attribution notice appears.
70
+
71
+ Unlicensed Use is subject to the following restriction:
66
72
 
67
73
  **Attribution.** Each document rendered shall include an attribution notice in the form specified in the Software documentation. This notice may not be suppressed, removed, or obscured.
68
74
 
@@ -72,7 +78,7 @@ This restriction is lifted upon obtaining a valid license key. Community keys ar
72
78
 
73
79
  ## Lpdf Community License
74
80
 
75
- *Applies to: individuals, open-source projects, non-profit organizations, and companies with annual gross revenue under 1,000,000 USD.*
81
+ *Applies to: individuals, open-source projects, non-profit organizations, and companies with annual gross revenue under 1,000,000 USD; and to any organization, whatever its revenue, for use in non-production environments.*
76
82
 
77
83
  Permission is hereby granted, free of charge, to any person or qualifying organization obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
78
84
 
@@ -84,11 +90,11 @@ A license key issued under this license may be used by you, your employees, and
84
90
 
85
91
  All modifications to the Software made by the licensee remain the intellectual property of the licensee. Codesense LLC claims no ownership over modifications unless they are voluntarily submitted as contributions to the Lpdf project under a separate Contributor License Agreement.
86
92
 
87
- If your organization's annual gross revenue exceeds 1,000,000 USD, your rights under this Community License to use the Software in commercial Production Contexts are automatically terminated upon expiration of the 90-day grace period described above, and you must obtain a Professional or Enterprise license for each such Production Context. Use under this Community License by individuals, open-source projects, and non-profit organizations is not subject to revenue thresholds and is unaffected by this provision.
93
+ If your organization's annual gross revenue exceeds 1,000,000 USD, your rights under this Community License to use the Software in commercial Production Systems are automatically terminated upon expiration of the 90-day grace period described above, and you must obtain a Professional or Enterprise license for each such Production System. Use under this Community License by individuals, open-source projects, and non-profit organizations is not subject to revenue thresholds and is unaffected by this provision. Your rights under this Community License for use in non-production environments are also unaffected.
88
94
 
89
95
  ### License Key Expiration
90
96
 
91
- License keys issued under this license are valid for one year from the date of issuance. Before expiry, a new key must be generated from the portal and deployed in place of the expiring key. A key may be renewed at no cost provided the licensee continues to qualify under this Community License. Use of an expired key is treated as Unregistered Use — documents rendered without a valid key will include an attribution notice as described above.
97
+ This Community License runs for a term of one year, and license keys issued under it are valid until 7 days after the end of the term in which they are issued. The term may be renewed from the portal at no cost provided the licensee continues to qualify under this Community License; use in non-production environments always qualifies. After each renewal, new keys are generated from the portal and deployed in place of the previous ones. Use of an expired key is treated as Unlicensed Use — documents rendered without a valid key will include an attribution notice as described above.
92
98
 
93
99
  ### Governing Law
94
100
 
@@ -112,25 +118,25 @@ License rights may not be rented, leased, or transferred to any third party. A l
112
118
 
113
119
  ### License Grant
114
120
 
115
- Subject to payment of the applicable license fee per Production Context, Codesense LLC grants the licensee a non-exclusive, worldwide, royalty-free license to use the Software within a single licensed Production Context:
121
+ Subject to payment of the applicable license fee per Production System, Codesense LLC grants the licensee a non-exclusive, worldwide, royalty-free license to use the Software within a single licensed Production System:
116
122
 
117
- - Use, copy, modify, and integrate the Software into the licensed Production Context
118
- - Deploy the Software across any number of servers, environments, and infrastructure serving that Production Context
119
- - Distribute the Software as a component of the licensed Production Context
123
+ - Use, copy, modify, and integrate the Software into the licensed Production System
124
+ - Deploy the Software across any number of servers, environments, and infrastructure serving that Production System
125
+ - Distribute the Software as a component of the licensed Production System
120
126
 
121
- A separate license is required for each additional Production Context in which the licensee uses the Software in a production environment.
127
+ A separate license is required for each additional Production System in which the licensee uses the Software in a production environment.
122
128
 
123
- **Tier compliance.** Licensee is responsible for ensuring their use of the Software complies with the applicable license tier at all times. If the licensee's annual gross revenue crosses 10,000,000 USD, the licensee must obtain an Enterprise License for each affected Production Context within 90 days of the close of the fiscal year in which the threshold was crossed. Use of a Professional License key while qualifying for the Enterprise tier is a material breach of this Agreement.
129
+ **Tier compliance.** Licensee is responsible for ensuring their use of the Software complies with the applicable license tier at all times. If the licensee's annual gross revenue crosses 10,000,000 USD, the licensee must obtain an Enterprise License for each affected Production System within 90 days of the close of the fiscal year in which the threshold was crossed. Use of a Professional License key while qualifying for the Enterprise tier is a material breach of this Agreement.
124
130
 
125
- ### License Fees and Evaluation
131
+ ### License Fees and Subscription
126
132
 
127
- A license fee is required per Production Context for use of the Software in a production environment (as defined above). Evaluation and testing in non-production environments is permitted without a license for a period not exceeding 30 days.
133
+ A license fee is required per Production System for use of the Software in a production environment (as defined above). Use in non-production environments needs no paid license, at any revenue and for any length of time: it is covered by the Community License, or is Unlicensed Use if no valid license key is installed.
128
134
 
129
- Upon payment, the licensee receives a perpetual license for the version of Lpdf current at the time of purchase, plus one year of updates, new features, and security patches. Continued access to new versions after the first year requires annual renewal. Cancellation of renewal does not affect the perpetual license for the version already held.
135
+ Upon payment, the licensee receives a license for the term of the subscription, covering every version of Lpdf, and every update, new feature, and security patch, released while the subscription is active. The license does not continue after the subscription ends, and it grants no perpetual right to any version.
130
136
 
131
- License keys issued under this license are valid for one year and are renewed automatically upon annual payment. An expired key reverts to Unregistered Use behavior — documents rendered without a valid key will include an attribution notice. A valid key is required to exercise the license grant in any production environment.
137
+ License keys issued under this license are valid until 30 days after the end of the subscription term in which they are issued. The subscription renews automatically upon annual payment; after each renewal, new keys are generated from the portal and deployed in place of the previous ones. An expired key reverts to Unlicensed Use behavior — documents rendered without a valid key will include an attribution notice. A valid key is required to exercise the license grant in any production environment.
132
138
 
133
- **Active subscription required.** The license grant is contingent on an active subscription in good standing. A technically valid key does not authorize use of the Software after the subscription has expired or been cancelled. Use of any key following subscription lapse — including keys that remain technically valid — constitutes unauthorized use and a material breach of this Agreement.
139
+ **Active subscription required.** The license grant is contingent on an active subscription in good standing. A subscription renewed within 30 days after its term ends is treated as never having lapsed, including for use during those 30 days. Otherwise, once the subscription has expired or been cancelled, further use of the Software is Unlicensed Use, which does not permit use in a Production System that requires this license. Keys issued under the license may no longer be used, including keys that remain technically valid, and using one is a material breach of this Agreement. If a payment for the license is refunded in full or reversed through a chargeback, the license is treated as though that payment had never been made, and no key issued under the license since that payment authorizes use of the Software in any environment, production or non-production. If a chargeback is later reversed, this no longer applies. None of this prevents the licensee from obtaining a Community License where they qualify for one.
134
140
 
135
141
  ### Support
136
142
 
@@ -152,7 +158,7 @@ All copies, modifications, and distributions of the Software must retain the ori
152
158
 
153
159
  ### Data and Privacy
154
160
 
155
- Codesense LLC does not collect, process, or retain any data that the licensee processes through the Software. All data processed by Lpdf remains solely within the licensee's infrastructure. For more information, see the Codesense LLC Privacy Policy at lpdf.io/privacy.
161
+ Codesense LLC does not collect, process, or retain any data that the licensee processes through the Software. All data processed by Lpdf remains solely within the licensee's infrastructure.
156
162
 
157
163
  ### Export Compliance
158
164
 
@@ -180,39 +186,39 @@ Notwithstanding the foregoing, either party may seek injunctive or other equitab
180
186
 
181
187
  Licensees agree not to make false statements of fact about Lpdf, Codesense LLC, or its contributors that are intended to cause material harm to the reputation of the project or the company. This clause does not restrict good-faith criticism, bug reports, public discussion of software deficiencies, or reviews based on the licensee's genuine experience.
182
188
 
183
- License rights may not be rented, leased, or transferred to any third party. A license key issued under this license may be used by the licensee's employees, contractors, and personnel of Controlled Entities (as defined in the License Grant below) working on Production Contexts licensed by the licensee. The licensee may not share or distribute a license key for use in Production Contexts not licensed by the licensee; any Production Context operated independently by a Controlled Entity requires its own license obtained by that entity.
189
+ License rights may not be rented, leased, or transferred to any third party. A license key issued under this license may be used by the licensee's employees, contractors, and personnel of Controlled Entities (as defined in the License Grant below) working on Production Systems licensed by the licensee. The licensee may not share or distribute a license key for use in Production Systems not licensed by the licensee; any Production System operated independently by a Controlled Entity requires its own license obtained by that entity.
184
190
 
185
191
  ### License Grant
186
192
 
187
- Subject to payment of the applicable license fee per Production Context, Codesense LLC grants the licensee a non-exclusive, worldwide, royalty-free license for an unlimited number of developers within the licensee's organization to use the Software within a single licensed Production Context:
193
+ Subject to payment of the applicable license fee per Production System, Codesense LLC grants the licensee a non-exclusive, worldwide, royalty-free license for an unlimited number of developers within the licensee's organization to use the Software within a single licensed Production System:
188
194
 
189
- - Use, copy, modify, and integrate the Software into the licensed Production Context
190
- - Deploy the Software across any number of servers, environments, and infrastructure serving that Production Context
191
- - Distribute the Software as a component of the licensed Production Context
195
+ - Use, copy, modify, and integrate the Software into the licensed Production System
196
+ - Deploy the Software across any number of servers, environments, and infrastructure serving that Production System
197
+ - Distribute the Software as a component of the licensed Production System
192
198
 
193
- A separate license is required for each additional Production Context in which the licensee uses the Software in a production environment.
199
+ A separate license is required for each additional Production System in which the licensee uses the Software in a production environment.
194
200
 
195
- **Controlled Entities.** "Controlled Entities" means wholly owned subsidiaries and entities in which the licensee holds more than 50% ownership or voting control. Personnel of Controlled Entities may use license keys issued under this license solely for Production Contexts licensed by the licensee. This does not extend the license to Production Contexts operated independently by a Controlled Entity; each such Production Context requires its own license obtained by the Controlled Entity at the tier applicable to that entity's annual gross revenue.
201
+ **Controlled Entities.** "Controlled Entities" means wholly owned subsidiaries and entities in which the licensee holds more than 50% ownership or voting control. Personnel of Controlled Entities may use license keys issued under this license solely for Production Systems licensed by the licensee. This does not extend the license to Production Systems operated independently by a Controlled Entity; each such Production System requires its own license obtained by the Controlled Entity at the tier applicable to that entity's annual gross revenue.
196
202
 
197
- **Tier compliance.** Licensee is responsible for ensuring their use of the Software complies with the applicable license tier at all times. Each Controlled Entity using the Software must qualify for the tier under which they operate. If a Controlled Entity's annual gross revenue would independently qualify that entity for a different tier, that entity must obtain its own license at the applicable tier for any Production Context it independently operates.
203
+ **Tier compliance.** Licensee is responsible for ensuring their use of the Software complies with the applicable license tier at all times. Each Controlled Entity using the Software must qualify for the tier under which they operate. If a Controlled Entity's annual gross revenue would independently qualify that entity for a different tier, that entity must obtain its own license at the applicable tier for any Production System it independently operates.
198
204
 
199
- ### License Fees and Evaluation
205
+ ### License Fees and Subscription
200
206
 
201
- A license fee is required per Production Context for use of the Software in a production environment (as defined above). Evaluation and testing in non-production environments is permitted without a license for a period not exceeding 30 days.
207
+ A license fee is required per Production System for use of the Software in a production environment (as defined above). Use in non-production environments needs no paid license, at any revenue and for any length of time: it is covered by the Community License, or is Unlicensed Use if no valid license key is installed.
202
208
 
203
- Upon payment, the licensee receives a perpetual license for the major version of Lpdf current at the time of purchase, plus access to updates, new features, and security patches within that major version for the duration of the active subscription. Cancellation of renewal does not affect the perpetual license for the major version already held.
209
+ Upon payment, the licensee receives a license for the term of the subscription, covering every version of Lpdf, and every update, new feature, and security patch, released while the subscription is active. The license does not continue after the subscription ends, and it grants no perpetual right to any version, whatever keys remain technically valid.
204
210
 
205
211
  **License keys.** License keys issued under this license are locked to the major version of Lpdf current at the time of generation and carry no date expiry. While the subscription is active and in good standing, the licensee may generate new keys for the current major version from the portal at any time. When a new major version of Lpdf is released, a new key must be generated from the portal to use that version; keys generated for a prior major version continue to function with that version only. The right to generate new keys requires an active subscription; key generation rights terminate upon subscription lapse.
206
212
 
207
- **Active subscription required.** The license grant is contingent on an active subscription in good standing. A technically valid key does not authorize use of the Software after the subscription has expired or been cancelled. Use of any key following subscription lapse — including keys that carry no date expiry and remain technically valid — constitutes unauthorized use and a material breach of this Agreement.
213
+ **Active subscription required.** The license grant is contingent on an active subscription in good standing. A subscription renewed within 60 days after its term ends is treated as never having lapsed, including for use during those 60 days. Otherwise, once the subscription has expired or been cancelled, further use of the Software is Unlicensed Use, which does not permit use in a Production System that requires this license. Keys issued under the license may no longer be used, including keys that carry no date expiry and remain technically valid, and using one is a material breach of this Agreement. If a payment for the license is refunded in full or reversed through a chargeback, the license is treated as though that payment had never been made, and no key issued under the license since that payment — including keys that carry no date expiry — authorizes use of the Software in any environment, production or non-production. If a chargeback is later reversed, this no longer applies. None of this prevents the licensee from obtaining a Community License where they qualify for one.
208
214
 
209
215
  ### Support
210
216
 
211
- Enterprise License holders receive priority support from Codesense LLC. Supported response times and escalation procedures are defined in the Enterprise Support Policy at lpdf.io/support/enterprise. Custom SLA terms may be negotiated as part of a Master Service Agreement.
217
+ Enterprise License holders receive priority support from Codesense LLC. Supported response times and escalation procedures are defined at lpdf.io/support. Custom SLA terms may be negotiated as part of a Master Service Agreement.
212
218
 
213
219
  ### Contract
214
220
 
215
- Enterprise licensees may request a Master Service Agreement (MSA) in place of the standard Terms of Service available at lpdf.io/terms. To initiate an MSA request, contact license@lpdf.io. The standard terms govern until a fully executed MSA is in place. Invoice billing is available upon request.
221
+ Enterprise licensees may request a Master Service Agreement (MSA) in place of the standard terms of this license. To initiate an MSA request, contact license@lpdf.io. The standard terms govern until a fully executed MSA is in place. Invoice billing is available upon request.
216
222
 
217
223
  ### Audit
218
224
 
@@ -230,7 +236,7 @@ All copies, modifications, and distributions of the Software must retain the ori
230
236
 
231
237
  ### Data and Privacy
232
238
 
233
- Codesense LLC does not collect, process, or retain any data that the licensee processes through the Software. All data processed by Lpdf remains solely within the licensee's infrastructure. For more information, see the Codesense LLC Privacy Policy at lpdf.io/privacy.
239
+ Codesense LLC does not collect, process, or retain any data that the licensee processes through the Software. All data processed by Lpdf remains solely within the licensee's infrastructure.
234
240
 
235
241
  ### Export Compliance
236
242
 
@@ -250,6 +256,8 @@ Notwithstanding the foregoing, either party may seek injunctive or other equitab
250
256
 
251
257
  ---
252
258
 
259
+ Licenses are purchased, renewed and managed, and license keys issued, through the Codesense portal at my.codesense.dev, under its Terms of Service and Refund Policy.
260
+
253
261
  For license purchases and inquiries: license@lpdf.io
254
262
 
255
- Privacy Policy: lpdf.io/privacy | Terms of Service: lpdf.io/terms | Support: lpdf.io/support
263
+ Support: lpdf.io/support
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lpdfio/lpdf",
3
- "version": "0.16.0",
3
+ "version": "0.17.0",
4
4
  "description": "Node.js SDK for Lpdf — PDF as Code on every platform. You describe a document as code or XML. Lpdf renders a compact, pixel-perfect PDF — identical across platforms.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",