1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00

Closes #12128: Refresh the web UI to employ the Tabler CSS framework (#14833)

* Remove dark mode styling

* Condense & rename light mode stylesheet

* Upgrade to Bootstrap 5.3.2

* Swap out Bootstrap for Tabler; remove custom styling

* Update base page layout for Tabler

* Update login page

* Bump node to v18

* Update button styles

* Update object list view

* Tweak navbar size

* Clean up dashboard widgets

* Ditch separate stylesheet for print media

* Remove simplebar

* Remove obsolete sidebar styling

* Clean up object view template

* Clean up object edit template

* Standardize primary button sizing

* Clean up object list styling

* Add buttons for add & import to navigation menu

* Fix global search bar

* Fix slim-select form widget styling

* Fix toast styling

* Set base fonts

* Clean up paginator styling

* Clean up navigation menu group headings

* Clean up footer links

* Clean up card styles

* Move SVG styles to a designated directory

* Restructure SCSS files

* Remove obsolete/redundant dependencies

* Fix icon spacing

* Update background color classes

* Tweak banner & footer styling and spacing

* Fix badge background colors in table content

* Bump @types/bootstrap to 5.2.10

* Clean up form layouts

* Fix object selector button style

* Fix icon padding inside small buttons

* Fix icon & badge spacing inside buttons and tabs

* Hide paginator for empty pages

* Fix hover color for list items (Tabler bug #1694)

* Fix width of checkbox column in empty tables

* Clean up bulk edit template

* Fix border color of reslug button

* Package & serve Google fonts locally

* Fix tab styling

* Reduce vetical space at top of dashboard

* Remove obsolete content-wrapper template block

* Fix icon spacing in dropdown menu items

* Fix color label sizing

* Separate bulk delete form & object list into tabs

* Fix styling of filter group headings

* Fix styling for object changelog & journal views

* Standardize ordering & styling of action buttons

* Fix designation of active menu item

* Automatically expand menu section containing the active link

* Clean up nav menu styling

* Remove button colors; hide buttons except on hover/active

* Highlight menu group containing the active item

* Update & standardize alert styling

* Refactor base templates to ensure consistent display of header content

* Tweak styling for links inside badges

* Clean up top menu

* Fix JSON/YAML toggles for config context data

* Fix object template header

* Constrain tabs to container-xl; tweak header margins

* Fix object identifier styling

* Fix positioning of card header buttons

* Remove padding from HTMX tables inside cards

* Ensure consistent use of row headings in attribute tables

* Remove padding surrounding tables inside cards

* Remove obsolete CSS classes

* Misc cleanup of old styling

* Refactor 'controls' template block; ditch old classes

* Fix login button sizing

* Limit object edit form width

* Append asterisk to required form field labels

* Remove obsolete styling

* Remove obsolete styling

* Fix position of progress bar outside label

* Fix alignment of delete button in report/script lists

* Fix <pre> styling

* Clean up page headers

* Replace SVG icons with Material Design icons

* Restore dark mode togle functionality

* Fix top navbar background color under dark mode

* Rebuild static assets
This commit is contained in:
Jeremy Stretch
2024-01-17 16:25:42 -05:00
committed by GitHub
parent 8254e707b6
commit 073c2dc8ca
384 changed files with 11579 additions and 10019 deletions

View File

@@ -18,79 +18,75 @@
{% endblock %}
{# ObjectChange does not support the default add/edit/delete controls #}
{% block controls %}{% endblock %}
{% block control-buttons %}{% endblock %}
{% block subtitle %}{% endblock %}
{% block content %}
<div class="row mb-3">
<div class="col col-md-5">
<div class="card">
<h5 class="card-header">
{% trans "Change" %}
</h5>
<div class="card-body">
<table class="table table-hover attr-table">
<tr>
<th scope="row">{% trans "Time" %}</th>
<td>
{{ object.time|annotated_date }}
</td>
</tr>
<tr>
<th scope="row">{% trans "User" %}</th>
<td>
{% if object.user.get_full_name %}
{{ object.user.get_full_name }} ({{ object.user_name }})
{% else %}
{{ object.user_name }}
{% endif %}
</td>
</tr>
<tr>
<th scope="row">{% trans "Action" %}</th>
<td>
{{ object.get_action_display }}
</td>
</tr>
<tr>
<th scope="row">{% trans "Object Type" %}</th>
<td>
{{ object.changed_object_type }}
</td>
</tr>
<tr>
<th scope="row">{% trans "Object" %}</th>
<td>
{% if object.changed_object and object.changed_object.get_absolute_url %}
{{ object.changed_object|linkify }}
{% else %}
{{ object.object_repr }}
{% endif %}
</td>
</tr>
<tr>
<th scope="row">{% trans "Request ID" %}</th>
<td>
{{ object.request_id }}
</td>
</tr>
</table>
</div>
<h5 class="card-header">{% trans "Change" %}</h5>
<table class="table table-hover attr-table">
<tr>
<th scope="row">{% trans "Time" %}</th>
<td>
{{ object.time|annotated_date }}
</td>
</tr>
<tr>
<th scope="row">{% trans "User" %}</th>
<td>
{% if object.user.get_full_name %}
{{ object.user.get_full_name }} ({{ object.user_name }})
{% else %}
{{ object.user_name }}
{% endif %}
</td>
</tr>
<tr>
<th scope="row">{% trans "Action" %}</th>
<td>
{{ object.get_action_display }}
</td>
</tr>
<tr>
<th scope="row">{% trans "Object Type" %}</th>
<td>
{{ object.changed_object_type }}
</td>
</tr>
<tr>
<th scope="row">{% trans "Object" %}</th>
<td>
{% if object.changed_object and object.changed_object.get_absolute_url %}
{{ object.changed_object|linkify }}
{% else %}
{{ object.object_repr }}
{% endif %}
</td>
</tr>
<tr>
<th scope="row">{% trans "Request ID" %}</th>
<td>
{{ object.request_id }}
</td>
</tr>
</table>
</div>
</div>
<div class="col col-md-7">
<div class="card">
<div class="card-header">
<h5 class="d-inline">{% trans "Difference" %}</h5>
<div class="btn-group btn-group-sm float-end noprint">
<a {% if prev_change %}href="{% url 'extras:objectchange' pk=prev_change.pk %}"{% else %}disabled{% endif %} class="btn btn-outline-secondary">
<i class="mdi mdi-chevron-left" aria-hidden="true"></i> {% trans "Previous" %}
</a>
<a {% if next_change %}href="{% url 'extras:objectchange' pk=next_change.pk %}"{% else %}disabled{% endif %} class="btn btn-outline-secondary">
{% trans "Next" %} <i class="mdi mdi-chevron-right" aria-hidden="true"></i>
</a>
</div>
</div>
<h5 class="card-header d-flex justify-content-between">
{% trans "Difference" %}
<div class="btn-group btn-group-sm d-print-none">
<a {% if prev_change %}href="{% url 'extras:objectchange' pk=prev_change.pk %}"{% else %}disabled{% endif %} class="btn btn-outline-secondary">
<i class="mdi mdi-chevron-left" aria-hidden="true"></i> {% trans "Previous" %}
</a>
<a {% if next_change %}href="{% url 'extras:objectchange' pk=next_change.pk %}"{% else %}disabled{% endif %} class="btn btn-outline-secondary">
{% trans "Next" %} <i class="mdi mdi-chevron-right" aria-hidden="true"></i>
</a>
</div>
</h5>
<div class="card-body">
{% if diff_added == diff_removed %}
<span class="text-muted" style="margin-left: 10px;">
@@ -113,36 +109,38 @@
<div class="row mb-3">
<div class="col col-md-6">
<div class="card">
<h5 class="card-header">
{% trans "Pre-Change Data" %}
</h5>
<h5 class="card-header">{% trans "Pre-Change Data" %}</h5>
<div class="card-body">
{% if object.prechange_data %}
<pre class="change-data">{% for k, v in object.prechange_data.items %}{% spaceless %}
{% spaceless %}
<pre class="change-data">
{% for k, v in object.prechange_data.items %}
<span{% if k in diff_removed %} class="removed"{% endif %}>{{ k }}: {{ v|json }}</span>
{% endspaceless %}{% endfor %}
{% endfor %}
</pre>
{% endspaceless %}
{% elif non_atomic_change %}
{% trans "Warning: Comparing non-atomic change to previous change record" %} (<a href="{% url 'extras:objectchange' pk=prev_change.pk %}">{{ prev_change.pk }}</a>)
{% trans "Warning: Comparing non-atomic change to previous change record" %} (<a href="{% url 'extras:objectchange' pk=prev_change.pk %}">{{ prev_change.pk }}</a>)
{% else %}
<span class="text-muted">{% trans "None" %}</span>
<span class="text-muted">{% trans "None" %}</span>
{% endif %}
</div>
</div>
</div>
<div class="col col-md-6">
<div class="card">
<h5 class="card-header">
{% trans "Post-Change Data" %}
</h5>
<h5 class="card-header">{% trans "Post-Change Data" %}</h5>
<div class="card-body">
{% if object.postchange_data %}
<pre class="change-data">{% for k, v in object.postchange_data.items %}{% spaceless %}
{% spaceless %}
<pre class="change-data">
{% for k, v in object.postchange_data.items %}
<span{% if k in diff_added %} class="added"{% endif %}>{{ k }}: {{ v|json }}</span>
{% endspaceless %}{% endfor %}
{% endfor %}
</pre>
{% endspaceless %}
{% else %}
<span class="text-muted">{% trans "None" %}</span>
<span class="text-muted">{% trans "None" %}</span>
{% endif %}
</div>
</div>