@taimos/projen 0.1.96 → 0.1.98

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/.jsii CHANGED
@@ -8,8 +8,8 @@
8
8
  ]
9
9
  },
10
10
  "dependencies": {
11
- "constructs": "^10.5.1",
12
- "projen": ">=0.104.26 <1.0.0",
11
+ "constructs": "^10.8.1",
12
+ "projen": ">=0.104.27 <1.0.0",
13
13
  "projen-pipelines": ">=0.3.27"
14
14
  },
15
15
  "dependencyClosure": {
@@ -95,7 +95,7 @@
95
95
  "stability": "stable"
96
96
  },
97
97
  "homepage": "https://github.com/taimos/taimos-projen.git",
98
- "jsiiVersion": "5.9.21 (build f1fe2ef)",
98
+ "jsiiVersion": "5.9.57 (build 15f08d5)",
99
99
  "license": "Apache-2.0",
100
100
  "metadata": {
101
101
  "jsii": {
@@ -103,7 +103,8 @@
103
103
  "hasDefaultInterfaces": true
104
104
  }
105
105
  },
106
- "tscRootDir": "/home/runner/work/taimos-projen/taimos-projen/src"
106
+ "tscOutDir": "lib",
107
+ "tscRootDir": "src"
107
108
  },
108
109
  "name": "@taimos/projen",
109
110
  "readme": {
@@ -436,6 +437,372 @@
436
437
  ],
437
438
  "symbolId": "src/projects/api-library:ApiRestCodegen"
438
439
  },
440
+ "@taimos/projen.GitHooks": {
441
+ "assembly": "@taimos/projen",
442
+ "base": "projen.Component",
443
+ "docs": {
444
+ "remarks": "Hooks cover a staged secret scan, projen drift, lint and typecheck per\npackage, and a Conventional Commits check on the first commit of a branch.\nCI should set `LEFTHOOK=0`.",
445
+ "stability": "stable",
446
+ "summary": "Local git hooks managed by Lefthook (ADR-0013): a generated `lefthook.yml`, a root `prepare` script that runs `lefthook install`, and a pinned `lefthook` devDependency."
447
+ },
448
+ "fqn": "@taimos/projen.GitHooks",
449
+ "initializer": {
450
+ "docs": {
451
+ "stability": "stable"
452
+ },
453
+ "locationInModule": {
454
+ "filename": "src/components/git-hooks.ts",
455
+ "line": 104
456
+ },
457
+ "parameters": [
458
+ {
459
+ "name": "tsProject",
460
+ "type": {
461
+ "fqn": "projen.typescript.TypeScriptProject"
462
+ }
463
+ },
464
+ {
465
+ "name": "options",
466
+ "optional": true,
467
+ "type": {
468
+ "fqn": "@taimos/projen.GitHooksOptions"
469
+ }
470
+ }
471
+ ]
472
+ },
473
+ "kind": "class",
474
+ "locationInModule": {
475
+ "filename": "src/components/git-hooks.ts",
476
+ "line": 90
477
+ },
478
+ "methods": [
479
+ {
480
+ "docs": {
481
+ "stability": "stable",
482
+ "summary": "Add a package that runs its own lint and typecheck scripts."
483
+ },
484
+ "locationInModule": {
485
+ "filename": "src/components/git-hooks.ts",
486
+ "line": 173
487
+ },
488
+ "name": "addPackage",
489
+ "parameters": [
490
+ {
491
+ "name": "pkg",
492
+ "type": {
493
+ "fqn": "@taimos/projen.GitHooksPackage"
494
+ }
495
+ }
496
+ ]
497
+ },
498
+ {
499
+ "docs": {
500
+ "stability": "stable",
501
+ "summary": "Called before synthesis."
502
+ },
503
+ "locationInModule": {
504
+ "filename": "src/components/git-hooks.ts",
505
+ "line": 177
506
+ },
507
+ "name": "preSynthesize",
508
+ "overrides": "projen.Component"
509
+ }
510
+ ],
511
+ "name": "GitHooks",
512
+ "properties": [
513
+ {
514
+ "docs": {
515
+ "stability": "stable",
516
+ "summary": "The generated commit-msg check script."
517
+ },
518
+ "immutable": true,
519
+ "locationInModule": {
520
+ "filename": "src/components/git-hooks.ts",
521
+ "line": 96
522
+ },
523
+ "name": "commitMsgScript",
524
+ "type": {
525
+ "fqn": "projen.TextFile"
526
+ }
527
+ },
528
+ {
529
+ "docs": {
530
+ "stability": "stable",
531
+ "summary": "The generated `lefthook.yml`."
532
+ },
533
+ "immutable": true,
534
+ "locationInModule": {
535
+ "filename": "src/components/git-hooks.ts",
536
+ "line": 93
537
+ },
538
+ "name": "configFile",
539
+ "type": {
540
+ "fqn": "projen.YamlFile"
541
+ }
542
+ },
543
+ {
544
+ "docs": {
545
+ "stability": "stable",
546
+ "summary": "The generated projen drift check script, if enabled."
547
+ },
548
+ "immutable": true,
549
+ "locationInModule": {
550
+ "filename": "src/components/git-hooks.ts",
551
+ "line": 99
552
+ },
553
+ "name": "projenDriftScript",
554
+ "optional": true,
555
+ "type": {
556
+ "fqn": "projen.TextFile"
557
+ }
558
+ }
559
+ ],
560
+ "symbolId": "src/components/git-hooks:GitHooks"
561
+ },
562
+ "@taimos/projen.GitHooksOptions": {
563
+ "assembly": "@taimos/projen",
564
+ "datatype": true,
565
+ "docs": {
566
+ "stability": "stable"
567
+ },
568
+ "fqn": "@taimos/projen.GitHooksOptions",
569
+ "kind": "interface",
570
+ "locationInModule": {
571
+ "filename": "src/components/git-hooks.ts",
572
+ "line": 30
573
+ },
574
+ "name": "GitHooksOptions",
575
+ "properties": [
576
+ {
577
+ "abstract": true,
578
+ "docs": {
579
+ "default": "['feat', 'fix', 'chore', 'docs', 'ci', 'spec']",
580
+ "remarks": "Keep this in sync with the PR title check.",
581
+ "stability": "stable",
582
+ "summary": "Types accepted by the commit-msg check on the first commit of a branch."
583
+ },
584
+ "immutable": true,
585
+ "locationInModule": {
586
+ "filename": "src/components/git-hooks.ts",
587
+ "line": 70
588
+ },
589
+ "name": "commitTypes",
590
+ "optional": true,
591
+ "type": {
592
+ "collection": {
593
+ "elementtype": {
594
+ "primitive": "string"
595
+ },
596
+ "kind": "array"
597
+ }
598
+ }
599
+ },
600
+ {
601
+ "abstract": true,
602
+ "docs": {
603
+ "default": "- the `defaultReleaseBranch` of the project, falling back to 'main'",
604
+ "stability": "stable",
605
+ "summary": "The branch the first-commit detection compares against."
606
+ },
607
+ "immutable": true,
608
+ "locationInModule": {
609
+ "filename": "src/components/git-hooks.ts",
610
+ "line": 76
611
+ },
612
+ "name": "defaultBranch",
613
+ "optional": true,
614
+ "type": {
615
+ "primitive": "string"
616
+ }
617
+ },
618
+ {
619
+ "abstract": true,
620
+ "docs": {
621
+ "default": "true",
622
+ "remarks": "Requires the `gitleaks`\nbinary on the PATH. It reuses `.gitleaks.toml` when that file exists.",
623
+ "stability": "stable",
624
+ "summary": "Add a pre-commit gitleaks scan of staged changes."
625
+ },
626
+ "immutable": true,
627
+ "locationInModule": {
628
+ "filename": "src/components/git-hooks.ts",
629
+ "line": 43
630
+ },
631
+ "name": "gitleaks",
632
+ "optional": true,
633
+ "type": {
634
+ "primitive": "boolean"
635
+ }
636
+ },
637
+ {
638
+ "abstract": true,
639
+ "docs": {
640
+ "default": "'1.11.13'",
641
+ "stability": "stable",
642
+ "summary": "The pinned lefthook version added as a devDependency."
643
+ },
644
+ "immutable": true,
645
+ "locationInModule": {
646
+ "filename": "src/components/git-hooks.ts",
647
+ "line": 36
648
+ },
649
+ "name": "lefthookVersion",
650
+ "optional": true,
651
+ "type": {
652
+ "primitive": "string"
653
+ }
654
+ },
655
+ {
656
+ "abstract": true,
657
+ "docs": {
658
+ "default": "[]",
659
+ "stability": "stable",
660
+ "summary": "Additional (non-projen) packages, e.g. frontends, that run their own `lint` and `typecheck` package scripts."
661
+ },
662
+ "immutable": true,
663
+ "locationInModule": {
664
+ "filename": "src/components/git-hooks.ts",
665
+ "line": 63
666
+ },
667
+ "name": "packages",
668
+ "optional": true,
669
+ "type": {
670
+ "collection": {
671
+ "elementtype": {
672
+ "fqn": "@taimos/projen.GitHooksPackage"
673
+ },
674
+ "kind": "array"
675
+ }
676
+ }
677
+ },
678
+ {
679
+ "abstract": true,
680
+ "docs": {
681
+ "default": "true",
682
+ "stability": "stable",
683
+ "summary": "Add a pre-commit check that fails when `projen` synth changes any file."
684
+ },
685
+ "immutable": true,
686
+ "locationInModule": {
687
+ "filename": "src/components/git-hooks.ts",
688
+ "line": 49
689
+ },
690
+ "name": "projenDrift",
691
+ "optional": true,
692
+ "type": {
693
+ "primitive": "boolean"
694
+ }
695
+ },
696
+ {
697
+ "abstract": true,
698
+ "docs": {
699
+ "default": "true",
700
+ "stability": "stable",
701
+ "summary": "Generate eslint and `tsc --noEmit` jobs for every projen TypeScript subproject, scoped to the subproject directory."
702
+ },
703
+ "immutable": true,
704
+ "locationInModule": {
705
+ "filename": "src/components/git-hooks.ts",
706
+ "line": 56
707
+ },
708
+ "name": "subprojectChecks",
709
+ "optional": true,
710
+ "type": {
711
+ "primitive": "boolean"
712
+ }
713
+ }
714
+ ],
715
+ "symbolId": "src/components/git-hooks:GitHooksOptions"
716
+ },
717
+ "@taimos/projen.GitHooksPackage": {
718
+ "assembly": "@taimos/projen",
719
+ "datatype": true,
720
+ "docs": {
721
+ "stability": "stable",
722
+ "summary": "A package that gets lint and typecheck jobs in `lefthook.yml`."
723
+ },
724
+ "fqn": "@taimos/projen.GitHooksPackage",
725
+ "kind": "interface",
726
+ "locationInModule": {
727
+ "filename": "src/components/git-hooks.ts",
728
+ "line": 7
729
+ },
730
+ "name": "GitHooksPackage",
731
+ "properties": [
732
+ {
733
+ "abstract": true,
734
+ "docs": {
735
+ "stability": "stable",
736
+ "summary": "Package directory relative to the repo root, e.g. `packages/web`."
737
+ },
738
+ "immutable": true,
739
+ "locationInModule": {
740
+ "filename": "src/components/git-hooks.ts",
741
+ "line": 9
742
+ },
743
+ "name": "path",
744
+ "type": {
745
+ "primitive": "string"
746
+ }
747
+ },
748
+ {
749
+ "abstract": true,
750
+ "docs": {
751
+ "default": "'*.{ts,tsx}'",
752
+ "stability": "stable",
753
+ "summary": "File glob that selects the staged files that trigger the jobs."
754
+ },
755
+ "immutable": true,
756
+ "locationInModule": {
757
+ "filename": "src/components/git-hooks.ts",
758
+ "line": 15
759
+ },
760
+ "name": "glob",
761
+ "optional": true,
762
+ "type": {
763
+ "primitive": "string"
764
+ }
765
+ },
766
+ {
767
+ "abstract": true,
768
+ "docs": {
769
+ "default": "'pnpm run lint'",
770
+ "remarks": "`{staged_files}` is replaced by lefthook.",
771
+ "stability": "stable",
772
+ "summary": "Command that lints the package."
773
+ },
774
+ "immutable": true,
775
+ "locationInModule": {
776
+ "filename": "src/components/git-hooks.ts",
777
+ "line": 21
778
+ },
779
+ "name": "lint",
780
+ "optional": true,
781
+ "type": {
782
+ "primitive": "string"
783
+ }
784
+ },
785
+ {
786
+ "abstract": true,
787
+ "docs": {
788
+ "default": "'pnpm run typecheck'",
789
+ "stability": "stable",
790
+ "summary": "Command that typechecks the package."
791
+ },
792
+ "immutable": true,
793
+ "locationInModule": {
794
+ "filename": "src/components/git-hooks.ts",
795
+ "line": 27
796
+ },
797
+ "name": "typecheck",
798
+ "optional": true,
799
+ "type": {
800
+ "primitive": "string"
801
+ }
802
+ }
803
+ ],
804
+ "symbolId": "src/components/git-hooks:GitHooksPackage"
805
+ },
439
806
  "@taimos/projen.GitHubAmplifyDeploy": {
440
807
  "assembly": "@taimos/projen",
441
808
  "base": "projen.Component",
@@ -1435,7 +1802,7 @@
1435
1802
  },
1436
1803
  "locationInModule": {
1437
1804
  "filename": "src/projects/monorepo.ts",
1438
- "line": 335
1805
+ "line": 353
1439
1806
  },
1440
1807
  "parameters": [
1441
1808
  {
@@ -1449,7 +1816,7 @@
1449
1816
  "kind": "class",
1450
1817
  "locationInModule": {
1451
1818
  "filename": "src/projects/monorepo.ts",
1452
- "line": 297
1819
+ "line": 312
1453
1820
  },
1454
1821
  "name": "MonorepoProject",
1455
1822
  "properties": [
@@ -1463,7 +1830,7 @@
1463
1830
  "immutable": true,
1464
1831
  "locationInModule": {
1465
1832
  "filename": "src/projects/monorepo.ts",
1466
- "line": 304
1833
+ "line": 319
1467
1834
  },
1468
1835
  "name": "DEFAULT_RELEASE_AGE_EXCLUDE",
1469
1836
  "static": true,
@@ -1484,7 +1851,7 @@
1484
1851
  "immutable": true,
1485
1852
  "locationInModule": {
1486
1853
  "filename": "src/projects/monorepo.ts",
1487
- "line": 333
1854
+ "line": 351
1488
1855
  },
1489
1856
  "name": "defaultReleaseBranch",
1490
1857
  "type": {
@@ -1499,7 +1866,7 @@
1499
1866
  "immutable": true,
1500
1867
  "locationInModule": {
1501
1868
  "filename": "src/projects/monorepo.ts",
1502
- "line": 315
1869
+ "line": 330
1503
1870
  },
1504
1871
  "name": "prBuildWorkflow",
1505
1872
  "type": {
@@ -1514,7 +1881,7 @@
1514
1881
  "immutable": true,
1515
1882
  "locationInModule": {
1516
1883
  "filename": "src/projects/monorepo.ts",
1517
- "line": 312
1884
+ "line": 327
1518
1885
  },
1519
1886
  "name": "workspaceFile",
1520
1887
  "type": {
@@ -1529,7 +1896,7 @@
1529
1896
  "immutable": true,
1530
1897
  "locationInModule": {
1531
1898
  "filename": "src/projects/monorepo.ts",
1532
- "line": 327
1899
+ "line": 342
1533
1900
  },
1534
1901
  "name": "amplifyDeploy",
1535
1902
  "optional": true,
@@ -1545,7 +1912,7 @@
1545
1912
  "immutable": true,
1546
1913
  "locationInModule": {
1547
1914
  "filename": "src/projects/monorepo.ts",
1548
- "line": 318
1915
+ "line": 333
1549
1916
  },
1550
1917
  "name": "amplifyFile",
1551
1918
  "optional": true,
@@ -1561,7 +1928,7 @@
1561
1928
  "immutable": true,
1562
1929
  "locationInModule": {
1563
1930
  "filename": "src/projects/monorepo.ts",
1564
- "line": 321
1931
+ "line": 336
1565
1932
  },
1566
1933
  "name": "assignApprover",
1567
1934
  "optional": true,
@@ -1569,6 +1936,22 @@
1569
1936
  "fqn": "projen-pipelines.GitHubAssignApprover"
1570
1937
  }
1571
1938
  },
1939
+ {
1940
+ "docs": {
1941
+ "stability": "stable",
1942
+ "summary": "The Lefthook git hooks component, if enabled."
1943
+ },
1944
+ "immutable": true,
1945
+ "locationInModule": {
1946
+ "filename": "src/projects/monorepo.ts",
1947
+ "line": 348
1948
+ },
1949
+ "name": "gitHooks",
1950
+ "optional": true,
1951
+ "type": {
1952
+ "fqn": "@taimos/projen.GitHooks"
1953
+ }
1954
+ },
1572
1955
  {
1573
1956
  "docs": {
1574
1957
  "stability": "stable",
@@ -1577,7 +1960,7 @@
1577
1960
  "immutable": true,
1578
1961
  "locationInModule": {
1579
1962
  "filename": "src/projects/monorepo.ts",
1580
- "line": 330
1963
+ "line": 345
1581
1964
  },
1582
1965
  "name": "gitleaks",
1583
1966
  "optional": true,
@@ -1593,7 +1976,7 @@
1593
1976
  "immutable": true,
1594
1977
  "locationInModule": {
1595
1978
  "filename": "src/projects/monorepo.ts",
1596
- "line": 324
1979
+ "line": 339
1597
1980
  },
1598
1981
  "name": "productionRelease",
1599
1982
  "optional": true,
@@ -1656,7 +2039,7 @@
1656
2039
  "immutable": true,
1657
2040
  "locationInModule": {
1658
2041
  "filename": "src/projects/monorepo.ts",
1659
- "line": 281
2042
+ "line": 296
1660
2043
  },
1661
2044
  "name": "amplifyDeployOptions",
1662
2045
  "optional": true,
@@ -1748,6 +2131,43 @@
1748
2131
  }
1749
2132
  }
1750
2133
  },
2134
+ {
2135
+ "abstract": true,
2136
+ "docs": {
2137
+ "default": "false",
2138
+ "stability": "stable",
2139
+ "summary": "Whether to add local git hooks managed by Lefthook: a `lefthook.yml`, a root `prepare` script and a pinned `lefthook` devDependency (see `GitHooks`)."
2140
+ },
2141
+ "immutable": true,
2142
+ "locationInModule": {
2143
+ "filename": "src/projects/monorepo.ts",
2144
+ "line": 276
2145
+ },
2146
+ "name": "gitHooks",
2147
+ "optional": true,
2148
+ "type": {
2149
+ "primitive": "boolean"
2150
+ }
2151
+ },
2152
+ {
2153
+ "abstract": true,
2154
+ "docs": {
2155
+ "default": "- all checks enabled, first-commit types feat, fix, chore, docs, ci, spec",
2156
+ "remarks": "Only used when `gitHooks` is enabled.",
2157
+ "stability": "stable",
2158
+ "summary": "Options for the git hooks component."
2159
+ },
2160
+ "immutable": true,
2161
+ "locationInModule": {
2162
+ "filename": "src/projects/monorepo.ts",
2163
+ "line": 283
2164
+ },
2165
+ "name": "gitHooksOptions",
2166
+ "optional": true,
2167
+ "type": {
2168
+ "fqn": "@taimos/projen.GitHooksOptions"
2169
+ }
2170
+ },
1751
2171
  {
1752
2172
  "abstract": true,
1753
2173
  "docs": {
@@ -2732,6 +3152,6 @@
2732
3152
  "symbolId": "src/projects/ts-lib:TaimosTypescriptLibraryOptions"
2733
3153
  }
2734
3154
  },
2735
- "version": "0.1.96",
2736
- "fingerprint": "A/UOYt7aAZMY5+fEuvuVi7sRYp70XuoLrkZQAlhUc30="
3155
+ "version": "0.1.98",
3156
+ "fingerprint": "tzrBmY3Ydo12KI7JhzCC1CEMOX3WYiPc0MTQ8hzhp5k="
2737
3157
  }