@cratis/screenplay-language 4.51.0 → 4.53.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/TypeReferenceSymbol.d.ts +8 -0
- package/dist/TypeReferenceSymbol.d.ts.map +1 -0
- package/dist/bundles/chunk-7WJEZ72S.js +4463 -0
- package/dist/bundles/chunk-7WJEZ72S.js.map +7 -0
- package/dist/bundles/index.js +1410 -0
- package/dist/bundles/index.js.map +7 -0
- package/dist/bundles/sub-languages/capture/index.js +677 -0
- package/dist/bundles/sub-languages/capture/index.js.map +7 -0
- package/dist/bundles/sub-languages/projection/index.js +1647 -0
- package/dist/bundles/sub-languages/projection/index.js.map +7 -0
- package/dist/code-actions.d.ts +3 -0
- package/dist/code-actions.d.ts.map +1 -0
- package/dist/completion-items.d.ts +1 -0
- package/dist/completion-items.d.ts.map +1 -1
- package/dist/completion-planner.d.ts.map +1 -1
- package/dist/completions.d.ts.map +1 -1
- package/dist/diagnostic-codes.d.ts +3 -0
- package/dist/diagnostic-codes.d.ts.map +1 -1
- package/dist/diagnostics.d.ts.map +1 -1
- package/dist/hover-content.d.ts.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/keyword-docs.d.ts.map +1 -1
- package/dist/language.d.ts +1 -0
- package/dist/language.d.ts.map +1 -1
- package/dist/production-destinations.d.ts.map +1 -1
- package/dist/symbols.d.ts +4 -0
- package/dist/symbols.d.ts.map +1 -1
- package/dist/tokens.d.ts.map +1 -1
- package/dist/validation.d.ts +1 -0
- package/dist/validation.d.ts.map +1 -1
- package/package.json +13 -9
- package/DestinationHint.ts +0 -8
- package/ProductionSymbol.ts +0 -11
- package/completion-items.ts +0 -261
- package/completion-planner.ts +0 -167
- package/completions.ts +0 -156
- package/diagnostic-codes.ts +0 -43
- package/diagnostics.ts +0 -55
- package/dist/DestinationHint.js +0 -4
- package/dist/DestinationHint.js.map +0 -1
- package/dist/ProductionSymbol.js +0 -4
- package/dist/ProductionSymbol.js.map +0 -1
- package/dist/completion-items.js +0 -228
- package/dist/completion-items.js.map +0 -1
- package/dist/completion-planner.js +0 -143
- package/dist/completion-planner.js.map +0 -1
- package/dist/completions.js +0 -101
- package/dist/completions.js.map +0 -1
- package/dist/diagnostic-codes.js +0 -41
- package/dist/diagnostic-codes.js.map +0 -1
- package/dist/diagnostics.js +0 -50
- package/dist/diagnostics.js.map +0 -1
- package/dist/document-context.js +0 -85
- package/dist/document-context.js.map +0 -1
- package/dist/event-analysis-source.js +0 -19
- package/dist/event-analysis-source.js.map +0 -1
- package/dist/event-context-catalog.js +0 -116
- package/dist/event-context-catalog.js.map +0 -1
- package/dist/event-context.js +0 -88
- package/dist/event-context.js.map +0 -1
- package/dist/file-imports.js +0 -58
- package/dist/file-imports.js.map +0 -1
- package/dist/file-references.js +0 -70
- package/dist/file-references.js.map +0 -1
- package/dist/hover-content.js +0 -98
- package/dist/hover-content.js.map +0 -1
- package/dist/hover.js +0 -15
- package/dist/hover.js.map +0 -1
- package/dist/index.js +0 -61
- package/dist/index.js.map +0 -1
- package/dist/inlay-hints.js +0 -15
- package/dist/inlay-hints.js.map +0 -1
- package/dist/inline-event-validation.js +0 -131
- package/dist/inline-event-validation.js.map +0 -1
- package/dist/keyword-docs.js +0 -148
- package/dist/keyword-docs.js.map +0 -1
- package/dist/language.js +0 -196
- package/dist/language.js.map +0 -1
- package/dist/production-destinations.js +0 -32
- package/dist/production-destinations.js.map +0 -1
- package/dist/sub-language-registry.js +0 -18
- package/dist/sub-language-registry.js.map +0 -1
- package/dist/sub-languages/capture/CompletionProvider.js +0 -332
- package/dist/sub-languages/capture/CompletionProvider.js.map +0 -1
- package/dist/sub-languages/capture/HoverProvider.js +0 -87
- package/dist/sub-languages/capture/HoverProvider.js.map +0 -1
- package/dist/sub-languages/capture/Validator.js +0 -72
- package/dist/sub-languages/capture/Validator.js.map +0 -1
- package/dist/sub-languages/capture/index.js +0 -58
- package/dist/sub-languages/capture/index.js.map +0 -1
- package/dist/sub-languages/capture/language.js +0 -160
- package/dist/sub-languages/capture/language.js.map +0 -1
- package/dist/sub-languages/cdl.js +0 -74
- package/dist/sub-languages/cdl.js.map +0 -1
- package/dist/sub-languages/pdl.js +0 -73
- package/dist/sub-languages/pdl.js.map +0 -1
- package/dist/sub-languages/projection/CodeActionProvider.js +0 -93
- package/dist/sub-languages/projection/CodeActionProvider.js.map +0 -1
- package/dist/sub-languages/projection/CompletionProvider.js +0 -595
- package/dist/sub-languages/projection/CompletionProvider.js.map +0 -1
- package/dist/sub-languages/projection/HoverProvider.js +0 -333
- package/dist/sub-languages/projection/HoverProvider.js.map +0 -1
- package/dist/sub-languages/projection/Validator.js +0 -388
- package/dist/sub-languages/projection/Validator.js.map +0 -1
- package/dist/sub-languages/projection/index.js +0 -160
- package/dist/sub-languages/projection/index.js.map +0 -1
- package/dist/sub-languages/projection/language.js +0 -171
- package/dist/sub-languages/projection/language.js.map +0 -1
- package/dist/symbols.js +0 -275
- package/dist/symbols.js.map +0 -1
- package/dist/themes/screenplay-dark.js +0 -30
- package/dist/themes/screenplay-dark.js.map +0 -1
- package/dist/themes/screenplay-light.js +0 -30
- package/dist/themes/screenplay-light.js.map +0 -1
- package/dist/tokens.js +0 -147
- package/dist/tokens.js.map +0 -1
- package/dist/validation.js +0 -248
- package/dist/validation.js.map +0 -1
- package/document-context.ts +0 -93
- package/event-analysis-source.ts +0 -18
- package/event-context-catalog.ts +0 -135
- package/event-context.ts +0 -119
- package/file-imports.ts +0 -70
- package/file-references.ts +0 -87
- package/for_documentContext/when_stripping_comments.ts +0 -32
- package/for_eventContext/when_resolving_generated_catalog_vectors.ts +0 -15
- package/for_eventGenerations/when_editing_event_generations.ts +0 -57
- package/for_fileImports/when_finding_file_imports.ts +0 -38
- package/for_fileReferences/when_recognizing_an_absolute_path/with_paths_of_every_shape.ts +0 -26
- package/for_fileReferences/when_scanning_a_document/inside_a_code_fence.ts +0 -26
- package/for_fileReferences/when_scanning_a_document/with_a_bare_file_keyword.ts +0 -19
- package/for_fileReferences/when_scanning_a_document/with_a_file_directive.ts +0 -30
- package/for_fileReferences/when_scanning_a_document/with_a_property_named_file.ts +0 -25
- package/for_fileReferences/when_scanning_a_document/with_a_trailing_comment.ts +0 -25
- package/for_fileReferences/when_scanning_a_document/with_directives_on_several_constructs.ts +0 -41
- package/for_importablePaths/when_listing_what_a_document_can_import.ts +0 -34
- package/for_inlineEvents/when_analyzing_many_inline_events.ts +0 -59
- package/for_inlineEvents/when_authoring_inline_events.ts +0 -149
- package/for_inlineEvents/when_completing_many_events.ts +0 -49
- package/for_inlineEvents/when_indexing_command_production_ownership.ts +0 -79
- package/for_planCompletions/when_completing_a_file_import.ts +0 -26
- package/for_planCompletions/when_completing_a_specification_query.ts +0 -24
- package/for_planCompletions/when_completing_a_specification_step.ts +0 -42
- package/for_planCompletions/when_completing_an_absent_read_model.ts +0 -14
- package/for_planCompletions/when_completing_reaction_reads.ts +0 -36
- package/for_projectionCompletionProvider/when_completing_an_event_context_path.ts +0 -102
- package/for_projectionHoverProvider/when_hovering_an_event_context_path.ts +0 -44
- package/for_projectionValidator/when_validating_a_projection_with_variants.ts +0 -128
- package/for_projectionValidator/when_validating_event_context_paths.ts +0 -31
- package/for_scanDocument/when_scanning_a_query/with_a_dotted_return_type.ts +0 -34
- package/for_scanDocument/when_scanning_aliased_reads.ts +0 -33
- package/for_scanDocument/when_scanning_many_commands.ts +0 -47
- package/for_tokens/when_highlighting_a_file_import.ts +0 -18
- package/for_tokens/when_highlighting_event_metadata.ts +0 -63
- package/for_tokens/when_highlighting_specification_steps.ts +0 -28
- package/for_validateLines/when_validating_a_document/with_a_problem_of_every_coded_kind.ts +0 -77
- package/for_validateLines/when_validating_a_document/with_an_unknown_policy.ts +0 -33
- package/for_validateLines/when_validating_a_file_placed_by_an_import/with_names_declared_in_other_files.ts +0 -43
- package/for_validateLines/when_validating_event_context_paths/in_a_projection.ts +0 -97
- package/for_validateLines/when_validating_file_imports/at_every_level.ts +0 -36
- package/for_validateLines/when_validating_production_destinations/with_an_available_identifier.ts +0 -120
- package/hover-content.ts +0 -117
- package/hover.ts +0 -23
- package/index.ts +0 -125
- package/inlay-hints.ts +0 -17
- package/inline-event-validation.ts +0 -115
- package/keyword-docs.ts +0 -152
- package/language.ts +0 -212
- package/production-destinations.ts +0 -32
- package/sub-language-registry.ts +0 -42
- package/sub-languages/capture/CompletionProvider.ts +0 -365
- package/sub-languages/capture/HoverProvider.ts +0 -99
- package/sub-languages/capture/Validator.ts +0 -97
- package/sub-languages/capture/index.ts +0 -72
- package/sub-languages/capture/language.ts +0 -176
- package/sub-languages/cdl.ts +0 -76
- package/sub-languages/pdl.ts +0 -75
- package/sub-languages/projection/CodeActionProvider.ts +0 -123
- package/sub-languages/projection/CompletionProvider.ts +0 -660
- package/sub-languages/projection/HoverProvider.ts +0 -377
- package/sub-languages/projection/Validator.ts +0 -441
- package/sub-languages/projection/index.ts +0 -223
- package/sub-languages/projection/language.ts +0 -193
- package/symbols.ts +0 -374
- package/themes/screenplay-dark.ts +0 -33
- package/themes/screenplay-light.ts +0 -33
- package/tokens.ts +0 -174
- package/validation.ts +0 -443
- package/vitest.setup.ts +0 -5
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
// Copyright (c) Cratis. All rights reserved.
|
|
2
|
-
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
3
|
-
export class CodeActionProvider {
|
|
4
|
-
readModels = [];
|
|
5
|
-
draftReadModel = null;
|
|
6
|
-
onCreateReadModel;
|
|
7
|
-
onEditReadModel;
|
|
8
|
-
setReadModels(readModels) {
|
|
9
|
-
this.readModels = readModels;
|
|
10
|
-
}
|
|
11
|
-
setDraftReadModel(draft) {
|
|
12
|
-
this.draftReadModel = draft;
|
|
13
|
-
}
|
|
14
|
-
// Keep for backwards compatibility
|
|
15
|
-
setReadModelSchemas(schemas) {
|
|
16
|
-
this.readModels = schemas.map(schema => ({
|
|
17
|
-
identifier: schema.title || schema.name || '',
|
|
18
|
-
displayName: schema.title || schema.name || '',
|
|
19
|
-
schema
|
|
20
|
-
}));
|
|
21
|
-
}
|
|
22
|
-
setCreateReadModelCallback(callback) {
|
|
23
|
-
this.onCreateReadModel = callback;
|
|
24
|
-
}
|
|
25
|
-
setEditReadModelCallback(callback) {
|
|
26
|
-
this.onEditReadModel = callback;
|
|
27
|
-
}
|
|
28
|
-
invokeCreateReadModel(readModelName) {
|
|
29
|
-
this.onCreateReadModel?.(readModelName);
|
|
30
|
-
}
|
|
31
|
-
invokeEditReadModel(readModelName, currentSchema) {
|
|
32
|
-
this.onEditReadModel?.(readModelName, currentSchema);
|
|
33
|
-
}
|
|
34
|
-
provideCodeActions(_model, _range, context) {
|
|
35
|
-
const actions = [];
|
|
36
|
-
// Check for diagnostics about undefined read models (errors)
|
|
37
|
-
const notFoundDiagnostics = context.markers.filter((marker) => marker.message.includes("Read model") && marker.message.includes("not found"));
|
|
38
|
-
// Check for diagnostics about draft read models (info markers)
|
|
39
|
-
const draftDiagnostics = context.markers.filter((marker) => marker.message.includes("Read model") && marker.message.includes("is a draft"));
|
|
40
|
-
// Handle "not found" errors - offer to create
|
|
41
|
-
for (const diagnostic of notFoundDiagnostics) {
|
|
42
|
-
const match = diagnostic.message.match(/Read model ['"]([\w.]+)['"]/);
|
|
43
|
-
if (match && match[1]) {
|
|
44
|
-
const readModelName = match[1];
|
|
45
|
-
// Check if this read model already exists as a persisted read model
|
|
46
|
-
const existsAsPersisted = this.readModels.some(rm => rm.identifier === readModelName || rm.displayName === readModelName);
|
|
47
|
-
if (!existsAsPersisted && this.onCreateReadModel) {
|
|
48
|
-
actions.push({
|
|
49
|
-
title: `Create read model '${readModelName}'`,
|
|
50
|
-
diagnostics: [diagnostic],
|
|
51
|
-
kind: 'quickfix',
|
|
52
|
-
edit: undefined,
|
|
53
|
-
isPreferred: true,
|
|
54
|
-
command: {
|
|
55
|
-
id: 'pdl.createReadModel',
|
|
56
|
-
title: `Create ${readModelName}`,
|
|
57
|
-
arguments: [readModelName]
|
|
58
|
-
}
|
|
59
|
-
});
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
// Handle draft read model info markers - offer to edit
|
|
64
|
-
for (const diagnostic of draftDiagnostics) {
|
|
65
|
-
const match = diagnostic.message.match(/Read model ['"]([\w.]+)['"]/);
|
|
66
|
-
if (match && match[1]) {
|
|
67
|
-
const readModelName = match[1];
|
|
68
|
-
if (this.draftReadModel && this.isDraftReadModel(readModelName) && this.onEditReadModel) {
|
|
69
|
-
actions.push({
|
|
70
|
-
title: `Edit read model '${readModelName}'`,
|
|
71
|
-
diagnostics: [diagnostic],
|
|
72
|
-
kind: 'quickfix',
|
|
73
|
-
edit: undefined,
|
|
74
|
-
isPreferred: true,
|
|
75
|
-
command: {
|
|
76
|
-
id: 'pdl.editReadModel',
|
|
77
|
-
title: `Edit ${readModelName}`,
|
|
78
|
-
arguments: [readModelName, this.draftReadModel.schema]
|
|
79
|
-
}
|
|
80
|
-
});
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
return {
|
|
85
|
-
actions,
|
|
86
|
-
dispose: () => { }
|
|
87
|
-
};
|
|
88
|
-
}
|
|
89
|
-
isDraftReadModel(readModelToken) {
|
|
90
|
-
return !!this.draftReadModel && (this.draftReadModel.identifier === readModelToken || this.draftReadModel.displayName === readModelToken);
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
//# sourceMappingURL=CodeActionProvider.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CodeActionProvider.js","sourceRoot":"","sources":["../../../sub-languages/projection/CodeActionProvider.ts"],"names":[],"mappings":"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"}
|