images/docs/Diagrams.svg/Canvas_angular___parts.svg
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xl="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 0 576 733" width="48pc" height="733pt" xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata> Produced by OmniGraffle 6.5.2 <dc:date>2016-04-12 13:18:31 +0000</dc:date></metadata><defs><filter id="Shadow" filterUnits="userSpaceOnUse"><feGaussianBlur in="SourceAlpha" result="blur" stdDeviation="1.308"/><feOffset in="blur" result="offset" dx="0" dy="2"/><feFlood flood-color="black" flood-opacity=".5" result="flood"/><feComposite in="flood" in2="offset" operator="in"/></filter><filter id="Shadow_2" filterUnits="userSpaceOnUse"><feGaussianBlur in="SourceAlpha" result="blur" stdDeviation="1.308"/><feOffset in="blur" result="offset" dx="0" dy="2"/><feFlood flood-color="black" flood-opacity=".4" result="flood"/><feComposite in="flood" in2="offset" operator="in"/></filter><font-face font-family="Helvetica" font-size="30" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="18" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="532.22656" cap-height="719.72656" ascent="770.01953" descent="-229.98047" font-weight="bold"><font-face-src><font-face-name name="Helvetica-Bold"/></font-face-src></font-face><font-face font-family="Helvetica" font-size="12" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="532.22656" cap-height="719.72656" ascent="770.01953" descent="-229.98047" font-weight="bold"><font-face-src><font-face-name name="Helvetica-Bold"/></font-face-src></font-face><font-face font-family="Helvetica Neue" font-size="18" panose-1="2 0 10 6 0 0 0 2 0 4" units-per-em="1000" underline-position="-100" underline-thickness="50" slope="0" x-height="553" cap-height="726" ascent="972.0001" descent="-227.005" font-weight="bold" font-stretch="condensed"><font-face-src><font-face-name name="HelveticaNeue-CondensedBlack"/></font-face-src></font-face><font-face font-family="Helvetica Neue" font-size="13" panose-1="2 0 8 3 0 0 0 9 0 4" units-per-em="1000" underline-position="-100" underline-thickness="50" slope="0" x-height="517" cap-height="714" ascent="975.0061" descent="-216.99524" font-weight="bold"><font-face-src><font-face-name name="HelveticaNeue-Bold"/></font-face-src></font-face><font-face font-family="Helvetica Neue" font-size="13" panose-1="2 0 4 3 0 0 0 2 0 4" units-per-em="1000" underline-position="-100" underline-thickness="50" slope="0" x-height="530" cap-height="728" ascent="966.99524" descent="-212.99744" font-weight="300"><font-face-src><font-face-name name="HelveticaNeue-Light"/></font-face-src></font-face><font-face font-family="Helvetica Neue" font-size="18" panose-1="2 0 4 3 0 0 0 9 0 4" units-per-em="1000" underline-position="-100" underline-thickness="50" slope="-666.66667" x-height="530" cap-height="728" ascent="951.004" descent="-212.99744" font-style="italic" font-weight="300"><font-face-src><font-face-name name="HelveticaNeue-LightItalic"/></font-face-src></font-face><font-face font-family="Helvetica Neue" font-size="14" panose-1="2 0 8 6 0 0 0 2 0 4" units-per-em="1000" underline-position="-100" underline-thickness="50" slope="0" x-height="551" cap-height="726" ascent="960.99854" descent="-220.99304" font-weight="bold" font-stretch="condensed"><font-face-src><font-face-name name="HelveticaNeue-CondensedBold"/></font-face-src></font-face></defs><g stroke="none" stroke-opacity="1" stroke-dasharray="none" fill="none" fill-opacity="1"><title><angular/> parts</title><rect fill="white" width="576" height="733"/><g><title>Layer 1</title><g><xl:use xl:href="#id4_Graphic" filter="url(#Shadow)"/><xl:use xl:href="#id5_Graphic" filter="url(#Shadow)"/><xl:use xl:href="#id6_Graphic" filter="url(#Shadow)"/><xl:use xl:href="#id7_Graphic" filter="url(#Shadow)"/><xl:use xl:href="#id8_Graphic" filter="url(#Shadow)"/><xl:use xl:href="#id9_Graphic" filter="url(#Shadow)"/><xl:use xl:href="#id1_Graphic" filter="url(#Shadow_2)"/></g><text transform="translate(49.385 130)" fill="black"><tspan font-family="Helvetica" font-size="30" font-weight="500" x=".37792969" y="29" textLength="380.24414"><angular/> Enabled Browser</tspan></text><g id="id4_Graphic"><path d="M 43.0712 182.875 L 443.7612 182.875 C 448.73176 182.875 452.7612 186.90444 452.7612 191.875 L 452.7612 567.125 C 452.7612 572.09556 448.73176 576.125 443.7612 576.125 L 43.0712 576.125 C 38.100637 576.125 34.0712 572.09556 34.0712 567.125 L 34.0712 191.875 C 34.0712 186.90444 38.100637 182.875 43.0712 182.875 Z" fill="white"/><path d="M 43.0712 182.875 L 443.7612 182.875 C 448.73176 182.875 452.7612 186.90444 452.7612 191.875 L 452.7612 567.125 C 452.7612 572.09556 448.73176 576.125 443.7612 576.125 L 43.0712 576.125 C 38.100637 576.125 34.0712 572.09556 34.0712 567.125 L 34.0712 191.875 C 34.0712 186.90444 38.100637 182.875 43.0712 182.875 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/></g><g id="id5_Graphic"><path d="M 52.5438 191.875 L 232.5078 191.875 C 237.47836 191.875 241.5078 195.90444 241.5078 200.875 L 241.5078 368.98 C 241.5078 373.95056 237.47836 377.98 232.5078 377.98 L 52.5438 377.98 C 47.573237 377.98 43.5438 373.95056 43.5438 368.98 L 43.5438 200.875 C 43.5438 195.90444 47.573237 191.875 52.5438 191.875 Z" fill="#ff6"/><path d="M 52.5438 191.875 L 232.5078 191.875 C 237.47836 191.875 241.5078 195.90444 241.5078 200.875 L 241.5078 368.98 C 241.5078 373.95056 237.47836 377.98 232.5078 377.98 L 52.5438 377.98 C 47.573237 377.98 43.5438 373.95056 43.5438 368.98 L 43.5438 200.875 C 43.5438 195.90444 47.573237 191.875 52.5438 191.875 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(48.5438 196.875)" fill="black"><tspan font-family="Helvetica" font-size="18" font-weight="bold" x="0" y="26" textLength="30.00586"> </tspan></text></g><g id="id6_Graphic"><path d="M 254.421 191.875 L 434.385 191.875 C 439.35556 191.875 443.385 195.90444 443.385 200.875 L 443.385 368.98 C 443.385 373.95056 439.35556 377.98 434.385 377.98 L 254.421 377.98 C 249.45044 377.98 245.421 373.95056 245.421 368.98 L 245.421 200.875 C 245.421 195.90444 249.45044 191.875 254.421 191.875 Z" fill="#6cf"/><path d="M 254.421 191.875 L 434.385 191.875 C 439.35556 191.875 443.385 195.90444 443.385 200.875 L 443.385 368.98 C 443.385 373.95056 439.35556 377.98 434.385 377.98 L 254.421 377.98 C 249.45044 377.98 245.421 373.95056 245.421 368.98 L 245.421 200.875 C 245.421 195.90444 249.45044 191.875 254.421 191.875 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/></g><g id="id7_Graphic"><path d="M 52.5439 382.02 L 232.5079 382.02 C 237.47846 382.02 241.5079 386.04944 241.5079 391.02 L 241.5079 559.125 C 241.5079 564.09556 237.47846 568.125 232.5079 568.125 L 52.5439 568.125 C 47.573337 568.125 43.5439 564.09556 43.5439 559.125 L 43.5439 391.02 C 43.5439 386.04944 47.573337 382.02 52.5439 382.02 Z" fill="#6f6"/><path d="M 52.5439 382.02 L 232.5079 382.02 C 237.47846 382.02 241.5079 386.04944 241.5079 391.02 L 241.5079 559.125 C 241.5079 564.09556 237.47846 568.125 232.5079 568.125 L 52.5439 568.125 C 47.573337 568.125 43.5439 564.09556 43.5439 559.125 L 43.5439 391.02 C 43.5439 386.04944 47.573337 382.02 52.5439 382.02 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/></g><g id="id8_Graphic"><path d="M 254.567 382.02 L 434.531 382.02 C 439.50156 382.02 443.531 386.04944 443.531 391.02 L 443.531 559.125 C 443.531 564.09556 439.50156 568.125 434.531 568.125 L 254.567 568.125 C 249.59644 568.125 245.567 564.09556 245.567 559.125 L 245.567 391.02 C 245.567 386.04944 249.59644 382.02 254.567 382.02 Z" fill="#ff8000"/><path d="M 254.567 382.02 L 434.531 382.02 C 439.50156 382.02 443.531 386.04944 443.531 391.02 L 443.531 559.125 C 443.531 564.09556 439.50156 568.125 434.531 568.125 L 254.567 568.125 C 249.59644 568.125 245.567 564.09556 245.567 559.125 L 245.567 391.02 C 245.567 386.04944 249.59644 382.02 254.567 382.02 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/></g><g id="id9_Graphic"><path d="M 180.916 339.469 L 305.916 339.469 C 310.88656 339.469 314.916 343.49844 314.916 348.469 L 314.916 410.5315 C 314.916 415.50206 310.88656 419.5315 305.916 419.5315 L 180.916 419.5315 C 175.94544 419.5315 171.916 415.50206 171.916 410.5315 L 171.916 348.469 C 171.916 343.49844 175.94544 339.469 180.916 339.469 Z" fill="white"/><path d="M 180.916 339.469 L 305.916 339.469 C 310.88656 339.469 314.916 343.49844 314.916 348.469 L 314.916 410.5315 C 314.916 415.50206 310.88656 419.5315 305.916 419.5315 L 180.916 419.5315 C 175.94544 419.5315 171.916 415.50206 171.916 410.5315 L 171.916 348.469 C 171.916 343.49844 175.94544 339.469 180.916 339.469 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(176.916 344.50025)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="bold" x="10.381836" y="11" textLength="21.996094">2-W</tspan><tspan font-family="Helvetica" font-size="12" font-weight="bold" x="31.938477" y="11" textLength="90.67969">ay Data Binding</tspan><tspan font-family="Helvetica" font-size="12" font-weight="bold" x="2.4921875" y="67" textLength="105.3457">Single Source of T</tspan><tspan font-family="Helvetica" font-size="12" font-weight="bold" x="107.18164" y="67" textLength="23.326172">ruth</tspan></text></g><rect x="405.761" y="531.125" width="32" height="32" id="path"/><clipPath id="clip_path"><use xl:href="#path"/></clipPath><g clip-path="url(#clip_path)"><image xl:href="image1.png" width="32" height="32" transform="translate(405.761 531.125)"/></g><rect x="405.761" y="197.125" width="32" height="32" id="path_2"/><clipPath id="clip_path_2"><use xl:href="#path_2"/></clipPath><g clip-path="url(#clip_path_2)"><image xl:href="image2.png" width="32" height="32" transform="translate(405.761 197.125)"/></g><rect x="48.7612" y="531.125" width="32" height="32" id="path_3"/><clipPath id="clip_path_3"><use xl:href="#path_3"/></clipPath><g clip-path="url(#clip_path_3)"><image xl:href="image4.png" width="32" height="32" transform="translate(48.7612 531.125)"/></g><rect x="48.7612" y="197.125" width="32" height="32" id="path_4"/><clipPath id="clip_path_4"><use xl:href="#path_4"/></clipPath><g clip-path="url(#clip_path_4)"><image xl:href="image8.png" width="32" height="32" transform="translate(48.7612 197.125)"/></g><rect x="227.416" y="363.5" width="32" height="32" id="path_5"/><clipPath id="clip_path_5"><use xl:href="#path_5"/></clipPath><g clip-path="url(#clip_path_5)"><image xl:href="image9.png" width="32" height="32" transform="translate(227.416 363.5)"/></g><text transform="translate(82.7612 204.873)" fill="black"><tspan font-family="Helvetica Neue" font-size="18" font-weight="bold" font-stretch="condensed" x="0" y="17" textLength="45.306">Model</tspan></text><text transform="translate(329.761 536.373)" fill="black"><tspan font-family="Helvetica Neue" font-size="18" font-weight="bold" font-stretch="condensed" x="0" y="17" textLength="73.314">Controller</tspan></text><text transform="translate(82.7612 533.873)" fill="black"><tspan font-family="Helvetica Neue" font-size="18" font-weight="bold" font-stretch="condensed" x="0" y="17" textLength="35.982">View</tspan></text><text transform="translate(339.761 202.373)" fill="black"><tspan font-family="Helvetica Neue" font-size="18" font-weight="bold" font-stretch="condensed" x="0" y="17" textLength="24.66">Ser</tspan><tspan font-family="Helvetica Neue" font-size="18" font-weight="bold" font-stretch="condensed" x="24.984" y="17" textLength="38.628">vices</tspan></text><text transform="translate(138.044 465.49373)" fill="black"><tspan font-family="Helvetica Neue" font-size="13" font-weight="bold" x="0" y="13" textLength="97.214">HTML Compiler</tspan><tspan font-family="Helvetica Neue" font-size="13" font-weight="300" x="0" y="29.37709" textLength="19.981">* W</tspan><tspan font-family="Helvetica Neue" font-size="13" font-weight="300" x="20.293" y="29.37709" textLength="33.943">idgets</tspan><tspan font-family="Helvetica Neue" font-size="13" font-weight="300" x="0" y="45.75418" textLength="50.648">* Markup</tspan><tspan font-family="Helvetica Neue" font-size="13" font-weight="300" x="0" y="62.13127" textLength="23.595">* Dir</tspan><tspan font-family="Helvetica Neue" font-size="13" font-weight="300" x="23.361" y="62.13127" textLength="38.766">ectives</tspan><tspan font-family="Helvetica Neue" font-size="13" font-weight="300" x="0" y="78.50836" textLength="40.924">* Filters</tspan><tspan font-family="Helvetica Neue" font-size="13" font-weight="300" x="0" y="94.88545" textLength="15.899">* V</tspan><tspan font-family="Helvetica Neue" font-size="13" font-weight="300" x="15.184" y="94.88545" textLength="47.19">alidators</tspan></text><text transform="translate(260.133 233.24527)" fill="black"><tspan font-family="Helvetica Neue" font-size="13" font-weight="bold" x="0" y="13" textLength="48.646">Standar</tspan><tspan font-family="Helvetica Neue" font-size="13" font-weight="bold" x="48.412" y="13" textLength="64.532">d Services</tspan><tspan font-family="Helvetica Neue" font-size="13" font-weight="300" x="0" y="29.37709" textLength="20.956">* Br</tspan><tspan font-family="Helvetica Neue" font-size="13" font-weight="300" x="20.722" y="29.37709" textLength="33.956">owser</tspan><tspan font-family="Helvetica Neue" font-size="13" font-weight="300" x="0" y="45.75418" textLength="73.931">* URL Router</tspan><tspan font-family="Helvetica Neue" font-size="13" font-weight="300" x="0" y="62.13127" textLength="48.165">* Resour</tspan><tspan font-family="Helvetica Neue" font-size="13" font-weight="300" x="47.931" y="62.13127" textLength="19.747">ces</tspan><tspan font-family="Helvetica Neue" font-size="13" font-weight="300" x="0" y="78.50836" textLength="54.431">* Caching</tspan></text><text transform="translate(73.0258 430.576)" fill="black"><tspan font-family="Helvetica Neue" font-size="18" font-style="italic" font-weight="300" x="0" y="17" textLength="10.332">Y</tspan><tspan font-family="Helvetica Neue" font-size="18" font-style="italic" font-weight="300" x="8.676" y="17" textLength="129.384">our HTML / CSS</tspan></text><text transform="translate(279.761 430.576)" fill="black"><tspan font-family="Helvetica Neue" font-size="18" font-style="italic" font-weight="300" x="0" y="17" textLength="10.332">Y</tspan><tspan font-family="Helvetica Neue" font-size="18" font-style="italic" font-weight="300" x="8.676" y="17" textLength="111.708">our JavaScript</tspan></text><g id="id1_Graphic"><path d="M 358.8454 315.03204 L 379.12875 275.11694 L 379.01515 294.84206 L 507.06473 295.5795 L 507.17833 275.85439 L 527.0006 316.00046 L 506.71725 355.91556 L 506.83085 336.19044 L 378.78127 335.453 L 378.66767 355.17811 Z" fill="#ccc"/><path d="M 358.8454 315.03204 L 379.12875 275.11694 L 379.01515 294.84206 L 507.06473 295.5795 L 507.17833 275.85439 L 527.0006 316.00046 L 506.71725 355.91556 L 506.83085 336.19044 L 378.78127 335.453 L 378.66767 355.17811 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(384.91191 306.98603) rotate(.32996646)" fill="black"><tspan font-family="Helvetica Neue" font-size="14" font-weight="bold" font-stretch="condensed" x="4.40425" y="13" textLength="107.31">JSON RESTful URLs</tspan></text></g><text transform="translate(101.761 237.11927)" fill="black"><tspan font-family="Helvetica Neue" font-size="13" font-weight="bold" x="0" y="13" textLength="39.247">Scope</tspan><tspan font-family="Helvetica Neue" font-size="13" font-weight="300" x="0" y="29.37709" textLength="68.874">* $get / $set</tspan><tspan font-family="Helvetica Neue" font-size="13" font-weight="300" x="0" y="45.75418" textLength="92.963">* $eval / $tryEval</tspan><tspan font-family="Helvetica Neue" font-size="13" font-weight="300" x="0" y="62.13127" textLength="52.988">* $watch </tspan><tspan font-family="Helvetica Neue" font-size="13" font-weight="300" x="0" y="78.50836" textLength="61.178">* $become</tspan></text></g></g></svg>