drawlib 0.3.0__tar.gz → 0.3.2__tar.gz
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.
- drawlib-0.3.0/docs/README_PYPI.md → drawlib-0.3.2/PKG-INFO +36 -11
- drawlib-0.3.0/PKG-INFO → drawlib-0.3.2/docs/README_PYPI.md +14 -32
- {drawlib-0.3.0 → drawlib-0.3.2}/pyproject.toml +4 -7
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/__init__.py +41 -25
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_anim/_animation.py +1 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/_common/__init__.py +16 -0
- drawlib-0.3.2/src/drawlib/_builder/_common/browser.py +267 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/_common/cache.py +11 -4
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/_common/cache_manager.py +9 -2
- drawlib-0.3.2/src/drawlib/_builder/_common/office.py +128 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/doc_builder/__init__.py +16 -3
- drawlib-0.3.2/src/drawlib/_builder/doc_builder/_docx_xml.py +683 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/doc_builder/compiler/__init__.py +3 -1
- drawlib-0.3.2/src/drawlib/_builder/doc_builder/compiler/docx.py +134 -0
- drawlib-0.3.2/src/drawlib/_builder/doc_builder/exporter_docx.py +1069 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/doc_builder/exporter_pdf.py +40 -126
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/doc_builder/processor/processor.py +15 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/image_builder.py +1 -3
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/rules_builder.py +135 -58
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/__init__.py +7 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/_common/_types.py +8 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/area_chart/_chart.py +1 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/bar_chart/_chart.py +1 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/gantt_chart/_chart.py +1 -2
- drawlib-0.3.2/src/drawlib/_charts/heatmap_chart/__init__.py +24 -0
- drawlib-0.3.2/src/drawlib/_charts/heatmap_chart/_chart.py +398 -0
- drawlib-0.3.2/src/drawlib/_charts/heatmap_chart/_models.py +525 -0
- drawlib-0.3.2/src/drawlib/_charts/heatmap_chart/_overlay.py +352 -0
- drawlib-0.3.2/src/drawlib/_charts/heatmap_chart/_overlay_renderer.py +248 -0
- drawlib-0.3.2/src/drawlib/_charts/heatmap_chart/_renderer.py +340 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/line_chart/_base.py +1 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/line_chart/_line.py +1 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/pie_chart/_chart.py +1 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/radar_chart/_chart.py +1 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/scatter_chart/_chart.py +1 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/_visualizers/styles/base.py +2 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/commands/build.py +150 -3
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/commands/cache.py +13 -4
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/commands/colors.py +36 -35
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/commands/rules.py +77 -10
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/commands/serve.py +2 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/commands/show.py +2 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/commands/styles.py +37 -42
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l1_core/__init__.py +3 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l1_core/_settings.py +13 -9
- drawlib-0.3.2/src/drawlib/_core/l1_core/_validator.py +82 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l3_colors/_base_colors.py +1 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l3_colors/_color_utils.py +1 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l3_images/_dimage.py +2 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l3_math/_geometry.py +4 -4
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l3_styles/__init__.py +2 -0
- drawlib-0.3.2/src/drawlib/_core/l3_styles/_base_styles.py +646 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l3_styles/_style.py +20 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l4_canvas/_base.py +1 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l4_canvas/_canvas.py +1 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l4_canvas/_image.py +2 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l4_canvas/_image_code.py +2 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l4_canvas/_line.py +2 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l4_canvas/_shapes/_arrow.py +1 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l4_canvas/_shapes/_badge.py +1 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l4_canvas/_shapes/_basic.py +1 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l4_canvas/_shapes/_container.py +1 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l4_canvas/_shapes/_path_utils.py +51 -38
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l4_canvas/_shapes/_polygon.py +1 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l4_canvas/_shapes/_shape_utils.py +2 -4
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l4_canvas/_shapes/_symbol.py +1 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l4_canvas/_text.py +1 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/architecture/_diagram.py +1 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/class_diagram/_diagram.py +1 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/er/_diagram.py +1 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/flow/_diagram.py +1 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/sequence/_diagram.py +1 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/state/_diagram.py +1 -2
- drawlib-0.3.2/src/drawlib/_icons/__init__.py +156 -0
- drawlib-0.3.2/src/drawlib/_icons/font_icons/__init__.py +44 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/font_icons/_base.py +1 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/font_icons/_font_icon.py +1 -2
- drawlib-0.3.2/src/drawlib/_icons/png_icons/__init__.py +103 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/_base.py +1 -2
- drawlib-0.3.2/src/drawlib/_preset_colors/__init__.py +74 -0
- drawlib-0.3.2/src/drawlib/_preset_styles/__init__.py +70 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_preset_styles/_style_default.py +2254 -2268
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_preset_styles/_style_google.py +2599 -2606
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_preset_styles/_style_monochrome.py +344 -338
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_preset_styles/_utils.py +57 -43
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/agent_instruction.md +28 -19
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/anim_guide.md +6 -5
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/api.md +174 -57
- drawlib-0.3.2/src/drawlib/_rules/charts/area.md +171 -0
- drawlib-0.3.2/src/drawlib/_rules/charts/bar.md +194 -0
- drawlib-0.3.2/src/drawlib/_rules/charts/gantt.md +215 -0
- drawlib-0.3.2/src/drawlib/_rules/charts/heatmap.md +222 -0
- drawlib-0.3.2/src/drawlib/_rules/charts/line.md +180 -0
- drawlib-0.3.2/src/drawlib/_rules/charts/overview.md +345 -0
- drawlib-0.3.2/src/drawlib/_rules/charts/pie.md +141 -0
- drawlib-0.3.2/src/drawlib/_rules/charts/radar.md +167 -0
- drawlib-0.3.2/src/drawlib/_rules/charts/scatter.md +185 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/cli.md +237 -115
- drawlib-0.3.2/src/drawlib/_rules/diagrams/architecture.md +333 -0
- drawlib-0.3.2/src/drawlib/_rules/diagrams/class_diagram.md +271 -0
- drawlib-0.3.2/src/drawlib/_rules/diagrams/er.md +273 -0
- drawlib-0.3.2/src/drawlib/_rules/diagrams/flow.md +266 -0
- drawlib-0.3.2/src/drawlib/_rules/diagrams/overview.md +213 -0
- drawlib-0.3.2/src/drawlib/_rules/diagrams/sequence.md +272 -0
- drawlib-0.3.2/src/drawlib/_rules/diagrams/state.md +275 -0
- drawlib-0.3.2/src/drawlib/_rules/graph/architecture.md +161 -0
- drawlib-0.3.2/src/drawlib/_rules/graph/grid.md +150 -0
- drawlib-0.3.2/src/drawlib/_rules/graph/layer.md +126 -0
- drawlib-0.3.2/src/drawlib/_rules/graph/overview.md +268 -0
- drawlib-0.3.2/src/drawlib/_rules/graph/radial.md +130 -0
- drawlib-0.3.2/src/drawlib/_rules/graph/tree.md +130 -0
- drawlib-0.3.2/src/drawlib/_rules/icons/ai.md +104 -0
- drawlib-0.3.2/src/drawlib/_rules/icons/aws.md +89 -0
- drawlib-0.3.2/src/drawlib/_rules/icons/azure.md +86 -0
- drawlib-0.3.2/src/drawlib/_rules/icons/business.md +93 -0
- drawlib-0.3.2/src/drawlib/_rules/icons/client.md +94 -0
- drawlib-0.3.2/src/drawlib/_rules/icons/cloud.md +94 -0
- drawlib-0.3.2/src/drawlib/_rules/icons/cnative.md +101 -0
- drawlib-0.3.2/src/drawlib/_rules/icons/code.md +91 -0
- drawlib-0.3.2/src/drawlib/_rules/icons/data.md +104 -0
- drawlib-0.3.2/src/drawlib/_rules/icons/devops.md +107 -0
- drawlib-0.3.2/src/drawlib/_rules/icons/facility.md +92 -0
- drawlib-0.3.2/src/drawlib/_rules/icons/gcp.md +111 -0
- drawlib-0.3.2/src/drawlib/_rules/icons/itservice.md +108 -0
- drawlib-0.3.2/src/drawlib/_rules/icons/network.md +106 -0
- drawlib-0.3.2/src/drawlib/_rules/icons/overview.md +109 -0
- drawlib-0.3.2/src/drawlib/_rules/icons/phosphor.md +128 -0
- drawlib-0.3.2/src/drawlib/_rules/icons/security.md +94 -0
- drawlib-0.3.2/src/drawlib/_rules/icons/server.md +98 -0
- drawlib-0.3.2/src/drawlib/_rules/icons/social.md +103 -0
- drawlib-0.3.2/src/drawlib/_rules/icons/workspace.md +105 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/lib_anim.md +4 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/lib_canvas.md +1 -1
- drawlib-0.3.2/src/drawlib/_rules/lib_images.md +249 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/lib_lines.md +29 -29
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/lib_math.md +2 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/lib_preset_colors.md +29 -6
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/lib_preset_styles.md +144 -147
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/lib_slide.md +47 -3
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/lib_tools.md +63 -9
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/lib_types.md +1 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/overview.md +166 -125
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/project_doc.md +49 -21
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/project_images.md +5 -4
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/project_overview.md +25 -20
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/project_site.md +9 -8
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/project_slide.md +43 -6
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/review_guide.md +14 -12
- drawlib-0.3.2/src/drawlib/_rules/shapes/arrow.md +234 -0
- drawlib-0.3.2/src/drawlib/_rules/shapes/badge.md +276 -0
- drawlib-0.3.2/src/drawlib/_rules/shapes/basic.md +289 -0
- drawlib-0.3.2/src/drawlib/_rules/shapes/container.md +234 -0
- drawlib-0.3.2/src/drawlib/_rules/shapes/overview.md +214 -0
- drawlib-0.3.2/src/drawlib/_rules/shapes/polygon.md +337 -0
- drawlib-0.3.2/src/drawlib/_rules/shapes/symbol.md +231 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/slide_guide.md +9 -9
- drawlib-0.3.2/src/drawlib/_rules/smartarts/box_list.md +99 -0
- drawlib-0.3.2/src/drawlib/_rules/smartarts/bullet_points.md +123 -0
- drawlib-0.3.2/src/drawlib/_rules/smartarts/calendar.md +305 -0
- drawlib-0.3.2/src/drawlib/_rules/smartarts/card_list.md +158 -0
- drawlib-0.3.2/src/drawlib/_rules/smartarts/chevron_process.md +109 -0
- drawlib-0.3.2/src/drawlib/_rules/smartarts/cycle.md +145 -0
- drawlib-0.3.2/src/drawlib/_rules/smartarts/geomap.md +100 -0
- drawlib-0.3.2/src/drawlib/_rules/smartarts/grid_layout.md +133 -0
- drawlib-0.3.2/src/drawlib/_rules/smartarts/kpi_cards.md +150 -0
- drawlib-0.3.2/src/drawlib/_rules/smartarts/mindmap.md +192 -0
- drawlib-0.3.2/src/drawlib/_rules/smartarts/overview.md +226 -0
- drawlib-0.3.2/src/drawlib/_rules/smartarts/panel.md +161 -0
- drawlib-0.3.2/src/drawlib/_rules/smartarts/pyramid.md +114 -0
- drawlib-0.3.2/src/drawlib/_rules/smartarts/roadmap.md +183 -0
- drawlib-0.3.2/src/drawlib/_rules/smartarts/source_code.md +165 -0
- drawlib-0.3.2/src/drawlib/_rules/smartarts/table.md +183 -0
- drawlib-0.3.2/src/drawlib/_rules/smartarts/tree.md +177 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/style_guide.md +13 -10
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_slide/__init__.py +2 -0
- drawlib-0.3.2/src/drawlib/_slide/_pptx_dom.py +1293 -0
- drawlib-0.3.2/src/drawlib/_slide/_pptx_writer.py +628 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_slide/compiler.py +83 -11
- drawlib-0.3.2/src/drawlib/_slide/compiler_pptx.py +117 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_slide/helpers.py +1 -2
- drawlib-0.3.2/src/drawlib/_smartarts/__init__.py +131 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_boxlist.py +2 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_bulletpoints.py +2 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_calendar/_day.py +1 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_calendar/_month.py +1 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_calendar/_week.py +1 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_cardlist.py +2 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_chevronprocess.py +2 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_cycle.py +2 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_geomap/_geomap.py +1 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_gridlayout.py +2 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_kpicards.py +2 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_mindmap.py +1 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_panel.py +1 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_pyramid.py +2 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_roadmap.py +2 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_sourcecode.py +2 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_table.py +2 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_tree.py +2 -1
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/css/targets/doc.css +16 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/css/targets/pdf.css +16 -2
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/css/targets/site.css +134 -4
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/site/template.html.template +72 -12
- drawlib-0.3.2/src/drawlib/charts/__init__.py +71 -0
- drawlib-0.3.2/src/drawlib/charts/heatmap.py +40 -0
- drawlib-0.3.2/src/drawlib/diagrams/__init__.py +58 -0
- drawlib-0.3.2/src/drawlib/icons.py +196 -0
- drawlib-0.3.2/src/drawlib/preset_colors.py +82 -0
- drawlib-0.3.2/src/drawlib/preset_styles.py +70 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/slide.py +2 -0
- drawlib-0.3.2/src/drawlib/smartarts.py +104 -0
- drawlib-0.3.2/src/drawlib/styles.py +73 -0
- drawlib-0.3.2/src/drawlib/tools.py +115 -0
- drawlib-0.3.0/src/drawlib/_core/l3_styles/_base_styles.py +0 -564
- drawlib-0.3.0/src/drawlib/_icons/__init__.py +0 -90
- drawlib-0.3.0/src/drawlib/_icons/font_icons/__init__.py +0 -20
- drawlib-0.3.0/src/drawlib/_icons/png_icons/__init__.py +0 -84
- drawlib-0.3.0/src/drawlib/_preset_colors/__init__.py +0 -40
- drawlib-0.3.0/src/drawlib/_preset_styles/__init__.py +0 -40
- drawlib-0.3.0/src/drawlib/_rules/lib_charts.md +0 -1025
- drawlib-0.3.0/src/drawlib/_rules/lib_diagrams.md +0 -1132
- drawlib-0.3.0/src/drawlib/_rules/lib_graph.md +0 -696
- drawlib-0.3.0/src/drawlib/_rules/lib_icons.md +0 -1030
- drawlib-0.3.0/src/drawlib/_rules/lib_images.md +0 -188
- drawlib-0.3.0/src/drawlib/_rules/lib_shapes.md +0 -2686
- drawlib-0.3.0/src/drawlib/_rules/lib_smartarts.md +0 -1518
- drawlib-0.3.0/src/drawlib/_smartarts/__init__.py +0 -75
- drawlib-0.3.0/src/drawlib/charts/__init__.py +0 -34
- drawlib-0.3.0/src/drawlib/diagrams/__init__.py +0 -30
- drawlib-0.3.0/src/drawlib/icons.py +0 -126
- drawlib-0.3.0/src/drawlib/preset_colors.py +0 -46
- drawlib-0.3.0/src/drawlib/preset_styles.py +0 -38
- drawlib-0.3.0/src/drawlib/smartarts.py +0 -84
- drawlib-0.3.0/src/drawlib/styles.py +0 -36
- drawlib-0.3.0/src/drawlib/tools.py +0 -65
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/__main__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_anim/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/_common/progress.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/_common/styles_loader.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/_image_ast.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/doc_builder/compiler/base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/doc_builder/compiler/html.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/doc_builder/compiler/markdown.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/doc_builder/compiler/pdf.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/doc_builder/detector.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/doc_builder/exporter_html.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/doc_builder/exporter_md.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/doc_builder/highlight.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/doc_builder/merger.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/doc_builder/navbar.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/doc_builder/parser_md.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/doc_builder/processor/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/doc_builder/processor/options.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/doc_builder/processor/parser.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/doc_builder/processor/viewer.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/doc_builder/progress.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_builder/doc_builder/styles_utils.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cached_assets/.gitignore +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cached_assets/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/_common/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/_common/_axis.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/_common/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/_common/_legend.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/_common/_style_utils.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/area_chart/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/area_chart/_series.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/bar_chart/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/bar_chart/_renderer.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/bar_chart/_series.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/gantt_chart/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/gantt_chart/_item.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/gantt_chart/_renderer.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/line_chart/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/line_chart/_renderer.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/line_chart/_series.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/pie_chart/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/pie_chart/_renderer.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/pie_chart/_slice.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/radar_chart/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/radar_chart/_renderer.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/radar_chart/_series.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/scatter_chart/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/scatter_chart/_point.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_charts/scatter_chart/_renderer.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/_drawlib.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/_help.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/_visualizers/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/_visualizers/_common.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/_visualizers/colors/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/_visualizers/colors/base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/_visualizers/colors/css.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/_visualizers/colors/default.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/_visualizers/colors/google.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/_visualizers/colors/monochrome.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/_visualizers/styles/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/_visualizers/styles/default.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/_visualizers/styles/google.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/_visualizers/styles/monochrome.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/commands/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/commands/css.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/commands/init.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_cli/main.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l1_core/_const.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l1_core/_logging.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l1_core/_path_utils.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l2_types/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l2_types/_color.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l2_types/_font.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l2_types/_geometry.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l2_types/_image.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l2_types/_path.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l2_types/_primitive.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l2_types/_style.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l3_colors/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l3_colors/_color.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l3_external/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l3_external/_cache.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l3_external/_download.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l3_external/_package.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l3_fonts/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l3_fonts/_metadata.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l3_fonts/_names.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l3_fonts/_resources.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l3_images/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l3_math/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l3_math/_routing.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l4_canvas/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l4_canvas/_line_utils.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l4_canvas/_shapes/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l4_canvas/_shapes/_arrow_builders.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l4_canvas/_shapes/_badge_builders.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l4_canvas/_shapes/_container_builders.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l4_canvas/_shapes/_symbol_builders.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_core/l4_canvas/_text_utils.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/_common.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/architecture/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/architecture/_edge.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/architecture/_group.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/architecture/_icons.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/architecture/_junction.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/architecture/_node.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/architecture/_render_edges.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/architecture/_renderer.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/architecture/_types.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/class_diagram/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/class_diagram/_class_node.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/class_diagram/_relationship.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/class_diagram/_render_node.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/class_diagram/_render_relationship.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/class_diagram/_renderer.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/class_diagram/_types.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/er/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/er/_entity.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/er/_relationship.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/er/_renderer.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/er/_types.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/flow/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/flow/_edge.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/flow/_junction.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/flow/_lane.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/flow/_node.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/flow/_nodes.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/flow/_render_edges.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/flow/_render_lanes.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/flow/_renderer.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/flow/_types.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/sequence/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/sequence/_block.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/sequence/_group.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/sequence/_layout.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/sequence/_message.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/sequence/_note.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/sequence/_participant.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/sequence/_render_elements.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/sequence/_renderer.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/sequence/_types.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/state/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/state/_render_node.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/state/_render_transition.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/state/_renderer.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/state/_state_node.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/state/_transition.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_diagrams/state/_types.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_graph/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_graph/_architecture/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_graph/_architecture/_graph.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_graph/_architecture/_solver.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_graph/_common/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_graph/_common/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_graph/_common/_models.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_graph/_common/_routing.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_graph/_grid/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_graph/_grid/_graph.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_graph/_grid/_solver.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_graph/_layered/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_graph/_layered/_graph.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_graph/_layered/_solver.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_graph/_radial/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_graph/_radial/_graph.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_graph/_radial/_solver.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_graph/_tree/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_graph/_tree/_graph.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_graph/_tree/_solver.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_http_server/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_http_server/_link_scanner.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_http_server/_server.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/_utils.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/font_icons/phosphor/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/font_icons/phosphor/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/font_icons/phosphor/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/ai/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/ai/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/ai/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/aws/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/aws/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/aws/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/azure/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/azure/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/azure/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/business/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/business/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/business/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/client/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/client/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/client/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/cloud/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/cloud/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/cloud/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/cnative/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/cnative/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/cnative/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/code/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/code/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/code/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/data/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/data/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/data/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/devops/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/devops/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/devops/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/facility/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/facility/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/facility/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/gcp/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/gcp/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/gcp/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/itservice/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/itservice/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/itservice/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/network/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/network/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/network/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_ai/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_ai/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_ai/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_business/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_business/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_business/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_client/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_client/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_client/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_cloud/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_cloud/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_cloud/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_cnative/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_cnative/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_cnative/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_code/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_code/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_code/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_data/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_data/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_data/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_devops/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_devops/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_devops/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_facility/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_facility/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_facility/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_itservice/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_itservice/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_itservice/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_network/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_network/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_network/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_security/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_security/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_security/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_server/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_server/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_server/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_social/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_social/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_social/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_workspace/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_workspace/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/original_workspace/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/security/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/security/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/security/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/server/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/server/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/server/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/social/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/social/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/social/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/workspace/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/workspace/_base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_icons/png_icons/workspace/_generated.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_preset_colors/_color_css.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_preset_colors/_color_default.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_preset_colors/_color_google.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_preset_colors/_color_monochrome.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_release_assets.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/_assets/avenger/readme.txt +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/_assets/avenger/regular.ttf +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/_assets/linux.png +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/lib_fonts.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/lib_styles.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_rules/lib_text.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_slide/_assets.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_slide/_blocks.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_slide/base.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_calendar/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_calendar/_models.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_common/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_common/_card_helpers.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_geomap/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_geomap/_loader.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_geomap/_presets.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_geomap/_projection.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_smartarts/_geomap/_types.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/_css.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/_models.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/_project.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/css/components/code.css +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/css/components/markdown.css +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/css/targets/slide.css +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/css/themes/default-auto.css.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/css/themes/default-dark.css.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/css/themes/default.css.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/css/themes/github.css.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/css/themes/google-auto.css.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/css/themes/google-dark.css.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/css/themes/google.css.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/css/themes/minimal.css.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/css/themes/monochrome.css.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/langs/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/langs/_map_css.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/langs/_map_html.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/langs/_map_style_font.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/langs/_models.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/langs/_patch.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/langs/_registry.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/__init__.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/_assets/_logo.png +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/_assets/_logo_dark.png +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/_assets/favicon.png +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/_assets/linux.png +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/_shared/output_html_readme.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/_shared/styles.py.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/_shared/utils.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/doc/build.sh.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/doc/build_html.sh.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/doc/build_image.sh.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/doc/build_markdown.sh.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/doc/build_pdf.sh.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/doc/docs/en/00_cover.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/doc/docs/en/01_overview.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/doc/docs/en/02_design.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/doc/docs/en/README.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/doc/docs/ja/00_cover.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/doc/docs/ja/01_overview.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/doc/docs/ja/02_design.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/doc/docs/ja/README.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/doc/serve.sh.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/doc/template.html.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/images/build.sh.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/images/build_image.sh.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/images/docs/en/README.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/images/docs/en/sample1.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/images/docs/en/sample2.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/images/docs/ja/README.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/images/docs/ja/sample1.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/images/docs/ja/sample2.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/site/build.sh.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/site/build_html.sh.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/site/build_image.sh.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/site/build_markdown.sh.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/site/docs/en/README.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/site/docs/en/architecture/index.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/site/docs/en/index.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/site/docs/en/navbar.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/site/docs/en/workflow/index.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/site/docs/ja/README.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/site/docs/ja/architecture/index.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/site/docs/ja/index.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/site/docs/ja/navbar.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/site/docs/ja/workflow/index.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/site/serve.sh.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/slide/build.sh.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/slide/build_html.sh.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/slide/build_image.sh.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/slide/build_pdf.sh.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/slide/docs/en/01_title.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/slide/docs/en/02_agenda.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/slide/docs/en/03_architecture.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/slide/docs/en/README.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/slide/docs/ja/01_title.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/slide/docs/ja/02_agenda.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/slide/docs/ja/03_architecture.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/slide/docs/ja/README.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/slide/output_readme.md +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/slide/serve.sh.template +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/_templates/project/slide/slide.js +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/anim.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/canvas.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/charts/area.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/charts/bar.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/charts/gantt.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/charts/line.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/charts/pie.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/charts/radar.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/charts/scatter.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/diagrams/architecture.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/diagrams/class_diagram.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/diagrams/er.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/diagrams/flow.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/diagrams/sequence.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/diagrams/state.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/fonts.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/graph.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/images.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/lines.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/math.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/py.typed +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/shapes.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/text.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/types.py +0 -0
- {drawlib-0.3.0 → drawlib-0.3.2}/src/drawlib/utils.py +0 -0
|
@@ -1,3 +1,25 @@
|
|
|
1
|
+
Metadata-Version: 2.3
|
|
2
|
+
Name: drawlib
|
|
3
|
+
Version: 0.3.2
|
|
4
|
+
Summary: Python drawing library. Illustration as Code.
|
|
5
|
+
Author: Yuichi Ito
|
|
6
|
+
Author-email: Yuichi Ito <yuichi@yuichi.com>
|
|
7
|
+
License: Apache-2.0
|
|
8
|
+
Requires-Dist: matplotlib>=3.8
|
|
9
|
+
Requires-Dist: pydantic>=2.8
|
|
10
|
+
Requires-Dist: pygments>=2.18
|
|
11
|
+
Requires-Dist: markdown-it-py>=3.0
|
|
12
|
+
Requires-Dist: jinja2>=3.1
|
|
13
|
+
Requires-Dist: typer>=0.12.0
|
|
14
|
+
Requires-Dist: rich>=13.0.0
|
|
15
|
+
Requires-Dist: playwright>=1.49.0
|
|
16
|
+
Requires-Dist: python-docx>=1.2.0
|
|
17
|
+
Requires-Dist: python-pptx>=1.0.2
|
|
18
|
+
Requires-Python: >=3.11
|
|
19
|
+
Project-URL: Homepage, https://www.drawlib.com
|
|
20
|
+
Project-URL: Repository, https://github.com/yuichi110/drawlib
|
|
21
|
+
Description-Content-Type: text/markdown
|
|
22
|
+
|
|
1
23
|
# Drawlib
|
|
2
24
|
|
|
3
25
|
**Pure-Python Library for "Illustration as Code" & "Illustrated Documentation as Code"**
|
|
@@ -36,7 +58,7 @@ Compose presentation-ready infographics (`drawlib.smartarts`) and quantitative d
|
|
|
36
58
|

|
|
37
59
|
|
|
38
60
|
- **SmartArts (`drawlib.smartarts`)**: `ChevronProcess`, `Cycle`, `Table`, `TreeNode`, `MindMapNode`, `Pyramid`, `BoxList`, `BulletPoints`, `GridLayout`, and syntax-highlighted `SourceCode`.
|
|
39
|
-
- **Charts (`drawlib.charts`)**: Pure-Python `BarChart`, `LineChart`, `AreaChart`, `PieChart`, `RadarChart`, `ScatterChart`, and `
|
|
61
|
+
- **Charts (`drawlib.charts`)**: Pure-Python `BarChart`, `LineChart`, `AreaChart`, `PieChart`, `RadarChart`, `ScatterChart`, `GanttChart`, and `HeatmapChart` / `HeatmapOverlay` styled with the same design tokens as your diagrams.
|
|
40
62
|
|
|
41
63
|
---
|
|
42
64
|
|
|
@@ -63,8 +85,8 @@ Write Markdown files with embedded ```` ```drawlib ```` code blocks. A single `d
|
|
|
63
85
|
|
|
64
86
|
- **4 Project Scaffolds (`drawlib init <type>`)**:
|
|
65
87
|
- `drawlib init site`: Multi-page documentation website (`docs_html/`), GitHub Markdown (`docs/`), and PDF.
|
|
66
|
-
- `drawlib init doc`: Linear technical specification / whitepaper (`*_html/`, `*_markdown/`, `*.pdf`).
|
|
67
|
-
- `drawlib init slide`: 16:9 presentation slide deck with native SVG text and keyboard navigation (`slide_html/`, `slide.pdf`).
|
|
88
|
+
- `drawlib init doc`: Linear technical specification / whitepaper (`*_html/`, `*_markdown/`, `*.pdf`, plus on-demand editable MS Word `*.docx` via `drawlib build docx`).
|
|
89
|
+
- `drawlib init slide`: 16:9 presentation slide deck with native SVG text, Presenter View, and keyboard navigation (`slide_html/`, `slide.pdf`, plus on-demand editable MS PowerPoint `slide.pptx` via `drawlib build pptx`).
|
|
68
90
|
- `drawlib init images`: Standalone batch Python illustration scripts (`images_src/` -> `images/`).
|
|
69
91
|
|
|
70
92
|
---
|
|
@@ -79,7 +101,7 @@ Drawlib is engineered from the ground up for **AI-native documentation and diagr
|
|
|
79
101
|
2. **Code Synthesis & Grid Preview (`drawlib show -g`)**: The agent writes Python drawing blocks and Markdown prose, then renders a headless preview with a coordinate grid overlay.
|
|
80
102
|
3. **Multimodal Inspection & Self-Repair**: The agent visually inspects the rendered PNG for text clipping, overlapping labels, or style imbalances, repairing coordinates and styles autonomously until the diagram passes inspection.
|
|
81
103
|
- **Human Outer Loop (Intent & Review)**:
|
|
82
|
-
- The developer stays focused on high-level architecture and intent—providing initial goals, reviewing the compiled **Published Docs** (HTML / PDF / GitHub MD / Slide), and iterating on direction without ever nudging pixels in a GUI tool.
|
|
104
|
+
- The developer stays focused on high-level architecture and intent—providing initial goals, reviewing the compiled **Published Docs** (HTML / PDF / MS Word / GitHub MD / Slide / MS PowerPoint), and iterating on direction without ever nudging pixels in a GUI tool.
|
|
83
105
|
|
|
84
106
|
---
|
|
85
107
|
|
|
@@ -89,14 +111,13 @@ Install `drawlib` from PyPI using `pip` or `uv`:
|
|
|
89
111
|
|
|
90
112
|
```bash
|
|
91
113
|
pip install drawlib
|
|
114
|
+
# or: uv add drawlib
|
|
92
115
|
```
|
|
93
116
|
|
|
94
|
-
|
|
117
|
+
PDF, MS Word (`.docx`), and MS PowerPoint (`.pptx`) export work out of the box—`playwright`, `python-docx`, and `python-pptx` are standard dependencies, and headless Chromium (`chromium-headless-shell`) is downloaded automatically on your first `drawlib build pdf` or `drawlib build pptx` run.
|
|
95
118
|
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
playwright install chromium
|
|
99
|
-
```
|
|
119
|
+
- **Offline / Air-Gapped / CI Environments**: Pre-download all fonts, icons, maps, and headless Chromium ahead of time with `drawlib cache download --all` (or headless Chromium only with `drawlib cache download --browser`).
|
|
120
|
+
- **Minimal Linux Containers** (e.g., `python:3.12-slim` lacking OS shared libraries such as `libnss3` or `libgbm1`): Install OS browser dependencies once via `playwright install-deps chromium` (or `playwright install --with-deps --only-shell chromium`).
|
|
100
121
|
|
|
101
122
|
Verify the installation:
|
|
102
123
|
|
|
@@ -201,6 +222,10 @@ Compile or preview with the `drawlib` CLI:
|
|
|
201
222
|
# Build HTML site, GitHub Markdown, or PDF
|
|
202
223
|
./docs_src/build.sh
|
|
203
224
|
|
|
225
|
+
# Optional on-demand export to editable MS Word (.docx) or MS PowerPoint (.pptx)
|
|
226
|
+
drawlib build docx doc_src/ -o spec.docx --generate-index
|
|
227
|
+
drawlib build pptx slide_src/ -o deck.pptx
|
|
228
|
+
|
|
204
229
|
# Launch local HTTP server with broken-link check at http://localhost:8000
|
|
205
230
|
drawlib serve docs_html/
|
|
206
231
|
|
|
@@ -215,11 +240,11 @@ drawlib show docs_src/index.md service_routing.png -g -o preview_grid.png
|
|
|
215
240
|
| Command | Description |
|
|
216
241
|
| :--- | :--- |
|
|
217
242
|
| `drawlib init <site\|doc\|slide\|images>` | Scaffold a new documentation, slide deck, or image project |
|
|
218
|
-
| `drawlib build <html\|markdown\|pdf\|image>` | Compile source files into HTML, Markdown, PDF, or PNG/WebP images |
|
|
243
|
+
| `drawlib build <html\|markdown\|pdf\|docx\|slide\|pptx\|image>` | Compile source files into HTML, Markdown, PDF, MS Word (`.docx`), HTML Slides, MS PowerPoint (`.pptx`), or PNG/WebP images |
|
|
219
244
|
| `drawlib serve <html_dir> [--check]` | Start a local HTTP server for built HTML docs/slides with pre-flight link checks |
|
|
220
245
|
| `drawlib show <file> [target] [-g]` | Render and inspect a single script or embedded Markdown diagram (with optional grid) |
|
|
221
246
|
| `drawlib rules show [topic]` | On-demand CLI reference for AI agents to look up detailed API specs & best practices (`overview`, `style-guide`, `api`, `lib-*`) |
|
|
222
|
-
| `drawlib cache <list\|download\|clear>` | Manage local font and
|
|
247
|
+
| `drawlib cache <list\|download\|clear>` | Manage local font, icon, map, and headless Chromium caches (supports offline pre-caching via `--all` or `--browser`) |
|
|
223
248
|
|
|
224
249
|
---
|
|
225
250
|
|
|
@@ -1,24 +1,3 @@
|
|
|
1
|
-
Metadata-Version: 2.3
|
|
2
|
-
Name: drawlib
|
|
3
|
-
Version: 0.3.0
|
|
4
|
-
Summary: Python drawing library. Illustration as Code.
|
|
5
|
-
Author: Yuichi Ito
|
|
6
|
-
Author-email: Yuichi Ito <yuichi@yuichi.com>
|
|
7
|
-
License: Apache-2.0
|
|
8
|
-
Requires-Dist: matplotlib>=3.8
|
|
9
|
-
Requires-Dist: pydantic>=2.8
|
|
10
|
-
Requires-Dist: pygments>=2.18
|
|
11
|
-
Requires-Dist: markdown-it-py>=3.0
|
|
12
|
-
Requires-Dist: jinja2>=3.1
|
|
13
|
-
Requires-Dist: typer>=0.12.0
|
|
14
|
-
Requires-Dist: rich>=13.0.0
|
|
15
|
-
Requires-Dist: playwright>=1.40.0 ; extra == 'pdf'
|
|
16
|
-
Requires-Python: >=3.11
|
|
17
|
-
Project-URL: Homepage, https://www.drawlib.com
|
|
18
|
-
Project-URL: Repository, https://github.com/yuichi110/drawlib
|
|
19
|
-
Provides-Extra: pdf
|
|
20
|
-
Description-Content-Type: text/markdown
|
|
21
|
-
|
|
22
1
|
# Drawlib
|
|
23
2
|
|
|
24
3
|
**Pure-Python Library for "Illustration as Code" & "Illustrated Documentation as Code"**
|
|
@@ -57,7 +36,7 @@ Compose presentation-ready infographics (`drawlib.smartarts`) and quantitative d
|
|
|
57
36
|

|
|
58
37
|
|
|
59
38
|
- **SmartArts (`drawlib.smartarts`)**: `ChevronProcess`, `Cycle`, `Table`, `TreeNode`, `MindMapNode`, `Pyramid`, `BoxList`, `BulletPoints`, `GridLayout`, and syntax-highlighted `SourceCode`.
|
|
60
|
-
- **Charts (`drawlib.charts`)**: Pure-Python `BarChart`, `LineChart`, `AreaChart`, `PieChart`, `RadarChart`, `ScatterChart`, and `
|
|
39
|
+
- **Charts (`drawlib.charts`)**: Pure-Python `BarChart`, `LineChart`, `AreaChart`, `PieChart`, `RadarChart`, `ScatterChart`, `GanttChart`, and `HeatmapChart` / `HeatmapOverlay` styled with the same design tokens as your diagrams.
|
|
61
40
|
|
|
62
41
|
---
|
|
63
42
|
|
|
@@ -84,8 +63,8 @@ Write Markdown files with embedded ```` ```drawlib ```` code blocks. A single `d
|
|
|
84
63
|
|
|
85
64
|
- **4 Project Scaffolds (`drawlib init <type>`)**:
|
|
86
65
|
- `drawlib init site`: Multi-page documentation website (`docs_html/`), GitHub Markdown (`docs/`), and PDF.
|
|
87
|
-
- `drawlib init doc`: Linear technical specification / whitepaper (`*_html/`, `*_markdown/`, `*.pdf`).
|
|
88
|
-
- `drawlib init slide`: 16:9 presentation slide deck with native SVG text and keyboard navigation (`slide_html/`, `slide.pdf`).
|
|
66
|
+
- `drawlib init doc`: Linear technical specification / whitepaper (`*_html/`, `*_markdown/`, `*.pdf`, plus on-demand editable MS Word `*.docx` via `drawlib build docx`).
|
|
67
|
+
- `drawlib init slide`: 16:9 presentation slide deck with native SVG text, Presenter View, and keyboard navigation (`slide_html/`, `slide.pdf`, plus on-demand editable MS PowerPoint `slide.pptx` via `drawlib build pptx`).
|
|
89
68
|
- `drawlib init images`: Standalone batch Python illustration scripts (`images_src/` -> `images/`).
|
|
90
69
|
|
|
91
70
|
---
|
|
@@ -100,7 +79,7 @@ Drawlib is engineered from the ground up for **AI-native documentation and diagr
|
|
|
100
79
|
2. **Code Synthesis & Grid Preview (`drawlib show -g`)**: The agent writes Python drawing blocks and Markdown prose, then renders a headless preview with a coordinate grid overlay.
|
|
101
80
|
3. **Multimodal Inspection & Self-Repair**: The agent visually inspects the rendered PNG for text clipping, overlapping labels, or style imbalances, repairing coordinates and styles autonomously until the diagram passes inspection.
|
|
102
81
|
- **Human Outer Loop (Intent & Review)**:
|
|
103
|
-
- The developer stays focused on high-level architecture and intent—providing initial goals, reviewing the compiled **Published Docs** (HTML / PDF / GitHub MD / Slide), and iterating on direction without ever nudging pixels in a GUI tool.
|
|
82
|
+
- The developer stays focused on high-level architecture and intent—providing initial goals, reviewing the compiled **Published Docs** (HTML / PDF / MS Word / GitHub MD / Slide / MS PowerPoint), and iterating on direction without ever nudging pixels in a GUI tool.
|
|
104
83
|
|
|
105
84
|
---
|
|
106
85
|
|
|
@@ -110,14 +89,13 @@ Install `drawlib` from PyPI using `pip` or `uv`:
|
|
|
110
89
|
|
|
111
90
|
```bash
|
|
112
91
|
pip install drawlib
|
|
92
|
+
# or: uv add drawlib
|
|
113
93
|
```
|
|
114
94
|
|
|
115
|
-
|
|
95
|
+
PDF, MS Word (`.docx`), and MS PowerPoint (`.pptx`) export work out of the box—`playwright`, `python-docx`, and `python-pptx` are standard dependencies, and headless Chromium (`chromium-headless-shell`) is downloaded automatically on your first `drawlib build pdf` or `drawlib build pptx` run.
|
|
116
96
|
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
playwright install chromium
|
|
120
|
-
```
|
|
97
|
+
- **Offline / Air-Gapped / CI Environments**: Pre-download all fonts, icons, maps, and headless Chromium ahead of time with `drawlib cache download --all` (or headless Chromium only with `drawlib cache download --browser`).
|
|
98
|
+
- **Minimal Linux Containers** (e.g., `python:3.12-slim` lacking OS shared libraries such as `libnss3` or `libgbm1`): Install OS browser dependencies once via `playwright install-deps chromium` (or `playwright install --with-deps --only-shell chromium`).
|
|
121
99
|
|
|
122
100
|
Verify the installation:
|
|
123
101
|
|
|
@@ -222,6 +200,10 @@ Compile or preview with the `drawlib` CLI:
|
|
|
222
200
|
# Build HTML site, GitHub Markdown, or PDF
|
|
223
201
|
./docs_src/build.sh
|
|
224
202
|
|
|
203
|
+
# Optional on-demand export to editable MS Word (.docx) or MS PowerPoint (.pptx)
|
|
204
|
+
drawlib build docx doc_src/ -o spec.docx --generate-index
|
|
205
|
+
drawlib build pptx slide_src/ -o deck.pptx
|
|
206
|
+
|
|
225
207
|
# Launch local HTTP server with broken-link check at http://localhost:8000
|
|
226
208
|
drawlib serve docs_html/
|
|
227
209
|
|
|
@@ -236,11 +218,11 @@ drawlib show docs_src/index.md service_routing.png -g -o preview_grid.png
|
|
|
236
218
|
| Command | Description |
|
|
237
219
|
| :--- | :--- |
|
|
238
220
|
| `drawlib init <site\|doc\|slide\|images>` | Scaffold a new documentation, slide deck, or image project |
|
|
239
|
-
| `drawlib build <html\|markdown\|pdf\|image>` | Compile source files into HTML, Markdown, PDF, or PNG/WebP images |
|
|
221
|
+
| `drawlib build <html\|markdown\|pdf\|docx\|slide\|pptx\|image>` | Compile source files into HTML, Markdown, PDF, MS Word (`.docx`), HTML Slides, MS PowerPoint (`.pptx`), or PNG/WebP images |
|
|
240
222
|
| `drawlib serve <html_dir> [--check]` | Start a local HTTP server for built HTML docs/slides with pre-flight link checks |
|
|
241
223
|
| `drawlib show <file> [target] [-g]` | Render and inspect a single script or embedded Markdown diagram (with optional grid) |
|
|
242
224
|
| `drawlib rules show [topic]` | On-demand CLI reference for AI agents to look up detailed API specs & best practices (`overview`, `style-guide`, `api`, `lib-*`) |
|
|
243
|
-
| `drawlib cache <list\|download\|clear>` | Manage local font and
|
|
225
|
+
| `drawlib cache <list\|download\|clear>` | Manage local font, icon, map, and headless Chromium caches (supports offline pre-caching via `--all` or `--browser`) |
|
|
244
226
|
|
|
245
227
|
---
|
|
246
228
|
|
|
@@ -4,7 +4,7 @@ build-backend = "uv_build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "drawlib"
|
|
7
|
-
version = "0.3.
|
|
7
|
+
version = "0.3.2"
|
|
8
8
|
description = "Python drawing library. Illustration as Code."
|
|
9
9
|
readme = "docs/README_PYPI.md"
|
|
10
10
|
requires-python = ">=3.11"
|
|
@@ -18,6 +18,9 @@ dependencies = [
|
|
|
18
18
|
"jinja2>=3.1",
|
|
19
19
|
"typer>=0.12.0",
|
|
20
20
|
"rich>=13.0.0",
|
|
21
|
+
"playwright>=1.49.0",
|
|
22
|
+
"python-docx>=1.2.0",
|
|
23
|
+
"python-pptx>=1.0.2",
|
|
21
24
|
]
|
|
22
25
|
|
|
23
26
|
[project.urls]
|
|
@@ -27,11 +30,6 @@ Repository = "https://github.com/yuichi110/drawlib"
|
|
|
27
30
|
[project.scripts]
|
|
28
31
|
drawlib = "drawlib._cli.main:main"
|
|
29
32
|
|
|
30
|
-
[project.optional-dependencies]
|
|
31
|
-
pdf = [
|
|
32
|
-
"playwright>=1.40.0",
|
|
33
|
-
]
|
|
34
|
-
|
|
35
33
|
[dependency-groups]
|
|
36
34
|
dev = [
|
|
37
35
|
"types-pillow>=10.2.0.20240311",
|
|
@@ -44,7 +42,6 @@ dev = [
|
|
|
44
42
|
"typer>=0.12.0",
|
|
45
43
|
"rich>=13.0.0",
|
|
46
44
|
"pytest-xdist>=3.8.0",
|
|
47
|
-
"playwright>=1.40.0",
|
|
48
45
|
]
|
|
49
46
|
|
|
50
47
|
[tool.ruff]
|
|
@@ -14,44 +14,60 @@ from __future__ import annotations
|
|
|
14
14
|
import importlib
|
|
15
15
|
from typing import TYPE_CHECKING, Any, Final
|
|
16
16
|
|
|
17
|
-
from drawlib._core.l1_core import LIB_NAME, LIB_VERSION
|
|
17
|
+
from drawlib._core.l1_core._const import LIB_NAME, LIB_VERSION
|
|
18
18
|
|
|
19
19
|
__version__: Final[str] = LIB_VERSION
|
|
20
20
|
|
|
21
21
|
if TYPE_CHECKING:
|
|
22
22
|
from drawlib import (
|
|
23
|
+
anim,
|
|
24
|
+
canvas,
|
|
25
|
+
charts,
|
|
26
|
+
diagrams,
|
|
27
|
+
fonts,
|
|
28
|
+
graph,
|
|
29
|
+
icons,
|
|
30
|
+
images,
|
|
31
|
+
lines,
|
|
32
|
+
math,
|
|
33
|
+
preset_colors,
|
|
34
|
+
preset_styles,
|
|
35
|
+
shapes,
|
|
36
|
+
slide,
|
|
37
|
+
smartarts,
|
|
38
|
+
styles,
|
|
39
|
+
text,
|
|
23
40
|
tools,
|
|
41
|
+
types,
|
|
42
|
+
utils,
|
|
24
43
|
)
|
|
25
44
|
|
|
26
|
-
|
|
27
|
-
anim,
|
|
28
|
-
canvas,
|
|
29
|
-
charts,
|
|
30
|
-
diagrams,
|
|
31
|
-
fonts,
|
|
32
|
-
graph,
|
|
33
|
-
icons,
|
|
34
|
-
images,
|
|
35
|
-
lines,
|
|
36
|
-
math,
|
|
37
|
-
preset_colors,
|
|
38
|
-
preset_styles,
|
|
39
|
-
shapes,
|
|
40
|
-
slide,
|
|
41
|
-
smartarts,
|
|
42
|
-
styles,
|
|
43
|
-
text,
|
|
44
|
-
types,
|
|
45
|
-
utils,
|
|
46
|
-
)
|
|
47
|
-
|
|
48
|
-
_LAZY_MODULES: dict[str, str] = {
|
|
45
|
+
_LAZY_MODULES: Final[dict[str, str]] = {
|
|
46
|
+
"anim": "drawlib.anim",
|
|
47
|
+
"canvas": "drawlib.canvas",
|
|
48
|
+
"charts": "drawlib.charts",
|
|
49
|
+
"diagrams": "drawlib.diagrams",
|
|
50
|
+
"fonts": "drawlib.fonts",
|
|
51
|
+
"graph": "drawlib.graph",
|
|
52
|
+
"icons": "drawlib.icons",
|
|
53
|
+
"images": "drawlib.images",
|
|
54
|
+
"lines": "drawlib.lines",
|
|
55
|
+
"math": "drawlib.math",
|
|
56
|
+
"preset_colors": "drawlib.preset_colors",
|
|
57
|
+
"preset_styles": "drawlib.preset_styles",
|
|
58
|
+
"shapes": "drawlib.shapes",
|
|
59
|
+
"slide": "drawlib.slide",
|
|
60
|
+
"smartarts": "drawlib.smartarts",
|
|
61
|
+
"styles": "drawlib.styles",
|
|
62
|
+
"text": "drawlib.text",
|
|
49
63
|
"tools": "drawlib.tools",
|
|
64
|
+
"types": "drawlib.types",
|
|
65
|
+
"utils": "drawlib.utils",
|
|
50
66
|
}
|
|
51
67
|
|
|
52
68
|
|
|
53
69
|
def __getattr__(name: str) -> Any: # noqa: ANN401
|
|
54
|
-
"""Lazy-load
|
|
70
|
+
"""Lazy-load submodules on first attribute access (PEP 562)."""
|
|
55
71
|
if name in _LAZY_MODULES:
|
|
56
72
|
module = importlib.import_module(_LAZY_MODULES[name])
|
|
57
73
|
globals()[name] = module
|
|
@@ -17,8 +17,8 @@ from contextlib import contextmanager
|
|
|
17
17
|
from typing import Literal
|
|
18
18
|
|
|
19
19
|
from PIL import Image
|
|
20
|
-
from pydantic import validate_call
|
|
21
20
|
|
|
21
|
+
from drawlib._core.l1_core import validate_call
|
|
22
22
|
from drawlib._core.l2_types import PosInt
|
|
23
23
|
from drawlib._core.l4_canvas import canvas
|
|
24
24
|
|
|
@@ -11,6 +11,11 @@
|
|
|
11
11
|
|
|
12
12
|
from __future__ import annotations
|
|
13
13
|
|
|
14
|
+
from drawlib._builder._common.browser import (
|
|
15
|
+
import_sync_playwright,
|
|
16
|
+
install_headless_chromium,
|
|
17
|
+
launch_headless_chromium,
|
|
18
|
+
)
|
|
14
19
|
from drawlib._builder._common.cache import (
|
|
15
20
|
BuildImageCache,
|
|
16
21
|
CliImageCache,
|
|
@@ -23,6 +28,11 @@ from drawlib._builder._common.cache_manager import (
|
|
|
23
28
|
download_cache,
|
|
24
29
|
list_cache,
|
|
25
30
|
)
|
|
31
|
+
from drawlib._builder._common.office import (
|
|
32
|
+
ensure_static_office_image,
|
|
33
|
+
normalize_opc_zip_timestamps,
|
|
34
|
+
resolve_office_datetime,
|
|
35
|
+
)
|
|
26
36
|
from drawlib._builder._common.progress import (
|
|
27
37
|
BAR_WIDTH,
|
|
28
38
|
FileBuildProgress,
|
|
@@ -44,13 +54,19 @@ __all__ = [
|
|
|
44
54
|
"clear_cache",
|
|
45
55
|
"clear_image_cache",
|
|
46
56
|
"download_cache",
|
|
57
|
+
"ensure_static_office_image",
|
|
47
58
|
"format_duplicate_output_error",
|
|
48
59
|
"format_progress_line",
|
|
49
60
|
"hash_file",
|
|
50
61
|
"hash_text",
|
|
62
|
+
"import_sync_playwright",
|
|
63
|
+
"install_headless_chromium",
|
|
64
|
+
"launch_headless_chromium",
|
|
51
65
|
"list_cache",
|
|
52
66
|
"load_styles",
|
|
53
67
|
"load_styles_and_utils",
|
|
54
68
|
"load_utils",
|
|
69
|
+
"normalize_opc_zip_timestamps",
|
|
70
|
+
"resolve_office_datetime",
|
|
55
71
|
"resolve_styles_and_utils",
|
|
56
72
|
]
|
|
@@ -0,0 +1,267 @@
|
|
|
1
|
+
# Copyright (c) 2026 Yuichi Ito (yuichi@yuichi.com)
|
|
2
|
+
#
|
|
3
|
+
# This software is licensed under the Apache License, Version 2.0.
|
|
4
|
+
# For more information, please visit: https://github.com/yuichi110/drawlib
|
|
5
|
+
#
|
|
6
|
+
# This software is provided "as is", without warranty of any kind,
|
|
7
|
+
# express or implied, including but not limited to the warranties of
|
|
8
|
+
# merchantability, fitness for a particular purpose and noninfringement.
|
|
9
|
+
|
|
10
|
+
"""Shared Playwright headless Chromium launcher and on-demand installer."""
|
|
11
|
+
|
|
12
|
+
from __future__ import annotations
|
|
13
|
+
|
|
14
|
+
import contextlib
|
|
15
|
+
import os
|
|
16
|
+
import subprocess # noqa: S404
|
|
17
|
+
import sys
|
|
18
|
+
import tempfile
|
|
19
|
+
import threading
|
|
20
|
+
from collections.abc import Callable, Iterator, Sequence
|
|
21
|
+
from pathlib import Path
|
|
22
|
+
from typing import TYPE_CHECKING, Final
|
|
23
|
+
|
|
24
|
+
from drawlib._core.l1_core import logger
|
|
25
|
+
|
|
26
|
+
if TYPE_CHECKING:
|
|
27
|
+
from playwright.sync_api import Browser, Playwright, PlaywrightContextManager
|
|
28
|
+
|
|
29
|
+
_INSTALL_ARGS: Final[tuple[str, ...]] = ("install", "--only-shell", "chromium")
|
|
30
|
+
_DEFAULT_CHROMIUM_ARGS: Final[tuple[str, ...]] = (
|
|
31
|
+
"--font-render-hinting=medium",
|
|
32
|
+
"--enable-font-antialiasing",
|
|
33
|
+
)
|
|
34
|
+
_INSTALL_THREAD_LOCK = threading.Lock()
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
def _resolve_lock_file_paths() -> list[Path]:
|
|
38
|
+
"""Return candidate per-user lock file paths in priority order."""
|
|
39
|
+
candidates: list[Path] = []
|
|
40
|
+
browsers_path = os.environ.get("PLAYWRIGHT_BROWSERS_PATH", "").strip()
|
|
41
|
+
if browsers_path and browsers_path != "0":
|
|
42
|
+
candidates.append(Path(browsers_path).expanduser() / ".drawlib_browser_install.lock")
|
|
43
|
+
|
|
44
|
+
if sys.platform == "win32":
|
|
45
|
+
local_app_data = os.environ.get("LOCALAPPDATA", str(Path.home()))
|
|
46
|
+
candidates.append(Path(local_app_data) / "drawlib" / "playwright_install.lock")
|
|
47
|
+
else:
|
|
48
|
+
xdg_cache = os.environ.get("XDG_CACHE_HOME", str(Path.home() / ".cache"))
|
|
49
|
+
candidates.append(Path(xdg_cache) / "drawlib" / "playwright_install.lock")
|
|
50
|
+
|
|
51
|
+
uid_suffix = str(os.getuid()) if hasattr(os, "getuid") else "user"
|
|
52
|
+
candidates.append(Path(tempfile.gettempdir()) / f"drawlib_{uid_suffix}" / "playwright_install.lock")
|
|
53
|
+
return candidates
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
@contextlib.contextmanager
|
|
57
|
+
def _browser_install_lock() -> Iterator[None]:
|
|
58
|
+
"""Serialize concurrent headless Chromium downloads across threads and processes."""
|
|
59
|
+
with _INSTALL_THREAD_LOCK:
|
|
60
|
+
lock_handle = None
|
|
61
|
+
for lock_path in _resolve_lock_file_paths():
|
|
62
|
+
try:
|
|
63
|
+
lock_path.parent.mkdir(parents=True, exist_ok=True)
|
|
64
|
+
lock_handle = lock_path.open("a+", encoding="utf-8")
|
|
65
|
+
break
|
|
66
|
+
except OSError:
|
|
67
|
+
continue
|
|
68
|
+
|
|
69
|
+
if lock_handle is None:
|
|
70
|
+
yield
|
|
71
|
+
return
|
|
72
|
+
|
|
73
|
+
locked = False
|
|
74
|
+
try:
|
|
75
|
+
with contextlib.suppress(ImportError, OSError):
|
|
76
|
+
import fcntl
|
|
77
|
+
|
|
78
|
+
fcntl.flock(lock_handle.fileno(), fcntl.LOCK_EX)
|
|
79
|
+
locked = True
|
|
80
|
+
yield
|
|
81
|
+
finally:
|
|
82
|
+
if locked:
|
|
83
|
+
with contextlib.suppress(ImportError, OSError):
|
|
84
|
+
import fcntl
|
|
85
|
+
|
|
86
|
+
fcntl.flock(lock_handle.fileno(), fcntl.LOCK_UN)
|
|
87
|
+
with contextlib.suppress(OSError):
|
|
88
|
+
lock_handle.close()
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
def _is_missing_browser_executable_error(err: BaseException) -> bool:
|
|
92
|
+
"""Return True if Playwright failed because the browser binary is not downloaded yet."""
|
|
93
|
+
err_lower = str(err).lower()
|
|
94
|
+
return (
|
|
95
|
+
"executable doesn't exist" in err_lower
|
|
96
|
+
or "looks like playwright was just installed or updated" in err_lower
|
|
97
|
+
)
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
def _is_missing_system_deps_error(err: BaseException) -> bool:
|
|
101
|
+
"""Return True if Chromium failed due to missing Linux OS shared libraries."""
|
|
102
|
+
err_lower = str(err).lower()
|
|
103
|
+
return any(
|
|
104
|
+
marker in err_lower
|
|
105
|
+
for marker in (
|
|
106
|
+
"host system is missing dependencies",
|
|
107
|
+
"error while loading shared libraries",
|
|
108
|
+
"cannot open shared object file",
|
|
109
|
+
"install-deps",
|
|
110
|
+
)
|
|
111
|
+
)
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
def _format_missing_playwright_error(context_label: str) -> str:
|
|
115
|
+
"""Format an actionable error message when the playwright Python package is missing."""
|
|
116
|
+
return (
|
|
117
|
+
f"\n[{context_label} Error]\n"
|
|
118
|
+
f"{context_label} requires the 'playwright' package.\n\n"
|
|
119
|
+
"Reinstall drawlib or install Playwright:\n"
|
|
120
|
+
" - For uv users:\n"
|
|
121
|
+
" uv sync\n"
|
|
122
|
+
" (or: uv add playwright)\n\n"
|
|
123
|
+
" - For pip users:\n"
|
|
124
|
+
" pip install drawlib\n"
|
|
125
|
+
" (or: pip install playwright)\n"
|
|
126
|
+
)
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
def _format_missing_system_deps_error(context_label: str, err: BaseException) -> str:
|
|
130
|
+
"""Format an actionable error message for CI / minimal Linux containers missing OS libraries."""
|
|
131
|
+
return (
|
|
132
|
+
f"\n[{context_label} Error]\n"
|
|
133
|
+
"Headless Chromium could not start because required OS shared libraries are missing\n"
|
|
134
|
+
"(common in minimal Linux containers and CI pipelines).\n\n"
|
|
135
|
+
"Install the required system dependencies (requires root/sudo privileges):\n"
|
|
136
|
+
" - For uv users:\n"
|
|
137
|
+
" uv run playwright install --with-deps chromium\n"
|
|
138
|
+
" (or OS libraries only: uv run playwright install-deps chromium)\n\n"
|
|
139
|
+
" - For pip / Docker users:\n"
|
|
140
|
+
" playwright install --with-deps chromium\n"
|
|
141
|
+
" (or OS libraries only: playwright install-deps chromium)\n\n"
|
|
142
|
+
f"Details:\n{err}"
|
|
143
|
+
)
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
def _format_missing_browser_error(context_label: str, detail: str = "") -> str:
|
|
147
|
+
"""Format an actionable error message when headless Chromium cannot be downloaded."""
|
|
148
|
+
extra = f"\nDetails:\n{detail}\n" if detail else ""
|
|
149
|
+
return (
|
|
150
|
+
f"\n[{context_label} Error]\n"
|
|
151
|
+
"Headless Chromium browser is not installed and could not be downloaded automatically.\n\n"
|
|
152
|
+
"To pre-download headless Chromium manually, run:\n"
|
|
153
|
+
" - Via drawlib CLI:\n"
|
|
154
|
+
" uv run drawlib cache download --browser\n"
|
|
155
|
+
" (or: drawlib cache download --browser)\n\n"
|
|
156
|
+
" - Via Playwright CLI:\n"
|
|
157
|
+
" uv run playwright install --only-shell chromium\n"
|
|
158
|
+
" (or: playwright install --only-shell chromium)\n"
|
|
159
|
+
f"{extra}"
|
|
160
|
+
)
|
|
161
|
+
|
|
162
|
+
|
|
163
|
+
def import_sync_playwright(
|
|
164
|
+
context_label: str = "PDF Export",
|
|
165
|
+
) -> Callable[[], PlaywrightContextManager]:
|
|
166
|
+
"""Lazily import and return `playwright.sync_api.sync_playwright`.
|
|
167
|
+
|
|
168
|
+
Args:
|
|
169
|
+
context_label (str): Human-readable feature name for error messages.
|
|
170
|
+
|
|
171
|
+
Returns:
|
|
172
|
+
Callable[[], PlaywrightContextManager]: Playwright sync context manager factory.
|
|
173
|
+
|
|
174
|
+
Raises:
|
|
175
|
+
RuntimeError: If the `playwright` package is not installed.
|
|
176
|
+
"""
|
|
177
|
+
try:
|
|
178
|
+
from playwright.sync_api import sync_playwright
|
|
179
|
+
except ImportError as err:
|
|
180
|
+
raise RuntimeError(_format_missing_playwright_error(context_label)) from err
|
|
181
|
+
return sync_playwright
|
|
182
|
+
|
|
183
|
+
|
|
184
|
+
def install_headless_chromium(context_label: str = "Browser Setup") -> None:
|
|
185
|
+
"""Download Playwright's lightweight `chromium-headless-shell` via its bundled driver.
|
|
186
|
+
|
|
187
|
+
Args:
|
|
188
|
+
context_label (str): Human-readable feature name for error messages.
|
|
189
|
+
|
|
190
|
+
Raises:
|
|
191
|
+
RuntimeError: If Playwright is missing, driver binaries are invalid, or download fails.
|
|
192
|
+
"""
|
|
193
|
+
try:
|
|
194
|
+
from playwright._impl._driver import ( # noqa: PLC2701
|
|
195
|
+
compute_driver_executable,
|
|
196
|
+
get_driver_env,
|
|
197
|
+
)
|
|
198
|
+
except ImportError as err:
|
|
199
|
+
raise RuntimeError(_format_missing_playwright_error(context_label)) from err
|
|
200
|
+
|
|
201
|
+
driver_executable, driver_cli = compute_driver_executable()
|
|
202
|
+
exec_path = Path(driver_executable).resolve()
|
|
203
|
+
cli_path = Path(driver_cli).resolve()
|
|
204
|
+
if not exec_path.is_file() or not cli_path.is_file():
|
|
205
|
+
detail = f"Playwright driver executable not found ({exec_path}, {cli_path})."
|
|
206
|
+
raise RuntimeError(_format_missing_browser_error(context_label, detail=detail))
|
|
207
|
+
|
|
208
|
+
with _browser_install_lock():
|
|
209
|
+
logger.info("Downloading headless Chromium browser (first-time setup)...")
|
|
210
|
+
proc = subprocess.run( # noqa: S603
|
|
211
|
+
[str(exec_path), str(cli_path), *_INSTALL_ARGS],
|
|
212
|
+
env=get_driver_env(),
|
|
213
|
+
capture_output=True,
|
|
214
|
+
text=True,
|
|
215
|
+
check=False,
|
|
216
|
+
)
|
|
217
|
+
if proc.returncode != 0:
|
|
218
|
+
output = (proc.stderr or proc.stdout or "").strip()
|
|
219
|
+
detail = output or f"Playwright driver exited with status code {proc.returncode}."
|
|
220
|
+
raise RuntimeError(_format_missing_browser_error(context_label, detail=detail))
|
|
221
|
+
logger.info("Headless Chromium browser is ready.")
|
|
222
|
+
|
|
223
|
+
|
|
224
|
+
def launch_headless_chromium(
|
|
225
|
+
playwright: Playwright,
|
|
226
|
+
*,
|
|
227
|
+
args: Sequence[str] | None = None,
|
|
228
|
+
auto_install: bool = True,
|
|
229
|
+
context_label: str = "PDF Export",
|
|
230
|
+
) -> Browser:
|
|
231
|
+
"""Launch headless Chromium, automatically downloading `chromium-headless-shell` on first use.
|
|
232
|
+
|
|
233
|
+
Args:
|
|
234
|
+
playwright (Playwright): Active Playwright instance from `sync_playwright()`.
|
|
235
|
+
args (Sequence[str] | None): Chromium launch flags. Uses font-hinting defaults when None.
|
|
236
|
+
auto_install (bool): Automatically download `chromium-headless-shell` if missing.
|
|
237
|
+
context_label (str): Human-readable feature name for error messages.
|
|
238
|
+
|
|
239
|
+
Returns:
|
|
240
|
+
Browser: Launched headless Chromium browser instance.
|
|
241
|
+
|
|
242
|
+
Raises:
|
|
243
|
+
RuntimeError: If browser launch or on-demand installation fails.
|
|
244
|
+
"""
|
|
245
|
+
launch_args = list(args) if args is not None else list(_DEFAULT_CHROMIUM_ARGS)
|
|
246
|
+
try:
|
|
247
|
+
return playwright.chromium.launch(headless=True, args=launch_args)
|
|
248
|
+
except Exception as err:
|
|
249
|
+
if _is_missing_system_deps_error(err):
|
|
250
|
+
raise RuntimeError(_format_missing_system_deps_error(context_label, err)) from err
|
|
251
|
+
if not _is_missing_browser_executable_error(err):
|
|
252
|
+
raise RuntimeError(f"Failed to launch Chromium browser: {err}") from err
|
|
253
|
+
if not auto_install:
|
|
254
|
+
raise RuntimeError(_format_missing_browser_error(context_label, detail=str(err))) from err
|
|
255
|
+
|
|
256
|
+
install_headless_chromium(context_label=context_label)
|
|
257
|
+
|
|
258
|
+
try:
|
|
259
|
+
return playwright.chromium.launch(headless=True, args=launch_args)
|
|
260
|
+
except Exception as retry_err:
|
|
261
|
+
if _is_missing_system_deps_error(retry_err):
|
|
262
|
+
raise RuntimeError(_format_missing_system_deps_error(context_label, retry_err)) from retry_err
|
|
263
|
+
if _is_missing_browser_executable_error(retry_err):
|
|
264
|
+
raise RuntimeError(
|
|
265
|
+
_format_missing_browser_error(context_label, detail=str(retry_err))
|
|
266
|
+
) from retry_err
|
|
267
|
+
raise RuntimeError(f"Failed to launch Chromium browser: {retry_err}") from retry_err
|