|
127 | 127 | (.insertBefore parent group sibling))) |
128 | 128 |
|
129 | 129 | (defn- reset-classes! [] |
130 | | - (doseq [class ["gitique-hidden" "gitique-context"]] |
131 | | - (doseq [element (util/qsa (str "." class))] |
132 | | - (util/remove-class element class)))) |
| 130 | + (let [classes ["gitique-hidden" "gitique-context"]] |
| 131 | + (doseq [element (util/qsa (string/join ", " (map #(str "." %) classes)))] |
| 132 | + (apply util/remove-class element classes)))) |
133 | 133 |
|
134 | 134 | (defn- annotate-lines! [element file] |
135 | 135 | (let [new-lines-list (flatten (:new (-> file :patch pure/parse-diff))) |
|
154 | 154 | (defn- select-commit [event] |
155 | 155 | (swap! state assoc :selected-commit (commit-sha (.-parentElement (.-target event))))) |
156 | 156 |
|
157 | | -(defn- add-icon! [element clickable] |
| 157 | +(defn- add-icon! [element override-class] |
158 | 158 | (let [parent (.-parentElement (.-parentElement element))] |
159 | 159 | (when-not (util/qs ".gitique-icon" parent) |
160 | 160 | (let [icon (dom/createDom "span" #js["octicon octicon-diff-added gitique-icon"])] |
161 | | - (when clickable |
162 | | - (.addEventListener icon "click" select-commit) |
163 | | - (util/add-class icon "gitique-clickable")) |
| 161 | + (if override-class |
| 162 | + (util/add-class icon override-class) |
| 163 | + (.addEventListener icon "click" select-commit)) |
164 | 164 | (.appendChild parent icon))))) |
165 | 165 |
|
166 | 166 | (defn- add-icons! [] |
167 | 167 | (let [elements (util/qsa ".commit-id")] |
168 | | - (doseq [element (rest (butlast elements))] (add-icon! element true)) |
169 | | - (when-let [first (first elements)] (add-icon! first false)) |
170 | | - (when-let [last (last elements)] (add-icon! last false)))) |
| 168 | + (doseq [element (rest (butlast elements))] (add-icon! element nil)) |
| 169 | + (when-let [first (first elements)] (add-icon! first "gitique-initial")) |
| 170 | + (when-let [last (last elements)] (add-icon! last "gitique-head")))) |
171 | 171 |
|
172 | 172 | (defn- find-commit |
173 | 173 | "Find the link to a commit on the page by its SHA" |
|
178 | 178 | (let [element (if (string? commit-id) |
179 | 179 | (util/qs ".gitique-icon" (find-commit commit-id)) |
180 | 180 | commit-id)] |
181 | | - (doseq [class ["gitique-initial" "gitique-reviewed" "gitique-basis" "gitique-new"]] |
182 | | - (util/remove-class element class)) |
| 181 | + (util/remove-class element "gitique-initial" "gitique-reviewed" "gitique-basis" "gitique-new") |
183 | 182 | (util/add-class element new-class) |
184 | 183 | (.setAttribute element "title" new-title))) |
185 | 184 |
|
|
0 commit comments