* feat: Style builder for report xlsx formatting
* fix: update report to use direct import for query report execution
* refactor: simplify module method retrieval in report execution
* feat: get xlsx styles for report
* refactor: enhance XLSXStyleBuilder with currency formatting and default style registration
* feat: add xlsxwriter dependency for enhanced XLSX report generation
* refactor: enhance XLSXStyleBuilder with improved style registration and formatting methods
* feat: enhance XLSX export functionality with improved styling and metadata support
* refactor: default formatting of currency
* chore: remove some typo
* feat: update make_xlsx function to use xlsxwriter for improved Excel file generation and styling
* perf: some micro optimisations
* refactor: inline generator back and improve condition
* refactor: replace frappe.request_cache with functools.cache
* fix: handle styling in email
* fix: fix old test case to handle styles in export
* refactor: enhance XLSX style handling and registration methods
* refactor: improve currency formatting logic
* fix: update make_xlsx to use constant_memory for large datasets and improve row style handling
* fix: handle None style_id in XLSXStyleBuilder methods to prevent errors
* fix: include owner field with proper doctype naming
* fix: set default date format in XLSX workbook creation
* fix: pass applied filters to metadata
* fix: getting accurate field info for report view exporting
* chore: Minor changes
* feat: add function to generate default XLSX styles for exports
* feat: integrate default XLSX styles into builder report export functionality
* feat: styles on export docs xlsx
* feat: enhance make_xlsx function to support file path saving
* feat: add make_xls function for creating Excel files in old format and improve sheet name sanitization
* fix: handle default date formatting
* refactor: changes xlsx builder usage
* refactor: update xlsx style builder usage
* refactor: enhance field info retrieval with default field support
* fix: handle update key in report data
* refactor: enhance get_field_info to include options and improve label retrieval
* fix: improve error handling for unsupported file formats and ensure applied filters are set correctly
* refactor: update XLSX header index handling and improve metadata structure
* fix: handle currency formatting in reportview export
* fix: update default date format to datetime format in XLSX creation
* fix: update serial number field in auto email report to use 'sr' instead of 'idx'
* fix: enhance XLSX styling by adding right alignment for specific field types
* chore: remove unused code
* fix: update XLSXMetadata attributes for improved report styling options
* perf: further improve currency styling
* fix: correct column index mapping in XLSX export header
* refactor: optimize indentation style registration in XLSXStyleBuilder
* perf: improve apply_indentations
* fix: reduce more attr lookup
* refactor: remove duplication
* fix: use report name in XLSX export instead of hardcoded title
* fix: remove ignore_visible_idx from XLSXMetadata
* fix: review
* fix: update XLSX style fetching logic in build_xlsx_data function
* fix: add right alignment to date, time, and datetime styles in XLSXStyleBuilder
* fix: simplify number format handling in XLSXStyleBuilder
* fix: register common styles in XLSXStyleBuilder for improved style management
* test: add tests for XLSX styles structure and fieldtype column styles in XLSXStyleBuilder
---------
Co-authored-by: Sagar Vora <16315650+sagarvora@users.noreply.github.com>
* fix(utils): add type hints to whitelisted methods
* fix(desktop): add type hints to whitelisted methods
* fix(listview): add type hints to whitelisted methods
* fix(access_log): add type hints to whitelisted methods
* fix(setup_wizard): add type hints to whitelisted methods
* fix(notification_settings): add type hints to whitelisted methods
* fix(calendar): add type hints to whitelisted methods
* fix(notifications): add type hints to whitelisted methods
* fix(query_report): add type hints to whitelisted methods
* fix(load): add type hints to whitelisted methods
* fix(save): add type hints to whitelisted methods
* fix(user): add type hints to whitelisted methods
* fix: correct Document import
* fix(list_view_settings): add type hints to whitelisted methods
* fix(reportview): add type hints to whitelisted methods
* fix(treeview): add type hints to whitelisted methods
* fix(linked_with): add type hints to whitelisted methods
* fix(bulk_update): add type hints to whitelisted methods
* fix(assign_to): add type hints to whitelisted methods
* fix(workspace): add type hints to whitelisted methods
* fix(kanban_board): add type hints to whitelisted methods
* fix(event): add type hints to whitelisted methods
* fix(email): add type hints to whitelisted methods
* fix(exporter): add type hints to whitelisted methods
* fix(permission_manager): add type hints to whitelisted methods
* fix(dashboard_chart): add type hints to whitelisted methods
* fix(number_card): add type hints to whitelisted methods
* fix(tag): add type hints to whitelisted methods
* fix: add hook to force type hints on all whitelisted endpoints
* fix: target_doc can be dict/json string
* fix: doc can be dict/json string
* fix(tests): add type hints to whitelisted methods in test
* fix: tree method is optional
* test: Fix test api types
* chore: drop dead code
* fix: document can be int
* fix: Number card input can be document
As utils in some other API calls
* fix: Always use session user
The only usage of this API that makes sense.
---------
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Ankush Menat <ankush@frappe.io>
* fix: Always bold report header row
* fix: update test cases
* refactor: add option to bold filter rows in XLSX output
* chore: minor changes
* chore: rename index variable
* revert: undo bold filters param use
* refactor: remove duplication for building xlsx data
* revert: add has_filters parameter to check for filter row bold
* refactor: add type hints and docstrings for XLSX data handling functions
* feat: allow users to email prepared report
* fix: add export in background checkbox in export dialog
* chore: use a common function to send report email
* feat: delete generated files from system after user defined duration
* feat: add exported reports in a folder and periodically clean it
* test: add test for export via report
* fix: add exported folder path as constant
* chore: un-edit report.json
* refactor: for readability
* chore: type hint
* refactor: let the BG job fail if email fails
* refactor: consistent `report_name`
* it reads better now, e.g. attached_to_name=report_name instead of attached_to_name=title
* refactor: `return_file` to its inverse `populate_response`
* chore: more specific error message
---------
Co-authored-by: Rahul Agrawal <deathstarconsole@Rahuls-MacBook-Air.local>
Co-authored-by: Hussain Nagaria <hussainbhaitech@gmail.com>