@svgrid/enterprise 3.1.3 → 3.1.5

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.
Files changed (56) hide show
  1. package/LICENSE +22 -17
  2. package/README.md +7 -7
  3. package/dist/advanced-filter-enable.js +2 -2
  4. package/dist/alerts.js +2 -2
  5. package/dist/board.js +2 -2
  6. package/dist/cdn/svgrid-enterprise.svelte-external.js +13969 -13515
  7. package/dist/designer/assets/GridMenus-CvcASlKv.js +8 -0
  8. package/dist/designer/assets/SvListBox-BlmmzYcU.js +110 -0
  9. package/dist/designer/assets/{index-CScGnzuX.js → index-B3WBezq_.js} +432 -370
  10. package/dist/designer/assets/index-KmSEY7Lb.css +1 -0
  11. package/dist/designer/assets/src-D4PRZJYA.js +58 -0
  12. package/dist/designer/assets/{validate-YxSrBF1H.js → validate-B71dE1Cs.js} +1 -1
  13. package/dist/designer/index.html +4 -4
  14. package/dist/first-party.d.ts +2 -0
  15. package/dist/first-party.js +11 -0
  16. package/dist/gantt/gantt.js +2 -2
  17. package/dist/install.js +2 -2
  18. package/dist/license-core.d.ts +1 -0
  19. package/dist/license-core.js +25 -23
  20. package/dist/license-hash.d.ts +1 -0
  21. package/dist/license-hash.js +6 -0
  22. package/dist/license.js +55 -30
  23. package/dist/node/studio.js +531 -136
  24. package/dist/pivot-enable.js +2 -2
  25. package/dist/scheduler.js +2 -2
  26. package/dist/selection-bar.js +2 -2
  27. package/dist/server/enable.js +2 -2
  28. package/dist/server/server-row-model.js +199 -26
  29. package/dist/sha256.d.ts +1 -0
  30. package/dist/sha256.js +69 -0
  31. package/dist/studio/emit-project.js +86 -56
  32. package/dist/studio/emit-schema.d.ts +3 -0
  33. package/dist/studio/emit-schema.js +128 -29
  34. package/dist/studio/index.d.ts +2 -1
  35. package/dist/studio/index.js +2 -1
  36. package/dist/studio/init-flow.d.ts +3 -0
  37. package/dist/studio/init-flow.js +5 -2
  38. package/dist/studio/project.d.ts +10 -1
  39. package/dist/studio/project.js +28 -15
  40. package/dist/studio/samples/restaurant.js +1 -1
  41. package/dist/studio/sveltekit3.d.ts +38 -0
  42. package/dist/studio/sveltekit3.js +194 -0
  43. package/dist/studio/ui-components.generated.js +15 -4
  44. package/dist/upgrade-prompt.js +3 -0
  45. package/dist/version.d.ts +2 -2
  46. package/dist/version.js +2 -2
  47. package/dist/watermark.js +37 -4
  48. package/dist/wc/{GridMenus-6_fF5jIm.js → GridMenus-fWbBUiRH.js} +121 -121
  49. package/dist/wc/sv-sheet-element.js +11090 -10547
  50. package/dist/wc/{svelte-virtualizer.svelte-Du4tjrIP.js → svelte-virtualizer.svelte-Dntdh8Ms.js} +103 -56
  51. package/dist/wc/{validate-JAuMsk6Z.js → validate-43C03DLP.js} +1 -1
  52. package/package.json +3 -3
  53. package/dist/designer/assets/GridMenus-DGZJKFvX.js +0 -8
  54. package/dist/designer/assets/SvListBox-v2jm0-vf.js +0 -110
  55. package/dist/designer/assets/index-l21iGkpF.css +0 -1
  56. package/dist/designer/assets/src-DL33yzkY.js +0 -58
package/LICENSE CHANGED
@@ -41,6 +41,13 @@ License scope is set by the Subscriber's order:
41
41
  internal dev / staging environments.
42
42
  - Suite Developer License: the Software in full, including the
43
43
  Spreadsheet Module and the Studio, on the same unlimited scope.
44
+ - Indie Developer License: the same scope as a Grid Developer
45
+ License, for a Subscriber that is an individual working on their
46
+ own account or an organization whose revenue, with its affiliates,
47
+ was under USD 1,000,000 in the 12 months before the order. Placing
48
+ an Indie order confirms this. A Subscriber that no longer qualifies
49
+ moves its seats to a Grid Developer License by its next renewal.
50
+ Includes software updates only; no support.
44
51
  - Enterprise / Custom (Site or Org-wide): scope per the negotiated
45
52
  order or master agreement.
46
53
  - OEM License: the redistribution cases in Section 1A.
@@ -51,10 +58,10 @@ the formula evaluator, and the .xlsx / .xls / .ods / .csv readers and
51
58
  writers. The "Studio" is the designer, the code generator and the SQL
52
59
  data sources.
53
60
 
54
- Using the Spreadsheet Module or the Studio under a Grid Developer
55
- License is outside the licensed scope. The Software does not block it:
56
- the feature runs, and the watermark and the console notice described in
57
- Section 4 show until the license is upgraded to Suite.
61
+ Using the Spreadsheet Module or the Studio under a Grid or Indie
62
+ Developer License is outside the licensed scope. The license key does
63
+ not distinguish editions, so the Software neither blocks nor flags it;
64
+ it stays outside the license until the license is upgraded to Suite.
58
65
 
59
66
  ------------------------------------------------------------------------
60
67
  1A. OEM AND REDISTRIBUTION
@@ -140,22 +147,20 @@ development, staging and demonstration environments; production use
140
147
  needs a license key. Without a key the grid and the spreadsheet show a
141
148
  small watermark and the Software emits a console notice about the
142
149
  Enterprise package; nothing is disabled and nothing stops after the 30
143
- days, the watermark and the notice stay until a key is set. On request
144
- the Author issues an evaluation key with a 30-day expiry that removes
145
- both for staging and demonstration deployments; when it expires the
146
- Software keeps running, the watermark returns and a console notice names
147
- the date. Evaluation and development keys are not for production and
148
- must not be shared or embedded in a product distributed to third
149
- parties.
150
+ days, the watermark and the notice stay until a key is set. The Author
151
+ does not issue separate evaluation keys.
150
152
 
151
153
  Projects that are open source under an OSI-approved license, hosted in a
152
154
  public repository, and not a paid product qualify for a free Enterprise
153
- key with the full feature set and no watermark, renewable annually.
154
-
155
- License key validation is performed entirely client-side and is not a
156
- cryptographic check: the Software classifies the key string and nothing
157
- more. No network call is made to validate, and no telemetry is sent.
158
- Air-gapped deployments are supported.
155
+ license with the full feature set, renewable annually. The license key
156
+ must be kept out of the public repository.
157
+
158
+ Every Subscriber receives the same license key. Validation is performed
159
+ entirely client-side: the Software compares a SHA-256 digest of the key
160
+ with the digest of the Author's key and does nothing more; the edition,
161
+ seats and term come from the order, not the key. A key that does not
162
+ match runs as unlicensed. No network call is made to validate, and no
163
+ telemetry is sent. Air-gapped deployments are supported.
159
164
 
160
165
  ------------------------------------------------------------------------
161
166
  5. RESTRICTIONS
package/README.md CHANGED
@@ -55,7 +55,7 @@ npm install pdfmake # PDF export
55
55
  ```ts
56
56
  import { setLicenseKey, installEnterprise } from '@svgrid/enterprise'
57
57
 
58
- setLicenseKey('SVENTERPRISE-XXXX-XXXX-XXXX') // your Enterprise key
58
+ setLicenseKey('YOUR-LICENSE-KEY') // your Enterprise key
59
59
 
60
60
  // Inside <SvGrid onApiReady={(api) => { ... }}>:
61
61
  const pro = installEnterprise(api)
@@ -95,18 +95,18 @@ Purchase a key at [svgrid.com/pricing](https://svgrid.com/pricing/).
95
95
 
96
96
  **The gate is soft.** Every feature runs without a key, and under a key whose edition does not cover
97
97
  it. You get a small watermark on the grid and a one-time console notice; nothing throws and nothing
98
- is disabled, so you can evaluate any of this in your own app before buying. A key is only rejected
99
- when it is malformed or revoked.
98
+ is disabled, so you can evaluate any of this in your own app before buying. A key that is not your
99
+ license key gets the same treatment as no key.
100
100
 
101
101
  ```ts
102
- import { setLicenseKey, licenseCovers } from '@svgrid/enterprise'
102
+ import { setLicenseKey } from '@svgrid/enterprise'
103
103
 
104
104
  setLicenseKey(import.meta.env.VITE_SVPRO_KEY)
105
- licenseCovers('spreadsheet') // false on a Grid key, true on Suite
106
105
  ```
107
106
 
108
- Keys carry their edition: `SVENTERPRISE-GRID-...` or `SVENTERPRISE-SUITE-...`. A key issued before
109
- editions existed carries neither and reads as Suite, so nothing you already ship changes.
107
+ Every customer receives the same license key; it covers every edition and carries no expiry. Your
108
+ edition (Grid or Suite), seats and updates term are set by your order and the EULA, not by the key.
109
+ A key that is not the license key runs like no key: watermark, one console warning, nothing thrown.
110
110
 
111
111
  **OEM and redistribution.** A developer seat covers your own application, including a SaaS product
112
112
  your customers pay for. It does not cover shipping this package to third parties as a component, an
@@ -6,7 +6,7 @@
6
6
  * compiler that turns an expression into a row predicate.
7
7
  */
8
8
  import { registerAdvancedFilterEngine } from '@svgrid/grid';
9
- import { isLicenseKeySet } from './license.js';
9
+ import { hasValidLicense } from './license.js';
10
10
  import { emitUnlicensedNudge } from './watermark.js';
11
11
  import { compilePredicate } from './expressions/compile.js';
12
12
  let enabled = false;
@@ -30,6 +30,6 @@ export function enableAdvancedFilter() {
30
30
  return;
31
31
  enabled = true;
32
32
  registerAdvancedFilterEngine(advancedFilterEngine);
33
- if (!isLicenseKeySet())
33
+ if (!hasValidLicense())
34
34
  emitUnlicensedNudge();
35
35
  }
package/dist/alerts.js CHANGED
@@ -15,7 +15,7 @@
15
15
  * // spread `formats` into <SvGrid conditionalFormats={[...base, ...formats]} />
16
16
  * ```
17
17
  */
18
- import { isLicenseKeySet } from './license.js';
18
+ import { hasValidLicense } from './license.js';
19
19
  import { emitUnlicensedNudge } from './watermark.js';
20
20
  let enabled = false;
21
21
  /** Turn on the alerts feature (runs without a key, with the watermark and the console notice). Idempotent. */
@@ -23,6 +23,6 @@ export function enableAlerts() {
23
23
  if (enabled)
24
24
  return;
25
25
  enabled = true;
26
- if (!isLicenseKeySet())
26
+ if (!hasValidLicense())
27
27
  emitUnlicensedNudge();
28
28
  }
package/dist/board.js CHANGED
@@ -15,7 +15,7 @@
15
15
  * ```
16
16
  */
17
17
  import { registerBoardView } from '@svgrid/grid';
18
- import { isLicenseKeySet } from './license.js';
18
+ import { hasValidLicense } from './license.js';
19
19
  import { emitUnlicensedNudge } from './watermark.js';
20
20
  import SvGridBoard from './SvGridBoard.svelte';
21
21
  let enabled = false;
@@ -29,7 +29,7 @@ export function enableBoardView() {
29
29
  return;
30
30
  enabled = true;
31
31
  registerBoardView(SvGridBoard);
32
- if (!isLicenseKeySet())
32
+ if (!hasValidLicense())
33
33
  emitUnlicensedNudge();
34
34
  }
35
35
  export { default as SvGridBoard } from './SvGridBoard.svelte';