pbi-cli/assets/layers.svg
MinaSaad1 756a7c98e3 fix: revert all SVG assets to pre-marketing state
Remove the VIBE BI block-art header and marketing branding that was
added to all 17 assets in v3.10.3. Restore each SVG to its original
content focused on the feature it illustrates (chat demo, DAX
debugging, architecture flow, etc.) without the promotional overlay.
2026-04-05 22:52:35 +02:00

159 lines
13 KiB
XML

<svg xmlns="http://www.w3.org/2000/svg" width="850" height="440" viewBox="0 0 850 440">
<rect width="100%" height="100%" fill="#0d1117" rx="8"/>
<!-- Title -->
<text x="425" y="32" font-family="'Segoe UI', Arial, sans-serif" font-size="16" fill="#F2C811" text-anchor="middle" font-weight="bold">Dual-Layer Architecture</text>
<!-- ===== MODELING BAND y=48-188 ===== -->
<rect x="15" y="48" width="820" height="140" rx="10" fill="#58a6ff" fill-opacity="0.05" stroke="#58a6ff" stroke-width="1.5"/>
<rect x="15" y="48" width="6" height="140" rx="3" fill="#58a6ff" fill-opacity="0.85"/>
<!-- Database cylinder icon (centered at x=85, top of band) -->
<g transform="translate(59, 58)">
<ellipse cx="26" cy="10" rx="24" ry="10" fill="#58a6ff" fill-opacity="0.18" stroke="#58a6ff" stroke-width="2"/>
<line x1="2" y1="10" x2="2" y2="46" stroke="#58a6ff" stroke-width="2"/>
<line x1="50" y1="10" x2="50" y2="46" stroke="#58a6ff" stroke-width="2"/>
<ellipse cx="26" cy="46" rx="24" ry="10" fill="#58a6ff" fill-opacity="0.1" stroke="#58a6ff" stroke-width="2"/>
<path d="M2,22 Q26,32 50,22" fill="none" stroke="#58a6ff" stroke-width="1" opacity="0.35"/>
<path d="M2,33 Q26,43 50,33" fill="none" stroke="#58a6ff" stroke-width="1" opacity="0.35"/>
<circle cx="14" cy="26" r="2" fill="#58a6ff" fill-opacity="0.5"/>
<circle cx="26" cy="28" r="2" fill="#58a6ff" fill-opacity="0.4"/>
<circle cx="38" cy="26" r="2" fill="#58a6ff" fill-opacity="0.5"/>
<circle cx="20" cy="38" r="2" fill="#58a6ff" fill-opacity="0.3"/>
<circle cx="32" cy="38" r="2" fill="#58a6ff" fill-opacity="0.3"/>
</g>
<!-- MODELING label BELOW the cylinder icon -->
<text x="85" y="138" font-family="'Segoe UI', Arial, sans-serif" font-size="16" fill="#58a6ff" font-weight="bold" text-anchor="middle">MODELING</text>
<line x1="155" y1="54" x2="155" y2="182" stroke="#58a6ff" stroke-opacity="0.2" stroke-width="1"/>
<!-- ===== MODELING TILE 1: Export / Import ===== -->
<rect x="168" y="60" width="195" height="120" rx="8" fill="#58a6ff" fill-opacity="0.08" stroke="#58a6ff" stroke-opacity="0.3" stroke-width="1"/>
<g transform="translate(240, 68)">
<line x1="14" y1="46" x2="14" y2="8" stroke="#58a6ff" stroke-width="3" stroke-linecap="round"/>
<polygon points="14,3 8,14 20,14" fill="#58a6ff"/>
<line x1="32" y1="8" x2="32" y2="46" stroke="#58a6ff" stroke-width="3" stroke-linecap="round"/>
<polygon points="32,52 26,40 38,40" fill="#58a6ff"/>
<rect x="0" y="58" width="46" height="14" rx="7" fill="#58a6ff" fill-opacity="0.2" stroke="#58a6ff" stroke-width="0.8"/>
<text x="23" y="68" font-family="'Segoe UI', Arial, sans-serif" font-size="9" fill="#a5d6ff" text-anchor="middle" font-weight="600">TMDL</text>
</g>
<text x="265" y="158" font-family="'Segoe UI', Arial, sans-serif" font-size="12" fill="#a5d6ff" text-anchor="middle" font-weight="600">Export / Import</text>
<!-- ===== MODELING TILE 2: DAX Engine ===== -->
<rect x="373" y="60" width="195" height="120" rx="8" fill="#58a6ff" fill-opacity="0.08" stroke="#58a6ff" stroke-opacity="0.3" stroke-width="1"/>
<g transform="translate(446, 68)">
<circle cx="24" cy="24" r="24" fill="#F2C811" fill-opacity="0.08" stroke="#F2C811" stroke-width="2"/>
<circle cx="24" cy="24" r="16" fill="#F2C811" fill-opacity="0.06"/>
<polygon points="18,13 18,35 38,24" fill="#F2C811" fill-opacity="0.95"/>
<rect x="5" y="54" width="38" height="14" rx="7" fill="#F2C811" fill-opacity="0.2" stroke="#F2C811" stroke-width="0.8"/>
<text x="24" y="64" font-family="'Segoe UI', Arial, sans-serif" font-size="9" fill="#F2C811" text-anchor="middle" font-weight="600">DAX</text>
</g>
<text x="470" y="158" font-family="'Segoe UI', Arial, sans-serif" font-size="12" fill="#a5d6ff" text-anchor="middle" font-weight="600">DAX Engine</text>
<!-- ===== MODELING TILE 3: Schema Control ===== -->
<rect x="578" y="60" width="195" height="120" rx="8" fill="#58a6ff" fill-opacity="0.08" stroke="#58a6ff" stroke-opacity="0.3" stroke-width="1"/>
<g transform="translate(647, 68)">
<rect x="0" y="0" width="48" height="40" rx="3" fill="none" stroke="#58a6ff" stroke-width="2"/>
<line x1="0" y1="12" x2="48" y2="12" stroke="#58a6ff" stroke-width="1.5" opacity="0.7"/>
<line x1="16" y1="0" x2="16" y2="40" stroke="#58a6ff" stroke-width="1.5" opacity="0.5"/>
<rect x="2" y="2" width="12" height="8" rx="1" fill="#58a6ff" fill-opacity="0.4"/>
<rect x="18" y="2" width="28" height="8" rx="1" fill="#58a6ff" fill-opacity="0.4"/>
<rect x="2" y="14" width="12" height="7" rx="1" fill="#58a6ff" fill-opacity="0.3"/>
<rect x="18" y="14" width="28" height="7" rx="1" fill="#58a6ff" fill-opacity="0.3"/>
<rect x="2" y="23" width="12" height="7" rx="1" fill="#58a6ff" fill-opacity="0.2"/>
<rect x="18" y="23" width="28" height="7" rx="1" fill="#58a6ff" fill-opacity="0.2"/>
<rect x="2" y="32" width="12" height="6" rx="1" fill="#58a6ff" fill-opacity="0.1"/>
<rect x="18" y="32" width="28" height="6" rx="1" fill="#58a6ff" fill-opacity="0.1"/>
<rect x="0" y="46" width="48" height="14" rx="7" fill="#58a6ff" fill-opacity="0.2" stroke="#58a6ff" stroke-width="0.8"/>
<text x="24" y="56" font-family="'Segoe UI', Arial, sans-serif" font-size="9" fill="#a5d6ff" text-anchor="middle" font-weight="600">SCHEMA</text>
</g>
<text x="675" y="158" font-family="'Segoe UI', Arial, sans-serif" font-size="12" fill="#a5d6ff" text-anchor="middle" font-weight="600">Schema Control</text>
<!-- ===== CONNECTOR: PBI-CLI Block Art ===== -->
<line x1="15" y1="232" x2="310" y2="232" stroke="#F2C811" stroke-opacity="0.2" stroke-width="1" stroke-dasharray="4,4"/>
<line x1="540" y1="232" x2="835" y2="232" stroke="#F2C811" stroke-opacity="0.2" stroke-width="1" stroke-dasharray="4,4"/>
<!-- PBI-CLI block art (shadow) -->
<text font-family="'Courier New', Courier, monospace" font-size="7" fill="#7A6508" xml:space="preserve">
<tspan x="321" y="210">██████╗ ██████╗ ██╗ ██████╗ ██╗ ██╗</tspan>
<tspan x="321" y="219">██╔══██╗ ██╔══██╗ ██║ ██╔════╝ ██║ ██║</tspan>
<tspan x="321" y="228">██████╔╝ ██████╔╝ ██║ ███╗ ██║ ██║ ██║</tspan>
<tspan x="321" y="237">██╔═══╝ ██╔══██╗ ██║ ╚══╝ ██║ ██║ ██║</tspan>
<tspan x="321" y="246">██║ ██████╔╝ ██║ ╚██████╗ ███████╗ ██║</tspan>
<tspan x="321" y="255">╚═╝ ╚═════╝ ╚═╝ ╚═════╝ ╚══════╝ ╚═╝</tspan>
</text>
<!-- PBI-CLI block art (main) -->
<text font-family="'Courier New', Courier, monospace" font-size="7" fill="#F2C811" xml:space="preserve">
<tspan x="320" y="209">██████╗ ██████╗ ██╗ ██████╗ ██╗ ██╗</tspan>
<tspan x="320" y="218">██╔══██╗ ██╔══██╗ ██║ ██╔════╝ ██║ ██║</tspan>
<tspan x="320" y="227">██████╔╝ ██████╔╝ ██║ ███╗ ██║ ██║ ██║</tspan>
<tspan x="320" y="236">██╔═══╝ ██╔══██╗ ██║ ╚══╝ ██║ ██║ ██║</tspan>
<tspan x="320" y="245">██║ ██████╔╝ ██║ ╚██████╗ ███████╗ ██║</tspan>
<tspan x="320" y="254">╚═╝ ╚═════╝ ╚═╝ ╚═════╝ ╚══════╝ ╚═╝</tspan>
</text>
<!-- ===== REPORTING BAND y=278-418 ===== -->
<rect x="15" y="278" width="820" height="140" rx="10" fill="#06d6a0" fill-opacity="0.05" stroke="#06d6a0" stroke-width="1.5"/>
<rect x="15" y="278" width="6" height="140" rx="3" fill="#06d6a0" fill-opacity="0.85"/>
<!-- Bar chart icon (centered at x=85, top of band) -->
<g transform="translate(56, 288)">
<rect x="0" y="44" width="12" height="20" rx="2" fill="none" stroke="#06d6a0" stroke-width="2"/>
<rect x="15" y="30" width="12" height="34" rx="2" fill="#06d6a0" fill-opacity="0.25" stroke="#06d6a0" stroke-width="2"/>
<rect x="30" y="14" width="12" height="50" rx="2" fill="#06d6a0" fill-opacity="0.45" stroke="#06d6a0" stroke-width="2"/>
<rect x="45" y="24" width="12" height="40" rx="2" fill="#06d6a0" fill-opacity="0.35" stroke="#06d6a0" stroke-width="2"/>
<line x1="0" y1="64" x2="57" y2="64" stroke="#06d6a0" stroke-width="1.5" opacity="0.5"/>
<polyline points="6,42 21,28 36,12 51,22" fill="none" stroke="#7ee787" stroke-width="1.5" stroke-dasharray="3,2" opacity="0.6"/>
</g>
<!-- REPORTING label BELOW the bar chart icon -->
<text x="85" y="372" font-family="'Segoe UI', Arial, sans-serif" font-size="16" fill="#06d6a0" font-weight="bold" text-anchor="middle">REPORTING</text>
<line x1="155" y1="284" x2="155" y2="412" stroke="#06d6a0" stroke-opacity="0.2" stroke-width="1"/>
<!-- ===== REPORTING TILE 1: Visual Builder ===== -->
<rect x="168" y="290" width="195" height="120" rx="8" fill="#06d6a0" fill-opacity="0.08" stroke="#06d6a0" stroke-opacity="0.3" stroke-width="1"/>
<g transform="translate(228, 298)">
<rect x="0" y="0" width="60" height="44" rx="4" fill="none" stroke="#06d6a0" stroke-width="2"/>
<rect x="5" y="24" width="10" height="18" rx="1" fill="#06d6a0" fill-opacity="0.45"/>
<rect x="18" y="16" width="10" height="26" rx="1" fill="#06d6a0" fill-opacity="0.6"/>
<rect x="31" y="8" width="10" height="34" rx="1" fill="#06d6a0" fill-opacity="0.8"/>
<rect x="44" y="12" width="10" height="30" rx="1" fill="#06d6a0" fill-opacity="0.7"/>
<circle cx="54" cy="8" r="9" fill="#06d6a0" fill-opacity="0.2" stroke="#06d6a0" stroke-width="1"/>
<text x="54" y="12" font-family="'Segoe UI', Arial, sans-serif" font-size="8" fill="#06d6a0" text-anchor="middle" font-weight="bold">32</text>
<rect x="0" y="50" width="60" height="14" rx="7" fill="#06d6a0" fill-opacity="0.2" stroke="#06d6a0" stroke-width="0.8"/>
<text x="30" y="60" font-family="'Segoe UI', Arial, sans-serif" font-size="9" fill="#7ee787" text-anchor="middle" font-weight="600">VISUALS</text>
</g>
<text x="265" y="388" font-family="'Segoe UI', Arial, sans-serif" font-size="12" fill="#7ee787" text-anchor="middle" font-weight="600">Visual Builder</text>
<!-- ===== REPORTING TILE 2: Data Binding ===== -->
<rect x="373" y="290" width="195" height="120" rx="8" fill="#06d6a0" fill-opacity="0.08" stroke="#06d6a0" stroke-opacity="0.3" stroke-width="1"/>
<g transform="translate(430, 298)">
<circle cx="15" cy="22" r="15" fill="none" stroke="#06d6a0" stroke-width="2"/>
<circle cx="55" cy="22" r="15" fill="none" stroke="#06d6a0" stroke-width="2"/>
<rect x="24" y="16" width="12" height="12" rx="3" fill="#06d6a0" fill-opacity="0.4" stroke="#06d6a0" stroke-width="1.5"/>
<rect x="34" y="16" width="12" height="12" rx="3" fill="#06d6a0" fill-opacity="0.4" stroke="#06d6a0" stroke-width="1.5"/>
<circle cx="15" cy="22" r="5" fill="#06d6a0" fill-opacity="0.5"/>
<circle cx="55" cy="22" r="5" fill="#06d6a0" fill-opacity="0.5"/>
<rect x="10" y="44" width="50" height="14" rx="7" fill="#06d6a0" fill-opacity="0.2" stroke="#06d6a0" stroke-width="0.8"/>
<text x="35" y="54" font-family="'Segoe UI', Arial, sans-serif" font-size="9" fill="#7ee787" text-anchor="middle" font-weight="600">BIND</text>
</g>
<text x="470" y="388" font-family="'Segoe UI', Arial, sans-serif" font-size="12" fill="#7ee787" text-anchor="middle" font-weight="600">Data Binding</text>
<!-- ===== REPORTING TILE 3: Theme Engine ===== -->
<rect x="578" y="290" width="195" height="120" rx="8" fill="#06d6a0" fill-opacity="0.08" stroke="#06d6a0" stroke-opacity="0.3" stroke-width="1"/>
<g transform="translate(647, 298)">
<circle cx="26" cy="22" r="22" fill="none" stroke="#06d6a0" stroke-width="2"/>
<circle cx="26" cy="28" r="7" fill="#0d1117" stroke="#06d6a0" stroke-width="1.5"/>
<circle cx="12" cy="9" r="6" fill="#06d6a0" fill-opacity="0.9"/>
<circle cx="26" cy="3" r="6" fill="#F2C811" fill-opacity="0.9"/>
<circle cx="40" cy="9" r="6" fill="#58a6ff" fill-opacity="0.9"/>
<circle cx="44" cy="22" r="6" fill="#c084fc" fill-opacity="0.9"/>
<circle cx="8" cy="22" r="6" fill="#d97757" fill-opacity="0.9"/>
<rect x="3" y="50" width="46" height="14" rx="7" fill="#06d6a0" fill-opacity="0.2" stroke="#06d6a0" stroke-width="0.8"/>
<text x="26" y="60" font-family="'Segoe UI', Arial, sans-serif" font-size="9" fill="#7ee787" text-anchor="middle" font-weight="600">THEME</text>
</g>
<text x="675" y="388" font-family="'Segoe UI', Arial, sans-serif" font-size="12" fill="#7ee787" text-anchor="middle" font-weight="600">Theme Engine</text>
</svg>