projen 0.98.4__py3-none-any.whl → 0.98.5__py3-none-any.whl
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.
Potentially problematic release.
This version of projen might be problematic. Click here for more details.
- projen/__init__.py +438 -0
- projen/_jsii/__init__.py +1 -1
- projen/_jsii/projen@0.98.5.jsii.tgz +0 -0
- projen/javascript/biome_config/__init__.py +205 -28
- {projen-0.98.4.data → projen-0.98.5.data}/scripts/projen +1 -1
- {projen-0.98.4.dist-info → projen-0.98.5.dist-info}/METADATA +1 -1
- {projen-0.98.4.dist-info → projen-0.98.5.dist-info}/RECORD +10 -10
- projen/_jsii/projen@0.98.4.jsii.tgz +0 -0
- {projen-0.98.4.dist-info → projen-0.98.5.dist-info}/LICENSE +0 -0
- {projen-0.98.4.dist-info → projen-0.98.5.dist-info}/WHEEL +0 -0
- {projen-0.98.4.dist-info → projen-0.98.5.dist-info}/top_level.txt +0 -0
projen/__init__.py
CHANGED
|
@@ -607,6 +607,158 @@ from ._jsii import *
|
|
|
607
607
|
import constructs as _constructs_77d1e7e8
|
|
608
608
|
|
|
609
609
|
|
|
610
|
+
@jsii.enum(jsii_type="projen.AiAgent")
|
|
611
|
+
class AiAgent(enum.Enum):
|
|
612
|
+
'''(experimental) Supported AI coding assistants and their instruction file locations.
|
|
613
|
+
|
|
614
|
+
:stability: experimental
|
|
615
|
+
'''
|
|
616
|
+
|
|
617
|
+
GITHUB_COPILOT = "GITHUB_COPILOT"
|
|
618
|
+
'''(experimental) GitHub Copilot - .github/copilot-instructions.md.
|
|
619
|
+
|
|
620
|
+
:stability: experimental
|
|
621
|
+
'''
|
|
622
|
+
CURSOR = "CURSOR"
|
|
623
|
+
'''(experimental) Cursor IDE - .cursor/rules/project.md.
|
|
624
|
+
|
|
625
|
+
:stability: experimental
|
|
626
|
+
'''
|
|
627
|
+
CLAUDE = "CLAUDE"
|
|
628
|
+
'''(experimental) Claude Code - CLAUDE.md.
|
|
629
|
+
|
|
630
|
+
:stability: experimental
|
|
631
|
+
'''
|
|
632
|
+
AMAZON_Q = "AMAZON_Q"
|
|
633
|
+
'''(experimental) Amazon Q - .amazonq/rules/project.md.
|
|
634
|
+
|
|
635
|
+
:stability: experimental
|
|
636
|
+
'''
|
|
637
|
+
KIRO = "KIRO"
|
|
638
|
+
'''(experimental) Kiro - .kiro/steering/project.md.
|
|
639
|
+
|
|
640
|
+
:stability: experimental
|
|
641
|
+
'''
|
|
642
|
+
|
|
643
|
+
|
|
644
|
+
@jsii.data_type(
|
|
645
|
+
jsii_type="projen.AiInstructionsOptions",
|
|
646
|
+
jsii_struct_bases=[],
|
|
647
|
+
name_mapping={
|
|
648
|
+
"agents": "agents",
|
|
649
|
+
"agent_specific_instructions": "agentSpecificInstructions",
|
|
650
|
+
"include_default_instructions": "includeDefaultInstructions",
|
|
651
|
+
"instructions": "instructions",
|
|
652
|
+
},
|
|
653
|
+
)
|
|
654
|
+
class AiInstructionsOptions:
|
|
655
|
+
def __init__(
|
|
656
|
+
self,
|
|
657
|
+
*,
|
|
658
|
+
agents: typing.Optional[typing.Sequence[AiAgent]] = None,
|
|
659
|
+
agent_specific_instructions: typing.Optional[typing.Mapping[builtins.str, typing.Sequence[builtins.str]]] = None,
|
|
660
|
+
include_default_instructions: typing.Optional[builtins.bool] = None,
|
|
661
|
+
instructions: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
662
|
+
) -> None:
|
|
663
|
+
'''(experimental) Options for configuring AI tool instruction files.
|
|
664
|
+
|
|
665
|
+
:param agents: (experimental) Which AI agents to generate instruction files for. Default: - All agents: [AiAgent.GITHUB_COPILOT, AiAgent.CURSOR, AiAgent.CLAUDE, AiAgent.AMAZON_Q]
|
|
666
|
+
:param agent_specific_instructions: (experimental) Per-agent custom instructions. Allows different instructions for different AI tools. Default: - no agent specific instructions
|
|
667
|
+
:param include_default_instructions: (experimental) Include default instructions for projen and general best practices. Default instructions will only be included for agents provided in the ``agents`` option. If ``agents`` is not provided, default instructions will be included for all agents. Default: true
|
|
668
|
+
:param instructions: (experimental) General instructions applicable to all agents. Default: - no agent specific instructions
|
|
669
|
+
|
|
670
|
+
:stability: experimental
|
|
671
|
+
'''
|
|
672
|
+
if __debug__:
|
|
673
|
+
type_hints = typing.get_type_hints(_typecheckingstub__5bf7714efdf83cf2031e4ef3aa1d0cb9511cb921777751c76a0f501c0c56e247)
|
|
674
|
+
check_type(argname="argument agents", value=agents, expected_type=type_hints["agents"])
|
|
675
|
+
check_type(argname="argument agent_specific_instructions", value=agent_specific_instructions, expected_type=type_hints["agent_specific_instructions"])
|
|
676
|
+
check_type(argname="argument include_default_instructions", value=include_default_instructions, expected_type=type_hints["include_default_instructions"])
|
|
677
|
+
check_type(argname="argument instructions", value=instructions, expected_type=type_hints["instructions"])
|
|
678
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
679
|
+
if agents is not None:
|
|
680
|
+
self._values["agents"] = agents
|
|
681
|
+
if agent_specific_instructions is not None:
|
|
682
|
+
self._values["agent_specific_instructions"] = agent_specific_instructions
|
|
683
|
+
if include_default_instructions is not None:
|
|
684
|
+
self._values["include_default_instructions"] = include_default_instructions
|
|
685
|
+
if instructions is not None:
|
|
686
|
+
self._values["instructions"] = instructions
|
|
687
|
+
|
|
688
|
+
@builtins.property
|
|
689
|
+
def agents(self) -> typing.Optional[typing.List[AiAgent]]:
|
|
690
|
+
'''(experimental) Which AI agents to generate instruction files for.
|
|
691
|
+
|
|
692
|
+
:default: - All agents: [AiAgent.GITHUB_COPILOT, AiAgent.CURSOR, AiAgent.CLAUDE, AiAgent.AMAZON_Q]
|
|
693
|
+
|
|
694
|
+
:stability: experimental
|
|
695
|
+
'''
|
|
696
|
+
result = self._values.get("agents")
|
|
697
|
+
return typing.cast(typing.Optional[typing.List[AiAgent]], result)
|
|
698
|
+
|
|
699
|
+
@builtins.property
|
|
700
|
+
def agent_specific_instructions(
|
|
701
|
+
self,
|
|
702
|
+
) -> typing.Optional[typing.Mapping[builtins.str, typing.List[builtins.str]]]:
|
|
703
|
+
'''(experimental) Per-agent custom instructions.
|
|
704
|
+
|
|
705
|
+
Allows different instructions for different AI tools.
|
|
706
|
+
|
|
707
|
+
:default: - no agent specific instructions
|
|
708
|
+
|
|
709
|
+
:stability: experimental
|
|
710
|
+
|
|
711
|
+
Example::
|
|
712
|
+
|
|
713
|
+
{
|
|
714
|
+
[AiAgent.GITHUB_COPILOT]: {
|
|
715
|
+
instructions: ["Use descriptive commit messages."]
|
|
716
|
+
},
|
|
717
|
+
[AiAgent.CURSOR]: {
|
|
718
|
+
instructions: ["Prefer functional patterns.", "Always add tests."]
|
|
719
|
+
}
|
|
720
|
+
}
|
|
721
|
+
'''
|
|
722
|
+
result = self._values.get("agent_specific_instructions")
|
|
723
|
+
return typing.cast(typing.Optional[typing.Mapping[builtins.str, typing.List[builtins.str]]], result)
|
|
724
|
+
|
|
725
|
+
@builtins.property
|
|
726
|
+
def include_default_instructions(self) -> typing.Optional[builtins.bool]:
|
|
727
|
+
'''(experimental) Include default instructions for projen and general best practices.
|
|
728
|
+
|
|
729
|
+
Default instructions will only be included for agents provided in the ``agents`` option.
|
|
730
|
+
If ``agents`` is not provided, default instructions will be included for all agents.
|
|
731
|
+
|
|
732
|
+
:default: true
|
|
733
|
+
|
|
734
|
+
:stability: experimental
|
|
735
|
+
'''
|
|
736
|
+
result = self._values.get("include_default_instructions")
|
|
737
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
738
|
+
|
|
739
|
+
@builtins.property
|
|
740
|
+
def instructions(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
741
|
+
'''(experimental) General instructions applicable to all agents.
|
|
742
|
+
|
|
743
|
+
:default: - no agent specific instructions
|
|
744
|
+
|
|
745
|
+
:stability: experimental
|
|
746
|
+
'''
|
|
747
|
+
result = self._values.get("instructions")
|
|
748
|
+
return typing.cast(typing.Optional[typing.List[builtins.str]], result)
|
|
749
|
+
|
|
750
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
751
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
752
|
+
|
|
753
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
754
|
+
return not (rhs == self)
|
|
755
|
+
|
|
756
|
+
def __repr__(self) -> str:
|
|
757
|
+
return "AiInstructionsOptions(%s)" % ", ".join(
|
|
758
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
759
|
+
)
|
|
760
|
+
|
|
761
|
+
|
|
610
762
|
class Component(
|
|
611
763
|
_constructs_77d1e7e8.Construct,
|
|
612
764
|
metaclass=jsii.JSIIMeta,
|
|
@@ -11236,6 +11388,217 @@ class YamlFileOptions(ObjectFileOptions):
|
|
|
11236
11388
|
)
|
|
11237
11389
|
|
|
11238
11390
|
|
|
11391
|
+
class AiInstructions(
|
|
11392
|
+
Component,
|
|
11393
|
+
metaclass=jsii.JSIIMeta,
|
|
11394
|
+
jsii_type="projen.AiInstructions",
|
|
11395
|
+
):
|
|
11396
|
+
'''(experimental) Generates instruction files for AI coding assistants with projen-specific guidance.
|
|
11397
|
+
|
|
11398
|
+
This component creates configuration files that help AI tools like GitHub Copilot,
|
|
11399
|
+
Cursor IDE, Claude Code, and Amazon Q understand that the project is managed by projen
|
|
11400
|
+
and should follow projen conventions.
|
|
11401
|
+
|
|
11402
|
+
:stability: experimental
|
|
11403
|
+
|
|
11404
|
+
Example::
|
|
11405
|
+
|
|
11406
|
+
const project = new TypeScriptProject({
|
|
11407
|
+
name: "my-project",
|
|
11408
|
+
defaultReleaseBranch: "main",
|
|
11409
|
+
});
|
|
11410
|
+
|
|
11411
|
+
// Basic usage - generates files for all supported AI agents
|
|
11412
|
+
new AiInstructions(project);
|
|
11413
|
+
|
|
11414
|
+
// Custom usage - specify which agents and add custom instructions
|
|
11415
|
+
new AiInstructions(project, {
|
|
11416
|
+
agents: [AiAgent.GITHUB_COPILOT, AiAgent.CURSOR],
|
|
11417
|
+
agentSpecificInstructions: {
|
|
11418
|
+
[AiAgent.GITHUB_COPILOT]: ["Always use descriptive commit messages."],
|
|
11419
|
+
},
|
|
11420
|
+
});
|
|
11421
|
+
|
|
11422
|
+
// Add more instructions after instantiation
|
|
11423
|
+
const ai = new AiInstructions(project);
|
|
11424
|
+
ai.addInstructions("Use functional programming patterns.");
|
|
11425
|
+
ai.addInstructions("Always write comprehensive tests.");
|
|
11426
|
+
'''
|
|
11427
|
+
|
|
11428
|
+
def __init__(
|
|
11429
|
+
self,
|
|
11430
|
+
project: Project,
|
|
11431
|
+
*,
|
|
11432
|
+
agents: typing.Optional[typing.Sequence[AiAgent]] = None,
|
|
11433
|
+
agent_specific_instructions: typing.Optional[typing.Mapping[builtins.str, typing.Sequence[builtins.str]]] = None,
|
|
11434
|
+
include_default_instructions: typing.Optional[builtins.bool] = None,
|
|
11435
|
+
instructions: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
11436
|
+
) -> None:
|
|
11437
|
+
'''
|
|
11438
|
+
:param project: -
|
|
11439
|
+
:param agents: (experimental) Which AI agents to generate instruction files for. Default: - All agents: [AiAgent.GITHUB_COPILOT, AiAgent.CURSOR, AiAgent.CLAUDE, AiAgent.AMAZON_Q]
|
|
11440
|
+
:param agent_specific_instructions: (experimental) Per-agent custom instructions. Allows different instructions for different AI tools. Default: - no agent specific instructions
|
|
11441
|
+
:param include_default_instructions: (experimental) Include default instructions for projen and general best practices. Default instructions will only be included for agents provided in the ``agents`` option. If ``agents`` is not provided, default instructions will be included for all agents. Default: true
|
|
11442
|
+
:param instructions: (experimental) General instructions applicable to all agents. Default: - no agent specific instructions
|
|
11443
|
+
|
|
11444
|
+
:stability: experimental
|
|
11445
|
+
'''
|
|
11446
|
+
if __debug__:
|
|
11447
|
+
type_hints = typing.get_type_hints(_typecheckingstub__6ade3e0209730c28511c6c65af7db0ef1d8f6d736618b1a95064af6bf4e829b8)
|
|
11448
|
+
check_type(argname="argument project", value=project, expected_type=type_hints["project"])
|
|
11449
|
+
options = AiInstructionsOptions(
|
|
11450
|
+
agents=agents,
|
|
11451
|
+
agent_specific_instructions=agent_specific_instructions,
|
|
11452
|
+
include_default_instructions=include_default_instructions,
|
|
11453
|
+
instructions=instructions,
|
|
11454
|
+
)
|
|
11455
|
+
|
|
11456
|
+
jsii.create(self.__class__, self, [project, options])
|
|
11457
|
+
|
|
11458
|
+
@jsii.member(jsii_name="bestPractices")
|
|
11459
|
+
@builtins.classmethod
|
|
11460
|
+
def best_practices(cls, project: Project) -> builtins.str:
|
|
11461
|
+
'''(experimental) Returns development best practices instructions for AI agents.
|
|
11462
|
+
|
|
11463
|
+
:param project: -
|
|
11464
|
+
|
|
11465
|
+
:stability: experimental
|
|
11466
|
+
'''
|
|
11467
|
+
if __debug__:
|
|
11468
|
+
type_hints = typing.get_type_hints(_typecheckingstub__9b3a19a4e1f7d40bf00205a6394247af85d2428c672a0ecb7904470daaabda2f)
|
|
11469
|
+
check_type(argname="argument project", value=project, expected_type=type_hints["project"])
|
|
11470
|
+
return typing.cast(builtins.str, jsii.sinvoke(cls, "bestPractices", [project]))
|
|
11471
|
+
|
|
11472
|
+
@jsii.member(jsii_name="projen")
|
|
11473
|
+
@builtins.classmethod
|
|
11474
|
+
def projen(cls, project: Project) -> builtins.str:
|
|
11475
|
+
'''(experimental) Returns projen-specific instructions for AI agents.
|
|
11476
|
+
|
|
11477
|
+
:param project: -
|
|
11478
|
+
|
|
11479
|
+
:stability: experimental
|
|
11480
|
+
'''
|
|
11481
|
+
if __debug__:
|
|
11482
|
+
type_hints = typing.get_type_hints(_typecheckingstub__065453e2727d00b362bd1cf1f58d194d6c355b2a9c2f575e92c43eb627f6eb89)
|
|
11483
|
+
check_type(argname="argument project", value=project, expected_type=type_hints["project"])
|
|
11484
|
+
return typing.cast(builtins.str, jsii.sinvoke(cls, "projen", [project]))
|
|
11485
|
+
|
|
11486
|
+
@jsii.member(jsii_name="addAgentSpecificInstructions")
|
|
11487
|
+
def add_agent_specific_instructions(
|
|
11488
|
+
self,
|
|
11489
|
+
agent: AiAgent,
|
|
11490
|
+
*instructions: builtins.str,
|
|
11491
|
+
) -> None:
|
|
11492
|
+
'''(experimental) Add instructions for a specific AI agent.
|
|
11493
|
+
|
|
11494
|
+
This can also be used to add instructions for an AI agent that was previously not enabled.
|
|
11495
|
+
|
|
11496
|
+
:param agent: The AI agent to add instructions for.
|
|
11497
|
+
:param instructions: The instruction(s) to add.
|
|
11498
|
+
|
|
11499
|
+
:stability: experimental
|
|
11500
|
+
|
|
11501
|
+
Example::
|
|
11502
|
+
|
|
11503
|
+
aiInstructions.addAgentSpecificInstructions(AiAgent.GITHUB_COPILOT, "Use descriptive commit messages.");
|
|
11504
|
+
'''
|
|
11505
|
+
if __debug__:
|
|
11506
|
+
type_hints = typing.get_type_hints(_typecheckingstub__9ff14bf0a463b0f887b122f5949af2eedda259c6426a05e006686653e81b8fc8)
|
|
11507
|
+
check_type(argname="argument agent", value=agent, expected_type=type_hints["agent"])
|
|
11508
|
+
check_type(argname="argument instructions", value=instructions, expected_type=typing.Tuple[type_hints["instructions"], ...]) # pyright: ignore [reportGeneralTypeIssues]
|
|
11509
|
+
return typing.cast(None, jsii.invoke(self, "addAgentSpecificInstructions", [agent, *instructions]))
|
|
11510
|
+
|
|
11511
|
+
@jsii.member(jsii_name="addInstructions")
|
|
11512
|
+
def add_instructions(self, *instructions: builtins.str) -> None:
|
|
11513
|
+
'''(experimental) Adds instructions that will be included for all selected AI agents.
|
|
11514
|
+
|
|
11515
|
+
:param instructions: The instructions to add.
|
|
11516
|
+
|
|
11517
|
+
:stability: experimental
|
|
11518
|
+
|
|
11519
|
+
Example::
|
|
11520
|
+
|
|
11521
|
+
aiInstructions.addInstructions("Always use TypeScript strict mode.");
|
|
11522
|
+
aiInstructions.addInstructions("Prefer functional programming.", "Avoid mutations.");
|
|
11523
|
+
'''
|
|
11524
|
+
if __debug__:
|
|
11525
|
+
type_hints = typing.get_type_hints(_typecheckingstub__da44882109eef43fd7d698b3f301b9241d695eb97a717ffa73265862f39698ba)
|
|
11526
|
+
check_type(argname="argument instructions", value=instructions, expected_type=typing.Tuple[type_hints["instructions"], ...]) # pyright: ignore [reportGeneralTypeIssues]
|
|
11527
|
+
return typing.cast(None, jsii.invoke(self, "addInstructions", [*instructions]))
|
|
11528
|
+
|
|
11529
|
+
|
|
11530
|
+
class AiInstructionsFile(
|
|
11531
|
+
FileBase,
|
|
11532
|
+
metaclass=jsii.JSIIMeta,
|
|
11533
|
+
jsii_type="projen.AiInstructionsFile",
|
|
11534
|
+
):
|
|
11535
|
+
'''
|
|
11536
|
+
:stability: experimental
|
|
11537
|
+
'''
|
|
11538
|
+
|
|
11539
|
+
def __init__(
|
|
11540
|
+
self,
|
|
11541
|
+
scope: _constructs_77d1e7e8.IConstruct,
|
|
11542
|
+
file_path: builtins.str,
|
|
11543
|
+
*,
|
|
11544
|
+
committed: typing.Optional[builtins.bool] = None,
|
|
11545
|
+
edit_gitignore: typing.Optional[builtins.bool] = None,
|
|
11546
|
+
executable: typing.Optional[builtins.bool] = None,
|
|
11547
|
+
marker: typing.Optional[builtins.bool] = None,
|
|
11548
|
+
readonly: typing.Optional[builtins.bool] = None,
|
|
11549
|
+
) -> None:
|
|
11550
|
+
'''
|
|
11551
|
+
:param scope: -
|
|
11552
|
+
:param file_path: -
|
|
11553
|
+
:param committed: (experimental) Indicates whether this file should be committed to git or ignored. By default, all generated files are committed and anti-tamper is used to protect against manual modifications. Default: true
|
|
11554
|
+
:param edit_gitignore: (experimental) Update the project's .gitignore file. Default: true
|
|
11555
|
+
:param executable: (experimental) Whether the generated file should be marked as executable. Default: false
|
|
11556
|
+
:param marker: (experimental) Adds the projen marker to the file. Default: - marker will be included as long as the project is not ejected
|
|
11557
|
+
:param readonly: (experimental) Whether the generated file should be readonly. Default: true
|
|
11558
|
+
|
|
11559
|
+
:stability: experimental
|
|
11560
|
+
'''
|
|
11561
|
+
if __debug__:
|
|
11562
|
+
type_hints = typing.get_type_hints(_typecheckingstub__4b11da88a3895fa642ead3d82823bc49f77ad84be5d7816af5a52334434c5c79)
|
|
11563
|
+
check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
|
|
11564
|
+
check_type(argname="argument file_path", value=file_path, expected_type=type_hints["file_path"])
|
|
11565
|
+
options = FileBaseOptions(
|
|
11566
|
+
committed=committed,
|
|
11567
|
+
edit_gitignore=edit_gitignore,
|
|
11568
|
+
executable=executable,
|
|
11569
|
+
marker=marker,
|
|
11570
|
+
readonly=readonly,
|
|
11571
|
+
)
|
|
11572
|
+
|
|
11573
|
+
jsii.create(self.__class__, self, [scope, file_path, options])
|
|
11574
|
+
|
|
11575
|
+
@jsii.member(jsii_name="addInstructions")
|
|
11576
|
+
def add_instructions(self, *instructions: builtins.str) -> None:
|
|
11577
|
+
'''(experimental) Adds instructions to the instruction file.
|
|
11578
|
+
|
|
11579
|
+
:param instructions: -
|
|
11580
|
+
|
|
11581
|
+
:stability: experimental
|
|
11582
|
+
'''
|
|
11583
|
+
if __debug__:
|
|
11584
|
+
type_hints = typing.get_type_hints(_typecheckingstub__da3f715a19bd0c18e2cc2d3bda06afae637174acbe15ef75ef39bb7c26f0ff90)
|
|
11585
|
+
check_type(argname="argument instructions", value=instructions, expected_type=typing.Tuple[type_hints["instructions"], ...]) # pyright: ignore [reportGeneralTypeIssues]
|
|
11586
|
+
return typing.cast(None, jsii.invoke(self, "addInstructions", [*instructions]))
|
|
11587
|
+
|
|
11588
|
+
@jsii.member(jsii_name="synthesizeContent")
|
|
11589
|
+
def _synthesize_content(self, resolver: IResolver) -> typing.Optional[builtins.str]:
|
|
11590
|
+
'''(experimental) Implemented by derived classes and returns the contents of the file to emit.
|
|
11591
|
+
|
|
11592
|
+
:param resolver: -
|
|
11593
|
+
|
|
11594
|
+
:stability: experimental
|
|
11595
|
+
'''
|
|
11596
|
+
if __debug__:
|
|
11597
|
+
type_hints = typing.get_type_hints(_typecheckingstub__af1c3edb2730dd42712c19d9f2ebd48921303c4efd980f8910326afc111d82cc)
|
|
11598
|
+
check_type(argname="argument resolver", value=resolver, expected_type=type_hints["resolver"])
|
|
11599
|
+
return typing.cast(typing.Optional[builtins.str], jsii.invoke(self, "synthesizeContent", [resolver]))
|
|
11600
|
+
|
|
11601
|
+
|
|
11239
11602
|
@jsii.data_type(
|
|
11240
11603
|
jsii_type="projen.Dependency",
|
|
11241
11604
|
jsii_struct_bases=[DependencyCoordinates],
|
|
@@ -12575,6 +12938,10 @@ class TaskStep(TaskStepOptions):
|
|
|
12575
12938
|
|
|
12576
12939
|
|
|
12577
12940
|
__all__ = [
|
|
12941
|
+
"AiAgent",
|
|
12942
|
+
"AiInstructions",
|
|
12943
|
+
"AiInstructionsFile",
|
|
12944
|
+
"AiInstructionsOptions",
|
|
12578
12945
|
"Component",
|
|
12579
12946
|
"CreateProjectOptions",
|
|
12580
12947
|
"Dependencies",
|
|
@@ -12725,6 +13092,16 @@ from . import typescript
|
|
|
12725
13092
|
from . import vscode
|
|
12726
13093
|
from . import web
|
|
12727
13094
|
|
|
13095
|
+
def _typecheckingstub__5bf7714efdf83cf2031e4ef3aa1d0cb9511cb921777751c76a0f501c0c56e247(
|
|
13096
|
+
*,
|
|
13097
|
+
agents: typing.Optional[typing.Sequence[AiAgent]] = None,
|
|
13098
|
+
agent_specific_instructions: typing.Optional[typing.Mapping[builtins.str, typing.Sequence[builtins.str]]] = None,
|
|
13099
|
+
include_default_instructions: typing.Optional[builtins.bool] = None,
|
|
13100
|
+
instructions: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
13101
|
+
) -> None:
|
|
13102
|
+
"""Type checking stubs"""
|
|
13103
|
+
pass
|
|
13104
|
+
|
|
12728
13105
|
def _typecheckingstub__e4ee40327ed6d04e3e377e300d915d402c50029248a86452fd19fd6372386d4b(
|
|
12729
13106
|
scope: _constructs_77d1e7e8.IConstruct,
|
|
12730
13107
|
id: typing.Optional[builtins.str] = None,
|
|
@@ -14406,6 +14783,67 @@ def _typecheckingstub__ca9e5a70f67f8e3db454227249c58dd5464be1446a55fcf3be780621f
|
|
|
14406
14783
|
"""Type checking stubs"""
|
|
14407
14784
|
pass
|
|
14408
14785
|
|
|
14786
|
+
def _typecheckingstub__6ade3e0209730c28511c6c65af7db0ef1d8f6d736618b1a95064af6bf4e829b8(
|
|
14787
|
+
project: Project,
|
|
14788
|
+
*,
|
|
14789
|
+
agents: typing.Optional[typing.Sequence[AiAgent]] = None,
|
|
14790
|
+
agent_specific_instructions: typing.Optional[typing.Mapping[builtins.str, typing.Sequence[builtins.str]]] = None,
|
|
14791
|
+
include_default_instructions: typing.Optional[builtins.bool] = None,
|
|
14792
|
+
instructions: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
14793
|
+
) -> None:
|
|
14794
|
+
"""Type checking stubs"""
|
|
14795
|
+
pass
|
|
14796
|
+
|
|
14797
|
+
def _typecheckingstub__9b3a19a4e1f7d40bf00205a6394247af85d2428c672a0ecb7904470daaabda2f(
|
|
14798
|
+
project: Project,
|
|
14799
|
+
) -> None:
|
|
14800
|
+
"""Type checking stubs"""
|
|
14801
|
+
pass
|
|
14802
|
+
|
|
14803
|
+
def _typecheckingstub__065453e2727d00b362bd1cf1f58d194d6c355b2a9c2f575e92c43eb627f6eb89(
|
|
14804
|
+
project: Project,
|
|
14805
|
+
) -> None:
|
|
14806
|
+
"""Type checking stubs"""
|
|
14807
|
+
pass
|
|
14808
|
+
|
|
14809
|
+
def _typecheckingstub__9ff14bf0a463b0f887b122f5949af2eedda259c6426a05e006686653e81b8fc8(
|
|
14810
|
+
agent: AiAgent,
|
|
14811
|
+
*instructions: builtins.str,
|
|
14812
|
+
) -> None:
|
|
14813
|
+
"""Type checking stubs"""
|
|
14814
|
+
pass
|
|
14815
|
+
|
|
14816
|
+
def _typecheckingstub__da44882109eef43fd7d698b3f301b9241d695eb97a717ffa73265862f39698ba(
|
|
14817
|
+
*instructions: builtins.str,
|
|
14818
|
+
) -> None:
|
|
14819
|
+
"""Type checking stubs"""
|
|
14820
|
+
pass
|
|
14821
|
+
|
|
14822
|
+
def _typecheckingstub__4b11da88a3895fa642ead3d82823bc49f77ad84be5d7816af5a52334434c5c79(
|
|
14823
|
+
scope: _constructs_77d1e7e8.IConstruct,
|
|
14824
|
+
file_path: builtins.str,
|
|
14825
|
+
*,
|
|
14826
|
+
committed: typing.Optional[builtins.bool] = None,
|
|
14827
|
+
edit_gitignore: typing.Optional[builtins.bool] = None,
|
|
14828
|
+
executable: typing.Optional[builtins.bool] = None,
|
|
14829
|
+
marker: typing.Optional[builtins.bool] = None,
|
|
14830
|
+
readonly: typing.Optional[builtins.bool] = None,
|
|
14831
|
+
) -> None:
|
|
14832
|
+
"""Type checking stubs"""
|
|
14833
|
+
pass
|
|
14834
|
+
|
|
14835
|
+
def _typecheckingstub__da3f715a19bd0c18e2cc2d3bda06afae637174acbe15ef75ef39bb7c26f0ff90(
|
|
14836
|
+
*instructions: builtins.str,
|
|
14837
|
+
) -> None:
|
|
14838
|
+
"""Type checking stubs"""
|
|
14839
|
+
pass
|
|
14840
|
+
|
|
14841
|
+
def _typecheckingstub__af1c3edb2730dd42712c19d9f2ebd48921303c4efd980f8910326afc111d82cc(
|
|
14842
|
+
resolver: IResolver,
|
|
14843
|
+
) -> None:
|
|
14844
|
+
"""Type checking stubs"""
|
|
14845
|
+
pass
|
|
14846
|
+
|
|
14409
14847
|
def _typecheckingstub__d3a39137d5e4f9c51c84e6a659a0e0d16c23ba1927ed8fe7f3f96ecd5d0110dc(
|
|
14410
14848
|
*,
|
|
14411
14849
|
name: builtins.str,
|
projen/_jsii/__init__.py
CHANGED
|
@@ -31,7 +31,7 @@ def check_type(argname: str, value: object, expected_type: typing.Any) -> typing
|
|
|
31
31
|
import constructs._jsii
|
|
32
32
|
|
|
33
33
|
__jsii_assembly__ = jsii.JSIIAssembly.load(
|
|
34
|
-
"projen", "0.98.
|
|
34
|
+
"projen", "0.98.5", __name__[0:-6], "projen@0.98.5.jsii.tgz"
|
|
35
35
|
)
|
|
36
36
|
|
|
37
37
|
__all__ = [
|
|
Binary file
|
|
@@ -718,7 +718,7 @@ class CssFormatterConfiguration:
|
|
|
718
718
|
:param enabled: (experimental) Control the formatter for CSS (and its super languages) files.
|
|
719
719
|
:param indent_style: (experimental) The indent style applied to CSS (and its super languages) files.
|
|
720
720
|
:param indent_width: (experimental) The size of the indentation applied to CSS (and its super languages) files. Default to 2. Default: 2.
|
|
721
|
-
:param line_ending: (experimental) The type of line ending applied to CSS (and its super languages) files.
|
|
721
|
+
:param line_ending: (experimental) The type of line ending applied to CSS (and its super languages) files. ``auto`` uses CRLF on Windows and LF on other platforms.
|
|
722
722
|
:param line_width: (experimental) What's the max width of a line applied to CSS (and its super languages) files. Defaults to 80. Default: 80.
|
|
723
723
|
:param quote_style: (experimental) The type of quotes used in CSS code. Defaults to double. Default: double.
|
|
724
724
|
|
|
@@ -785,6 +785,8 @@ class CssFormatterConfiguration:
|
|
|
785
785
|
def line_ending(self) -> typing.Optional["LineEnding"]:
|
|
786
786
|
'''(experimental) The type of line ending applied to CSS (and its super languages) files.
|
|
787
787
|
|
|
788
|
+
``auto`` uses CRLF on Windows and LF on other platforms.
|
|
789
|
+
|
|
788
790
|
:stability: experimental
|
|
789
791
|
:schema: CssFormatterConfiguration#lineEnding
|
|
790
792
|
'''
|
|
@@ -880,6 +882,7 @@ class CssLinterConfiguration:
|
|
|
880
882
|
name_mapping={
|
|
881
883
|
"allow_wrong_line_comments": "allowWrongLineComments",
|
|
882
884
|
"css_modules": "cssModules",
|
|
885
|
+
"tailwind_directives": "tailwindDirectives",
|
|
883
886
|
},
|
|
884
887
|
)
|
|
885
888
|
class CssParserConfiguration:
|
|
@@ -888,11 +891,13 @@ class CssParserConfiguration:
|
|
|
888
891
|
*,
|
|
889
892
|
allow_wrong_line_comments: typing.Optional[builtins.bool] = None,
|
|
890
893
|
css_modules: typing.Optional[builtins.bool] = None,
|
|
894
|
+
tailwind_directives: typing.Optional[builtins.bool] = None,
|
|
891
895
|
) -> None:
|
|
892
896
|
'''(experimental) Options that changes how the CSS parser behaves.
|
|
893
897
|
|
|
894
898
|
:param allow_wrong_line_comments: (experimental) Allow comments to appear on incorrect lines in ``.css`` files.
|
|
895
899
|
:param css_modules: (experimental) Enables parsing of CSS Modules specific features.
|
|
900
|
+
:param tailwind_directives: (experimental) Enables parsing of Tailwind CSS 4.0 directives and functions.
|
|
896
901
|
|
|
897
902
|
:stability: experimental
|
|
898
903
|
:schema: CssParserConfiguration
|
|
@@ -901,11 +906,14 @@ class CssParserConfiguration:
|
|
|
901
906
|
type_hints = typing.get_type_hints(_typecheckingstub__8529582f37794a4d2a6c31671f27c3add8085e862adbf314c4f633b00295f518)
|
|
902
907
|
check_type(argname="argument allow_wrong_line_comments", value=allow_wrong_line_comments, expected_type=type_hints["allow_wrong_line_comments"])
|
|
903
908
|
check_type(argname="argument css_modules", value=css_modules, expected_type=type_hints["css_modules"])
|
|
909
|
+
check_type(argname="argument tailwind_directives", value=tailwind_directives, expected_type=type_hints["tailwind_directives"])
|
|
904
910
|
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
905
911
|
if allow_wrong_line_comments is not None:
|
|
906
912
|
self._values["allow_wrong_line_comments"] = allow_wrong_line_comments
|
|
907
913
|
if css_modules is not None:
|
|
908
914
|
self._values["css_modules"] = css_modules
|
|
915
|
+
if tailwind_directives is not None:
|
|
916
|
+
self._values["tailwind_directives"] = tailwind_directives
|
|
909
917
|
|
|
910
918
|
@builtins.property
|
|
911
919
|
def allow_wrong_line_comments(self) -> typing.Optional[builtins.bool]:
|
|
@@ -927,6 +935,16 @@ class CssParserConfiguration:
|
|
|
927
935
|
result = self._values.get("css_modules")
|
|
928
936
|
return typing.cast(typing.Optional[builtins.bool], result)
|
|
929
937
|
|
|
938
|
+
@builtins.property
|
|
939
|
+
def tailwind_directives(self) -> typing.Optional[builtins.bool]:
|
|
940
|
+
'''(experimental) Enables parsing of Tailwind CSS 4.0 directives and functions.
|
|
941
|
+
|
|
942
|
+
:stability: experimental
|
|
943
|
+
:schema: CssParserConfiguration#tailwindDirectives
|
|
944
|
+
'''
|
|
945
|
+
result = self._values.get("tailwind_directives")
|
|
946
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
947
|
+
|
|
930
948
|
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
931
949
|
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
932
950
|
|
|
@@ -984,8 +1002,8 @@ class FilesConfiguration:
|
|
|
984
1002
|
) -> None:
|
|
985
1003
|
'''(experimental) The configuration of the filesystem.
|
|
986
1004
|
|
|
987
|
-
:param experimental_scanner_ignores: (experimental)
|
|
988
|
-
:param ignore_unknown: (experimental) Tells Biome to not emit diagnostics when handling files that doesn't know.
|
|
1005
|
+
:param experimental_scanner_ignores: (experimental) **Deprecated:** Please use *force-ignore syntax* in ``files.includes`` instead: https://biomejs.dev/reference/configuration/#filesincludes. Set of file and folder names that should be unconditionally ignored by Biome's scanner.
|
|
1006
|
+
:param ignore_unknown: (experimental) Tells Biome to not emit diagnostics when handling files that it doesn't know.
|
|
989
1007
|
:param includes: (experimental) A list of glob patterns. Biome will handle only those files/folders that will match these patterns.
|
|
990
1008
|
:param max_size: (experimental) The maximum allowed size for source code files in bytes. Files above this limit will be ignored for performance reasons. Defaults to 1 MiB Default: 1 MiB
|
|
991
1009
|
|
|
@@ -1012,23 +1030,9 @@ class FilesConfiguration:
|
|
|
1012
1030
|
def experimental_scanner_ignores(
|
|
1013
1031
|
self,
|
|
1014
1032
|
) -> typing.Optional[typing.List[builtins.str]]:
|
|
1015
|
-
'''(experimental)
|
|
1016
|
-
|
|
1017
|
-
Biome maintains an internal list of default ignore entries, which is based on user feedback and which may change in any release. This setting allows overriding this internal list completely.
|
|
1018
|
-
|
|
1019
|
-
This is considered an advanced feature that users *should* not need to tweak themselves, but they can as a last resort. This setting can only be configured in root configurations, and is ignored in nested configs.
|
|
1033
|
+
'''(experimental) **Deprecated:** Please use *force-ignore syntax* in ``files.includes`` instead: https://biomejs.dev/reference/configuration/#filesincludes.
|
|
1020
1034
|
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
Examples where this may be useful:
|
|
1024
|
-
|
|
1025
|
-
```jsonc { "files": { "experimentalScannerIgnores": [ // You almost certainly don't want to scan your ``.git`` // folder, which is why it's already ignored by default: ".git",
|
|
1026
|
-
|
|
1027
|
-
// But the scanner does scan ``node_modules`` by default. If // you *really* don't want this, you can ignore it like // this: "node_modules",
|
|
1028
|
-
|
|
1029
|
-
// But it's probably better to ignore a specific dependency. // For instance, one that happens to be particularly slow to // scan: "RedisCommander.d.ts", ], } } ```
|
|
1030
|
-
|
|
1031
|
-
Please be aware that rules relying on the module graph or type inference information may be negatively affected if dependencies of your project aren't (fully) scanned.
|
|
1035
|
+
Set of file and folder names that should be unconditionally ignored by Biome's scanner.
|
|
1032
1036
|
|
|
1033
1037
|
:stability: experimental
|
|
1034
1038
|
:schema: FilesConfiguration#experimentalScannerIgnores
|
|
@@ -1038,7 +1042,7 @@ class FilesConfiguration:
|
|
|
1038
1042
|
|
|
1039
1043
|
@builtins.property
|
|
1040
1044
|
def ignore_unknown(self) -> typing.Optional[builtins.bool]:
|
|
1041
|
-
'''(experimental) Tells Biome to not emit diagnostics when handling files that doesn't know.
|
|
1045
|
+
'''(experimental) Tells Biome to not emit diagnostics when handling files that it doesn't know.
|
|
1042
1046
|
|
|
1043
1047
|
:stability: experimental
|
|
1044
1048
|
:schema: FilesConfiguration#ignoreUnknown
|
|
@@ -1126,7 +1130,7 @@ class FormatterConfiguration:
|
|
|
1126
1130
|
:param bracket_spacing: (experimental) Whether to insert spaces around brackets in object literals. Defaults to true. Default: true.
|
|
1127
1131
|
:param enabled:
|
|
1128
1132
|
:param expand: (experimental) Whether to expand arrays and objects on multiple lines. When set to ``auto``, object literals are formatted on multiple lines if the first property has a newline, and array literals are formatted on a single line if it fits in the line. When set to ``always``, these literals are formatted on multiple lines, regardless of length of the list. When set to ``never``, these literals are formatted on a single line if it fits in the line. When formatting ``package.json``, Biome will use ``always`` unless configured otherwise. Defaults to "auto". Default: auto".
|
|
1129
|
-
:param format_with_errors: (experimental)
|
|
1133
|
+
:param format_with_errors: (experimental) Whether formatting should be allowed to proceed if a given file has syntax errors.
|
|
1130
1134
|
:param includes: (experimental) A list of glob patterns. The formatter will include files/folders that will match these patterns.
|
|
1131
1135
|
:param indent_style: (experimental) The indent style.
|
|
1132
1136
|
:param indent_width: (experimental) The size of the indentation, 2 by default.
|
|
@@ -1240,7 +1244,7 @@ class FormatterConfiguration:
|
|
|
1240
1244
|
|
|
1241
1245
|
@builtins.property
|
|
1242
1246
|
def format_with_errors(self) -> typing.Optional[builtins.bool]:
|
|
1243
|
-
'''(experimental)
|
|
1247
|
+
'''(experimental) Whether formatting should be allowed to proceed if a given file has syntax errors.
|
|
1244
1248
|
|
|
1245
1249
|
:stability: experimental
|
|
1246
1250
|
:schema: FormatterConfiguration#formatWithErrors
|
|
@@ -1484,7 +1488,7 @@ class GraphqlFormatterConfiguration:
|
|
|
1484
1488
|
:param enabled: (experimental) Control the formatter for GraphQL files.
|
|
1485
1489
|
:param indent_style: (experimental) The indent style applied to GraphQL files.
|
|
1486
1490
|
:param indent_width: (experimental) The size of the indentation applied to GraphQL files. Default to 2. Default: 2.
|
|
1487
|
-
:param line_ending: (experimental) The type of line ending applied to GraphQL files.
|
|
1491
|
+
:param line_ending: (experimental) The type of line ending applied to GraphQL files. ``auto`` uses CRLF on Windows and LF on other platforms.
|
|
1488
1492
|
:param line_width: (experimental) What's the max width of a line applied to GraphQL files. Defaults to 80. Default: 80.
|
|
1489
1493
|
:param quote_style: (experimental) The type of quotes used in GraphQL code. Defaults to double. Default: double.
|
|
1490
1494
|
|
|
@@ -1568,6 +1572,8 @@ class GraphqlFormatterConfiguration:
|
|
|
1568
1572
|
def line_ending(self) -> typing.Optional["LineEnding"]:
|
|
1569
1573
|
'''(experimental) The type of line ending applied to GraphQL files.
|
|
1570
1574
|
|
|
1575
|
+
``auto`` uses CRLF on Windows and LF on other platforms.
|
|
1576
|
+
|
|
1571
1577
|
:stability: experimental
|
|
1572
1578
|
:schema: GraphqlFormatterConfiguration#lineEnding
|
|
1573
1579
|
'''
|
|
@@ -1944,40 +1950,127 @@ class GritLinterConfiguration:
|
|
|
1944
1950
|
)
|
|
1945
1951
|
|
|
1946
1952
|
|
|
1953
|
+
@jsii.data_type(
|
|
1954
|
+
jsii_type="projen.javascript.biome_config.HtmlAssistConfiguration",
|
|
1955
|
+
jsii_struct_bases=[],
|
|
1956
|
+
name_mapping={"enabled": "enabled"},
|
|
1957
|
+
)
|
|
1958
|
+
class HtmlAssistConfiguration:
|
|
1959
|
+
def __init__(self, *, enabled: typing.Optional[builtins.bool] = None) -> None:
|
|
1960
|
+
'''(experimental) Options that changes how the HTML assist behaves.
|
|
1961
|
+
|
|
1962
|
+
:param enabled: (experimental) Control the assist for HTML (and its super languages) files.
|
|
1963
|
+
|
|
1964
|
+
:stability: experimental
|
|
1965
|
+
:schema: HtmlAssistConfiguration
|
|
1966
|
+
'''
|
|
1967
|
+
if __debug__:
|
|
1968
|
+
type_hints = typing.get_type_hints(_typecheckingstub__4f12d37d14edd5b34740aa842931963f60cd55f179c839350e2c9eb8d0ce519a)
|
|
1969
|
+
check_type(argname="argument enabled", value=enabled, expected_type=type_hints["enabled"])
|
|
1970
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
1971
|
+
if enabled is not None:
|
|
1972
|
+
self._values["enabled"] = enabled
|
|
1973
|
+
|
|
1974
|
+
@builtins.property
|
|
1975
|
+
def enabled(self) -> typing.Optional[builtins.bool]:
|
|
1976
|
+
'''(experimental) Control the assist for HTML (and its super languages) files.
|
|
1977
|
+
|
|
1978
|
+
:stability: experimental
|
|
1979
|
+
:schema: HtmlAssistConfiguration#enabled
|
|
1980
|
+
'''
|
|
1981
|
+
result = self._values.get("enabled")
|
|
1982
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
1983
|
+
|
|
1984
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
1985
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
1986
|
+
|
|
1987
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
1988
|
+
return not (rhs == self)
|
|
1989
|
+
|
|
1990
|
+
def __repr__(self) -> str:
|
|
1991
|
+
return "HtmlAssistConfiguration(%s)" % ", ".join(
|
|
1992
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
1993
|
+
)
|
|
1994
|
+
|
|
1995
|
+
|
|
1947
1996
|
@jsii.data_type(
|
|
1948
1997
|
jsii_type="projen.javascript.biome_config.HtmlConfiguration",
|
|
1949
1998
|
jsii_struct_bases=[],
|
|
1950
|
-
name_mapping={
|
|
1999
|
+
name_mapping={
|
|
2000
|
+
"assist": "assist",
|
|
2001
|
+
"experimental_full_support_enabled": "experimentalFullSupportEnabled",
|
|
2002
|
+
"formatter": "formatter",
|
|
2003
|
+
"linter": "linter",
|
|
2004
|
+
"parser": "parser",
|
|
2005
|
+
},
|
|
1951
2006
|
)
|
|
1952
2007
|
class HtmlConfiguration:
|
|
1953
2008
|
def __init__(
|
|
1954
2009
|
self,
|
|
1955
2010
|
*,
|
|
2011
|
+
assist: typing.Optional[typing.Union[HtmlAssistConfiguration, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
2012
|
+
experimental_full_support_enabled: typing.Optional[builtins.bool] = None,
|
|
1956
2013
|
formatter: typing.Optional[typing.Union["HtmlFormatterConfiguration", typing.Dict[builtins.str, typing.Any]]] = None,
|
|
2014
|
+
linter: typing.Optional[typing.Union["HtmlLinterConfiguration", typing.Dict[builtins.str, typing.Any]]] = None,
|
|
1957
2015
|
parser: typing.Optional[typing.Union["HtmlParserConfiguration", typing.Dict[builtins.str, typing.Any]]] = None,
|
|
1958
2016
|
) -> None:
|
|
1959
2017
|
'''(experimental) Options applied to HTML files.
|
|
1960
2018
|
|
|
2019
|
+
:param assist:
|
|
2020
|
+
:param experimental_full_support_enabled: (experimental) Enables full support for HTML, Vue, Svelte and Astro files.
|
|
1961
2021
|
:param formatter: (experimental) HTML formatter options.
|
|
2022
|
+
:param linter: (experimental) HTML linter options.
|
|
1962
2023
|
:param parser: (experimental) HTML parsing options.
|
|
1963
2024
|
|
|
1964
2025
|
:stability: experimental
|
|
1965
2026
|
:schema: HtmlConfiguration
|
|
1966
2027
|
'''
|
|
2028
|
+
if isinstance(assist, dict):
|
|
2029
|
+
assist = HtmlAssistConfiguration(**assist)
|
|
1967
2030
|
if isinstance(formatter, dict):
|
|
1968
2031
|
formatter = HtmlFormatterConfiguration(**formatter)
|
|
2032
|
+
if isinstance(linter, dict):
|
|
2033
|
+
linter = HtmlLinterConfiguration(**linter)
|
|
1969
2034
|
if isinstance(parser, dict):
|
|
1970
2035
|
parser = HtmlParserConfiguration(**parser)
|
|
1971
2036
|
if __debug__:
|
|
1972
2037
|
type_hints = typing.get_type_hints(_typecheckingstub__048266f3b4e4769e6485570d4954197f51204fc6e607e2ffe5267f80089b5ded)
|
|
2038
|
+
check_type(argname="argument assist", value=assist, expected_type=type_hints["assist"])
|
|
2039
|
+
check_type(argname="argument experimental_full_support_enabled", value=experimental_full_support_enabled, expected_type=type_hints["experimental_full_support_enabled"])
|
|
1973
2040
|
check_type(argname="argument formatter", value=formatter, expected_type=type_hints["formatter"])
|
|
2041
|
+
check_type(argname="argument linter", value=linter, expected_type=type_hints["linter"])
|
|
1974
2042
|
check_type(argname="argument parser", value=parser, expected_type=type_hints["parser"])
|
|
1975
2043
|
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
2044
|
+
if assist is not None:
|
|
2045
|
+
self._values["assist"] = assist
|
|
2046
|
+
if experimental_full_support_enabled is not None:
|
|
2047
|
+
self._values["experimental_full_support_enabled"] = experimental_full_support_enabled
|
|
1976
2048
|
if formatter is not None:
|
|
1977
2049
|
self._values["formatter"] = formatter
|
|
2050
|
+
if linter is not None:
|
|
2051
|
+
self._values["linter"] = linter
|
|
1978
2052
|
if parser is not None:
|
|
1979
2053
|
self._values["parser"] = parser
|
|
1980
2054
|
|
|
2055
|
+
@builtins.property
|
|
2056
|
+
def assist(self) -> typing.Optional[HtmlAssistConfiguration]:
|
|
2057
|
+
'''
|
|
2058
|
+
:stability: experimental
|
|
2059
|
+
:schema: HtmlConfiguration#assist
|
|
2060
|
+
'''
|
|
2061
|
+
result = self._values.get("assist")
|
|
2062
|
+
return typing.cast(typing.Optional[HtmlAssistConfiguration], result)
|
|
2063
|
+
|
|
2064
|
+
@builtins.property
|
|
2065
|
+
def experimental_full_support_enabled(self) -> typing.Optional[builtins.bool]:
|
|
2066
|
+
'''(experimental) Enables full support for HTML, Vue, Svelte and Astro files.
|
|
2067
|
+
|
|
2068
|
+
:stability: experimental
|
|
2069
|
+
:schema: HtmlConfiguration#experimentalFullSupportEnabled
|
|
2070
|
+
'''
|
|
2071
|
+
result = self._values.get("experimental_full_support_enabled")
|
|
2072
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
2073
|
+
|
|
1981
2074
|
@builtins.property
|
|
1982
2075
|
def formatter(self) -> typing.Optional["HtmlFormatterConfiguration"]:
|
|
1983
2076
|
'''(experimental) HTML formatter options.
|
|
@@ -1988,6 +2081,16 @@ class HtmlConfiguration:
|
|
|
1988
2081
|
result = self._values.get("formatter")
|
|
1989
2082
|
return typing.cast(typing.Optional["HtmlFormatterConfiguration"], result)
|
|
1990
2083
|
|
|
2084
|
+
@builtins.property
|
|
2085
|
+
def linter(self) -> typing.Optional["HtmlLinterConfiguration"]:
|
|
2086
|
+
'''(experimental) HTML linter options.
|
|
2087
|
+
|
|
2088
|
+
:stability: experimental
|
|
2089
|
+
:schema: HtmlConfiguration#linter
|
|
2090
|
+
'''
|
|
2091
|
+
result = self._values.get("linter")
|
|
2092
|
+
return typing.cast(typing.Optional["HtmlLinterConfiguration"], result)
|
|
2093
|
+
|
|
1991
2094
|
@builtins.property
|
|
1992
2095
|
def parser(self) -> typing.Optional["HtmlParserConfiguration"]:
|
|
1993
2096
|
'''(experimental) HTML parsing options.
|
|
@@ -2049,7 +2152,7 @@ class HtmlFormatterConfiguration:
|
|
|
2049
2152
|
:param indent_script_and_style: (experimental) Whether to indent the ``<script>`` and ``<style>`` tags for HTML (and its super languages). Defaults to false. Default: false.
|
|
2050
2153
|
:param indent_style: (experimental) The indent style applied to HTML (and its super languages) files.
|
|
2051
2154
|
:param indent_width: (experimental) The size of the indentation applied to HTML (and its super languages) files. Default to 2. Default: 2.
|
|
2052
|
-
:param line_ending: (experimental) The type of line ending applied to HTML (and its super languages) files.
|
|
2155
|
+
:param line_ending: (experimental) The type of line ending applied to HTML (and its super languages) files. ``auto`` uses CRLF on Windows and LF on other platforms.
|
|
2053
2156
|
:param line_width: (experimental) What's the max width of a line applied to HTML (and its super languages) files. Defaults to 80. Default: 80.
|
|
2054
2157
|
:param self_close_void_elements: (experimental) Whether void elements should be self-closed. Defaults to never. Default: never.
|
|
2055
2158
|
:param whitespace_sensitivity: (experimental) Whether to account for whitespace sensitivity when formatting HTML (and its super languages). Defaults to "css". Default: css".
|
|
@@ -2171,6 +2274,8 @@ class HtmlFormatterConfiguration:
|
|
|
2171
2274
|
def line_ending(self) -> typing.Optional["LineEnding"]:
|
|
2172
2275
|
'''(experimental) The type of line ending applied to HTML (and its super languages) files.
|
|
2173
2276
|
|
|
2277
|
+
``auto`` uses CRLF on Windows and LF on other platforms.
|
|
2278
|
+
|
|
2174
2279
|
:stability: experimental
|
|
2175
2280
|
:schema: HtmlFormatterConfiguration#lineEnding
|
|
2176
2281
|
'''
|
|
@@ -2231,6 +2336,49 @@ class HtmlFormatterConfiguration:
|
|
|
2231
2336
|
)
|
|
2232
2337
|
|
|
2233
2338
|
|
|
2339
|
+
@jsii.data_type(
|
|
2340
|
+
jsii_type="projen.javascript.biome_config.HtmlLinterConfiguration",
|
|
2341
|
+
jsii_struct_bases=[],
|
|
2342
|
+
name_mapping={"enabled": "enabled"},
|
|
2343
|
+
)
|
|
2344
|
+
class HtmlLinterConfiguration:
|
|
2345
|
+
def __init__(self, *, enabled: typing.Optional[builtins.bool] = None) -> None:
|
|
2346
|
+
'''(experimental) Options that changes how the HTML linter behaves.
|
|
2347
|
+
|
|
2348
|
+
:param enabled: (experimental) Control the linter for HTML (and its super languages) files.
|
|
2349
|
+
|
|
2350
|
+
:stability: experimental
|
|
2351
|
+
:schema: HtmlLinterConfiguration
|
|
2352
|
+
'''
|
|
2353
|
+
if __debug__:
|
|
2354
|
+
type_hints = typing.get_type_hints(_typecheckingstub__271da6fb8e26ef7e9c2ec0ea9fc3487d2975824399c15a87994edbcfcdd37131)
|
|
2355
|
+
check_type(argname="argument enabled", value=enabled, expected_type=type_hints["enabled"])
|
|
2356
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
2357
|
+
if enabled is not None:
|
|
2358
|
+
self._values["enabled"] = enabled
|
|
2359
|
+
|
|
2360
|
+
@builtins.property
|
|
2361
|
+
def enabled(self) -> typing.Optional[builtins.bool]:
|
|
2362
|
+
'''(experimental) Control the linter for HTML (and its super languages) files.
|
|
2363
|
+
|
|
2364
|
+
:stability: experimental
|
|
2365
|
+
:schema: HtmlLinterConfiguration#enabled
|
|
2366
|
+
'''
|
|
2367
|
+
result = self._values.get("enabled")
|
|
2368
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
2369
|
+
|
|
2370
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
2371
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
2372
|
+
|
|
2373
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
2374
|
+
return not (rhs == self)
|
|
2375
|
+
|
|
2376
|
+
def __repr__(self) -> str:
|
|
2377
|
+
return "HtmlLinterConfiguration(%s)" % ", ".join(
|
|
2378
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
2379
|
+
)
|
|
2380
|
+
|
|
2381
|
+
|
|
2234
2382
|
@jsii.data_type(
|
|
2235
2383
|
jsii_type="projen.javascript.biome_config.HtmlParserConfiguration",
|
|
2236
2384
|
jsii_struct_bases=[],
|
|
@@ -2529,7 +2677,7 @@ class JsFormatterConfiguration:
|
|
|
2529
2677
|
:param indent_style: (experimental) The indent style applied to JavaScript (and its super languages) files.
|
|
2530
2678
|
:param indent_width: (experimental) The size of the indentation applied to JavaScript (and its super languages) files. Default to 2. Default: 2.
|
|
2531
2679
|
:param jsx_quote_style: (experimental) The type of quotes used in JSX. Defaults to double. Default: double.
|
|
2532
|
-
:param line_ending: (experimental) The type of line ending applied to JavaScript (and its super languages) files.
|
|
2680
|
+
:param line_ending: (experimental) The type of line ending applied to JavaScript (and its super languages) files. ``auto`` uses CRLF on Windows and LF on other platforms.
|
|
2533
2681
|
:param line_width: (experimental) What's the max width of a line applied to JavaScript (and its super languages) files. Defaults to 80. Default: 80.
|
|
2534
2682
|
:param operator_linebreak: (experimental) When breaking binary expressions into multiple lines, whether to break them before or after the binary operator. Defaults to "after". Default: after".
|
|
2535
2683
|
:param quote_properties: (experimental) When properties in objects are quoted. Defaults to asNeeded. Default: asNeeded.
|
|
@@ -2714,6 +2862,8 @@ class JsFormatterConfiguration:
|
|
|
2714
2862
|
def line_ending(self) -> typing.Optional["LineEnding"]:
|
|
2715
2863
|
'''(experimental) The type of line ending applied to JavaScript (and its super languages) files.
|
|
2716
2864
|
|
|
2865
|
+
``auto`` uses CRLF on Windows and LF on other platforms.
|
|
2866
|
+
|
|
2717
2867
|
:stability: experimental
|
|
2718
2868
|
:schema: JsFormatterConfiguration#lineEnding
|
|
2719
2869
|
'''
|
|
@@ -2953,7 +3103,7 @@ class JsParserConfiguration:
|
|
|
2953
3103
|
)
|
|
2954
3104
|
class JsonAssistConfiguration:
|
|
2955
3105
|
def __init__(self, *, enabled: typing.Optional[builtins.bool] = None) -> None:
|
|
2956
|
-
'''(experimental)
|
|
3106
|
+
'''(experimental) Assist options specific to the JSON linter.
|
|
2957
3107
|
|
|
2958
3108
|
:param enabled: (experimental) Control the assist for JSON (and its super languages) files.
|
|
2959
3109
|
|
|
@@ -3127,7 +3277,7 @@ class JsonFormatterConfiguration:
|
|
|
3127
3277
|
:param expand: (experimental) Whether to expand arrays and objects on multiple lines. When set to ``auto``, object literals are formatted on multiple lines if the first property has a newline, and array literals are formatted on a single line if it fits in the line. When set to ``always``, these literals are formatted on multiple lines, regardless of length of the list. When set to ``never``, these literals are formatted on a single line if it fits in the line. When formatting ``package.json``, Biome will use ``always`` unless configured otherwise. Defaults to "auto". Default: auto".
|
|
3128
3278
|
:param indent_style: (experimental) The indent style applied to JSON (and its super languages) files.
|
|
3129
3279
|
:param indent_width: (experimental) The size of the indentation applied to JSON (and its super languages) files. Default to 2. Default: 2.
|
|
3130
|
-
:param line_ending: (experimental) The type of line ending applied to JSON (and its super languages) files.
|
|
3280
|
+
:param line_ending: (experimental) The type of line ending applied to JSON (and its super languages) files. ``auto`` uses CRLF on Windows and LF on other platforms.
|
|
3131
3281
|
:param line_width: (experimental) What's the max width of a line applied to JSON (and its super languages) files. Defaults to 80. Default: 80.
|
|
3132
3282
|
:param trailing_commas: (experimental) Print trailing commas wherever possible in multi-line comma-separated syntactic structures. Defaults to "none". Default: none".
|
|
3133
3283
|
|
|
@@ -3228,6 +3378,8 @@ class JsonFormatterConfiguration:
|
|
|
3228
3378
|
def line_ending(self) -> typing.Optional["LineEnding"]:
|
|
3229
3379
|
'''(experimental) The type of line ending applied to JSON (and its super languages) files.
|
|
3230
3380
|
|
|
3381
|
+
``auto`` uses CRLF on Windows and LF on other platforms.
|
|
3382
|
+
|
|
3231
3383
|
:stability: experimental
|
|
3232
3384
|
:schema: JsonFormatterConfiguration#lineEnding
|
|
3233
3385
|
'''
|
|
@@ -3424,6 +3576,11 @@ class LineEnding(enum.Enum):
|
|
|
3424
3576
|
|
|
3425
3577
|
:stability: experimental
|
|
3426
3578
|
'''
|
|
3579
|
+
AUTO = "AUTO"
|
|
3580
|
+
'''(experimental) auto.
|
|
3581
|
+
|
|
3582
|
+
:stability: experimental
|
|
3583
|
+
'''
|
|
3427
3584
|
|
|
3428
3585
|
|
|
3429
3586
|
@jsii.data_type(
|
|
@@ -4822,8 +4979,10 @@ __all__ = [
|
|
|
4822
4979
|
"GritConfiguration",
|
|
4823
4980
|
"GritFormatterConfiguration",
|
|
4824
4981
|
"GritLinterConfiguration",
|
|
4982
|
+
"HtmlAssistConfiguration",
|
|
4825
4983
|
"HtmlConfiguration",
|
|
4826
4984
|
"HtmlFormatterConfiguration",
|
|
4985
|
+
"HtmlLinterConfiguration",
|
|
4827
4986
|
"HtmlParserConfiguration",
|
|
4828
4987
|
"IndentStyle",
|
|
4829
4988
|
"JsAssistConfiguration",
|
|
@@ -4941,6 +5100,7 @@ def _typecheckingstub__8529582f37794a4d2a6c31671f27c3add8085e862adbf314c4f633b00
|
|
|
4941
5100
|
*,
|
|
4942
5101
|
allow_wrong_line_comments: typing.Optional[builtins.bool] = None,
|
|
4943
5102
|
css_modules: typing.Optional[builtins.bool] = None,
|
|
5103
|
+
tailwind_directives: typing.Optional[builtins.bool] = None,
|
|
4944
5104
|
) -> None:
|
|
4945
5105
|
"""Type checking stubs"""
|
|
4946
5106
|
pass
|
|
@@ -5043,9 +5203,19 @@ def _typecheckingstub__4f328d623f0baa93f52695005ba45f28881c95ae610fde354116a44bc
|
|
|
5043
5203
|
"""Type checking stubs"""
|
|
5044
5204
|
pass
|
|
5045
5205
|
|
|
5206
|
+
def _typecheckingstub__4f12d37d14edd5b34740aa842931963f60cd55f179c839350e2c9eb8d0ce519a(
|
|
5207
|
+
*,
|
|
5208
|
+
enabled: typing.Optional[builtins.bool] = None,
|
|
5209
|
+
) -> None:
|
|
5210
|
+
"""Type checking stubs"""
|
|
5211
|
+
pass
|
|
5212
|
+
|
|
5046
5213
|
def _typecheckingstub__048266f3b4e4769e6485570d4954197f51204fc6e607e2ffe5267f80089b5ded(
|
|
5047
5214
|
*,
|
|
5215
|
+
assist: typing.Optional[typing.Union[HtmlAssistConfiguration, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
5216
|
+
experimental_full_support_enabled: typing.Optional[builtins.bool] = None,
|
|
5048
5217
|
formatter: typing.Optional[typing.Union[HtmlFormatterConfiguration, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
5218
|
+
linter: typing.Optional[typing.Union[HtmlLinterConfiguration, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
5049
5219
|
parser: typing.Optional[typing.Union[HtmlParserConfiguration, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
5050
5220
|
) -> None:
|
|
5051
5221
|
"""Type checking stubs"""
|
|
@@ -5067,6 +5237,13 @@ def _typecheckingstub__bcbf243ebdc0f288a10a4e6b68dc5a1ff88f4d8abe5566f57f212bf10
|
|
|
5067
5237
|
"""Type checking stubs"""
|
|
5068
5238
|
pass
|
|
5069
5239
|
|
|
5240
|
+
def _typecheckingstub__271da6fb8e26ef7e9c2ec0ea9fc3487d2975824399c15a87994edbcfcdd37131(
|
|
5241
|
+
*,
|
|
5242
|
+
enabled: typing.Optional[builtins.bool] = None,
|
|
5243
|
+
) -> None:
|
|
5244
|
+
"""Type checking stubs"""
|
|
5245
|
+
pass
|
|
5246
|
+
|
|
5070
5247
|
def _typecheckingstub__1b3cfca5c3ad8f608b86ade05d476530f16da0ba23410a7613236950da38ff37(
|
|
5071
5248
|
*,
|
|
5072
5249
|
interpolation: typing.Optional[builtins.bool] = None,
|
|
@@ -8,7 +8,7 @@ if "JSII_RUNTIME_PACKAGE_CACHE" not in os.environ:
|
|
|
8
8
|
os.environ["JSII_RUNTIME_PACKAGE_CACHE"] = "disabled"
|
|
9
9
|
|
|
10
10
|
__jsii_assembly__ = jsii.JSIIAssembly.load(
|
|
11
|
-
"projen", "0.98.
|
|
11
|
+
"projen", "0.98.5", "projen", "projen@0.98.5.jsii.tgz"
|
|
12
12
|
)
|
|
13
13
|
|
|
14
14
|
exit_code = __jsii_assembly__.invokeBinScript("projen", "projen", sys.argv[1:])
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
projen/__init__.py,sha256
|
|
1
|
+
projen/__init__.py,sha256=7d5Q78dZSFdo0MPHwc0EZ5n1ykM78LqYgGBlXvFueuU,703429
|
|
2
2
|
projen/py.typed,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
3
|
-
projen/_jsii/__init__.py,sha256=
|
|
4
|
-
projen/_jsii/projen@0.98.
|
|
3
|
+
projen/_jsii/__init__.py,sha256=UqlkGI_eDEEy9AvO2c9xQlEZx2_jvmALLeVXFhPbaQI,1404
|
|
4
|
+
projen/_jsii/projen@0.98.5.jsii.tgz,sha256=FextoSpjhfwhmAztcp5QT7GPefUJZ5PUE3ilLr6v8pQ,2967311
|
|
5
5
|
projen/awscdk/__init__.py,sha256=Y9PBCcy4WP1EFw243U6jnGHx3O4SIozJ50BJ1WBVldU,1157607
|
|
6
6
|
projen/build/__init__.py,sha256=RZllpmDOwZ2McAIifVv2zr9oIrTEHhq-vXJEjzX2VkE,54258
|
|
7
7
|
projen/cdk/__init__.py,sha256=-rKj5LNE96XVbKLV1OwO_jxjAeem6DAHjJLDdslmx9U,557823
|
|
@@ -13,15 +13,15 @@ projen/github/workflows/__init__.py,sha256=FvVHeCQ1lGQaMoXNsAQSOomS80eM5KO53JzEM
|
|
|
13
13
|
projen/gitlab/__init__.py,sha256=NjkGjzgCYY3AZ1KnOTuwC8gfDfNjzYpeLICSvrU9EHs,208000
|
|
14
14
|
projen/java/__init__.py,sha256=Y8yfXiL4RNXtxIc0LB7O3K0CKyw9TkQKkVXgJ57A9Fw,195299
|
|
15
15
|
projen/javascript/__init__.py,sha256=E7UMkHJDO1u_-UlOkKz7f_Zx_I3HxpxgtO8JAunfVMk,902445
|
|
16
|
-
projen/javascript/biome_config/__init__.py,sha256=
|
|
16
|
+
projen/javascript/biome_config/__init__.py,sha256=cphNQ0EnQLrjXvQ-4b1s3yhJbkFCmpfuHupamcVARsI,230525
|
|
17
17
|
projen/python/__init__.py,sha256=0VlKC2Qb-wiIW-Gi76uHJ-Uqb18c3GlIOtPsSmqe7EI,220713
|
|
18
18
|
projen/release/__init__.py,sha256=-kYImxRw-uQRzzYwwxIrzUKcymPI4SPR2ui56VIBWow,339135
|
|
19
19
|
projen/typescript/__init__.py,sha256=feogxGz8d-OTBl9O2PWJOkC5jkItBW8FLSoDp8Q2hpY,533562
|
|
20
20
|
projen/vscode/__init__.py,sha256=gDvpsybrGDRr6b5owXoQ6-fS9sJlKiGr-jH6y8D985k,70199
|
|
21
21
|
projen/web/__init__.py,sha256=fK7vIMzaHNYTpnrNo9piYjzp_HuEbYIzxXc_lgbLSSU,866566
|
|
22
|
-
projen-0.98.
|
|
23
|
-
projen-0.98.
|
|
24
|
-
projen-0.98.
|
|
25
|
-
projen-0.98.
|
|
26
|
-
projen-0.98.
|
|
27
|
-
projen-0.98.
|
|
22
|
+
projen-0.98.5.data/scripts/projen,sha256=jFxHdniojvL-BvSzxCg3BNfgSQ8RlNt1xZ98ZCk8RCg,356
|
|
23
|
+
projen-0.98.5.dist-info/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
|
|
24
|
+
projen-0.98.5.dist-info/METADATA,sha256=S3oTDhBsiIwl2obf6JVoyQn_M2DtZVZ2R62FqY1DEJc,79609
|
|
25
|
+
projen-0.98.5.dist-info/WHEEL,sha256=iAkIy5fosb7FzIOwONchHf19Qu7_1wCWyFNR5gu9nU0,91
|
|
26
|
+
projen-0.98.5.dist-info/top_level.txt,sha256=Ul8VGUArFqejE5BMSked3l6NMBO6gjQEWywhM5gw1zw,7
|
|
27
|
+
projen-0.98.5.dist-info/RECORD,,
|
|
Binary file
|
|
File without changes
|
|
File without changes
|
|
File without changes
|