Add mutual exclusion guard so clients get a clear error instead of
named_style_type silently overriding heading_level.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Extract VALID_NAMED_STYLE_TYPES constant in docs_helpers.py, reuse in validation_manager.py
- Switch build_paragraph_style call to keyword arguments for clarity and resilience
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Exposes native Google Docs createParagraphBullets and
deleteParagraphBullets APIs via the batch operation manager.
Supports UNORDERED (bullets), ORDERED (numbered), and NONE
(remove formatting) list types with optional nesting levels.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Allows setting TITLE and SUBTITLE paragraph styles directly, in addition
to the existing heading_level (0-6) parameter. The new named_style_type
parameter accepts all Google Docs named styles: NORMAL_TEXT, TITLE,
SUBTITLE, HEADING_1 through HEADING_6.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Allow negative indent_first_line values for hanging indents (Google
Docs API supports this)
- Add update_paragraph_style to get_validation_summary() for consistency