HTML document, ASCII text
        
            1
            {% extends "repo.html" %} 
        
            2
            {% block header %}{{ super() }}/<a href="/{{ username }}/{{ repository }}/tree">tree</a>{% endblock %} 
        
            3
            {% block content %} 
        
            4
            <!-- 
        
            5
            <dialog id="commit-dialog"> 
        
            6
                <x-frame style="--width: 768px; --margin: 0;"> 
        
            7
                    <div class="card"> 
        
            8
                        <section class="card-main"> 
        
            9
                            <form> 
        
            10
                                <x-vbox> 
        
            11
                                    <x-hbox style="align-items: center; justify-content: space-between;"> 
        
            12
                                        <h3>Commit</h3> 
        
            13
                                        <button class="button-flat big-button"><iconify-icon icon="mdi:close"></iconify-icon></button> 
        
            14
                                    </x-hbox> 
        
            15
                                    <div> 
        
            16
                                        <h4>Changes (-100, +100)</h4> 
        
            17
                                        <ul> 
        
            18
                                            <li>File 1: removed</li> 
        
            19
                                            <li>File 2: created</li> 
        
            20
                                            <li>File 3: modified</li> 
        
            21
                                        </ul> 
        
            22
                                    </div> 
        
            23
                                    <x-vbox class="flexible-space nopad"> 
        
            24
                                        <input id="commit-message" placeholder="Commit message"> 
        
            25
                                        <textarea rows="6"></textarea> 
        
            26
                                    </x-vbox> 
        
            27
                                    <x-buttonbox class="buttonbox-right"> 
        
            28
                                        <button class="button-flat" onclick="document.getElementById('stash-dialog').showModal(); return false;"> 
        
            29
                                            <iconify-icon icon="mdi:close-box-multiple"></iconify-icon> 
        
            30
                                            Stash 
        
            31
                                        </button> 
        
            32
                                        <button> 
        
            33
                                            <iconify-icon icon="mdi:send-check"></iconify-icon> 
        
            34
                                            Commit 
        
            35
                                        </button> 
        
            36
                                    </x-buttonbox> 
        
            37
                                </x-vbox> 
        
            38
                            </form> 
        
            39
                        </section> 
        
            40
                    </div> 
        
            41
                </x-frame> 
        
            42
            </dialog> 
        
            43
            <dialog id="stash-dialog"> 
        
            44
                <x-frame style="--width: 320px; --margin: 0;"> 
        
            45
                    <div class="card"> 
        
            46
                        <section class="card-main"> 
        
            47
                            <form method="dialog"> 
        
            48
                                <x-vbox> 
        
            49
                                    <div> 
        
            50
                                        <h4>Stash changes</h4> 
        
            51
                                        <p>Are you sure you want to stash your changes? They will be permanently lost.</p> 
        
            52
                                    </div> 
        
            53
                                    <x-buttonbox class="buttonbox-right"> 
        
            54
                                        <button class="button-flat"> 
        
            55
                                            No 
        
            56
                                        </button> 
        
            57
                                        <button class="button-flat"> 
        
            58
                                            Yes 
        
            59
                                        </button> 
        
            60
                                    </x-buttonbox> 
        
            61
                                </x-vbox> 
        
            62
                            </form> 
        
            63
                        </section> 
        
            64
                    </div> 
        
            65
                </x-frame> 
        
            66
            </dialog> 
        
            67
            --> 
        
            68
            <x-vbox> 
        
            70
                <!-- 
        
            71
                <x-frame style="--width: 896px;"> 
        
            72
                    <article class="card"> 
        
            73
                        <section class="card-main"> 
        
            74
                            <x-hbox style="align-items: center; justify-content: space-between;"> 
        
            75
                                You've got uncommitted changes (N files) 
        
            76
                                <x-buttonbox> 
        
            77
                                    <button class="button-flat" onclick="document.getElementById('stash-dialog').showModal();"> 
        
            78
                                        <iconify-icon icon="mdi:close-box-multiple"></iconify-icon> 
        
            79
                                        Stash 
        
            80
                                    </button> 
        
            81
                                    <button onclick="document.getElementById('commit-dialog').showModal();"> 
        
            82
                                        <iconify-icon icon="mdi:send"></iconify-icon> 
        
            83
                                        Commit 
        
            84
                                    </button> 
        
            85
                                </x-buttonbox> 
        
            86
                            </x-hbox> 
        
            87
                        </section> 
        
            88
                    </article> 
        
            89
                </x-frame> 
        
            90
                --> 
        
            91
                <dialog id="new-branch"> 
        
            92
                    <x-frame style="--width: 448px; --margin: 0;"> 
        
            93
                        <div class="card"> 
        
            94
                            <section class="card-main"> 
        
            95
                                <form method="get"> 
        
            96
                                    <x-vbox> 
        
            97
                                        <div> 
        
            98
                                            <h4>Create new branch</h4> 
        
            99
                                            <p>The branch will be based on the currently selected branch.</p> 
        
            100
                                        </div> 
        
            101
                                        <x-vbox class="nopad"> 
        
            102
                                            <label for="current">Copy of:</label> 
        
            103
                                            <input id="current" name="current" value="{{ current }}" disabled> 
        
            104
                                        </x-vbox> 
        
            105
                                        <x-vbox class="nopad"> 
        
            106
                                            <label for="name">Name</label> 
        
            107
                                            <input id="name" name="name" placeholder="{{ current }}" value="" required> 
        
            108
                                        </x-vbox> 
        
            109
                                        <label><input type="checkbox" id="orphan">Orphan branch</label> 
        
            110
                                        <x-buttonbox class="buttonbox-right"> 
        
            111
                                            <button class="button-flat" onclick="document.getElementById('new-branch').close(); document.getElementById('branch-selection').value = 'branch-{{ current }}';"> 
        
            112
                                                Cancel 
        
            113
                                            </button> 
        
            114
                                            <button class="button-flat" type="submit"> 
        
            115
                                                Create 
        
            116
                                            </button> 
        
            117
                                        </x-buttonbox> 
        
            118
                                    </x-vbox> 
        
            119
                                </form> 
        
            120
                            </section> 
        
            121
                        </div> 
        
            122
                    </x-frame> 
        
            123
                </dialog> 
        
            124
                <x-frame style="--width: 896px;" class="flexible-space"> 
        
            125
                    <article class="card"> 
        
            126
                        <section class="card-main"> 
        
            127
                            <x-vbox> 
        
            128
                                <x-buttonbox> 
        
            129
                                    <select id="branch-selection" style="flex: 0 1 auto;"> 
        
            130
                                        <option value="branch-{{ current }}" selected>{{ current }}</option> 
        
            131
                                        {% for branch in branches %} 
        
            132
                                            {% if branch.name != current %} 
        
            133
                                                <option value="branch-{{ branch.name }}">{{ branch.name }}</option> 
        
            134
                                            {% endif %} 
        
            135
                                        {% endfor %} 
        
            136
                                        <option value="new">[CREATE NEW BRANCH]</option> 
        
            137
                                    </select> 
        
            138
                                    <input id="repo-path-bar" value="{{ subpath }}"> 
        
            139
                                    <script> 
        
            140
                                        branchSelect = document.getElementById("branch-selection"); 
        
            141
                                        branchSelect.addEventListener("change", function() { 
        
            143
                                            if(branchSelect.value == "new") { 
        
            144
                                                document.getElementById("new-branch").showModal(); 
        
            145
                                            } else { 
        
            146
                                                const PREFIX = "branch-"; 
        
            147
                                                if(branchSelect.value.startsWith(PREFIX)) { 
        
            148
                                                    branch = branchSelect.value.slice(PREFIX.length); 
        
            149
                                                } 
        
            150
                                                var http = new XMLHttpRequest(); 
        
            151
                                                http.open("HEAD", "/{{ username }}/{{ repository }}/tree/" + branch + "/{{ subpath }}", false); 
        
            152
                                                http.send(); 
        
            153
                                                if(http.status == 404) { 
        
            154
                                                    location.href = "/{{ username }}/{{ repository }}/tree/" + branch; 
        
            155
                                                } else { 
        
            156
                                                    location.href = "/{{ username }}/{{ repository }}/tree/" + branch + "/{{ subpath }}"; 
        
            157
                                                } 
        
            158
                                            } 
        
            159
                                        }); 
        
            160
                                        path = document.getElementById("repo-path-bar"); 
        
            162
                                        path.addEventListener("change", function() { 
        
            164
                                            location.href = "/{{ username }}/{{ repository }}/tree/{{ current }}" + path.value; 
        
            165
                                        }); 
        
            166
                                    </script> 
        
            167
                                    <button onclick="history.back();" class="button-flat big-button"> 
        
            168
                                        <iconify-icon icon="mdi:arrow-left"></iconify-icon> 
        
            169
                                    </button> 
        
            170
                                    <button onclick="history.forward();" class="button-flat big-button"> 
        
            171
                                        <iconify-icon icon="mdi:arrow-right"></iconify-icon> 
        
            172
                                    </button> 
        
            173
                                    <a href="../" class="button button-flat big-button"> 
        
            174
                                        <iconify-icon icon="mdi:arrow-up"></iconify-icon> 
        
            175
                                    </a> 
        
            176
                                    <a href="/{{ username }}/{{ repository }}/tree/{{ current }}/" class="button button-flat big-button"> 
        
            177
                                        <iconify-icon icon="mdi:home"></iconify-icon> 
        
            178
                                    </a> 
        
            179
                                    <a href="" class="button button-flat big-button"> 
        
            180
                                        <iconify-icon icon="mdi:refresh"></iconify-icon> 
        
            181
                                    </a> 
        
            182
                                </x-buttonbox> 
        
            183
                                {% include "tree-view.html" %} 
        
            184
                                <!-- 
        
            185
                                <x-buttonbox class="buttonbox"> 
        
            186
                                    <button class="button-flat big-button"> 
        
            187
                                        <iconify-icon icon="mdi:file-plus"></iconify-icon> 
        
            188
                                    </button> 
        
            189
                                    <button class="button-flat big-button"> 
        
            190
                                        <iconify-icon icon="mdi:upload"></iconify-icon> 
        
            191
                                    </button> 
        
            192
                                    <div class="flexible-space"></div> 
        
            193
                                    <button class="button-flat big-button" disabled> 
        
            194
                                        <iconify-icon icon="mdi:open-in-app"></iconify-icon> 
        
            195
                                    </button> 
        
            196
                                    <button class="button-flat big-button"> 
        
            197
                                        <iconify-icon icon="mdi:download"></iconify-icon> 
        
            198
                                    </button> 
        
            199
                                    <button class="button-flat big-button"> 
        
            200
                                        <iconify-icon icon="mdi:share"></iconify-icon> 
        
            201
                                    </button> 
        
            202
                                    <button class="button-flat big-button" disabled> 
        
            203
                                        <iconify-icon icon="mdi:content-copy"></iconify-icon> 
        
            204
                                    </button> 
        
            205
                                    <button class="button-flat big-button" disabled> 
        
            206
                                        <iconify-icon icon="mdi:content-cut"></iconify-icon> 
        
            207
                                    </button> 
        
            208
                                    <button class="button-flat big-button" disabled> 
        
            209
                                        <iconify-icon icon="mdi:content-paste"></iconify-icon> 
        
            210
                                    </button> 
        
            211
                                    <button class="button-flat big-button" disabled> 
        
            212
                                        <iconify-icon icon="mdi:rename"></iconify-icon> 
        
            213
                                    </button> 
        
            214
                                    <button class="button-flat big-button" disabled> 
        
            215
                                        <iconify-icon icon="mdi:delete"></iconify-icon> 
        
            216
                                    </button> 
        
            217
                                </x-buttonbox> 
        
            218
                                --> 
        
            219
                            </x-vbox> 
        
            220
                        </section> 
        
            221
                    </article> 
        
            222
                </x-frame> 
        
            223
            </x-vbox> 
        
            224
            {% endblock %}