@bendyline/docblocks-cli 2.5.0 → 2.6.1

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/README.md CHANGED
@@ -8,7 +8,7 @@ agents.
8
8
 
9
9
  ## Installation
10
10
 
11
- Node.js 22.22.2+, 24.15.0+, or 26+ is required.
11
+ Node.js 24.18.0+ or 26+ is required.
12
12
 
13
13
  ```bash
14
14
  npm install -g @bendyline/docblocks-cli
@@ -15,11 +15,11 @@ This notice is included in the published npm tarball. Transitive packages instal
15
15
  | Package | Version | License | Source |
16
16
  | --- | --- | --- | --- |
17
17
  | @antfu/install-pkg | 1.1.0 | MIT | https://github.com/antfu/install-pkg |
18
- | @bendyline/squisq | 2.8.0 | MIT | https://github.com/bendyline/squisq |
19
- | @bendyline/squisq-cli | 2.6.0 | MIT | https://github.com/bendyline/squisq |
20
- | @bendyline/squisq-formats | 2.4.5 | MIT | https://github.com/bendyline/squisq |
21
- | @bendyline/squisq-react | 2.8.0 | MIT | https://github.com/bendyline/squisq |
22
- | @bendyline/squisq-video | 2.3.0 | MIT | https://github.com/bendyline/squisq |
18
+ | @bendyline/squisq | 2.11.3 | MIT | https://github.com/bendyline/squisq |
19
+ | @bendyline/squisq-cli | 2.8.3 | MIT | https://github.com/bendyline/squisq |
20
+ | @bendyline/squisq-formats | 2.6.3 | MIT | https://github.com/bendyline/squisq |
21
+ | @bendyline/squisq-react | 2.11.3 | MIT | https://github.com/bendyline/squisq |
22
+ | @bendyline/squisq-video | 2.3.6 | MIT | https://github.com/bendyline/squisq |
23
23
  | @braintree/sanitize-url | 7.1.2 | MIT | https://github.com/braintree/sanitize-url |
24
24
  | @chevrotain/types | 11.1.2 | Apache-2.0 | https://github.com/Chevrotain/chevrotain |
25
25
  | @ffmpeg/ffmpeg | 0.12.15 | MIT | https://github.com/ffmpegwasm/ffmpeg.wasm |
@@ -42,7 +42,7 @@ This notice is included in the published npm tarball. Transitive packages instal
42
42
  | @napi-rs/canvas-linux-x64-gnu | 0.1.100 | MIT | https://www.npmjs.com/package/@napi-rs/canvas-linux-x64-gnu |
43
43
  | @napi-rs/canvas-linux-x64-musl | 0.1.100 | MIT | https://www.npmjs.com/package/@napi-rs/canvas-linux-x64-musl |
44
44
  | @napi-rs/canvas-win32-arm64-msvc | 0.1.100 | MIT | https://www.npmjs.com/package/@napi-rs/canvas-win32-arm64-msvc |
45
- | @napi-rs/canvas-win32-x64-msvc | 0.1.100 | MIT | https://github.com/Brooooooklyn/canvas |
45
+ | @napi-rs/canvas-win32-x64-msvc | 0.1.100 | MIT | https://www.npmjs.com/package/@napi-rs/canvas-win32-x64-msvc |
46
46
  | @pdf-lib/fontkit | 1.1.1 | MIT | https://github.com/Hopding/fontkit |
47
47
  | @pdf-lib/standard-fonts | 1.0.0 | MIT | https://github.com/Hopding/standard-fonts |
48
48
  | @pdf-lib/upng | 1.0.1 | MIT | https://github.com/Hopding/upng |
@@ -87,7 +87,7 @@ This notice is included in the published npm tarball. Transitive packages instal
87
87
  | @types/unist | 2.0.11 | MIT | https://github.com/DefinitelyTyped/DefinitelyTyped |
88
88
  | @types/unist | 3.0.3 | MIT | https://github.com/DefinitelyTyped/DefinitelyTyped |
89
89
  | @upsetjs/venn.js | 2.0.0 | MIT | https://github.com/upsetjs/venn.js |
90
- | @xmldom/xmldom | 0.9.11 | MIT | https://github.com/xmldom/xmldom |
90
+ | @xmldom/xmldom | 0.9.12 | MIT | https://github.com/xmldom/xmldom |
91
91
  | accepts | 2.0.0 | MIT | https://github.com/jshttp/accepts |
92
92
  | ajv | 8.20.0 | MIT | https://github.com/ajv-validator/ajv |
93
93
  | ajv-formats | 3.0.1 | MIT | https://github.com/ajv-validator/ajv-formats |
@@ -403,7 +403,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
403
403
  SOFTWARE.
404
404
 
405
405
  ==============================================================================
406
- Components: @bendyline/squisq-cli@2.6.0, @bendyline/squisq-formats@2.4.5, @bendyline/squisq-react@2.8.0, @bendyline/squisq-video@2.3.0, @bendyline/squisq@2.8.0
406
+ Components: @bendyline/squisq-cli@2.8.3, @bendyline/squisq-formats@2.6.3, @bendyline/squisq-react@2.11.3, @bendyline/squisq-video@2.3.6, @bendyline/squisq@2.11.3
407
407
  Source files: node_modules/@bendyline/squisq-cli/LICENSE, node_modules/@bendyline/squisq-formats/LICENSE, node_modules/@bendyline/squisq-react/LICENSE, node_modules/@bendyline/squisq-video/LICENSE, node_modules/@bendyline/squisq/LICENSE
408
408
  ==============================================================================
409
409
  MIT License
@@ -459,207 +459,207 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
459
459
  Components: playwright-core@1.61.1
460
460
  Source files: node_modules/@bendyline/squisq-cli/node_modules/playwright-core/LICENSE
461
461
  ==============================================================================
462
- Apache License
463
- Version 2.0, January 2004
464
- http://www.apache.org/licenses/
465
-
466
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
467
-
468
- 1. Definitions.
469
-
470
- "License" shall mean the terms and conditions for use, reproduction,
471
- and distribution as defined by Sections 1 through 9 of this document.
472
-
473
- "Licensor" shall mean the copyright owner or entity authorized by
474
- the copyright owner that is granting the License.
475
-
476
- "Legal Entity" shall mean the union of the acting entity and all
477
- other entities that control, are controlled by, or are under common
478
- control with that entity. For the purposes of this definition,
479
- "control" means (i) the power, direct or indirect, to cause the
480
- direction or management of such entity, whether by contract or
481
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
482
- outstanding shares, or (iii) beneficial ownership of such entity.
483
-
484
- "You" (or "Your") shall mean an individual or Legal Entity
485
- exercising permissions granted by this License.
486
-
487
- "Source" form shall mean the preferred form for making modifications,
488
- including but not limited to software source code, documentation
489
- source, and configuration files.
490
-
491
- "Object" form shall mean any form resulting from mechanical
492
- transformation or translation of a Source form, including but
493
- not limited to compiled object code, generated documentation,
494
- and conversions to other media types.
495
-
496
- "Work" shall mean the work of authorship, whether in Source or
497
- Object form, made available under the License, as indicated by a
498
- copyright notice that is included in or attached to the work
499
- (an example is provided in the Appendix below).
500
-
501
- "Derivative Works" shall mean any work, whether in Source or Object
502
- form, that is based on (or derived from) the Work and for which the
503
- editorial revisions, annotations, elaborations, or other modifications
504
- represent, as a whole, an original work of authorship. For the purposes
505
- of this License, Derivative Works shall not include works that remain
506
- separable from, or merely link (or bind by name) to the interfaces of,
507
- the Work and Derivative Works thereof.
508
-
509
- "Contribution" shall mean any work of authorship, including
510
- the original version of the Work and any modifications or additions
511
- to that Work or Derivative Works thereof, that is intentionally
512
- submitted to Licensor for inclusion in the Work by the copyright owner
513
- or by an individual or Legal Entity authorized to submit on behalf of
514
- the copyright owner. For the purposes of this definition, "submitted"
515
- means any form of electronic, verbal, or written communication sent
516
- to the Licensor or its representatives, including but not limited to
517
- communication on electronic mailing lists, source code control systems,
518
- and issue tracking systems that are managed by, or on behalf of, the
519
- Licensor for the purpose of discussing and improving the Work, but
520
- excluding communication that is conspicuously marked or otherwise
521
- designated in writing by the copyright owner as "Not a Contribution."
522
-
523
- "Contributor" shall mean Licensor and any individual or Legal Entity
524
- on behalf of whom a Contribution has been received by Licensor and
525
- subsequently incorporated within the Work.
526
-
527
- 2. Grant of Copyright License. Subject to the terms and conditions of
528
- this License, each Contributor hereby grants to You a perpetual,
529
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
530
- copyright license to reproduce, prepare Derivative Works of,
531
- publicly display, publicly perform, sublicense, and distribute the
532
- Work and such Derivative Works in Source or Object form.
533
-
534
- 3. Grant of Patent License. Subject to the terms and conditions of
535
- this License, each Contributor hereby grants to You a perpetual,
536
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
537
- (except as stated in this section) patent license to make, have made,
538
- use, offer to sell, sell, import, and otherwise transfer the Work,
539
- where such license applies only to those patent claims licensable
540
- by such Contributor that are necessarily infringed by their
541
- Contribution(s) alone or by combination of their Contribution(s)
542
- with the Work to which such Contribution(s) was submitted. If You
543
- institute patent litigation against any entity (including a
544
- cross-claim or counterclaim in a lawsuit) alleging that the Work
545
- or a Contribution incorporated within the Work constitutes direct
546
- or contributory patent infringement, then any patent licenses
547
- granted to You under this License for that Work shall terminate
548
- as of the date such litigation is filed.
549
-
550
- 4. Redistribution. You may reproduce and distribute copies of the
551
- Work or Derivative Works thereof in any medium, with or without
552
- modifications, and in Source or Object form, provided that You
553
- meet the following conditions:
554
-
555
- (a) You must give any other recipients of the Work or
556
- Derivative Works a copy of this License; and
557
-
558
- (b) You must cause any modified files to carry prominent notices
559
- stating that You changed the files; and
560
-
561
- (c) You must retain, in the Source form of any Derivative Works
562
- that You distribute, all copyright, patent, trademark, and
563
- attribution notices from the Source form of the Work,
564
- excluding those notices that do not pertain to any part of
565
- the Derivative Works; and
566
-
567
- (d) If the Work includes a "NOTICE" text file as part of its
568
- distribution, then any Derivative Works that You distribute must
569
- include a readable copy of the attribution notices contained
570
- within such NOTICE file, excluding those notices that do not
571
- pertain to any part of the Derivative Works, in at least one
572
- of the following places: within a NOTICE text file distributed
573
- as part of the Derivative Works; within the Source form or
574
- documentation, if provided along with the Derivative Works; or,
575
- within a display generated by the Derivative Works, if and
576
- wherever such third-party notices normally appear. The contents
577
- of the NOTICE file are for informational purposes only and
578
- do not modify the License. You may add Your own attribution
579
- notices within Derivative Works that You distribute, alongside
580
- or as an addendum to the NOTICE text from the Work, provided
581
- that such additional attribution notices cannot be construed
582
- as modifying the License.
583
-
584
- You may add Your own copyright statement to Your modifications and
585
- may provide additional or different license terms and conditions
586
- for use, reproduction, or distribution of Your modifications, or
587
- for any such Derivative Works as a whole, provided Your use,
588
- reproduction, and distribution of the Work otherwise complies with
589
- the conditions stated in this License.
590
-
591
- 5. Submission of Contributions. Unless You explicitly state otherwise,
592
- any Contribution intentionally submitted for inclusion in the Work
593
- by You to the Licensor shall be under the terms and conditions of
594
- this License, without any additional terms or conditions.
595
- Notwithstanding the above, nothing herein shall supersede or modify
596
- the terms of any separate license agreement you may have executed
597
- with Licensor regarding such Contributions.
598
-
599
- 6. Trademarks. This License does not grant permission to use the trade
600
- names, trademarks, service marks, or product names of the Licensor,
601
- except as required for reasonable and customary use in describing the
602
- origin of the Work and reproducing the content of the NOTICE file.
603
-
604
- 7. Disclaimer of Warranty. Unless required by applicable law or
605
- agreed to in writing, Licensor provides the Work (and each
606
- Contributor provides its Contributions) on an "AS IS" BASIS,
607
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
608
- implied, including, without limitation, any warranties or conditions
609
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
610
- PARTICULAR PURPOSE. You are solely responsible for determining the
611
- appropriateness of using or redistributing the Work and assume any
612
- risks associated with Your exercise of permissions under this License.
613
-
614
- 8. Limitation of Liability. In no event and under no legal theory,
615
- whether in tort (including negligence), contract, or otherwise,
616
- unless required by applicable law (such as deliberate and grossly
617
- negligent acts) or agreed to in writing, shall any Contributor be
618
- liable to You for damages, including any direct, indirect, special,
619
- incidental, or consequential damages of any character arising as a
620
- result of this License or out of the use or inability to use the
621
- Work (including but not limited to damages for loss of goodwill,
622
- work stoppage, computer failure or malfunction, or any and all
623
- other commercial damages or losses), even if such Contributor
624
- has been advised of the possibility of such damages.
625
-
626
- 9. Accepting Warranty or Additional Liability. While redistributing
627
- the Work or Derivative Works thereof, You may choose to offer,
628
- and charge a fee for, acceptance of support, warranty, indemnity,
629
- or other liability obligations and/or rights consistent with this
630
- License. However, in accepting such obligations, You may act only
631
- on Your own behalf and on Your sole responsibility, not on behalf
632
- of any other Contributor, and only if You agree to indemnify,
633
- defend, and hold each Contributor harmless for any liability
634
- incurred by, or claims asserted against, such Contributor by reason
635
- of your accepting any such warranty or additional liability.
636
-
637
- END OF TERMS AND CONDITIONS
638
-
639
- APPENDIX: How to apply the Apache License to your work.
640
-
641
- To apply the Apache License to your work, attach the following
642
- boilerplate notice, with the fields enclosed by brackets "[]"
643
- replaced with your own identifying information. (Don't include
644
- the brackets!) The text should be enclosed in the appropriate
645
- comment syntax for the file format. We also recommend that a
646
- file or class name and description of purpose be included on the
647
- same "printed page" as the copyright notice for easier
648
- identification within third-party archives.
649
-
650
- Portions Copyright (c) Microsoft Corporation.
651
- Portions Copyright 2017 Google Inc.
652
-
653
- Licensed under the Apache License, Version 2.0 (the "License");
654
- you may not use this file except in compliance with the License.
655
- You may obtain a copy of the License at
656
-
657
- http://www.apache.org/licenses/LICENSE-2.0
658
-
659
- Unless required by applicable law or agreed to in writing, software
660
- distributed under the License is distributed on an "AS IS" BASIS,
661
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
662
- See the License for the specific language governing permissions and
462
+ Apache License
463
+ Version 2.0, January 2004
464
+ http://www.apache.org/licenses/
465
+
466
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
467
+
468
+ 1. Definitions.
469
+
470
+ "License" shall mean the terms and conditions for use, reproduction,
471
+ and distribution as defined by Sections 1 through 9 of this document.
472
+
473
+ "Licensor" shall mean the copyright owner or entity authorized by
474
+ the copyright owner that is granting the License.
475
+
476
+ "Legal Entity" shall mean the union of the acting entity and all
477
+ other entities that control, are controlled by, or are under common
478
+ control with that entity. For the purposes of this definition,
479
+ "control" means (i) the power, direct or indirect, to cause the
480
+ direction or management of such entity, whether by contract or
481
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
482
+ outstanding shares, or (iii) beneficial ownership of such entity.
483
+
484
+ "You" (or "Your") shall mean an individual or Legal Entity
485
+ exercising permissions granted by this License.
486
+
487
+ "Source" form shall mean the preferred form for making modifications,
488
+ including but not limited to software source code, documentation
489
+ source, and configuration files.
490
+
491
+ "Object" form shall mean any form resulting from mechanical
492
+ transformation or translation of a Source form, including but
493
+ not limited to compiled object code, generated documentation,
494
+ and conversions to other media types.
495
+
496
+ "Work" shall mean the work of authorship, whether in Source or
497
+ Object form, made available under the License, as indicated by a
498
+ copyright notice that is included in or attached to the work
499
+ (an example is provided in the Appendix below).
500
+
501
+ "Derivative Works" shall mean any work, whether in Source or Object
502
+ form, that is based on (or derived from) the Work and for which the
503
+ editorial revisions, annotations, elaborations, or other modifications
504
+ represent, as a whole, an original work of authorship. For the purposes
505
+ of this License, Derivative Works shall not include works that remain
506
+ separable from, or merely link (or bind by name) to the interfaces of,
507
+ the Work and Derivative Works thereof.
508
+
509
+ "Contribution" shall mean any work of authorship, including
510
+ the original version of the Work and any modifications or additions
511
+ to that Work or Derivative Works thereof, that is intentionally
512
+ submitted to Licensor for inclusion in the Work by the copyright owner
513
+ or by an individual or Legal Entity authorized to submit on behalf of
514
+ the copyright owner. For the purposes of this definition, "submitted"
515
+ means any form of electronic, verbal, or written communication sent
516
+ to the Licensor or its representatives, including but not limited to
517
+ communication on electronic mailing lists, source code control systems,
518
+ and issue tracking systems that are managed by, or on behalf of, the
519
+ Licensor for the purpose of discussing and improving the Work, but
520
+ excluding communication that is conspicuously marked or otherwise
521
+ designated in writing by the copyright owner as "Not a Contribution."
522
+
523
+ "Contributor" shall mean Licensor and any individual or Legal Entity
524
+ on behalf of whom a Contribution has been received by Licensor and
525
+ subsequently incorporated within the Work.
526
+
527
+ 2. Grant of Copyright License. Subject to the terms and conditions of
528
+ this License, each Contributor hereby grants to You a perpetual,
529
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
530
+ copyright license to reproduce, prepare Derivative Works of,
531
+ publicly display, publicly perform, sublicense, and distribute the
532
+ Work and such Derivative Works in Source or Object form.
533
+
534
+ 3. Grant of Patent License. Subject to the terms and conditions of
535
+ this License, each Contributor hereby grants to You a perpetual,
536
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
537
+ (except as stated in this section) patent license to make, have made,
538
+ use, offer to sell, sell, import, and otherwise transfer the Work,
539
+ where such license applies only to those patent claims licensable
540
+ by such Contributor that are necessarily infringed by their
541
+ Contribution(s) alone or by combination of their Contribution(s)
542
+ with the Work to which such Contribution(s) was submitted. If You
543
+ institute patent litigation against any entity (including a
544
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
545
+ or a Contribution incorporated within the Work constitutes direct
546
+ or contributory patent infringement, then any patent licenses
547
+ granted to You under this License for that Work shall terminate
548
+ as of the date such litigation is filed.
549
+
550
+ 4. Redistribution. You may reproduce and distribute copies of the
551
+ Work or Derivative Works thereof in any medium, with or without
552
+ modifications, and in Source or Object form, provided that You
553
+ meet the following conditions:
554
+
555
+ (a) You must give any other recipients of the Work or
556
+ Derivative Works a copy of this License; and
557
+
558
+ (b) You must cause any modified files to carry prominent notices
559
+ stating that You changed the files; and
560
+
561
+ (c) You must retain, in the Source form of any Derivative Works
562
+ that You distribute, all copyright, patent, trademark, and
563
+ attribution notices from the Source form of the Work,
564
+ excluding those notices that do not pertain to any part of
565
+ the Derivative Works; and
566
+
567
+ (d) If the Work includes a "NOTICE" text file as part of its
568
+ distribution, then any Derivative Works that You distribute must
569
+ include a readable copy of the attribution notices contained
570
+ within such NOTICE file, excluding those notices that do not
571
+ pertain to any part of the Derivative Works, in at least one
572
+ of the following places: within a NOTICE text file distributed
573
+ as part of the Derivative Works; within the Source form or
574
+ documentation, if provided along with the Derivative Works; or,
575
+ within a display generated by the Derivative Works, if and
576
+ wherever such third-party notices normally appear. The contents
577
+ of the NOTICE file are for informational purposes only and
578
+ do not modify the License. You may add Your own attribution
579
+ notices within Derivative Works that You distribute, alongside
580
+ or as an addendum to the NOTICE text from the Work, provided
581
+ that such additional attribution notices cannot be construed
582
+ as modifying the License.
583
+
584
+ You may add Your own copyright statement to Your modifications and
585
+ may provide additional or different license terms and conditions
586
+ for use, reproduction, or distribution of Your modifications, or
587
+ for any such Derivative Works as a whole, provided Your use,
588
+ reproduction, and distribution of the Work otherwise complies with
589
+ the conditions stated in this License.
590
+
591
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
592
+ any Contribution intentionally submitted for inclusion in the Work
593
+ by You to the Licensor shall be under the terms and conditions of
594
+ this License, without any additional terms or conditions.
595
+ Notwithstanding the above, nothing herein shall supersede or modify
596
+ the terms of any separate license agreement you may have executed
597
+ with Licensor regarding such Contributions.
598
+
599
+ 6. Trademarks. This License does not grant permission to use the trade
600
+ names, trademarks, service marks, or product names of the Licensor,
601
+ except as required for reasonable and customary use in describing the
602
+ origin of the Work and reproducing the content of the NOTICE file.
603
+
604
+ 7. Disclaimer of Warranty. Unless required by applicable law or
605
+ agreed to in writing, Licensor provides the Work (and each
606
+ Contributor provides its Contributions) on an "AS IS" BASIS,
607
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
608
+ implied, including, without limitation, any warranties or conditions
609
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
610
+ PARTICULAR PURPOSE. You are solely responsible for determining the
611
+ appropriateness of using or redistributing the Work and assume any
612
+ risks associated with Your exercise of permissions under this License.
613
+
614
+ 8. Limitation of Liability. In no event and under no legal theory,
615
+ whether in tort (including negligence), contract, or otherwise,
616
+ unless required by applicable law (such as deliberate and grossly
617
+ negligent acts) or agreed to in writing, shall any Contributor be
618
+ liable to You for damages, including any direct, indirect, special,
619
+ incidental, or consequential damages of any character arising as a
620
+ result of this License or out of the use or inability to use the
621
+ Work (including but not limited to damages for loss of goodwill,
622
+ work stoppage, computer failure or malfunction, or any and all
623
+ other commercial damages or losses), even if such Contributor
624
+ has been advised of the possibility of such damages.
625
+
626
+ 9. Accepting Warranty or Additional Liability. While redistributing
627
+ the Work or Derivative Works thereof, You may choose to offer,
628
+ and charge a fee for, acceptance of support, warranty, indemnity,
629
+ or other liability obligations and/or rights consistent with this
630
+ License. However, in accepting such obligations, You may act only
631
+ on Your own behalf and on Your sole responsibility, not on behalf
632
+ of any other Contributor, and only if You agree to indemnify,
633
+ defend, and hold each Contributor harmless for any liability
634
+ incurred by, or claims asserted against, such Contributor by reason
635
+ of your accepting any such warranty or additional liability.
636
+
637
+ END OF TERMS AND CONDITIONS
638
+
639
+ APPENDIX: How to apply the Apache License to your work.
640
+
641
+ To apply the Apache License to your work, attach the following
642
+ boilerplate notice, with the fields enclosed by brackets "[]"
643
+ replaced with your own identifying information. (Don't include
644
+ the brackets!) The text should be enclosed in the appropriate
645
+ comment syntax for the file format. We also recommend that a
646
+ file or class name and description of purpose be included on the
647
+ same "printed page" as the copyright notice for easier
648
+ identification within third-party archives.
649
+
650
+ Portions Copyright (c) Microsoft Corporation.
651
+ Portions Copyright 2017 Google Inc.
652
+
653
+ Licensed under the Apache License, Version 2.0 (the "License");
654
+ you may not use this file except in compliance with the License.
655
+ You may obtain a copy of the License at
656
+
657
+ http://www.apache.org/licenses/LICENSE-2.0
658
+
659
+ Unless required by applicable law or agreed to in writing, software
660
+ distributed under the License is distributed on an "AS IS" BASIS,
661
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
662
+ See the License for the specific language governing permissions and
663
663
  limitations under the License.
664
664
 
665
665
  ==============================================================================
@@ -673,7 +673,7 @@ This software contains code derived from the Puppeteer project (https://github.c
673
673
  available under the Apache 2.0 license (https://github.com/puppeteer/puppeteer/blob/master/LICENSE).
674
674
 
675
675
  ==============================================================================
676
- Components: @bendyline/squisq-cli@2.6.0
676
+ Components: @bendyline/squisq-cli@2.8.3
677
677
  Source files: node_modules/@bendyline/squisq-cli/NOTICE.md
678
678
  ==============================================================================
679
679
  # Third-Party Notices for @bendyline/squisq-cli
@@ -693,7 +693,7 @@ Copyright and complete license texts for these dependencies are included in
693
693
  their respective npm distributions and source repositories.
694
694
 
695
695
  ==============================================================================
696
- Components: @bendyline/squisq-cli@2.6.0
696
+ Components: @bendyline/squisq-cli@2.8.3
697
697
  Source files: node_modules/@bendyline/squisq-cli/THIRD_PARTY_LICENSES.txt
698
698
  ==============================================================================
699
699
  THIRD-PARTY LICENSES FOR @bendyline/squisq-cli
@@ -760,7 +760,7 @@ COMPONENTS
760
760
  - decode-named-character-reference@1.3.0 (MIT); files: license
761
761
  - delaunator@5.1.0 (ISC); files: LICENSE
762
762
  - devlop@1.1.0 (MIT); files: license
763
- - dompurify@3.4.12 ((MPL-2.0 OR Apache-2.0)); files: LICENSE, LICENSE-MPL
763
+ - dompurify@3.4.14 ((MPL-2.0 OR Apache-2.0)); files: LICENSE, LICENSE-MPL
764
764
  - entities@6.0.1 (BSD-2-Clause); files: LICENSE
765
765
  - es-toolkit@1.49.0 (MIT); files: LICENSE
766
766
  - escape-string-regexp@5.0.0 (MIT); files: license
@@ -2100,7 +2100,7 @@ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
2100
2100
  SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
2101
2101
 
2102
2102
  ==============================================================================
2103
- dompurify@3.4.12 - LICENSE
2103
+ dompurify@3.4.14 - LICENSE
2104
2104
  ==============================================================================
2105
2105
 
2106
2106
  Apache License
@@ -2306,7 +2306,7 @@ dompurify@3.4.12 - LICENSE
2306
2306
  limitations under the License.
2307
2307
 
2308
2308
  ==============================================================================
2309
- dompurify@3.4.12 - LICENSE-MPL
2309
+ dompurify@3.4.14 - LICENSE-MPL
2310
2310
  ==============================================================================
2311
2311
  Mozilla Public License Version 2.0
2312
2312
  ==================================
@@ -5168,7 +5168,7 @@ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
5168
5168
  SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
5169
5169
 
5170
5170
  ==============================================================================
5171
- Components: @xmldom/xmldom@0.9.11
5171
+ Components: @xmldom/xmldom@0.9.12
5172
5172
  Source files: node_modules/@bendyline/squisq-formats/node_modules/@xmldom/xmldom/LICENSE
5173
5173
  ==============================================================================
5174
5174
  Copyright 2019 - present Christopher J. Brody and other contributors, as listed in: https://github.com/xmldom/xmldom/graphs/contributors
@@ -5181,7 +5181,7 @@ The above copyright notice and this permission notice shall be included in all c
5181
5181
  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
5182
5182
 
5183
5183
  ==============================================================================
5184
- Components: @bendyline/squisq-formats@2.4.5
5184
+ Components: @bendyline/squisq-formats@2.6.3
5185
5185
  Source files: node_modules/@bendyline/squisq-formats/NOTICE.md
5186
5186
  ==============================================================================
5187
5187
  # Third-Party Notices for @bendyline/squisq-formats
@@ -5190,23 +5190,24 @@ This notice applies to the `@bendyline/squisq-formats` npm package.
5190
5190
  Squisq-authored code is licensed under the MIT license in `LICENSE`.
5191
5191
  Third-party components remain under their respective license terms.
5192
5192
 
5193
- ## Runtime dependencies
5193
+ ## Runtime and peer dependencies
5194
5194
 
5195
- | Package | Version | License | Repository |
5196
- | ---------------- | ------- | ----------------------- | ---------------------------------- |
5197
- | @pdf-lib/fontkit | 1.1.1 | MIT | https://github.com/Hopding/fontkit |
5198
- | @pdf-lib/upng | 1.0.1 | MIT | https://github.com/Hopding/upng |
5199
- | @xmldom/xmldom | 0.9.11 | MIT | https://github.com/xmldom/xmldom |
5200
- | jszip | 3.10.1 | MIT OR GPL-3.0-or-later | https://github.com/Stuk/jszip |
5201
- | pdf-lib | 1.17.1 | MIT | https://pdf-lib.js.org |
5202
- | pdfjs-dist | 4.10.38 | Apache-2.0 | https://mozilla.github.io/pdf.js |
5195
+ | Package | Version | License | Repository |
5196
+ | ------------------ | ------- | ----------------------- | ------------------------------------ |
5197
+ | @pdf-lib/fontkit | 1.1.1 | MIT | https://github.com/Hopding/fontkit |
5198
+ | @pdf-lib/upng | 1.0.1 | MIT | https://github.com/Hopding/upng |
5199
+ | @xmldom/xmldom | 0.9.12 | MIT | https://github.com/xmldom/xmldom |
5200
+ | jszip | 3.10.1 | MIT OR GPL-3.0-or-later | https://github.com/Stuk/jszip |
5201
+ | pdf-lib | 1.17.1 | MIT | https://pdf-lib.js.org |
5202
+ | pdfjs-dist | 4.10.38 | Apache-2.0 | https://mozilla.github.io/pdf.js |
5203
+ | hyparquet _(peer)_ | ^1.29.1 | MIT | https://github.com/hyparam/hyparquet |
5203
5204
 
5204
5205
  Squisq uses jszip under its MIT license option. Copyright and complete license
5205
5206
  texts for these dependencies are included in their respective npm
5206
5207
  distributions and source repositories.
5207
5208
 
5208
5209
  ==============================================================================
5209
- Components: @bendyline/squisq-formats@2.4.5
5210
+ Components: @bendyline/squisq-formats@2.6.3
5210
5211
  Source files: node_modules/@bendyline/squisq-formats/THIRD_PARTY_LICENSES.txt
5211
5212
  ==============================================================================
5212
5213
  THIRD-PARTY LICENSES FOR @bendyline/squisq-formats
@@ -5388,7 +5389,7 @@ Awesome, nor vice versa. **Please do not use brand logos for any purpose except
5388
5389
  to represent the company, product, or service to which they refer.**
5389
5390
 
5390
5391
  ==============================================================================
5391
- Components: @bendyline/squisq-react@2.8.0
5392
+ Components: @bendyline/squisq-react@2.11.3
5392
5393
  Source files: node_modules/@bendyline/squisq-react/NOTICE.md
5393
5394
  ==============================================================================
5394
5395
  # Third-Party Notices for @bendyline/squisq-react
@@ -5413,7 +5414,7 @@ third-party license texts for the complete standalone bundle graph are shipped
5413
5414
  in THIRD_PARTY_LICENSES.txt.
5414
5415
 
5415
5416
  ==============================================================================
5416
- Components: @bendyline/squisq-react@2.8.0
5417
+ Components: @bendyline/squisq-react@2.11.3
5417
5418
  Source files: node_modules/@bendyline/squisq-react/THIRD_PARTY_LICENSES.txt
5418
5419
  ==============================================================================
5419
5420
  THIRD-PARTY LICENSES FOR @bendyline/squisq-react
@@ -5478,7 +5479,7 @@ COMPONENTS
5478
5479
  - decode-named-character-reference@1.3.0 (MIT); files: license
5479
5480
  - delaunator@5.1.0 (ISC); files: LICENSE
5480
5481
  - devlop@1.1.0 (MIT); files: license
5481
- - dompurify@3.4.12 ((MPL-2.0 OR Apache-2.0)); files: LICENSE, LICENSE-MPL
5482
+ - dompurify@3.4.14 ((MPL-2.0 OR Apache-2.0)); files: LICENSE, LICENSE-MPL
5482
5483
  - entities@6.0.1 (BSD-2-Clause); files: LICENSE
5483
5484
  - es-toolkit@1.49.0 (MIT); files: LICENSE
5484
5485
  - escape-string-regexp@5.0.0 (MIT); files: license
@@ -6818,7 +6819,7 @@ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
6818
6819
  SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
6819
6820
 
6820
6821
  ==============================================================================
6821
- dompurify@3.4.12 - LICENSE
6822
+ dompurify@3.4.14 - LICENSE
6822
6823
  ==============================================================================
6823
6824
 
6824
6825
  Apache License
@@ -7024,7 +7025,7 @@ dompurify@3.4.12 - LICENSE
7024
7025
  limitations under the License.
7025
7026
 
7026
7027
  ==============================================================================
7027
- dompurify@3.4.12 - LICENSE-MPL
7028
+ dompurify@3.4.14 - LICENSE-MPL
7028
7029
  ==============================================================================
7029
7030
  Mozilla Public License Version 2.0
7030
7031
  ==================================
@@ -9950,7 +9951,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
9950
9951
  SOFTWARE.
9951
9952
 
9952
9953
  ==============================================================================
9953
- Components: @bendyline/squisq-video@2.3.0
9954
+ Components: @bendyline/squisq-video@2.3.6
9954
9955
  Source files: node_modules/@bendyline/squisq-video/NOTICE.md
9955
9956
  ==============================================================================
9956
9957
  # Third-Party Notices for @bendyline/squisq-video
@@ -9975,7 +9976,7 @@ Copyright and complete license texts for the listed dependencies are included
9975
9976
  in their respective npm distributions and source repositories.
9976
9977
 
9977
9978
  ==============================================================================
9978
- Components: @bendyline/squisq-video@2.3.0
9979
+ Components: @bendyline/squisq-video@2.3.6
9979
9980
  Source files: node_modules/@bendyline/squisq-video/THIRD_PARTY_LICENSES.txt
9980
9981
  ==============================================================================
9981
9982
  THIRD-PARTY LICENSES FOR @bendyline/squisq-video
@@ -9987,7 +9988,7 @@ repository license, the pinned upstream copy is vendored and identified below.
9987
9988
  COMPONENTS
9988
9989
 
9989
9990
  ==============================================================================
9990
- Components: @bendyline/squisq@2.8.0
9991
+ Components: @bendyline/squisq@2.11.3
9991
9992
  Source files: node_modules/@bendyline/squisq/NOTICE.md
9992
9993
  ==============================================================================
9993
9994
  # Third-Party Notices for @bendyline/squisq
@@ -10018,7 +10019,7 @@ third-party license texts for bundled code and data are shipped in
10018
10019
  THIRD_PARTY_LICENSES.txt.
10019
10020
 
10020
10021
  ==============================================================================
10021
- Components: @bendyline/squisq@2.8.0
10022
+ Components: @bendyline/squisq@2.11.3
10022
10023
  Source files: node_modules/@bendyline/squisq/THIRD_PARTY_LICENSES.txt
10023
10024
  ==============================================================================
10024
10025
  THIRD-PARTY LICENSES FOR @bendyline/squisq
@@ -13720,62 +13721,62 @@ SOFTWARE.
13720
13721
  Components: json-schema-typed@8.0.2
13721
13722
  Source files: node_modules/json-schema-typed/LICENSE.md
13722
13723
  ==============================================================================
13723
- BSD 2-Clause License
13724
-
13725
- Original source code is copyright (c) 2019-2025 Remy Rylan
13726
- <https://github.com/RemyRylan>
13727
-
13728
- All JSON Schema documentation and descriptions are copyright (c):
13729
-
13730
- 2009 [draft-0] IETF Trust <https://www.ietf.org/>, Kris Zyp <kris@sitepen.com>,
13731
- and SitePen (USA) <https://www.sitepen.com/>.
13732
-
13733
- 2009 [draft-1] IETF Trust <https://www.ietf.org/>, Kris Zyp <kris@sitepen.com>,
13734
- and SitePen (USA) <https://www.sitepen.com/>.
13735
-
13736
- 2010 [draft-2] IETF Trust <https://www.ietf.org/>, Kris Zyp <kris@sitepen.com>,
13737
- and SitePen (USA) <https://www.sitepen.com/>.
13738
-
13739
- 2010 [draft-3] IETF Trust <https://www.ietf.org/>, Kris Zyp <kris@sitepen.com>,
13740
- Gary Court <gary.court@gmail.com>, and SitePen (USA) <https://www.sitepen.com/>.
13741
-
13742
- 2013 [draft-4] IETF Trust <https://www.ietf.org/>), Francis Galiegue
13743
- <fgaliegue@gmail.com>, Kris Zyp <kris@sitepen.com>, Gary Court
13744
- <gary.court@gmail.com>, and SitePen (USA) <https://www.sitepen.com/>.
13745
-
13746
- 2018 [draft-7] IETF Trust <https://www.ietf.org/>, Austin Wright <aaa@bzfx.net>,
13747
- Henry Andrews <henry@cloudflare.com>, Geraint Luff <luffgd@gmail.com>, and
13748
- Cloudflare, Inc. <https://www.cloudflare.com/>.
13749
-
13750
- 2019 [draft-2019-09] IETF Trust <https://www.ietf.org/>, Austin Wright
13751
- <aaa@bzfx.net>, Henry Andrews <andrews_henry@yahoo.com>, Ben Hutton
13752
- <bh7@sanger.ac.uk>, and Greg Dennis <gregsdennis@yahoo.com>.
13753
-
13754
- 2020 [draft-2020-12] IETF Trust <https://www.ietf.org/>, Austin Wright
13755
- <aaa@bzfx.net>, Henry Andrews <andrews_henry@yahoo.com>, Ben Hutton
13756
- <ben@jsonschema.dev>, and Greg Dennis <gregsdennis@yahoo.com>.
13757
-
13758
- All rights reserved.
13759
-
13760
- Redistribution and use in source and binary forms, with or without modification,
13761
- are permitted provided that the following conditions are met:
13762
-
13763
- 1. Redistributions of source code must retain the above copyright notice, this
13764
- list of conditions and the following disclaimer.
13765
-
13766
- 2. Redistributions in binary form must reproduce the above copyright notice,
13767
- this list of conditions and the following disclaimer in the documentation
13768
- and/or other materials provided with the distribution.
13769
-
13770
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
13771
- ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
13772
- WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
13773
- DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
13774
- ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
13775
- (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
13776
- LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
13777
- ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
13778
- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
13724
+ BSD 2-Clause License
13725
+
13726
+ Original source code is copyright (c) 2019-2025 Remy Rylan
13727
+ <https://github.com/RemyRylan>
13728
+
13729
+ All JSON Schema documentation and descriptions are copyright (c):
13730
+
13731
+ 2009 [draft-0] IETF Trust <https://www.ietf.org/>, Kris Zyp <kris@sitepen.com>,
13732
+ and SitePen (USA) <https://www.sitepen.com/>.
13733
+
13734
+ 2009 [draft-1] IETF Trust <https://www.ietf.org/>, Kris Zyp <kris@sitepen.com>,
13735
+ and SitePen (USA) <https://www.sitepen.com/>.
13736
+
13737
+ 2010 [draft-2] IETF Trust <https://www.ietf.org/>, Kris Zyp <kris@sitepen.com>,
13738
+ and SitePen (USA) <https://www.sitepen.com/>.
13739
+
13740
+ 2010 [draft-3] IETF Trust <https://www.ietf.org/>, Kris Zyp <kris@sitepen.com>,
13741
+ Gary Court <gary.court@gmail.com>, and SitePen (USA) <https://www.sitepen.com/>.
13742
+
13743
+ 2013 [draft-4] IETF Trust <https://www.ietf.org/>), Francis Galiegue
13744
+ <fgaliegue@gmail.com>, Kris Zyp <kris@sitepen.com>, Gary Court
13745
+ <gary.court@gmail.com>, and SitePen (USA) <https://www.sitepen.com/>.
13746
+
13747
+ 2018 [draft-7] IETF Trust <https://www.ietf.org/>, Austin Wright <aaa@bzfx.net>,
13748
+ Henry Andrews <henry@cloudflare.com>, Geraint Luff <luffgd@gmail.com>, and
13749
+ Cloudflare, Inc. <https://www.cloudflare.com/>.
13750
+
13751
+ 2019 [draft-2019-09] IETF Trust <https://www.ietf.org/>, Austin Wright
13752
+ <aaa@bzfx.net>, Henry Andrews <andrews_henry@yahoo.com>, Ben Hutton
13753
+ <bh7@sanger.ac.uk>, and Greg Dennis <gregsdennis@yahoo.com>.
13754
+
13755
+ 2020 [draft-2020-12] IETF Trust <https://www.ietf.org/>, Austin Wright
13756
+ <aaa@bzfx.net>, Henry Andrews <andrews_henry@yahoo.com>, Ben Hutton
13757
+ <ben@jsonschema.dev>, and Greg Dennis <gregsdennis@yahoo.com>.
13758
+
13759
+ All rights reserved.
13760
+
13761
+ Redistribution and use in source and binary forms, with or without modification,
13762
+ are permitted provided that the following conditions are met:
13763
+
13764
+ 1. Redistributions of source code must retain the above copyright notice, this
13765
+ list of conditions and the following disclaimer.
13766
+
13767
+ 2. Redistributions in binary form must reproduce the above copyright notice,
13768
+ this list of conditions and the following disclaimer in the documentation
13769
+ and/or other materials provided with the distribution.
13770
+
13771
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
13772
+ ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
13773
+ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
13774
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
13775
+ ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
13776
+ (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
13777
+ LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
13778
+ ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
13779
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
13779
13780
  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
13780
13781
 
13781
13782
  ==============================================================================
@@ -16678,17 +16679,17 @@ SOFTWARE.
16678
16679
  Components: tslib@1.14.1
16679
16680
  Source files: node_modules/tslib/LICENSE.txt
16680
16681
  ==============================================================================
16681
- Copyright (c) Microsoft Corporation.
16682
-
16683
- Permission to use, copy, modify, and/or distribute this software for any
16684
- purpose with or without fee is hereby granted.
16685
-
16686
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
16687
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
16688
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
16689
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
16690
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
16691
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
16682
+ Copyright (c) Microsoft Corporation.
16683
+
16684
+ Permission to use, copy, modify, and/or distribute this software for any
16685
+ purpose with or without fee is hereby granted.
16686
+
16687
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
16688
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
16689
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
16690
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
16691
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
16692
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
16692
16693
  PERFORMANCE OF THIS SOFTWARE.
16693
16694
 
16694
16695
  ==============================================================================
package/dist/bin.js CHANGED
@@ -169,6 +169,13 @@ import {
169
169
  MCP_WIRE_LIMITS,
170
170
  parseConversionResult
171
171
  } from "@bendyline/docblocks/mcp";
172
+ function artifactReferenceError(message) {
173
+ return Object.assign(new Error(message), {
174
+ code: "invalid-artifact-reference",
175
+ hint: "Use the exact artifact.uri returned by a successful convert_document, create_document_bundle, or preview_document call in this MCP session. Do not invent a URI or use a content hash as an id. For an earlier saved file, call list_roots and use a file source with rootId and path; if it was not saved, convert the source again.",
176
+ retryable: false
177
+ });
178
+ }
172
179
  function artifactId(uriOrId) {
173
180
  const artifactIdPattern = /^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/u;
174
181
  if (artifactIdPattern.test(uriOrId)) {
@@ -178,11 +185,11 @@ function artifactId(uriOrId) {
178
185
  try {
179
186
  parsed = new URL(uriOrId);
180
187
  } catch {
181
- throw new Error("Invalid MCP artifact URI");
188
+ throw artifactReferenceError("Invalid MCP artifact URI");
182
189
  }
183
190
  const id = parsed.pathname.slice(1);
184
191
  if (parsed.protocol !== "docblocks:" || parsed.hostname !== "artifacts" || parsed.username !== "" || parsed.password !== "" || parsed.port !== "" || parsed.search !== "" || parsed.hash !== "" || parsed.pathname !== `/${id}` || !artifactIdPattern.test(id) || uriOrId !== `docblocks://artifacts/${id}`) {
185
- throw new Error("Invalid MCP artifact URI");
192
+ throw artifactReferenceError("Invalid MCP artifact URI");
186
193
  }
187
194
  return id;
188
195
  }
@@ -535,7 +542,7 @@ var init_artifact_store = __esm({
535
542
  findRecordLocked(uriOrId) {
536
543
  const id = artifactId(uriOrId);
537
544
  const stored = this.records.get(id);
538
- if (!stored) throw new Error("Unknown or expired MCP artifact");
545
+ if (!stored) throw artifactReferenceError("Unknown or expired MCP artifact");
539
546
  return stored;
540
547
  }
541
548
  takeExpiredLocked() {
@@ -1567,9 +1574,9 @@ var init_document_service = __esm({
1567
1574
  markdown = importedMarkdown;
1568
1575
  }
1569
1576
  const { parseMarkdown: parseMarkdown2 } = await import("@bendyline/squisq/markdown");
1570
- const { markdownToDoc: markdownToDoc2 } = await import("@bendyline/squisq/doc");
1577
+ const { markdownToDoc: markdownToDoc3 } = await import("@bendyline/squisq/doc");
1571
1578
  const markdownDoc = parseMarkdown2(markdown);
1572
- const doc = markdownToDoc2(markdownDoc, {
1579
+ const doc = markdownToDoc3(markdownDoc, {
1573
1580
  defaultTemplate: "content",
1574
1581
  autoTemplates: false
1575
1582
  });
@@ -1983,7 +1990,7 @@ async function authoringDiagnostics(prepared, stage, format, signal) {
1983
1990
  totalBlocks: analyzedBlocks.length
1984
1991
  });
1985
1992
  const renderedText = materialized.layers.filter((layer) => layer.type === "text").map((layer) => layer.content.text).join("\n");
1986
- if (!normalizedText(renderedText).includes(normalizedText(body))) {
1993
+ if (!renderedBodyIncludes(renderedText, body)) {
1987
1994
  diagnostics.push({
1988
1995
  code: "rendered-content-omitted",
1989
1996
  severity: "error",
@@ -2016,6 +2023,10 @@ async function authoringDiagnostics(prepared, stage, format, signal) {
2016
2023
  }
2017
2024
  return diagnostics;
2018
2025
  }
2026
+ function renderedBodyIncludes(renderedText, body) {
2027
+ const undecorated = renderedText.replace(/(^|\n)[\t ]*(?:[•◦▪]|\d+[.)])[\t ]+/gu, "$1");
2028
+ return normalizedText(undecorated).includes(normalizedText(body));
2029
+ }
2019
2030
  function normalizedText(value) {
2020
2031
  return value.normalize("NFKC").replace(/\s+/gu, " ").trim().toLocaleLowerCase("en-US");
2021
2032
  }
@@ -3463,6 +3474,30 @@ var init_rendered_conversion = __esm({
3463
3474
  }
3464
3475
  });
3465
3476
 
3477
+ // src/mcp/pptx-source.ts
3478
+ import { markdownToDoc as markdownToDoc2 } from "@bendyline/squisq/doc";
3479
+ function preparePptxSource(markdown, slideBreak, autoTemplates) {
3480
+ const maxDepth = slideBreak === "h1" ? 1 : slideBreak === "h2" ? 2 : 6;
3481
+ const grouped = {
3482
+ ...markdown,
3483
+ children: markdown.children.map(
3484
+ (node) => node.type === "heading" && node.depth > maxDepth ? {
3485
+ type: "paragraph",
3486
+ children: [{ type: "strong", children: node.children }]
3487
+ } : node
3488
+ )
3489
+ };
3490
+ return {
3491
+ markdownDoc: grouped,
3492
+ doc: markdownToDoc2(grouped, { generateCoverBlock: false, autoTemplates })
3493
+ };
3494
+ }
3495
+ var init_pptx_source = __esm({
3496
+ "src/mcp/pptx-source.ts"() {
3497
+ "use strict";
3498
+ }
3499
+ });
3500
+
3466
3501
  // src/mcp/conversion-service.ts
3467
3502
  import { createHash as createHash6 } from "crypto";
3468
3503
  import { DOCBLOCKS_MCP_WIRE_VERSION as DOCBLOCKS_MCP_WIRE_VERSION3 } from "@bendyline/docblocks/mcp";
@@ -3507,6 +3542,9 @@ async function convertPreparedDocument(artifacts, prepared, request, signal, pro
3507
3542
  for (let index = 0; index < request.targets.length; index += 1) {
3508
3543
  throwIfAborted5(signal);
3509
3544
  const target = request.targets[index];
3545
+ const slideBreak = target.options?.slideBreak ?? "h1";
3546
+ const pptxSource = target.format === "pptx" && (slideBreak === "h1" || slideBreak === "h2" || slideBreak === "heading") ? preparePptxSource(prepared.markdownDoc, slideBreak, request.autoTemplates) : void 0;
3547
+ const targetDocument = pptxSource ? { ...prepared, ...pptxSource } : prepared;
3510
3548
  const definition = linkedRegistry.get(target.format);
3511
3549
  if (!definition) throw new Error(`Unknown conversion target "${target.format}"`);
3512
3550
  if (!definition.exportDoc) throw new Error(`Format "${target.format}" is not export-capable`);
@@ -3545,7 +3583,7 @@ async function convertPreparedDocument(artifacts, prepared, request, signal, pro
3545
3583
  }
3546
3584
  };
3547
3585
  const converted = usesDocumentRasterizer(target.format, fidelity) ? await dependencies.convertRenderedDocument(
3548
- prepared,
3586
+ targetDocument,
3549
3587
  target.format,
3550
3588
  fidelity,
3551
3589
  target.options ?? {},
@@ -3561,7 +3599,15 @@ async function convertPreparedDocument(artifacts, prepared, request, signal, pro
3561
3599
  `${target.format}: ${message}`
3562
3600
  )
3563
3601
  ) : await (async () => {
3564
- nativePrepared ?? (nativePrepared = await dependencies.prepareNativeConversion(
3602
+ const targetPrepared = pptxSource ? await dependencies.prepareNativeConversion(
3603
+ {
3604
+ kind: "doc",
3605
+ doc: pptxSource.doc,
3606
+ container: prepared.container,
3607
+ baseName: prepared.baseName
3608
+ },
3609
+ nativePrepareOptions
3610
+ ) : nativePrepared ?? (nativePrepared = await dependencies.prepareNativeConversion(
3565
3611
  {
3566
3612
  kind: "markdown",
3567
3613
  markdown: prepared.markdownDoc,
@@ -3571,7 +3617,7 @@ async function convertPreparedDocument(artifacts, prepared, request, signal, pro
3571
3617
  nativePrepareOptions
3572
3618
  ));
3573
3619
  try {
3574
- return await nativePrepared.convert(target.format, {
3620
+ return await targetPrepared.convert(target.format, {
3575
3621
  signal,
3576
3622
  title: request.title,
3577
3623
  formatOptions: { [target.format]: formatOptions }
@@ -3883,6 +3929,7 @@ var init_conversion_service = __esm({
3883
3929
  init_document_service();
3884
3930
  init_intelligence();
3885
3931
  init_rendered_conversion();
3932
+ init_pptx_source();
3886
3933
  MCP_FORMAT_FIDELITIES = {
3887
3934
  md: ["semantic"],
3888
3935
  docx: ["semantic", "editable-native"],
@@ -4126,6 +4173,39 @@ var init_progress = __esm({
4126
4173
  }
4127
4174
  });
4128
4175
 
4176
+ // src/mcp/preview-content.ts
4177
+ async function inlinePreviewContent(result, artifacts, signal) {
4178
+ const content = [];
4179
+ let remaining = MAX_INLINE_PREVIEW_BYTES;
4180
+ for (const item of result.items) {
4181
+ signal?.throwIfAborted();
4182
+ const encodedSize = 4 * Math.ceil(item.artifact.size / 3);
4183
+ if (encodedSize > remaining) {
4184
+ content.push({
4185
+ type: "text",
4186
+ text: `Preview item ${item.index} is available by resource link but was not inlined because of the response-size budget. Request startIndex: ${item.index}, maxItems: 1 and smaller width/height to inspect its pixels.`
4187
+ });
4188
+ continue;
4189
+ }
4190
+ const bytes = await artifacts.read(item.artifact.uri, signal);
4191
+ const data = bytes.toString("base64");
4192
+ remaining -= data.length;
4193
+ content.push({
4194
+ type: "text",
4195
+ text: `Preview item ${item.index}${item.label ? `: ${item.label}` : ""} (${result.previewBasis})`
4196
+ });
4197
+ content.push({ type: "image", mimeType: item.artifact.mimeType, data });
4198
+ }
4199
+ return content;
4200
+ }
4201
+ var MAX_INLINE_PREVIEW_BYTES;
4202
+ var init_preview_content = __esm({
4203
+ "src/mcp/preview-content.ts"() {
4204
+ "use strict";
4205
+ MAX_INLINE_PREVIEW_BYTES = 4 * 1024 * 1024;
4206
+ }
4207
+ });
4208
+
4129
4209
  // src/mcp/style-guidance.ts
4130
4210
  var STYLE_SELECTION_GUIDANCE, TRANSFORM_SELECTION_GUIDANCE, MOTION_SELECTION_GUIDANCE;
4131
4211
  var init_style_guidance = __esm({
@@ -4430,7 +4510,8 @@ function registerAgenticTools(server, context) {
4430
4510
  return {
4431
4511
  content: [
4432
4512
  { type: "text", text: JSON.stringify(result) },
4433
- ...result.items.map((item) => artifactLink(item.artifact))
4513
+ ...result.items.map((item) => artifactLink(item.artifact)),
4514
+ ...await inlinePreviewContent(result, context.artifacts, operationSignal)
4434
4515
  ],
4435
4516
  structuredContent: asStructuredContent(successResult(result))
4436
4517
  };
@@ -5294,6 +5375,7 @@ var init_agentic_tools = __esm({
5294
5375
  init_preview_service();
5295
5376
  init_error_result();
5296
5377
  init_progress();
5378
+ init_preview_content();
5297
5379
  init_output_bounds();
5298
5380
  init_style_guidance();
5299
5381
  READ_ONLY = {
@@ -5351,8 +5433,8 @@ var init_agentic_tools = __esm({
5351
5433
  format: z.literal("pptx"),
5352
5434
  fidelity: fidelitySchemas.pptx.optional(),
5353
5435
  ...metadataFields,
5354
- slideBreak: z.enum(["h1", "h2", "heading"]).optional().describe(
5355
- "Heading depths that start slides. Headings alone create slide boundaries; do not add --- between them unless a visible horizontal rule is intended."
5436
+ slideBreak: z.enum(["h1", "h2", "heading"]).default("h1").describe(
5437
+ "Defaults to h1: author one H1 per slide; deeper headings remain body text and no extra cover is inserted. h2 breaks at H1/H2; heading breaks at any depth. Include a title slide as an authored heading; do not add --- between heading-based slides."
5356
5438
  ),
5357
5439
  defaultFont: z.string().max(256).optional(),
5358
5440
  defaultFontSize: z.number().min(6).max(96).optional(),
@@ -7366,10 +7448,10 @@ function throwIfAborted2(signal) {
7366
7448
  throwIfAborted(signal, "Document conversion was cancelled");
7367
7449
  }
7368
7450
  async function applyTransformToMarkdown(markdownDoc, container, transformStyle, themeId) {
7369
- const { markdownToDoc: markdownToDoc2, docToMarkdown } = await import("@bendyline/squisq/doc");
7451
+ const { markdownToDoc: markdownToDoc3, docToMarkdown } = await import("@bendyline/squisq/doc");
7370
7452
  const { readFrontmatterThemeId } = await import("@bendyline/squisq/markdown");
7371
7453
  const { applyTransform, extractDocImages } = await import("@bendyline/squisq/transform");
7372
- const doc = markdownToDoc2(markdownDoc);
7454
+ const doc = markdownToDoc3(markdownDoc);
7373
7455
  const images = extractDocImages(doc.blocks);
7374
7456
  const effectiveTheme = themeId ?? readFrontmatterThemeId(markdownDoc.frontmatter);
7375
7457
  const result = applyTransform(doc, transformStyle, { themeId: effectiveTheme, images });
package/dist/eval/cli.js CHANGED
@@ -38,7 +38,8 @@ Include a clear opening thesis, a compact scorecard, insights rather than repeat
38
38
  minWords: 220,
39
39
  maxWords: 650,
40
40
  maxWordsPerSection: 95,
41
- minVisualTemplates: 2,
41
+ // Layouts may be chosen by autoTemplates; annotation count is not visual quality.
42
+ minVisualTemplates: 0,
42
43
  requiredPhrases: ["18,420", "71%", "$3.8M", "49%", "23%", "31%", "permissions"]
43
44
  }
44
45
  },
@@ -63,7 +64,8 @@ Cover: a plain-language definition, an opening scenario, a four-question risk sc
63
64
  minWords: 240,
64
65
  maxWords: 700,
65
66
  maxWordsPerSection: 90,
66
- minVisualTemplates: 2,
67
+ // Layouts may be chosen by autoTemplates; annotation count is not visual quality.
68
+ minVisualTemplates: 0,
67
69
  requiredPhrases: ["accountable", "confidential", "escalat", "four", "one-week"]
68
70
  }
69
71
  },
@@ -422,7 +424,7 @@ var HEADING_PATTERN = /^(#{1,6})\s+(.+)$/gm;
422
424
  var TEMPLATE_PATTERN = /\{\[([A-Za-z0-9_-]+)/g;
423
425
  function judgeMarkdown(markdown, testCase) {
424
426
  const words = countWords(markdown);
425
- const sections = markdownSections(markdown);
427
+ const sections = markdownSections(markdown, testCase.targetFormat === "pptx" ? 1 : 6);
426
428
  const headings = [...markdown.matchAll(HEADING_PATTERN)];
427
429
  const templates = [...markdown.matchAll(TEMPLATE_PATTERN)].map((match) => match[1]);
428
430
  const visualTemplates = templates.filter((template) => template !== "content");
@@ -440,7 +442,7 @@ function judgeMarkdown(markdown, testCase) {
440
442
  ),
441
443
  rangeCheck(
442
444
  "section-count",
443
- headings.length,
445
+ sections.length,
444
446
  testCase.expectation.minItems,
445
447
  testCase.expectation.maxItems,
446
448
  true,
@@ -482,6 +484,7 @@ function judgeMarkdown(markdown, testCase) {
482
484
  return summarizeChecks(checks, {
483
485
  wordCount: words,
484
486
  headingCount: headings.length,
487
+ sectionCount: sections.length,
485
488
  templateAnnotationCount: templates.length,
486
489
  visualTemplateCount: visualTemplates.length,
487
490
  denseSectionCount: denseSections.length
@@ -490,8 +493,10 @@ function judgeMarkdown(markdown, testCase) {
490
493
  function countWords(value) {
491
494
  return value.trim().match(/[\p{L}\p{N}][\p{L}\p{N}'’.-]*/gu)?.length ?? 0;
492
495
  }
493
- function markdownSections(markdown) {
494
- const matches = [...markdown.matchAll(HEADING_PATTERN)];
496
+ function markdownSections(markdown, maxDepth = 6) {
497
+ const matches = [...markdown.matchAll(HEADING_PATTERN)].filter(
498
+ (match) => match[1].length <= maxDepth
499
+ );
495
500
  return matches.map((match, index) => ({
496
501
  heading: match[2],
497
502
  body: markdown.slice((match.index ?? 0) + match[0].length, matches[index + 1]?.index)
@@ -1083,7 +1088,8 @@ The deterministic observations below are authoritative. Do not recount them or c
1083
1088
 
1084
1089
  Deterministic observations:
1085
1090
  - Word count: ${String(deterministic.metrics.wordCount)} (acceptance envelope ${testCase.expectation.minWords}-${testCase.expectation.maxWords})
1086
- - Heading/section count: ${String(deterministic.metrics.headingCount)} (acceptance envelope ${testCase.expectation.minItems}-${testCase.expectation.maxItems})
1091
+ - Section count${testCase.targetFormat === "pptx" ? " (H1 slide boundaries)" : ""}: ${String(deterministic.metrics.sectionCount)} (acceptance envelope ${testCase.expectation.minItems}-${testCase.expectation.maxItems})
1092
+ - All headings, including subordinate headings within a slide: ${String(deterministic.metrics.headingCount)} (diagnostic only; do not compare this count with the slide target)
1087
1093
  - Sections over ${testCase.expectation.maxWordsPerSection} words: ${String(deterministic.metrics.denseSectionCount)}
1088
1094
  - Non-content Squisq template annotations: ${String(deterministic.metrics.visualTemplateCount)} (minimum ${testCase.expectation.minVisualTemplates})
1089
1095
  - Deterministic acceptance: ${deterministic.passed ? "pass" : "fail"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bendyline/docblocks-cli",
3
- "version": "2.5.0",
3
+ "version": "2.6.1",
4
4
  "description": "Build, preview, convert, render, inspect, and automate documents",
5
5
  "license": "MIT",
6
6
  "author": "Bendyline",
@@ -36,7 +36,7 @@
36
36
  "docblocks": "./dist/bin.js"
37
37
  },
38
38
  "engines": {
39
- "node": "^22.22.2 || ^24.15.0 || >=26.0.0"
39
+ "node": "^24.18.0 || >=26.0.0"
40
40
  },
41
41
  "files": [
42
42
  "dist",
@@ -47,12 +47,12 @@
47
47
  "typecheck": "tsc --noEmit"
48
48
  },
49
49
  "dependencies": {
50
- "@bendyline/docblocks": "2.5.0",
51
- "@bendyline/squisq": "2.9.0",
52
- "@bendyline/squisq-cli": "2.6.1",
53
- "@bendyline/squisq-formats": "2.4.6",
54
- "@bendyline/squisq-react": "2.9.0",
55
- "@bendyline/squisq-video": "2.3.1",
50
+ "@bendyline/docblocks": "2.6.1",
51
+ "@bendyline/squisq": "2.11.3",
52
+ "@bendyline/squisq-cli": "2.8.3",
53
+ "@bendyline/squisq-formats": "2.6.3",
54
+ "@bendyline/squisq-react": "2.11.3",
55
+ "@bendyline/squisq-video": "2.3.6",
56
56
  "@modelcontextprotocol/sdk": "1.29.0",
57
57
  "commander": "13.1.0",
58
58
  "jszip": "3.10.1",