|
8 | 8 |
|
9 | 9 | from code_annotations.contrib.config import OPENEDX_EVENTS_ANNOTATIONS_CONFIG_PATH |
10 | 10 |
|
11 | | -from .base import find_annotations, quote_value |
| 11 | +from .base import find_annotations |
12 | 12 |
|
13 | 13 |
|
14 | 14 | def find_events(source_path): |
@@ -72,43 +72,53 @@ def iter_nodes(self): |
72 | 72 |
|
73 | 73 | current_domain = "" |
74 | 74 | domain_header = None |
| 75 | + current_subject = "" |
| 76 | + subject_header = None |
75 | 77 |
|
76 | 78 | for event_type in sorted(events): |
77 | 79 | domain = event_type.split(".")[2] |
| 80 | + subject = event_type.split(".")[3] |
78 | 81 | if domain != current_domain: |
79 | 82 | if domain_header: |
80 | 83 | yield domain_header |
81 | 84 |
|
82 | 85 | current_domain = domain |
83 | 86 | domain_header = nodes.section("", ids=[f"openedxevent-domain-{domain}"]) |
84 | | - domain_header += nodes.title(text=f"Architectural domain: {domain}") |
| 87 | + domain_header += nodes.title(text=f"Architectural subdomain: {domain}") |
| 88 | + if subject != current_subject: |
| 89 | + current_subject = subject |
| 90 | + subject_header = nodes.section("", ids=[f"openedxevent-subject" |
| 91 | + f"-{subject}"]) |
| 92 | + subject_header += nodes.title(text=f"Subject: {subject}") |
| 93 | + domain_header += subject_header |
85 | 94 |
|
86 | 95 | event = events[event_type] |
87 | 96 | event_name = event[".. event_name:"] |
88 | | - event_name_literal = nodes.literal(text=quote_value(event_name)) |
| 97 | + event_name_literal = nodes.literal(text=event_name) |
89 | 98 | event_data = event[".. event_data:"] |
90 | | - event_key_field = event.get(".. event_key_field:", None) |
91 | | - event_key_literal = nodes.literal(text=quote_value(event_key_field)) |
| 99 | + event_data_literal = nodes.literal(text=event_data) |
| 100 | + event_key_field = event.get(".. event_key_field:", "") |
| 101 | + event_key_literal = nodes.literal(text=event_key_field) |
92 | 102 | event_description = event[".. event_description:"] |
93 | 103 |
|
94 | 104 | event_section = nodes.section("", ids=[f"openedxevent-{event_type}"]) |
95 | 105 | event_section += nodes.title(text=event_type, ids=[f"title-{event_type}"]) |
96 | | - event_section += nodes.paragraph("", "Signal name:", event_name_literal) |
| 106 | + event_section += nodes.paragraph(text=f"Description:" |
| 107 | + f"{event_description}") |
| 108 | + event_section += nodes.paragraph(" ", "Signal name:", event_name_literal) |
97 | 109 | if event_key_field: |
98 | 110 | event_section += nodes.paragraph( |
99 | | - "", |
100 | | - "Event key field:", |
| 111 | + " ", |
| 112 | + "Event key field: ", |
101 | 113 | event_key_literal |
102 | 114 | ) |
103 | | - event_section += nodes.paragraph(text=f"Description:" |
104 | | - f" {event_description}") |
105 | | - event_section += nodes.paragraph(text=f"Event data: {event_data}") |
| 115 | + event_section += nodes.paragraph(" ", "Event data:", event_data_literal) |
106 | 116 | event_section += nodes.paragraph( |
107 | 117 | text=f"Defined at: {event['filename']} (line" |
108 | 118 | f" {event['line_number']})" |
109 | 119 | ) |
110 | 120 |
|
111 | | - domain_header += event_section |
| 121 | + subject_header += event_section |
112 | 122 |
|
113 | 123 | if domain_header: |
114 | 124 | yield domain_header |
|
0 commit comments