@cratis/screenplay-language 5.3.0 → 5.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (395) hide show
  1. package/dist/bundles/TypeReferenceSymbol.js.map +1 -1
  2. package/dist/bundles/action-subject-authoring.js.map +1 -1
  3. package/dist/bundles/bmp-word-characters.js.map +1 -1
  4. package/dist/bundles/case-authoring.js +1 -1
  5. package/dist/bundles/case-authoring.js.map +1 -1
  6. package/dist/bundles/code-actions.js.map +1 -1
  7. package/dist/bundles/command-read-completions.js.map +1 -1
  8. package/dist/bundles/compiler/Authoring/ActionSubjectQuickFixes.js +3 -3
  9. package/dist/bundles/compiler/Authoring/ActionSubjectQuickFixes.js.map +1 -1
  10. package/dist/bundles/compiler/Authoring/QuickFixes.js +4 -4
  11. package/dist/bundles/compiler/Authoring/QuickFixes.js.map +1 -1
  12. package/dist/bundles/compiler/Authoring/StructuredValueQuickFix.js +1 -1
  13. package/dist/bundles/compiler/Authoring/StructuredValueQuickFix.js.map +1 -1
  14. package/dist/bundles/compiler/Authoring/TimelineQuickFixContext.js +4 -4
  15. package/dist/bundles/compiler/Authoring/TimelineQuickFixContext.js.map +1 -1
  16. package/dist/bundles/compiler/Authoring/TimelineQuickFixImports.js +2 -2
  17. package/dist/bundles/compiler/Authoring/TimelineQuickFixImports.js.map +1 -1
  18. package/dist/bundles/compiler/Authoring/TimelineQuickFixes.js +1 -1
  19. package/dist/bundles/compiler/Authoring/TimelineQuickFixes.js.map +1 -1
  20. package/dist/bundles/compiler/Dependencies/DeclaredDependencies.js.map +1 -1
  21. package/dist/bundles/compiler/Dependencies/DeclaredDependencyTargets.js.map +1 -1
  22. package/dist/bundles/compiler/Dependencies/DependencyGraph.js +1 -1
  23. package/dist/bundles/compiler/Dependencies/DependencyGraph.js.map +1 -1
  24. package/dist/bundles/compiler/Dependencies/DependencyKind.js.map +1 -1
  25. package/dist/bundles/compiler/Dependencies/InvalidDependencyQuery.js.map +1 -1
  26. package/dist/bundles/compiler/Dependencies/SliceReferences.js.map +1 -1
  27. package/dist/bundles/compiler/Dependencies/StronglyConnectedGroups.js.map +1 -1
  28. package/dist/bundles/compiler/Diagnostics/DiagnosticArgument.js.map +1 -1
  29. package/dist/bundles/compiler/Diagnostics/DiagnosticCodes.js +1 -1
  30. package/dist/bundles/compiler/Diagnostics/DiagnosticCodes.js.map +1 -1
  31. package/dist/bundles/compiler/Diagnostics/ProductionDestinationDiagnostics.js +1 -1
  32. package/dist/bundles/compiler/Diagnostics/ProductionDestinationDiagnostics.js.map +1 -1
  33. package/dist/bundles/compiler/Diagnostics/SourceLocation.js.map +1 -1
  34. package/dist/bundles/compiler/Files/AuthoredOrder.js +1 -1
  35. package/dist/bundles/compiler/Files/AuthoredOrder.js.map +1 -1
  36. package/dist/bundles/compiler/Files/OrderingRoot.js +1 -1
  37. package/dist/bundles/compiler/Files/OrderingRoot.js.map +1 -1
  38. package/dist/bundles/compiler/Files/PlayApplicationAssembly.js +1 -1
  39. package/dist/bundles/compiler/Files/PlayApplicationAssembly.js.map +1 -1
  40. package/dist/bundles/compiler/Files/PlayDocumentSource.js.map +1 -1
  41. package/dist/bundles/compiler/Files/PlayFolderMerge.js +1 -1
  42. package/dist/bundles/compiler/Files/PlayFolderMerge.js.map +1 -1
  43. package/dist/bundles/compiler/Files/PlayGlob.js +2 -1
  44. package/dist/bundles/compiler/Files/PlayGlob.js.map +1 -1
  45. package/dist/bundles/compiler/Files/PlayImports.js +1 -1
  46. package/dist/bundles/compiler/Files/PlayImports.js.map +1 -1
  47. package/dist/bundles/compiler/Files/PlayPlacement.js.map +1 -1
  48. package/dist/bundles/compiler/Files/TimelineOrder.js +1 -1
  49. package/dist/bundles/compiler/Files/TimelineOrder.js.map +1 -1
  50. package/dist/bundles/compiler/Generation/FiniteGenerationRules.js +1 -1
  51. package/dist/bundles/compiler/Generation/GenerationAssessmentCache.js.map +1 -1
  52. package/dist/bundles/compiler/Generation/GenerationChecksum.js.map +1 -1
  53. package/dist/bundles/compiler/Generation/GenerationPattern.js +1 -1
  54. package/dist/bundles/compiler/Generation/GenerationPattern.js.map +1 -1
  55. package/dist/bundles/compiler/Generation/GenerationPatternAssessment.js.map +1 -1
  56. package/dist/bundles/compiler/Generation/GenerationPatternParser.js.map +1 -1
  57. package/dist/bundles/compiler/Generation/GenerationPatternToken.js.map +1 -1
  58. package/dist/bundles/compiler/Generation/GenerationRuleProof.js +1 -1
  59. package/dist/bundles/compiler/Generation/InvalidGenerationPattern.js.map +1 -1
  60. package/dist/bundles/compiler/Generation/RegexCharacters.js.map +1 -1
  61. package/dist/bundles/compiler/Generation/RegexExpression.js.map +1 -1
  62. package/dist/bundles/compiler/Generation/RuleConsistency.js +1 -1
  63. package/dist/bundles/compiler/Parsing/ActionSubjectClause.js.map +1 -1
  64. package/dist/bundles/compiler/Parsing/ActionSubjectInputs.js.map +1 -1
  65. package/dist/bundles/compiler/Parsing/ActionSubjectResolution.js.map +1 -1
  66. package/dist/bundles/compiler/Parsing/ApplicationContextParser.js +1 -1
  67. package/dist/bundles/compiler/Parsing/ApplicationContextParser.js.map +1 -1
  68. package/dist/bundles/compiler/Parsing/AuthorizeParser.js +1 -1
  69. package/dist/bundles/compiler/Parsing/AuthorizeParser.js.map +1 -1
  70. package/dist/bundles/compiler/Parsing/CanvasPlacement.js.map +1 -1
  71. package/dist/bundles/compiler/Parsing/CaptureEventFixturesValidator.js.map +1 -1
  72. package/dist/bundles/compiler/Parsing/CaptureParser.js +1 -1
  73. package/dist/bundles/compiler/Parsing/CaptureParser.js.map +1 -1
  74. package/dist/bundles/compiler/Parsing/ClockOperandParser.js.map +1 -1
  75. package/dist/bundles/compiler/Parsing/CodeBlockParser.js.map +1 -1
  76. package/dist/bundles/compiler/Parsing/CommandDestinationTypes.js.map +1 -1
  77. package/dist/bundles/compiler/Parsing/CommandHandlerValidator.js.map +1 -1
  78. package/dist/bundles/compiler/Parsing/CommandParser.js +1 -1
  79. package/dist/bundles/compiler/Parsing/CommandParser.js.map +1 -1
  80. package/dist/bundles/compiler/Parsing/CommandReadSources.js.map +1 -1
  81. package/dist/bundles/compiler/Parsing/CommandResponseParser.js +1 -1
  82. package/dist/bundles/compiler/Parsing/CommandResponseParser.js.map +1 -1
  83. package/dist/bundles/compiler/Parsing/CommandStreamCandidates.js.map +1 -1
  84. package/dist/bundles/compiler/Parsing/CompositeStreamIdValidator.js.map +1 -1
  85. package/dist/bundles/compiler/Parsing/CompositionParser.js +1 -1
  86. package/dist/bundles/compiler/Parsing/CompositionParser.js.map +1 -1
  87. package/dist/bundles/compiler/Parsing/ConceptComplianceParser.js +1 -1
  88. package/dist/bundles/compiler/Parsing/ConceptComplianceParser.js.map +1 -1
  89. package/dist/bundles/compiler/Parsing/ConditionDepthBudget.js +2 -0
  90. package/dist/bundles/compiler/Parsing/ConditionDepthBudget.js.map +1 -0
  91. package/dist/bundles/compiler/Parsing/ConditionParser.js +1 -1
  92. package/dist/bundles/compiler/Parsing/ConditionParser.js.map +1 -1
  93. package/dist/bundles/compiler/Parsing/ConstraintParser.js +1 -1
  94. package/dist/bundles/compiler/Parsing/ConstraintParser.js.map +1 -1
  95. package/dist/bundles/compiler/Parsing/ConstraintPropertyValidator.js +1 -1
  96. package/dist/bundles/compiler/Parsing/ConstraintPropertyValidator.js.map +1 -1
  97. package/dist/bundles/compiler/Parsing/ContinuationValues.js.map +1 -1
  98. package/dist/bundles/compiler/Parsing/DeclarationParsers.js +1 -1
  99. package/dist/bundles/compiler/Parsing/DeclarationParsers.js.map +1 -1
  100. package/dist/bundles/compiler/Parsing/DependencySourceParser.js +1 -1
  101. package/dist/bundles/compiler/Parsing/DependencySourceParser.js.map +1 -1
  102. package/dist/bundles/compiler/Parsing/DependsOnParser.js.map +1 -1
  103. package/dist/bundles/compiler/Parsing/DescriptionParser.js +1 -1
  104. package/dist/bundles/compiler/Parsing/DescriptionParser.js.map +1 -1
  105. package/dist/bundles/compiler/Parsing/DocumentationParser.js +1 -1
  106. package/dist/bundles/compiler/Parsing/DocumentationParser.js.map +1 -1
  107. package/dist/bundles/compiler/Parsing/EnumerationMembers.js +1 -1
  108. package/dist/bundles/compiler/Parsing/EnumerationMembers.js.map +1 -1
  109. package/dist/bundles/compiler/Parsing/EventMetadataParser.js +1 -1
  110. package/dist/bundles/compiler/Parsing/EventMetadataParser.js.map +1 -1
  111. package/dist/bundles/compiler/Parsing/EventSourceParser.js +1 -1
  112. package/dist/bundles/compiler/Parsing/EventSourceParser.js.map +1 -1
  113. package/dist/bundles/compiler/Parsing/EventSourceValidator.js +1 -1
  114. package/dist/bundles/compiler/Parsing/EventSourceValidator.js.map +1 -1
  115. package/dist/bundles/compiler/Parsing/EventSubjectValidator.js +1 -1
  116. package/dist/bundles/compiler/Parsing/EventSubjectValidator.js.map +1 -1
  117. package/dist/bundles/compiler/Parsing/ExpressionParser.js +1 -1
  118. package/dist/bundles/compiler/Parsing/ExpressionParser.js.map +1 -1
  119. package/dist/bundles/compiler/Parsing/FeatureBody.js +1 -1
  120. package/dist/bundles/compiler/Parsing/FeatureBody.js.map +1 -1
  121. package/dist/bundles/compiler/Parsing/FileImportParser.js.map +1 -1
  122. package/dist/bundles/compiler/Parsing/FileReferences.js.map +1 -1
  123. package/dist/bundles/compiler/Parsing/FoldedEventSources.js.map +1 -1
  124. package/dist/bundles/compiler/Parsing/GenerationBodyParser.js +1 -1
  125. package/dist/bundles/compiler/Parsing/GenerationBodyParser.js.map +1 -1
  126. package/dist/bundles/compiler/Parsing/GenerationParser.js +1 -1
  127. package/dist/bundles/compiler/Parsing/GenerationParser.js.map +1 -1
  128. package/dist/bundles/compiler/Parsing/GuardedActionInputs.js.map +1 -1
  129. package/dist/bundles/compiler/Parsing/GuardedActionParser.js +1 -1
  130. package/dist/bundles/compiler/Parsing/GuardedActionParser.js.map +1 -1
  131. package/dist/bundles/compiler/Parsing/GuardedActionShadowing.js.map +1 -1
  132. package/dist/bundles/compiler/Parsing/GuardedActionValidator.js +1 -1
  133. package/dist/bundles/compiler/Parsing/GuardedActionValidator.js.map +1 -1
  134. package/dist/bundles/compiler/Parsing/GuardedInteractions.js +1 -1
  135. package/dist/bundles/compiler/Parsing/GuardedInteractions.js.map +1 -1
  136. package/dist/bundles/compiler/Parsing/IdentifierComplianceValidator.js +1 -1
  137. package/dist/bundles/compiler/Parsing/IdentifierComplianceValidator.js.map +1 -1
  138. package/dist/bundles/compiler/Parsing/IdentityParser.js +1 -1
  139. package/dist/bundles/compiler/Parsing/IdentityParser.js.map +1 -1
  140. package/dist/bundles/compiler/Parsing/IdentityValidator.js.map +1 -1
  141. package/dist/bundles/compiler/Parsing/ImplementationParser.js +2 -2
  142. package/dist/bundles/compiler/Parsing/ImplementationParser.js.map +1 -1
  143. package/dist/bundles/compiler/Parsing/ImportDiscovery.js +1 -1
  144. package/dist/bundles/compiler/Parsing/ImportDiscovery.js.map +1 -1
  145. package/dist/bundles/compiler/Parsing/InlineEventValidator.js.map +1 -1
  146. package/dist/bundles/compiler/Parsing/InputUses.js +1 -1
  147. package/dist/bundles/compiler/Parsing/InputUses.js.map +1 -1
  148. package/dist/bundles/compiler/Parsing/InteractionAlternatives.js +1 -1
  149. package/dist/bundles/compiler/Parsing/InteractionAlternatives.js.map +1 -1
  150. package/dist/bundles/compiler/Parsing/InteractionExecutions.js +1 -1
  151. package/dist/bundles/compiler/Parsing/InteractionExecutions.js.map +1 -1
  152. package/dist/bundles/compiler/Parsing/LegacyTextRulePatterns.js.map +1 -1
  153. package/dist/bundles/compiler/Parsing/LineReader.js.map +1 -1
  154. package/dist/bundles/compiler/Parsing/LineText.js.map +1 -1
  155. package/dist/bundles/compiler/Parsing/MatchAmbiguity.js +1 -1
  156. package/dist/bundles/compiler/Parsing/MatchAmbiguity.js.map +1 -1
  157. package/dist/bundles/compiler/Parsing/MatchAmbiguityCharacters.js.map +1 -1
  158. package/dist/bundles/compiler/Parsing/MatchAmbiguityGraph.js.map +1 -1
  159. package/dist/bundles/compiler/Parsing/MatchAmbiguityParser.js.map +1 -1
  160. package/dist/bundles/compiler/Parsing/MatchOperandValidation.js +1 -1
  161. package/dist/bundles/compiler/Parsing/MatchOperandValidation.js.map +1 -1
  162. package/dist/bundles/compiler/Parsing/ModuleBody.js +1 -1
  163. package/dist/bundles/compiler/Parsing/ModuleBody.js.map +1 -1
  164. package/dist/bundles/compiler/Parsing/ObserverFilterParser.js +1 -1
  165. package/dist/bundles/compiler/Parsing/ObserverFilterParser.js.map +1 -1
  166. package/dist/bundles/compiler/Parsing/ObserverFilterValidator.js.map +1 -1
  167. package/dist/bundles/compiler/Parsing/OperationParser.js +1 -1
  168. package/dist/bundles/compiler/Parsing/OperationParser.js.map +1 -1
  169. package/dist/bundles/compiler/Parsing/OperationValidator.js +1 -1
  170. package/dist/bundles/compiler/Parsing/OperationValidator.js.map +1 -1
  171. package/dist/bundles/compiler/Parsing/ParserContext.js.map +1 -1
  172. package/dist/bundles/compiler/Parsing/PersonaCallerValidator.js.map +1 -1
  173. package/dist/bundles/compiler/Parsing/PolicyParser.js +1 -1
  174. package/dist/bundles/compiler/Parsing/PolicyParser.js.map +1 -1
  175. package/dist/bundles/compiler/Parsing/PortableMatchGroupName.js.map +1 -1
  176. package/dist/bundles/compiler/Parsing/PortableMatchPattern.js.map +1 -1
  177. package/dist/bundles/compiler/Parsing/PortableMatchSuggestions.js.map +1 -1
  178. package/dist/bundles/compiler/Parsing/PossibleEventsParser.js +1 -1
  179. package/dist/bundles/compiler/Parsing/PossibleEventsParser.js.map +1 -1
  180. package/dist/bundles/compiler/Parsing/ProducesParser.js +1 -1
  181. package/dist/bundles/compiler/Parsing/ProducesParser.js.map +1 -1
  182. package/dist/bundles/compiler/Parsing/ProjectionEventScopeValidator.js.map +1 -1
  183. package/dist/bundles/compiler/Parsing/ProjectionExpressionParser.js +1 -1
  184. package/dist/bundles/compiler/Parsing/ProjectionExpressionParser.js.map +1 -1
  185. package/dist/bundles/compiler/Parsing/ProjectionParser.js +1 -1
  186. package/dist/bundles/compiler/Parsing/ProjectionParser.js.map +1 -1
  187. package/dist/bundles/compiler/Parsing/ProjectionTargetValidator.js +1 -1
  188. package/dist/bundles/compiler/Parsing/ProjectionTargetValidator.js.map +1 -1
  189. package/dist/bundles/compiler/Parsing/PropertyLineParser.js +1 -1
  190. package/dist/bundles/compiler/Parsing/PropertyLineParser.js.map +1 -1
  191. package/dist/bundles/compiler/Parsing/PublicEventMetadataValidator.js +1 -1
  192. package/dist/bundles/compiler/Parsing/PublicEventMetadataValidator.js.map +1 -1
  193. package/dist/bundles/compiler/Parsing/PublicEventUsageCollector.js +1 -1
  194. package/dist/bundles/compiler/Parsing/PublicEventUsageCollector.js.map +1 -1
  195. package/dist/bundles/compiler/Parsing/PublicEventUsageValidator.js +1 -1
  196. package/dist/bundles/compiler/Parsing/PublicEventUsageValidator.js.map +1 -1
  197. package/dist/bundles/compiler/Parsing/PurposeParser.js +1 -1
  198. package/dist/bundles/compiler/Parsing/PurposeParser.js.map +1 -1
  199. package/dist/bundles/compiler/Parsing/PurposeValidator.js.map +1 -1
  200. package/dist/bundles/compiler/Parsing/QueryParser.js +1 -1
  201. package/dist/bundles/compiler/Parsing/QueryParser.js.map +1 -1
  202. package/dist/bundles/compiler/Parsing/ReactionIdentityParser.js +1 -1
  203. package/dist/bundles/compiler/Parsing/ReactionIdentityParser.js.map +1 -1
  204. package/dist/bundles/compiler/Parsing/ReactionParser.js +1 -1
  205. package/dist/bundles/compiler/Parsing/ReactionParser.js.map +1 -1
  206. package/dist/bundles/compiler/Parsing/ReactionRefusalValidator.js +1 -1
  207. package/dist/bundles/compiler/Parsing/ReactionRefusalValidator.js.map +1 -1
  208. package/dist/bundles/compiler/Parsing/ReadModelKeyValidator.js.map +1 -1
  209. package/dist/bundles/compiler/Parsing/ReadModelMemberTypeValidator.js.map +1 -1
  210. package/dist/bundles/compiler/Parsing/ReadsParser.js +1 -1
  211. package/dist/bundles/compiler/Parsing/ReadsParser.js.map +1 -1
  212. package/dist/bundles/compiler/Parsing/RedeliveryValues.js.map +1 -1
  213. package/dist/bundles/compiler/Parsing/RefusalDeclarations.js +1 -1
  214. package/dist/bundles/compiler/Parsing/RefusalDeclarations.js.map +1 -1
  215. package/dist/bundles/compiler/Parsing/RefusalValueWalker.js.map +1 -1
  216. package/dist/bundles/compiler/Parsing/ResponseCommandResolver.js.map +1 -1
  217. package/dist/bundles/compiler/Parsing/ResponseDateValues.js.map +1 -1
  218. package/dist/bundles/compiler/Parsing/ResponseValidator.js +1 -1
  219. package/dist/bundles/compiler/Parsing/ResponseValidator.js.map +1 -1
  220. package/dist/bundles/compiler/Parsing/ScreenParser.js +1 -1
  221. package/dist/bundles/compiler/Parsing/ScreenParser.js.map +1 -1
  222. package/dist/bundles/compiler/Parsing/ScreenplayParser.js +1 -1
  223. package/dist/bundles/compiler/Parsing/ScreenplayParser.js.map +1 -1
  224. package/dist/bundles/compiler/Parsing/SeedParser.js +1 -1
  225. package/dist/bundles/compiler/Parsing/SeedParser.js.map +1 -1
  226. package/dist/bundles/compiler/Parsing/SliceParser.js +1 -1
  227. package/dist/bundles/compiler/Parsing/SliceParser.js.map +1 -1
  228. package/dist/bundles/compiler/Parsing/SourceLine.js.map +1 -1
  229. package/dist/bundles/compiler/Parsing/SourceLineSplitter.js.map +1 -1
  230. package/dist/bundles/compiler/Parsing/SourceOptionsParser.js +1 -1
  231. package/dist/bundles/compiler/Parsing/SourceOptionsParser.js.map +1 -1
  232. package/dist/bundles/compiler/Parsing/SpecificationCaseParser.js +1 -1
  233. package/dist/bundles/compiler/Parsing/SpecificationCaseParser.js.map +1 -1
  234. package/dist/bundles/compiler/Parsing/SpecificationCaseValidator.js +1 -1
  235. package/dist/bundles/compiler/Parsing/SpecificationCaseValidator.js.map +1 -1
  236. package/dist/bundles/compiler/Parsing/SpecificationCommandExamples.js +1 -1
  237. package/dist/bundles/compiler/Parsing/SpecificationCommandExamples.js.map +1 -1
  238. package/dist/bundles/compiler/Parsing/SpecificationExampleParser.js +1 -1
  239. package/dist/bundles/compiler/Parsing/SpecificationExampleParser.js.map +1 -1
  240. package/dist/bundles/compiler/Parsing/SpecificationParser.js +1 -1
  241. package/dist/bundles/compiler/Parsing/SpecificationParser.js.map +1 -1
  242. package/dist/bundles/compiler/Parsing/SpecificationRedeliveryValidator.js +1 -1
  243. package/dist/bundles/compiler/Parsing/SpecificationRedeliveryValidator.js.map +1 -1
  244. package/dist/bundles/compiler/Parsing/SpecificationResponseParser.js +1 -1
  245. package/dist/bundles/compiler/Parsing/SpecificationResponseParser.js.map +1 -1
  246. package/dist/bundles/compiler/Parsing/SpecificationRouteComparison.js +1 -1
  247. package/dist/bundles/compiler/Parsing/SpecificationRouteComparison.js.map +1 -1
  248. package/dist/bundles/compiler/Parsing/SpecificationStreamValidator.js +1 -1
  249. package/dist/bundles/compiler/Parsing/SpecificationStreamValidator.js.map +1 -1
  250. package/dist/bundles/compiler/Parsing/StateMachineParser.js +1 -1
  251. package/dist/bundles/compiler/Parsing/StateMachineParser.js.map +1 -1
  252. package/dist/bundles/compiler/Parsing/StructuralInteractionSites.js.map +1 -1
  253. package/dist/bundles/compiler/Parsing/StructuredBlockParser.js +1 -1
  254. package/dist/bundles/compiler/Parsing/StructuredBlockParser.js.map +1 -1
  255. package/dist/bundles/compiler/Parsing/StructuredValueParser.js.map +1 -1
  256. package/dist/bundles/compiler/Parsing/TemplateReferenceText.js +1 -1
  257. package/dist/bundles/compiler/Parsing/TemplateReferenceText.js.map +1 -1
  258. package/dist/bundles/compiler/Parsing/TriggerDataParser.js +1 -1
  259. package/dist/bundles/compiler/Parsing/TriggerDataParser.js.map +1 -1
  260. package/dist/bundles/compiler/Parsing/UiBindingParser.js +1 -1
  261. package/dist/bundles/compiler/Parsing/UiBindingParser.js.map +1 -1
  262. package/dist/bundles/compiler/Parsing/UiProfileLegacyLayout.js +1 -1
  263. package/dist/bundles/compiler/Parsing/UiProfileLegacyLayout.js.map +1 -1
  264. package/dist/bundles/compiler/Parsing/WorkflowParser.js +1 -1
  265. package/dist/bundles/compiler/Parsing/WorkflowParser.js.map +1 -1
  266. package/dist/bundles/compiler/Parsing/checkPortableMatchPattern.js.map +1 -1
  267. package/dist/bundles/compiler/Parsing/hasExponentialMatchAmbiguity.js.map +1 -1
  268. package/dist/bundles/compiler/Parsing/trimMatchAmbiguityGraph.js.map +1 -1
  269. package/dist/bundles/compiler/ScreenActionSubjects.js.map +1 -1
  270. package/dist/bundles/compiler/ScreenplayCompiler.js +1 -1
  271. package/dist/bundles/compiler/ScreenplayCompiler.js.map +1 -1
  272. package/dist/bundles/compiler/Syntax/ActionSubjectInvariants.js.map +1 -1
  273. package/dist/bundles/compiler/Syntax/AuthoringProductionResolver.js.map +1 -1
  274. package/dist/bundles/compiler/Syntax/CaptureEventsSource.js.map +1 -1
  275. package/dist/bundles/compiler/Syntax/DependencySources.js.map +1 -1
  276. package/dist/bundles/compiler/Syntax/EventDeclarations.js.map +1 -1
  277. package/dist/bundles/compiler/Syntax/EventSourceCatalog.js.map +1 -1
  278. package/dist/bundles/compiler/Syntax/EventSourceReadConfidence.js.map +1 -1
  279. package/dist/bundles/compiler/Syntax/ExactMathFacts.js.map +1 -1
  280. package/dist/bundles/compiler/Syntax/ExactNumber.js.map +1 -1
  281. package/dist/bundles/compiler/Syntax/InvalidSyntaxJson.js.map +1 -1
  282. package/dist/bundles/compiler/Syntax/LegacyWireProjection.js.map +1 -1
  283. package/dist/bundles/compiler/Syntax/Operations.js.map +1 -1
  284. package/dist/bundles/compiler/Syntax/PersonaCallers.js.map +1 -1
  285. package/dist/bundles/compiler/Syntax/ProductionDestinations.js.map +1 -1
  286. package/dist/bundles/compiler/Syntax/PublicEventInvariants.js.map +1 -1
  287. package/dist/bundles/compiler/Syntax/ScreenplaySyntaxWalker.js.map +1 -1
  288. package/dist/bundles/compiler/Syntax/SourceOptions.js.map +1 -1
  289. package/dist/bundles/compiler/Syntax/SpecificationCaseOrigin.js.map +1 -1
  290. package/dist/bundles/compiler/Syntax/StreamIdFormatter.js.map +1 -1
  291. package/dist/bundles/compiler/Syntax/StrictSyntaxJson.js +1 -1
  292. package/dist/bundles/compiler/Syntax/Structure.js.map +1 -1
  293. package/dist/bundles/compiler/Syntax/SyntaxCollections.js.map +1 -1
  294. package/dist/bundles/compiler/Syntax/SyntaxInvariants.js +1 -1
  295. package/dist/bundles/compiler/Syntax/SyntaxInvariants.js.map +1 -1
  296. package/dist/bundles/compiler/Syntax/SyntaxJson.js +1 -1
  297. package/dist/bundles/compiler/Syntax/SyntaxJson.js.map +1 -1
  298. package/dist/bundles/compiler/Syntax/SyntaxMemberContracts.js.map +1 -1
  299. package/dist/bundles/compiler/Syntax/index.js +1 -1
  300. package/dist/bundles/compiler/Text/ImplementationHintText.js.map +1 -1
  301. package/dist/bundles/compiler/Text/ReservedWords.js.map +1 -1
  302. package/dist/bundles/compiler/Text/SourceStreamNames.js.map +1 -1
  303. package/dist/bundles/compiler/Text/StringLiteral.js.map +1 -1
  304. package/dist/bundles/compiler/Text/ordinalIgnoreCaseKey.js.map +1 -1
  305. package/dist/bundles/compiler/Text/patterns.js.map +1 -1
  306. package/dist/bundles/compiler/index.js +1 -1
  307. package/dist/bundles/completion-items.js +4 -4
  308. package/dist/bundles/completion-items.js.map +1 -1
  309. package/dist/bundles/completion-planner.js +2 -2
  310. package/dist/bundles/completion-planner.js.map +1 -1
  311. package/dist/bundles/completions.js +1 -1
  312. package/dist/bundles/completions.js.map +1 -1
  313. package/dist/bundles/continuation-responses.js +1 -1
  314. package/dist/bundles/continuation-responses.js.map +1 -1
  315. package/dist/bundles/declarations.js.map +1 -1
  316. package/dist/bundles/dependency-completions.js.map +1 -1
  317. package/dist/bundles/dependency-target-analysis.js.map +1 -1
  318. package/dist/bundles/diagnostic-codes.js +1 -1
  319. package/dist/bundles/diagnostic-codes.js.map +1 -1
  320. package/dist/bundles/diagnostics.js +1 -1
  321. package/dist/bundles/diagnostics.js.map +1 -1
  322. package/dist/bundles/document-context.js.map +1 -1
  323. package/dist/bundles/documentation-item.js.map +1 -1
  324. package/dist/bundles/event-analysis-source.js.map +1 -1
  325. package/dist/bundles/event-context-catalog.js.map +1 -1
  326. package/dist/bundles/event-context.js.map +1 -1
  327. package/dist/bundles/event-source-authoring.js +11 -11
  328. package/dist/bundles/event-source-authoring.js.map +1 -1
  329. package/dist/bundles/example-analysis.js +2 -2
  330. package/dist/bundles/example-analysis.js.map +1 -1
  331. package/dist/bundles/example-authoring.js +2 -2
  332. package/dist/bundles/example-authoring.js.map +1 -1
  333. package/dist/bundles/example-declaration-items.js.map +1 -1
  334. package/dist/bundles/example-values.js.map +1 -1
  335. package/dist/bundles/file-imports.js.map +1 -1
  336. package/dist/bundles/file-references.js.map +1 -1
  337. package/dist/bundles/generation-completions.js.map +1 -1
  338. package/dist/bundles/hover-content.js +5 -5
  339. package/dist/bundles/hover-content.js.map +1 -1
  340. package/dist/bundles/hover.js.map +1 -1
  341. package/dist/bundles/index.js +1 -1
  342. package/dist/bundles/index.js.map +1 -1
  343. package/dist/bundles/inlay-hints.js.map +1 -1
  344. package/dist/bundles/inline-completions.js +1 -1
  345. package/dist/bundles/inline-completions.js.map +1 -1
  346. package/dist/bundles/inline-event-validation.js +1 -1
  347. package/dist/bundles/inline-event-validation.js.map +1 -1
  348. package/dist/bundles/keyword-docs.js.map +1 -1
  349. package/dist/bundles/language.js.map +1 -1
  350. package/dist/bundles/named-rule-context.js.map +1 -1
  351. package/dist/bundles/operation-authoring.js +6 -6
  352. package/dist/bundles/operation-authoring.js.map +1 -1
  353. package/dist/bundles/persona-analysis.js +1 -1
  354. package/dist/bundles/persona-analysis.js.map +1 -1
  355. package/dist/bundles/production-destinations.js +1 -1
  356. package/dist/bundles/production-destinations.js.map +1 -1
  357. package/dist/bundles/purpose-items.js.map +1 -1
  358. package/dist/bundles/reaction-authoring.js +3 -3
  359. package/dist/bundles/reaction-authoring.js.map +1 -1
  360. package/dist/bundles/read-model-key-completions.js +1 -1
  361. package/dist/bundles/read-model-key-completions.js.map +1 -1
  362. package/dist/bundles/refusal-context.js.map +1 -1
  363. package/dist/bundles/response-analysis.js.map +1 -1
  364. package/dist/bundles/response-completions.js +1 -1
  365. package/dist/bundles/response-completions.js.map +1 -1
  366. package/dist/bundles/response-tokens.js +2 -2
  367. package/dist/bundles/response-tokens.js.map +1 -1
  368. package/dist/bundles/scope-items.js +3 -3
  369. package/dist/bundles/scope-items.js.map +1 -1
  370. package/dist/bundles/structure-completions.js.map +1 -1
  371. package/dist/bundles/sub-language-registry.js.map +1 -1
  372. package/dist/bundles/sub-languages/capture/CompletionProvider.js.map +1 -1
  373. package/dist/bundles/sub-languages/capture/HoverProvider.js.map +1 -1
  374. package/dist/bundles/sub-languages/capture/Validator.js.map +1 -1
  375. package/dist/bundles/sub-languages/capture/index.js.map +1 -1
  376. package/dist/bundles/sub-languages/capture/language.js.map +1 -1
  377. package/dist/bundles/sub-languages/cdl.js.map +1 -1
  378. package/dist/bundles/sub-languages/pdl.js.map +1 -1
  379. package/dist/bundles/sub-languages/projection/CodeActionProvider.js.map +1 -1
  380. package/dist/bundles/sub-languages/projection/CompletionProvider.js +1 -1
  381. package/dist/bundles/sub-languages/projection/CompletionProvider.js.map +1 -1
  382. package/dist/bundles/sub-languages/projection/HoverProvider.js.map +1 -1
  383. package/dist/bundles/sub-languages/projection/Validator.js.map +1 -1
  384. package/dist/bundles/sub-languages/projection/index.js.map +1 -1
  385. package/dist/bundles/sub-languages/projection/language.js.map +1 -1
  386. package/dist/bundles/symbols.js +2 -2
  387. package/dist/bundles/symbols.js.map +1 -1
  388. package/dist/bundles/themes/screenplay-dark.js.map +1 -1
  389. package/dist/bundles/themes/screenplay-light.js.map +1 -1
  390. package/dist/bundles/tokens.js.map +1 -1
  391. package/dist/bundles/validation.js +2 -2
  392. package/dist/bundles/validation.js.map +1 -1
  393. package/dist/diagnostic-codes.d.ts +1 -0
  394. package/dist/diagnostic-codes.d.ts.map +1 -1
  395. package/package.json +3 -3
@@ -1,4 +1,4 @@
1
- import"./_virtual/_virtual/_rolldown/runtime.js";import{identityProperties as e}from"./language.js";import{documentationItem as t}from"./documentation-item.js";import{purposeReferenceItem as n}from"./purpose-items.js";import{eventContextPaths as r}from"./event-context-catalog.js";import"./event-context.js";import{exampleDeclarationItems as i}from"./example-declaration-items.js";import"./scope-items.js";const a=[{label:`optional`,insertText:`optional`,documentation:`Allows the complete value, including a collection, to be absent.`}],fenced=e=>`\`\`\`${e}\n\${1}\n\`\`\``,o=[{label:`description`,insertText:'description "${1:caller details}"',documentation:`Describes the caller metadata.`},{label:`detail from claim`,insertText:'${1:detail} ${2:Type} from claim "${3:claim}"',documentation:`One typed detail sourced from a token claim.`},{label:`detail from query`,insertText:"${1:detail} ${2:Type} from query ${3:Query} by \\$identity.id",documentation:`A keyed, single-result query authorized without additional caller details.`},{label:`detail from code`,insertText:"${1:detail} ${2:Type}\n ```csharp\n ${3:return value;}\n ```",documentation:`An opaque inline source; authoring metadata, not executable.`},{label:`detail from file`,insertText:"${1:detail} ${2:Type}\n file ${3:Path}",documentation:`One file source; no refresh or cache directives.`}];function contextVariableEntries(t){let n=[...new Map((t.identityDetails??[]).map(e=>[e.name,e])).values()];return[...Y,...n.filter(t=>!e.includes(t.name)).map(e=>({label:`$identity.${e.name}`,insertText:`\\$identity.${e.name}`,detail:e.type,documentation:`Declared caller detail. Authoring metadata only; executable reads report PLAY0268 until admitted (#600).`}))]}const s=[{label:`time zone member`,insertText:"${1:bookingZone} time zone",documentation:`A named application time-zone input. Only time zone members are currently declared; binding reports PLAY0268 (#824).`},{label:`description`,insertText:'description "${1:context intent}"',documentation:`Describes the application context; does not supply a runtime value.`}],c=[{label:`context`,insertText:`context
1
+ import"./_virtual/_virtual/_rolldown/runtime.js";import{documentationItem as e}from"./documentation-item.js";import{purposeReferenceItem as t}from"./purpose-items.js";import"./event-context.js";import{eventContextPaths as n}from"./event-context-catalog.js";import{identityProperties as r}from"./language.js";import{exampleDeclarationItems as i}from"./example-declaration-items.js";import"./scope-items.js";const a=[{label:`optional`,insertText:`optional`,documentation:`Allows the complete value, including a collection, to be absent.`}],fenced=e=>`\`\`\`${e}\n\${1}\n\`\`\``,o=[{label:`description`,insertText:'description "${1:caller details}"',documentation:`Describes the caller metadata.`},{label:`detail from claim`,insertText:'${1:detail} ${2:Type} from claim "${3:claim}"',documentation:`One typed detail sourced from a token claim.`},{label:`detail from query`,insertText:"${1:detail} ${2:Type} from query ${3:Query} by \\$identity.id",documentation:`A keyed, single-result query authorized without additional caller details.`},{label:`detail from code`,insertText:"${1:detail} ${2:Type}\n ```csharp\n ${3:return value;}\n ```",documentation:`An opaque inline source; authoring metadata, not executable.`},{label:`detail from file`,insertText:"${1:detail} ${2:Type}\n file ${3:Path}",documentation:`One file source; no refresh or cache directives.`}];function contextVariableEntries(e){let t=[...new Map((e.identityDetails??[]).map(e=>[e.name,e])).values()];return[...Y,...t.filter(e=>!r.includes(e.name)).map(e=>({label:`$identity.${e.name}`,insertText:`\\$identity.${e.name}`,detail:e.type,documentation:`Declared caller detail. Authoring metadata only; executable reads report PLAY0268 until admitted (#600).`}))]}const s=[{label:`time zone member`,insertText:"${1:bookingZone} time zone",documentation:`A named application time-zone input. Only time zone members are currently declared; binding reports PLAY0268 (#824).`},{label:`description`,insertText:'description "${1:context intent}"',documentation:`Describes the application context; does not supply a runtime value.`}],c=[{label:`context`,insertText:`context
2
2
  \${1:bookingZone} time zone`,documentation:`Typed application context members (decision 0132). Syntax-only; binding reports PLAY0268 (#824). At most one block per application.`},{label:`time zone`,insertText:'time zone "${1:Europe/Oslo}"',documentation:`Application calendar (decisions 0106/0107). Syntax-only; binding reports PLAY0268. Never falls back to the machine zone.`},{label:`time zone configurable default`,insertText:'time zone configurable default "${1:Europe/Oslo}"',documentation:`Configurable application calendar default. Syntax-only; binding reports PLAY0268.`},{label:`command reads protected`,insertText:`command reads protected`,documentation:`Opts the application into protected command reads (ESM v25). Required absence rejects with Validation; matching intervening facts conflict. Each view and input key must pass admission; targets require separate version support.`},{label:`reaction batches atomic`,insertText:`reaction batches atomic`,documentation:`Opts the composed application into atomic direct and refusal-branch reaction batches (ESM v22). Omit only to retain legacy per-fact behavior.`},{label:`identity`,insertText:'identity\n ${1:detail} ${2:Type} from claim "${3:claim}"',documentation:`Typed additional caller details; authoring metadata only, at most one block per application.`},{label:`purpose`,insertText:'purpose ${1:Name}\n description "${2:processing intent}"\n basis ${3|consent,contract,legalObligation,vitalInterests,publicTask,legitimateInterests|}',documentation:`Report-only processing metadata. Not legal advice; referenced by module, feature and slice.`},...i,{label:`eventsource`,insertText:"eventsource ${1:Name}\n identifier ${2:Type}\n stream ${3:Name}",documentation:`Application-owned source with nested streams, admitted by ESM v8. Pin the stored name before renaming a source with stored events; Default is reserved.`},{label:`system`,insertText:'system ${1:Name}\n description "${2:external system}"',documentation:`Application-scoped external system; not admitted by any supported executable model (ESM) version yet.`},{label:`statemachine`,insertText:"statemachine ${1:Name}\n follows ${2:ReadModel}\n state ${3:Placed} initial\n on ${4:Event} -> ${5:Paid}\n state ${5:Paid} final",documentation:"Where a thing is in its lifecycle, derived from the read model it follows (ESM v36). Exactly one initial state; a transition is `on <Event> [when <condition>] -> <State>`; `entering send <Command>` or `entering start <Workflow>` says what entering a state does."},{label:`workflow`,insertText:"workflow ${1:Name}\n for ${2:ReadModel}\n trigger on ${3:Event}\n -> ${4:Step}\n action ${4:Step} sends ${5:Command}",documentation:`A durable process that runs one at a time per subject (ESM v36): trigger, action, decide, wait, approval, foreach and join nodes connected by outlets. An unconnected failed, rejected or expired outlet fails the run.`},{label:`import`,insertText:"import ${1:Module}.${2:Type}",documentation:`Imports a type from another module by its qualified name.`},{label:`import from`,insertText:'import ${1:Module}.${2:Event} from "${3:origin}"',documentation:`Imports a public event contract with a nonblank opaque origin, not a file path. An import has no local shape, so executable binding still refuses it with PLAY0268.`},{label:`import "…"`,insertText:'import "${1:**/*.play}"',documentation:"Imports other `.play` files by path or glob, relative to this file's folder, as whole documents of the application."},{label:`concept`,insertText:"concept ${1:Name} : ${2|Uuid,String,Int,Decimal,Bool,Date,DateTime|}",documentation:`Declares a formalized value type wrapping a primitive.`},{label:`concept (enum)`,insertText:"concept ${1:Name} : Enum\n ${2:value}",documentation:`Declares a positional enumeration. Reordering or inserting members changes their stored numbers.`},{label:`concept (pii with reason)`,insertText:'concept ${1:Name} : ${2|String,Uuid,Int,Decimal,Bool,Date,DateTime|} pii\n pii reason "${3:why this value is personal data}"',documentation:`Declares a personal-data concept together with the reason it is personal data.`},{label:`type`,insertText:"type ${1:Name}\n ${2:property} ${3:Type}",documentation:`Declares a composite value type — a named shape built from several properties.`},{label:`policy`,insertText:"policy ${1:Name}\n require ${2:authenticated}",documentation:`Declares a named authorization rule for commands and queries.`},{label:`module`,insertText:`module \${1:Name}
3
3
  `,documentation:`Declares the top-level namespace — maps to a bounded context.`},{label:`domain`,insertText:"domain ${1:Name}",documentation:`The domain the file belongs to — optional, at most one per file, before everything else.`},{label:`sticky`,insertText:'sticky note on ${4|personas,eventsources,givencontexts,seeddata|}\n description "${1:what the note says}"\n position ${2:0} ${3:0}',documentation:`A sticky note on a domain canvas: personas, eventsources, givencontexts or seeddata.`},{label:`persona`,insertText:'persona ${1:Name}\n description "${2:who they are}"',documentation:`A named role interacting with the application, with the policies it holds.`},{label:`authentication`,insertText:`authentication
4
4
  provider \${1:Name}`,documentation:`Declares the identity providers of the application — at most one block per file.`},{label:`onboarding`,insertText:`onboarding
@@ -16,11 +16,11 @@ import"./_virtual/_virtual/_rolldown/runtime.js";import{identityProperties as e}
16
16
  then completes`,documentation:`Pins a run with Given/When/Then.`}],f=[{label:`uses`,insertText:"uses ${1:System}",documentation:`Exactly one application-scoped external system.`},{label:`description`,insertText:'description "${1:intent}"',documentation:`Describes operation intent, without requiring code.`},{label:`input`,insertText:"${1:input} ${2:Type}",documentation:`Typed operation input; no identifier or generated modifier.`},{label:`execute`,insertText:`execute
17
17
  description "\${1:effect}"`,documentation:`Optional execution intent; not admitted by any supported executable model (ESM) version yet.`},{label:`compensate`,insertText:`compensate
18
18
  description "\${1:undo intent}"`,documentation:`Optional compensation intent; not admitted by any supported executable model (ESM) version yet.`}],p=[{label:`hint`,insertText:'hint "${1:implementation guidance}"',documentation:`Ordered authoring guidance; not an executable implementation role.`},{label:`file`,insertText:"file ${1:Path}",documentation:`Selects the phase’s sole source attachment.`},...[`csharp`,`java`,`typescript`,`react`,`html`,`sql`].map(e=>({label:e,insertText:fenced(e),documentation:`Selects the phase’s sole inline source; not admitted by any supported executable model (ESM) version yet.`}))],m=[{label:`description`,insertText:'description "${1:phase intent}"',documentation:`A description-only phase is valid, pending intent.`},{label:`implementation`,insertText:`implementation
19
- hint "\${1:guidance}"`,documentation:`Hints with optional source; phase owns File/Code, wrapper owns hints only.`},...p.filter(e=>e.label!==`hint`)],h=[{label:`generate uuid`,insertText:`generate uuid`,documentation:`Random UUID v4; 122 random bits. Implicit on Uuid concepts; String UUIDs are lowercase by default.`},{label:`generate uuidv7`,insertText:`generate uuidv7`,documentation:`Time-ordered UUID v7; 74 random bits. Exposes time, not monotonic within a millisecond.`},{label:`generate ulid`,insertText:`generate ulid`,documentation:`26 uppercase Crockford base32 characters; 80 random bits. String concepts only.`},{label:`generate typeid`,insertText:'generate typeid "${1:user}"',documentation:`TypeID 0.3, lowercase UUIDv7 base32; 74 random bits. Empty prefix has no separator.`},{label:`generate nanoid`,insertText:"generate nanoid ${1:21}",documentation:`String from a distinct printable ASCII alphabet; size × log2(alphabet size) random bits. Default: 21 × 6 = 126 bits.`},{label:`generate bytes`,insertText:"generate bytes ${1:32} ${2|base64url,hex,base32|}",documentation:`Cryptographic random bytes, RFC 4648 without padding; 8 × count bits. Case applies only to hex/base32.`},{label:`generate pattern`,insertText:'generate pattern "${1:INV-{yyyy}{MM}-#{7}}"',documentation:`ESM v21 finite ASCII pattern with bounded repeats and UTC date segments. Distinct-support entropy excludes dates and check digits; generated fixtures use given clock when present.`},{label:`generate random`,insertText:"generate random ${1:1}..${2:9}",documentation:`ESM v21 inclusive signed Int64 range; exact integral fixtures, not strings. A generated value, never an Int identifier.`},{label:`generate rule`,insertText:"generate rule ${1:Name}\n file ${2:Generator.cs}",documentation:`ESM v21 ValueGeneration attachment: exactly one direct file or tagged fence. Closed context Now and Tenant; entropy is unknown. The reference runner requires a fixture and never executes the body.`},{label:`validate checksum`,insertText:"validate checksum ${1|luhn,mod11,mod97|}",documentation:`String concepts only: validates the exact trailing check digits over preceding ASCII digits, including supplied and stored values. Generation alone does not add this rule.`},{label:`description`,insertText:'description "${1:what this value represents}"',documentation:`Report-only authoring description; not a validation or compliance note.`},{label:`file`,insertText:"file ${1:Path}",documentation:`Names the repository relative file this declaration is realized by, so the document can be navigated back to the code.`},{label:`pii reason`,insertText:'pii reason "${1:why this value is personal data}"',documentation:`A free-text concept note, not a lawful basis.`},{label:`secret reason`,insertText:'secret reason "${1:why this value is an operational secret}"',documentation:`Records why the secret marker applies.`},{label:`secret scope`,insertText:"secret scope ${1|subject,namespace,global|}",documentation:`Explicit encryption scope; omitted scope keeps Chronicle’s Subject default.`},{label:`pii special`,insertText:"pii special ${1|racialOrEthnicOrigin,politicalOpinions,religiousOrPhilosophicalBeliefs,tradeUnionMembership,genetic,biometric,health,sexLifeOrSexualOrientation|}",documentation:`GDPR Art. 9(1) special category of personal data.`},{label:`pii criminal`,insertText:`pii criminal`,documentation:`Personal data relating to criminal convictions and offenses (GDPR Art. 10).`},{label:`validate`,insertText:'validate\n ${1:not empty} message "${2:message}"',documentation:`Validation rules that travel with the value everywhere it appears.`}],g=[{label:`file`,insertText:"file ${1:Path}",documentation:`Names the repository relative file this declaration is realized by, so the document can be navigated back to the code.`},{label:`description`,insertText:'description "${1:what this shape represents}"',documentation:`A human-readable description of the type.`},{label:`property`,insertText:"${1:property} ${2:Type}",documentation:`A property of the type — a name and a type reference.`}],_=[n,t,...i,{label:`operation`,insertText:"operation ${1:Name}\n uses ${2:System}\n ${3:input} ${4:Type}",documentation:`Reusable slice-owned operation intent; not admitted by any supported executable model (ESM) version yet.`},{label:`file`,insertText:"file ${1:Path}",documentation:`Names the repository relative file this declaration is realized by, so the document can be navigated back to the code.`},{label:`public event`,insertText:"public event ${1:Name}\n ${2:property} ${3:Type}",documentation:`Declares a public event: a contract this application publishes. Admitted by ESM v9; an outbound Translate slice produces it through a projection that targets it.`},{label:`event from`,insertText:'event ${1:Name} from "${2:origin}"\n ${3:property} ${4:Type}',documentation:`An event with an opaque origin naming the application that owns it, not a path or declaration reference. It is a public event admitted by ESM v9; consume it with a capture over source events.`},{label:`direction`,insertText:"direction ${1|inbound,outbound|}",documentation:`Translate direction, inbound or outbound, admitted by ESM v9. No transport or delivery guarantee is implied.`},{label:`event`,insertText:"event ${1:Name}\n ${2:property} ${3:Type}",documentation:`Declares an event type — an immutable, past-tense fact.`},{label:`event generation`,insertText:"event ${1:Name} generation ${2:2}\n ${3:property} ${4:Type}",documentation:`Declares a complete numbered event generation; start at 1 and do not skip a number.`},{label:`command`,insertText:"command ${1:Name}\n ${2:property} ${3:Type}",documentation:`Declares a command — an imperative intent that produces events.`},{label:`query`,insertText:"query ${1:Name} => ${2:ReadModel}",documentation:`Declares a read-side entry point mapping to a return type.`},{label:`query observable`,insertText:"query ${1:Name} => observable ${2:ReadModel}",documentation:`Declares a live read — the query keeps pushing as the read model changes, instead of answering once.`},{label:`readmodel`,insertText:"readmodel ${1:Name}\n ${2:property} ${3:Type}",documentation:`Declares the shape of a read model — its properties — that a projection, reducer or query fills and returns.`},{label:`reducer`,insertText:"reducer ${1:Name} => ${2:ReadModel}\n on ${3:EventType}\n ```csharp\n ${4}\n ```",documentation:`Declares a reducer building a read model from events with imperative code, for what a projection cannot express.`},{label:`specification`,insertText:"specification ${1:Name}\n given ${2:EventType}\n when ${3:Command}\n then ${4:EventType}",documentation:`Given/when/then acceptance criteria for the slice.`},{label:`projection`,insertText:"projection ${1:Name} => ${2:ReadModel}\n from ${3:EventType}",documentation:`Declares how events project into a read model (PDL).`},{label:`capture`,insertText:"capture ${1:Name}\n source ${2:api}",documentation:`Declares a change data capture converting external data into events (CDL).`},{label:`reaction`,insertText:"reaction ${1:Name}\n when ${2:Trigger}",documentation:`Declares behavior that runs when something happens.`},{label:`screen`,insertText:"screen ${1:Name}\n data ${2:ReadModel} via query ${3:QueryName}",documentation:`Declares a UI screen.`},{label:`constraint`,insertText:"constraint ${1:Name}\n unique ${2:property} on ${3:EventType}",documentation:`Declares a server-side rule enforced before events are committed.`}],v=[{label:`calendar`,insertText:'calendar "${1:Europe/Oslo}"',documentation:`Command calendar. Syntax-only (decisions 0106/0107); binding reports PLAY0268. The contextual calendar from $context.<member> form is also syntax-only.`},t,{label:`property`,insertText:"${1:property} ${2:Type}",documentation:`An input of the command — a name and a type reference.`},{label:`produces operation`,insertText:"produces operation ${1:Name}\n uses ${2:System}\n ${3:input} ${4:Type} = ${5:source}",documentation:`Declares ordered operation intent; not admitted by any supported executable model (ESM) version yet (PLAY0268).`},{label:`returns property`,insertText:"returns @${1:property}",documentation:`Scalar response from a direct command property, only on acceptance. Executable as ESM v7.`},{label:`returns block`,insertText:"returns\n ${1:field} = ${2:property}",documentation:`Unnamed record response with inferred or explicit field types, only on acceptance. Executable as ESM v7.`},{label:`produces event`,insertText:"produces event ${1:Name}\n ${2:property} ${3:Type} = ${4:source}",documentation:`Declares a slice-owned generation-1 event and maps its properties. An omitted for uses the command identifier.`},{label:`identifier property`,insertText:"${1:property} ${2:Type} identifier",documentation:`Marks the property a runtime resolves the event source id from. At most one per command.`},{label:`authorize`,insertText:"authorize ${1:PolicyName}",documentation:`References the policies that must pass for the command to execute.`},{label:`reads`,insertText:"reads ${1:View} by ${2:property}",documentation:`Declares a view the command consults. Executable binding is not yet supported.`},{label:`reads as`,insertText:"reads ${1:View} as ${2:alias} by ${3:property}",documentation:`Names one instance of a view; every instance needs a unique alias when reading the same view more than once.`},{label:`validate`,insertText:'validate\n ${1:property} not empty message "${2:message}"',documentation:`Declarative validation rules with messages.`},{label:`validate csharp`,insertText:`validate\n ${fenced(`csharp`)}`,documentation:`Imperative validation in C#, yielding the message of every rule the artifact breaks.`},{label:`produces`,insertText:"produces ${1:EventType}\n ${2:property} = ${3:source}",documentation:`Declares the event the command emits, with property mappings.`},{label:`produces when`,insertText:"produces when ${1:condition}\n ${2:EventType}\n ${3:property} = ${4:source}",documentation:`Conditionally emits an event when the condition holds.`},{label:`description`,insertText:'description "${1:what the command asks for}"',documentation:`A human-readable description.`},{label:`concurrency`,insertText:`concurrency
19
+ hint "\${1:guidance}"`,documentation:`Hints with optional source; phase owns File/Code, wrapper owns hints only.`},...p.filter(e=>e.label!==`hint`)],h=[{label:`generate uuid`,insertText:`generate uuid`,documentation:`Random UUID v4; 122 random bits. Implicit on Uuid concepts; String UUIDs are lowercase by default.`},{label:`generate uuidv7`,insertText:`generate uuidv7`,documentation:`Time-ordered UUID v7; 74 random bits. Exposes time, not monotonic within a millisecond.`},{label:`generate ulid`,insertText:`generate ulid`,documentation:`26 uppercase Crockford base32 characters; 80 random bits. String concepts only.`},{label:`generate typeid`,insertText:'generate typeid "${1:user}"',documentation:`TypeID 0.3, lowercase UUIDv7 base32; 74 random bits. Empty prefix has no separator.`},{label:`generate nanoid`,insertText:"generate nanoid ${1:21}",documentation:`String from a distinct printable ASCII alphabet; size × log2(alphabet size) random bits. Default: 21 × 6 = 126 bits.`},{label:`generate bytes`,insertText:"generate bytes ${1:32} ${2|base64url,hex,base32|}",documentation:`Cryptographic random bytes, RFC 4648 without padding; 8 × count bits. Case applies only to hex/base32.`},{label:`generate pattern`,insertText:'generate pattern "${1:INV-{yyyy}{MM}-#{7}}"',documentation:`ESM v21 finite ASCII pattern with bounded repeats and UTC date segments. Distinct-support entropy excludes dates and check digits; generated fixtures use given clock when present.`},{label:`generate random`,insertText:"generate random ${1:1}..${2:9}",documentation:`ESM v21 inclusive signed Int64 range; exact integral fixtures, not strings. A generated value, never an Int identifier.`},{label:`generate rule`,insertText:"generate rule ${1:Name}\n file ${2:Generator.cs}",documentation:`ESM v21 ValueGeneration attachment: exactly one direct file or tagged fence. Closed context Now and Tenant; entropy is unknown. The reference runner requires a fixture and never executes the body.`},{label:`validate checksum`,insertText:"validate checksum ${1|luhn,mod11,mod97|}",documentation:`String concepts only: validates the exact trailing check digits over preceding ASCII digits, including supplied and stored values. Generation alone does not add this rule.`},{label:`description`,insertText:'description "${1:what this value represents}"',documentation:`Report-only authoring description; not a validation or compliance note.`},{label:`file`,insertText:"file ${1:Path}",documentation:`Names the repository relative file this declaration is realized by, so the document can be navigated back to the code.`},{label:`pii reason`,insertText:'pii reason "${1:why this value is personal data}"',documentation:`A free-text concept note, not a lawful basis.`},{label:`secret reason`,insertText:'secret reason "${1:why this value is an operational secret}"',documentation:`Records why the secret marker applies.`},{label:`secret scope`,insertText:"secret scope ${1|subject,namespace,global|}",documentation:`Explicit encryption scope; omitted scope keeps Chronicle’s Subject default.`},{label:`pii special`,insertText:"pii special ${1|racialOrEthnicOrigin,politicalOpinions,religiousOrPhilosophicalBeliefs,tradeUnionMembership,genetic,biometric,health,sexLifeOrSexualOrientation|}",documentation:`GDPR Art. 9(1) special category of personal data.`},{label:`pii criminal`,insertText:`pii criminal`,documentation:`Personal data relating to criminal convictions and offenses (GDPR Art. 10).`},{label:`validate`,insertText:'validate\n ${1:not empty} message "${2:message}"',documentation:`Validation rules that travel with the value everywhere it appears.`}],g=[{label:`file`,insertText:"file ${1:Path}",documentation:`Names the repository relative file this declaration is realized by, so the document can be navigated back to the code.`},{label:`description`,insertText:'description "${1:what this shape represents}"',documentation:`A human-readable description of the type.`},{label:`property`,insertText:"${1:property} ${2:Type}",documentation:`A property of the type — a name and a type reference.`}],_=[t,e,...i,{label:`operation`,insertText:"operation ${1:Name}\n uses ${2:System}\n ${3:input} ${4:Type}",documentation:`Reusable slice-owned operation intent; not admitted by any supported executable model (ESM) version yet.`},{label:`file`,insertText:"file ${1:Path}",documentation:`Names the repository relative file this declaration is realized by, so the document can be navigated back to the code.`},{label:`public event`,insertText:"public event ${1:Name}\n ${2:property} ${3:Type}",documentation:`Declares a public event: a contract this application publishes. Admitted by ESM v9; an outbound Translate slice produces it through a projection that targets it.`},{label:`event from`,insertText:'event ${1:Name} from "${2:origin}"\n ${3:property} ${4:Type}',documentation:`An event with an opaque origin naming the application that owns it, not a path or declaration reference. It is a public event admitted by ESM v9; consume it with a capture over source events.`},{label:`direction`,insertText:"direction ${1|inbound,outbound|}",documentation:`Translate direction, inbound or outbound, admitted by ESM v9. No transport or delivery guarantee is implied.`},{label:`event`,insertText:"event ${1:Name}\n ${2:property} ${3:Type}",documentation:`Declares an event type — an immutable, past-tense fact.`},{label:`event generation`,insertText:"event ${1:Name} generation ${2:2}\n ${3:property} ${4:Type}",documentation:`Declares a complete numbered event generation; start at 1 and do not skip a number.`},{label:`command`,insertText:"command ${1:Name}\n ${2:property} ${3:Type}",documentation:`Declares a command — an imperative intent that produces events.`},{label:`query`,insertText:"query ${1:Name} => ${2:ReadModel}",documentation:`Declares a read-side entry point mapping to a return type.`},{label:`query observable`,insertText:"query ${1:Name} => observable ${2:ReadModel}",documentation:`Declares a live read — the query keeps pushing as the read model changes, instead of answering once.`},{label:`readmodel`,insertText:"readmodel ${1:Name}\n ${2:property} ${3:Type}",documentation:`Declares the shape of a read model — its properties — that a projection, reducer or query fills and returns.`},{label:`reducer`,insertText:"reducer ${1:Name} => ${2:ReadModel}\n on ${3:EventType}\n ```csharp\n ${4}\n ```",documentation:`Declares a reducer building a read model from events with imperative code, for what a projection cannot express.`},{label:`specification`,insertText:"specification ${1:Name}\n given ${2:EventType}\n when ${3:Command}\n then ${4:EventType}",documentation:`Given/when/then acceptance criteria for the slice.`},{label:`projection`,insertText:"projection ${1:Name} => ${2:ReadModel}\n from ${3:EventType}",documentation:`Declares how events project into a read model (PDL).`},{label:`capture`,insertText:"capture ${1:Name}\n source ${2:api}",documentation:`Declares a change data capture converting external data into events (CDL).`},{label:`reaction`,insertText:"reaction ${1:Name}\n when ${2:Trigger}",documentation:`Declares behavior that runs when something happens.`},{label:`screen`,insertText:"screen ${1:Name}\n data ${2:ReadModel} via query ${3:QueryName}",documentation:`Declares a UI screen.`},{label:`constraint`,insertText:"constraint ${1:Name}\n unique ${2:property} on ${3:EventType}",documentation:`Declares a server-side rule enforced before events are committed.`}],v=[{label:`calendar`,insertText:'calendar "${1:Europe/Oslo}"',documentation:`Command calendar. Syntax-only (decisions 0106/0107); binding reports PLAY0268. The contextual calendar from $context.<member> form is also syntax-only.`},e,{label:`property`,insertText:"${1:property} ${2:Type}",documentation:`An input of the command — a name and a type reference.`},{label:`produces operation`,insertText:"produces operation ${1:Name}\n uses ${2:System}\n ${3:input} ${4:Type} = ${5:source}",documentation:`Declares ordered operation intent; not admitted by any supported executable model (ESM) version yet (PLAY0268).`},{label:`returns property`,insertText:"returns @${1:property}",documentation:`Scalar response from a direct command property, only on acceptance. Executable as ESM v7.`},{label:`returns block`,insertText:"returns\n ${1:field} = ${2:property}",documentation:`Unnamed record response with inferred or explicit field types, only on acceptance. Executable as ESM v7.`},{label:`produces event`,insertText:"produces event ${1:Name}\n ${2:property} ${3:Type} = ${4:source}",documentation:`Declares a slice-owned generation-1 event and maps its properties. An omitted for uses the command identifier.`},{label:`identifier property`,insertText:"${1:property} ${2:Type} identifier",documentation:`Marks the property a runtime resolves the event source id from. At most one per command.`},{label:`authorize`,insertText:"authorize ${1:PolicyName}",documentation:`References the policies that must pass for the command to execute.`},{label:`reads`,insertText:"reads ${1:View} by ${2:property}",documentation:`Declares a view the command consults. Executable binding is not yet supported.`},{label:`reads as`,insertText:"reads ${1:View} as ${2:alias} by ${3:property}",documentation:`Names one instance of a view; every instance needs a unique alias when reading the same view more than once.`},{label:`validate`,insertText:'validate\n ${1:property} not empty message "${2:message}"',documentation:`Declarative validation rules with messages.`},{label:`validate csharp`,insertText:`validate\n ${fenced(`csharp`)}`,documentation:`Imperative validation in C#, yielding the message of every rule the artifact breaks.`},{label:`produces`,insertText:"produces ${1:EventType}\n ${2:property} = ${3:source}",documentation:`Declares the event the command emits, with property mappings.`},{label:`produces when`,insertText:"produces when ${1:condition}\n ${2:EventType}\n ${3:property} = ${4:source}",documentation:`Conditionally emits an event when the condition holds.`},{label:`description`,insertText:'description "${1:what the command asks for}"',documentation:`A human-readable description.`},{label:`concurrency`,insertText:`concurrency
20
20
  \${1|eventSource,sourceType,streamType,streamId,events|}`,documentation:`The scope of the concurrency check made when the command appends events.`},{label:`handler`,insertText:`handler
21
21
  `,documentation:`Fully imperative command implementation — file reference or inline C#, instead of produces.`}],y=[{label:`property`,insertText:"${1:property} ${2:Type}",documentation:`A property of the event — a name and a type reference.`},{label:`description`,insertText:'description "${1:what happened}"',documentation:`Authoring metadata, as one line or a text/markdown fence.`},{label:`documentation`,insertText:"documentation\n ```markdown\n ${1:Details}\n ```",documentation:`Authoring-only Markdown documentation.`},{label:`id`,insertText:'id "${1:OldName}"',documentation:`Preserves a previous persisted event name after a rename. Leave absent for new events.`},{label:`tag`,insertText:"tag ${1:audit}",documentation:`An event-type tag stamped on every occurrence.`}],b=[...y,{label:`for`,insertText:"for ${1:identifier}",documentation:`Explicitly names the command identifier used as the event source.`},{label:`property mapping`,insertText:"${1:property} ${2:Type} = ${3:source}",documentation:`Declares and maps an event property on one line.`}],x=[{label:`when`,insertText:"when ${1:condition}",documentation:`Guards the produced event with a condition.`}],S=[{label:`hint`,insertText:'hint "${1:implementation guidance}"',documentation:`Ordered nonblank guidance for a handler implementation. Not an execution guarantee.`},{label:`file`,insertText:"file ${1:Path}",documentation:`Selects one existing model-relative attachment.`},...[`csharp`,`java`,`typescript`,`react`,`html`,`sql`].map(e=>({label:e,insertText:fenced(e),documentation:`Selects one inline payload. Handler execution remains unsupported.`}))],C=[{label:`implementation`,insertText:`implementation
22
22
  hint "\${1:implementation guidance}"`,documentation:`Handler-only implementation intent with optional file or tagged fence. With no payload it is pending.`},{label:`file`,insertText:"file ${1:Path}",documentation:`Delegates the command implementation to an external C# file.`},{label:`csharp`,insertText:fenced(`csharp`),documentation:`Inline C# returning the events to append.`}],w=[{label:`description`,insertText:'description "${1:what this query is trying to accomplish}"',documentation:`What the query is for, in prose — what a generator or reviewer works from.`},{label:`by`,insertText:"by ${1:param} ${2:Type}",documentation:`Declares the identifying parameter of the query.`},{label:`by parts`,insertText:"by\n ${1:part} ${2:Type}\n ${3:part} ${4:Type}",documentation:`Declares a composite lookup. Supply every key part for a single instance.`},{label:`filter`,insertText:"filter ${1:param} ${2:Type} optional",documentation:`Declares an optional filter parameter supplied by the caller.`},{label:`filter from context`,insertText:"filter ${1:param} ${2:Type} from $context.${3|tenant,causedBy.subject,occurred|}",documentation:`Declares a parameter filled from the query context instead of the caller.`},{label:`authorize`,insertText:"authorize ${1:PolicyName}",documentation:`References the policies that must pass for the query to execute.`},{label:`performer`,insertText:`performer
23
- `,documentation:`The code that performs the query — a file reference or an inline csharp/sql block.`}],T=[{label:`file`,insertText:"file ${1:Path}",documentation:`Delegates the query implementation to an external file.`},{label:`csharp`,insertText:fenced(`csharp`),documentation:`Inline C# returning the query result, with the QueryContext in scope as context.`},{label:`sql`,insertText:fenced(`sql`),documentation:`Inline SQL returning the query result.`}],E=[{label:`description`,insertText:'description "${1:invariant intent}"',documentation:`Report-only description, distinct from the violation message.`},{label:`unique`,insertText:"unique ${1:property} on ${2:EventType}",documentation:`Enforces a unique property value across an event type.`},{label:`unique event`,insertText:"unique event ${1:EventType}",documentation:`Enforces that the event type occurs at most once per event source.`},{label:`file`,insertText:"file ${1:Path}",documentation:`Delegates the constraint to a custom C# implementation.`}],D=[t,{label:`from`,insertText:"from ${1:Source.Stream}",documentation:`Observe matching routed facts only, without filtering stream ids. ESM v10.`},{label:`runs as system`,insertText:`runs as system`,documentation:`Authenticated system identity with no roles for returned commands. Admitted by released ESM v10; claims are unknown.`},{label:`runs as system role`,insertText:'runs as system role "${1:Role}"',documentation:`Exact system roles for every returned or invoked command, not imperative pipeline calls. Admitted by released ESM v10; claims are unknown.`},{label:`description`,insertText:'description "${1:what this reaction does}"',documentation:`What the reaction does — a complete statement of intent before any code exists.`},{label:`when`,insertText:"when ${1:Trigger}",documentation:`An event, a declared trigger or a host signal that sets the reaction off. A trigger needs no body.`},{label:`every`,insertText:"every ${1:15} ${2|seconds,minutes,hours,days|}",documentation:`Runs the reaction on an interval.`},{label:`at`,insertText:"at ${1:08:00}",documentation:"Runs the reaction at a time of day — every day unless narrowed with `on <Weekday>` or `on day <n>`."},{label:`where`,insertText:"where ${1:condition}",documentation:`Narrows which occurrences actually run the reaction.`}],O=[{label:`reads`,insertText:"reads ${1:View}",documentation:"The view this trigger consults. Optionally use `as <alias> by <trigger value>`; clock triggers take no values and cannot use `by`."},{label:`description`,insertText:'description "${1:what this reaction does}"',documentation:`What this particular reaction does — enough on its own, with no file to point at.`},{label:`produces`,insertText:"produces ${1:EventType}",documentation:`An event the reaction appends.`},{label:`invokes`,insertText:"invokes ${1:Command}",documentation:`A command the reaction hands on. A command is asked for, not produced — it may still be rejected.`},{label:`file`,insertText:"file ${1:Path}",documentation:`Delegates the reaction to an external C# file.`},{label:`csharp`,insertText:fenced(`csharp`),documentation:`Inline C# returning event side effects.`}],k=`Executable from ESM v19. The first matching branch handles the refusal and stops remaining invocations of this trigger; other reactions and cascades continue.`,A=[{label:`on refused`,insertText:`on refused
23
+ `,documentation:`The code that performs the query — a file reference or an inline csharp/sql block.`}],T=[{label:`file`,insertText:"file ${1:Path}",documentation:`Delegates the query implementation to an external file.`},{label:`csharp`,insertText:fenced(`csharp`),documentation:`Inline C# returning the query result, with the QueryContext in scope as context.`},{label:`sql`,insertText:fenced(`sql`),documentation:`Inline SQL returning the query result.`}],E=[{label:`description`,insertText:'description "${1:invariant intent}"',documentation:`Report-only description, distinct from the violation message.`},{label:`unique`,insertText:"unique ${1:property} on ${2:EventType}",documentation:`Enforces a unique property value across an event type.`},{label:`unique event`,insertText:"unique event ${1:EventType}",documentation:`Enforces that the event type occurs at most once per event source.`},{label:`file`,insertText:"file ${1:Path}",documentation:`Delegates the constraint to a custom C# implementation.`}],D=[e,{label:`from`,insertText:"from ${1:Source.Stream}",documentation:`Observe matching routed facts only, without filtering stream ids. ESM v10.`},{label:`runs as system`,insertText:`runs as system`,documentation:`Authenticated system identity with no roles for returned commands. Admitted by released ESM v10; claims are unknown.`},{label:`runs as system role`,insertText:'runs as system role "${1:Role}"',documentation:`Exact system roles for every returned or invoked command, not imperative pipeline calls. Admitted by released ESM v10; claims are unknown.`},{label:`description`,insertText:'description "${1:what this reaction does}"',documentation:`What the reaction does — a complete statement of intent before any code exists.`},{label:`when`,insertText:"when ${1:Trigger}",documentation:`An event, a declared trigger or a host signal that sets the reaction off. A trigger needs no body.`},{label:`every`,insertText:"every ${1:15} ${2|seconds,minutes,hours,days|}",documentation:`Runs the reaction on an interval.`},{label:`at`,insertText:"at ${1:08:00}",documentation:"Runs the reaction at a time of day — every day unless narrowed with `on <Weekday>` or `on day <n>`."},{label:`where`,insertText:"where ${1:condition}",documentation:`Narrows which occurrences actually run the reaction.`}],O=[{label:`reads`,insertText:"reads ${1:View}",documentation:"The view this trigger consults. Optionally use `as <alias> by <trigger value>`; clock triggers take no values and cannot use `by`."},{label:`description`,insertText:'description "${1:what this reaction does}"',documentation:`What this particular reaction does — enough on its own, with no file to point at.`},{label:`produces`,insertText:"produces ${1:EventType}",documentation:`An event the reaction appends.`},{label:`invokes`,insertText:"invokes ${1:Command}",documentation:`A command the reaction hands on. A command is asked for, not produced — it may still be rejected.`},{label:`file`,insertText:"file ${1:Path}",documentation:`Delegates the reaction to an external C# file.`},{label:`csharp`,insertText:fenced(`csharp`),documentation:`Inline C# returning event side effects.`}],k=`Executable from ESM v19. The first matching branch handles the refusal and stops remaining invocations of this trigger; other reactions and cascades continue.`,A=[{label:`on refused`,insertText:`on refused
24
24
  acknowledge`,documentation:`Handles validation and constraint refusals, not authorization. ${k}`},{label:`on refused by validation`,insertText:`on refused by validation
25
25
  acknowledge`,documentation:`Handles error-severity property, concept and require refusals. ${k}`},{label:`on refused by constraint`,insertText:`on refused by constraint \${1:Name}
26
26
  acknowledge`,documentation:`Handles a named constraint refusal; omit the name for any constraint. ${k}`},{label:`on refused by authorization`,insertText:`on refused by authorization
@@ -32,5 +32,5 @@ then error`,documentation:`Asserts a Validation rejection of one query, with no
32
32
  hint "\${1:predicate guidance}"`,documentation:`Command named-rule intent with optional file or tagged fence. Pending intent cannot bind.`},...F.filter(e=>e.label!==`hint`)],L=[{label:`file`,insertText:"file ${1:Path}",documentation:`Gives the named predicate its implementation in an external C# file.`},{label:`csharp`,insertText:fenced(`csharp`),documentation:`Gives the named predicate its implementation as inline C# returning a bool.`}],R=[{label:`description`,insertText:'description "${1:authorization intent}"',documentation:`Report-only description; does not supply an implementation.`},{label:`require authenticated`,insertText:`require authenticated`,documentation:`Requires an authenticated caller.`},{label:`require anonymous`,insertText:`require anonymous`,documentation:`Admits every caller, including one without an identity. Stands alone, and must be the only gate on the commands and queries it authorizes.`},{label:`require role`,insertText:'require role "${1:role}"',documentation:`Requires the caller to have a role.`},{label:`require not role`,insertText:'require not role "${1:role}"',documentation:`Excludes callers with a role. Add authenticated to require a signed-in caller.`},{label:`require not claim`,insertText:'require not claim "${1:claim}" matches ${2:subject}',documentation:`Requires that no claim value matches the subject or a value.`},{label:`require claim`,insertText:'require claim "${1:claim}" matches ${2:subject}',documentation:`Requires a claim to match the subject or a value.`},{label:`csharp`,insertText:fenced(`csharp`),documentation:`Fully custom policy logic in C#, returning a bool.`}],z=[{label:`file`,insertText:"file ${1:Validations/Check.cs}",documentation:`An imperative validation body from a file relative to the model root, as an alternative to a code fence.`},{label:`not empty`,insertText:'${1:property} not empty message "${2:message}"',documentation:`Text needs a non-whitespace character; null, empty and whitespace-only text fail. Uses Unicode White_Space (.NET char.IsWhiteSpace), including U+0085 but not U+FEFF, not JavaScript trim(). Collections need at least one element. Applies to concept and command rules in every ESM version; no trimming. Identity text is unchanged.`},{label:`max`,insertText:'${1:property} max ${2:500} message "${3:message}"',documentation:`Maximum length or value.`},{label:`min`,insertText:'${1:property} min ${2:1} message "${3:message}"',documentation:`Minimum length or value.`},{label:`contains`,insertText:'${1:property} contains "${2:text}"',documentation:`Literal ordinal UTF-16 substring comparison on scalar text.`},{label:`not contains`,insertText:'${1:property} not contains "${2:text}"',documentation:`Rejects text containing the literal operand, compared ordinally.`},{label:`decimals <=`,insertText:'${1:property} decimals <= ${2:2} message "${3:message}"',documentation:`At most this many decimal places (0 to 28) on a Decimal value; trailing zeros do not count.`},{label:`starts with`,insertText:'${1:property} starts with "${2:text}"',documentation:`Literal ordinal UTF-16 prefix comparison on scalar text.`},{label:`ends with`,insertText:'${1:property} ends with "${2:text}"',documentation:`Literal ordinal UTF-16 suffix comparison on scalar text.`},{label:`matches`,insertText:'${1:property} matches "${2:pattern}" message "${3:message}"',documentation:`Searches text using the portable flagless JavaScript match dialect. Use ^ and $ for the whole input. Exact legacy Studio text-rule lookarounds warn with PLAY0787 and lower to ordinal rules; other lookarounds and backreferences report PLAY0699. Named email rejects JavaScript whitespace, including U+00A0.`},{label:`rule`,insertText:'${1:property} rule ${2:PredicateName} message "${3:message}"',documentation:"Names a predicate — optionally followed by an indented `file` reference or inline `csharp` block giving it a body; bare, it just states that a constraint exists."},{label:`==`,insertText:'${1:property} == ${2:value} message "${3:message}"',documentation:`The property must equal the value.`},{label:`!=`,insertText:'${1:property} != ${2:value} message "${3:message}"',documentation:`The property must not equal the value.`},{label:`length ==`,insertText:'${1:property} length == ${2:3} message "${3:message}"',documentation:`The property must have an exact length.`},{label:`all >`,insertText:'${1:collection}.${2:property} all > ${3:0} message "${4:message}"',documentation:`Every element of a collection must satisfy the comparison.`}],B=[{label:`description`,insertText:'description "${1:screen intent}"',documentation:`Report-only description, not a localizable screen title.`},{label:`data`,insertText:"data ${1:ReadModel} via query ${2:QueryName}",documentation:`Binds a read model to the screen through a query.`},{label:`action`,insertText:"action ${1:CommandName} for ${2|item,screen|}",documentation:`Makes a command available for the selected item or for the screen as a whole.`},{label:`action "…"`,insertText:'action "${1:Label}" for item\n when item.${2:status} == "${3:open}" execute ${4:CommandName}\n otherwise hidden',documentation:`One labeled button selecting the first matching command; hidden without a subject or match.`},{label:`layout`,insertText:"layout ${1:LayoutName}",documentation:`Uses a layout template and fills its slots.`},{label:`section`,insertText:"section ${1:name}",documentation:`A named structural section of the screen.`},{label:`table`,insertText:'table ${1:name}\n column ${2:property} label "${3:text}"',documentation:`A table widget over a read model or collection.`},{label:`summary`,insertText:'summary ${1:ReadModel}\n field ${2:property} label "${3:text}"',documentation:`A summary widget showing labeled fields.`},{label:`title`,insertText:'title "${1:text}"',documentation:`The title of the screen or section.`},{label:`file`,insertText:"file ${1:Path}",documentation:`Full external implementation — Stage uses the referenced file.`},{label:`react`,insertText:fenced(`react`),documentation:`Inline React/TSX component receiving the data contract as Props.`},{label:`typescript`,insertText:fenced(`typescript`),documentation:`Inline plain TypeScript.`},{label:`html`,insertText:fenced(`html`),documentation:`Inline static HTML.`}],V=[{label:`for item`,insertText:`for item`,documentation:`Requires one nearest data subject (a record or selected collection item). Binds compatible same-name inputs, then a unique nominal identifier/key match.`},{label:`for screen`,insertText:`for screen`,documentation:`The action is screen-scoped; plain and toolbar actions do not fill inputs from selected rows.`}],H=V.map(e=>({...e,label:e.label.slice(4),insertText:e.insertText.slice(4)})),U=[{label:`with … from`,insertText:"with ${1:property} from item.${2:property}",documentation:`Explicit input binding, before compatible same-name and declared identifier/key bindings.`},{label:`navigate to`,insertText:"navigate to ${1:ScreenName}",documentation:`Navigates to a screen after the action completes.`},{label:`label`,insertText:'label "${1:text}"',documentation:`The display label of the action.`}],W=[{label:`when … execute`,insertText:'when item.${1:status} == "${2:open}" execute ${3:CommandName}',documentation:`First matching alternative selects the command; authorization never falls through.`},{label:`otherwise hidden`,insertText:`otherwise hidden`,documentation:`Hides the action when no alternative matches; also the default.`},{label:`otherwise execute`,insertText:"otherwise execute ${1:CommandName}",documentation:`Selects a fallback command when no alternative matches and a subject exists.`},...U.filter(e=>e.label!==`label`&&e.label!==`with … from`)],G=[{label:`execute`,insertText:"execute ${1:CommandName}",documentation:`Executes a command; denial never selects another alternative.`},{label:`navigate to`,insertText:"navigate to ${1:ScreenName}",documentation:`Navigates to the named screen.`},{label:`open dialog`,insertText:"open dialog ${1:DialogTemplate}",documentation:`Opens a dialog.`},{label:`notify`,insertText:'notify info "${1:Message}"',documentation:`Displays a message.`},{label:`confirm`,insertText:`confirm "\${1:Message}"
33
33
  on success
34
34
  execute \${2:CommandName}`,documentation:`Asks before continuing.`},{label:`refresh`,insertText:"refresh ${1:QueryName}",documentation:`Refreshes a query-backed element.`}],K=[{label:`when …`,insertText:'when item.${1:status} == "${2:open}"\n execute ${3:CommandName}',documentation:`Selects a whole action list once against the rendered subject at gesture time.`},{label:`otherwise`,insertText:`otherwise
35
- notify info "\${1:Message}"`,documentation:`Final fallback list; without a subject nothing runs, including fallback.`},...G],q=[{label:`with … from`,insertText:"with ${1:property} from item.${2:property}",documentation:`Explicit input binding for this command alternative, before compatible same-name fields, a unique nominal identifier/key match, or its form.`}],J=[{label:`column`,insertText:'column ${1:property} label "${2:text}"',documentation:`A column bound to a property.`},{label:`on row-click`,insertText:"on row-click navigate to ${1:ScreenName} by ${2:param}",documentation:`Navigates when a row is clicked.`}],Y=[...e.map(e=>({label:`$identity.${e}${e===`claims`?`.`:``}`,insertText:`$identity.${e}${e===`claims`?".${1:name}":``}`,documentation:`The caller's ${e}, equivalent to $context.identity.${e}.`})),{label:`$context.occurred`,insertText:`$context.occurred`,documentation:`When the command or query was received.`},{label:`$context.tenant`,insertText:`$context.tenant`,documentation:`The tenant the command or query is executing for.`},{label:`$context.command.`,insertText:"$context.command.${1:property}",documentation:`A property of the command being handled.`},{label:`$context.arguments.`,insertText:"$context.arguments.${1:name}",documentation:`An argument of the query being performed.`},{label:`$context.causedBy.subject`,insertText:`$context.causedBy.subject`,documentation:`Subject of the identity that caused the command or query.`},{label:`$context.causedBy.name`,insertText:`$context.causedBy.name`,documentation:`Display name of the identity that caused the command or query.`},{label:`$context.causedBy.userName`,insertText:`$context.causedBy.userName`,documentation:`User name of the identity that caused the command or query.`},{label:`$context.causation.type`,insertText:`$context.causation.type`,documentation:`What caused this — a command, a reactor, a schedule.`},{label:`$context.identity.id`,insertText:`$context.identity.id`,documentation:`The identifier of the caller from the auth token.`},{label:`$context.identity.name`,insertText:`$context.identity.name`,documentation:`The display name of the caller.`},{label:`$context.identity.userName`,insertText:`$context.identity.userName`,documentation:`The user name of the caller.`},{label:`$context.identity.isAuthenticated`,insertText:`$context.identity.isAuthenticated`,documentation:`Whether the caller is authenticated.`},{label:`$context.identity.roles`,insertText:`$context.identity.roles`,documentation:`The roles the caller holds.`},{label:`$context.identity.claims.`,insertText:"$context.identity.claims.${1:name}",documentation:`The value of a claim the caller carries.`},{label:`$env.`,insertText:"$env.${1:VAR_NAME}",documentation:`An environment variable.`},...r.filter(e=>e.name!==`value`).map(e=>({label:`$eventContext.${e.path}`,insertText:`$eventContext.${e.path}`,documentation:`${e.description} (PDL)`}))],X={StateChange:[`operation`,`file`,`description`,`event`,`event generation`,`command`,`constraint`,`screen`,`specification`],StateView:[`file`,`description`,`readmodel`,`query`,`query observable`,`projection`,`reducer`,`screen`,`specification`,`event`,`event generation`],Automation:[`operation`,`file`,`description`,`reaction`,`reducer`,`command`,`event`,`event generation`,`readmodel`,`specification`],Translate:[`file`,`description`,`capture`,`event`,`event generation`,`specification`]};function sliceItemsFor(e){let t=e?X[e]:void 0;return t?_.filter(n=>n.label===`purpose`||n.label===`example`||n.label===`documentation`||n.label===`public event`||n.label===`event from`||n.label===`direction`&&e===`Translate`||t.includes(n.label)):_}export{q as actionArgumentItems,U as actionItems,V as actionSubjectItems,H as actionSubjectValueItems,s as applicationContextItems,v as commandItems,I as commandRuleItems,h as conceptItems,E as constraintItems,contextVariableEntries,Y as contextVariableItems,y as eventItems,W as guardedActionItems,C as handlerItems,o as identityItems,S as implementationItems,b as inlineEventItems,G as interactionActionItems,K as interactionChoiceItems,A as invocationItems,F as namedRuleImplementationItems,p as operationImplementationItems,f as operationItems,m as operationPhaseItems,a as optionalTypeItems,T as performerItems,R as policyItems,x as producesItems,w as queryItems,D as reactionItems,O as reactionTriggerItems,j as refusalItems,L as ruleItems,B as screenItems,_ as sliceItems,sliceItemsFor,N as specificationItems,P as specificationStepItems,u as stateItems,l as stateMachineItems,J as tableItems,c as topLevelItems,M as triggerItems,g as typeItems,z as validateItems,d as workflowItems};
35
+ notify info "\${1:Message}"`,documentation:`Final fallback list; without a subject nothing runs, including fallback.`},...G],q=[{label:`with … from`,insertText:"with ${1:property} from item.${2:property}",documentation:`Explicit input binding for this command alternative, before compatible same-name fields, a unique nominal identifier/key match, or its form.`}],J=[{label:`column`,insertText:'column ${1:property} label "${2:text}"',documentation:`A column bound to a property.`},{label:`on row-click`,insertText:"on row-click navigate to ${1:ScreenName} by ${2:param}",documentation:`Navigates when a row is clicked.`}],Y=[...r.map(e=>({label:`$identity.${e}${e===`claims`?`.`:``}`,insertText:`$identity.${e}${e===`claims`?".${1:name}":``}`,documentation:`The caller's ${e}, equivalent to $context.identity.${e}.`})),{label:`$context.occurred`,insertText:`$context.occurred`,documentation:`When the command or query was received.`},{label:`$context.tenant`,insertText:`$context.tenant`,documentation:`The tenant the command or query is executing for.`},{label:`$context.command.`,insertText:"$context.command.${1:property}",documentation:`A property of the command being handled.`},{label:`$context.arguments.`,insertText:"$context.arguments.${1:name}",documentation:`An argument of the query being performed.`},{label:`$context.causedBy.subject`,insertText:`$context.causedBy.subject`,documentation:`Subject of the identity that caused the command or query.`},{label:`$context.causedBy.name`,insertText:`$context.causedBy.name`,documentation:`Display name of the identity that caused the command or query.`},{label:`$context.causedBy.userName`,insertText:`$context.causedBy.userName`,documentation:`User name of the identity that caused the command or query.`},{label:`$context.causation.type`,insertText:`$context.causation.type`,documentation:`What caused this — a command, a reactor, a schedule.`},{label:`$context.identity.id`,insertText:`$context.identity.id`,documentation:`The identifier of the caller from the auth token.`},{label:`$context.identity.name`,insertText:`$context.identity.name`,documentation:`The display name of the caller.`},{label:`$context.identity.userName`,insertText:`$context.identity.userName`,documentation:`The user name of the caller.`},{label:`$context.identity.isAuthenticated`,insertText:`$context.identity.isAuthenticated`,documentation:`Whether the caller is authenticated.`},{label:`$context.identity.roles`,insertText:`$context.identity.roles`,documentation:`The roles the caller holds.`},{label:`$context.identity.claims.`,insertText:"$context.identity.claims.${1:name}",documentation:`The value of a claim the caller carries.`},{label:`$env.`,insertText:"$env.${1:VAR_NAME}",documentation:`An environment variable.`},...n.filter(e=>e.name!==`value`).map(e=>({label:`$eventContext.${e.path}`,insertText:`$eventContext.${e.path}`,documentation:`${e.description} (PDL)`}))],X={StateChange:[`operation`,`file`,`description`,`event`,`event generation`,`command`,`constraint`,`screen`,`specification`],StateView:[`file`,`description`,`readmodel`,`query`,`query observable`,`projection`,`reducer`,`screen`,`specification`,`event`,`event generation`],Automation:[`operation`,`file`,`description`,`reaction`,`reducer`,`command`,`event`,`event generation`,`readmodel`,`specification`],Translate:[`file`,`description`,`capture`,`event`,`event generation`,`specification`]};function sliceItemsFor(e){let t=e?X[e]:void 0;return t?_.filter(n=>n.label===`purpose`||n.label===`example`||n.label===`documentation`||n.label===`public event`||n.label===`event from`||n.label===`direction`&&e===`Translate`||t.includes(n.label)):_}export{q as actionArgumentItems,U as actionItems,V as actionSubjectItems,H as actionSubjectValueItems,s as applicationContextItems,v as commandItems,I as commandRuleItems,h as conceptItems,E as constraintItems,contextVariableEntries,Y as contextVariableItems,y as eventItems,W as guardedActionItems,C as handlerItems,o as identityItems,S as implementationItems,b as inlineEventItems,G as interactionActionItems,K as interactionChoiceItems,A as invocationItems,F as namedRuleImplementationItems,p as operationImplementationItems,f as operationItems,m as operationPhaseItems,a as optionalTypeItems,T as performerItems,R as policyItems,x as producesItems,w as queryItems,D as reactionItems,O as reactionTriggerItems,j as refusalItems,L as ruleItems,B as screenItems,_ as sliceItems,sliceItemsFor,N as specificationItems,P as specificationStepItems,u as stateItems,l as stateMachineItems,J as tableItems,c as topLevelItems,M as triggerItems,g as typeItems,z as validateItems,d as workflowItems};
36
36
  //# sourceMappingURL=completion-items.js.map