1
0
mirror of https://github.com/tabler/tabler.git synced 2025-12-26 11:16:12 +04:00

Add documentation App (#2219)

This commit is contained in:
Paweł Kuna
2025-04-15 23:18:49 +02:00
committed by GitHub
parent 199f39a52e
commit 8d4f8d07c3
1550 changed files with 5414 additions and 5340 deletions

View File

@@ -0,0 +1 @@
<script defer data-api="/stats/api/event" data-domain="preview.tabler.io" src="/stats/js/script.js"></script>

View File

@@ -0,0 +1,8 @@
<!--
* Tabler - {{ site.description }}
* @version {{ package.version }}
* @link {{ site.homepage }}
* Copyright 2018-{{ 'now' | date: "%Y" }} The Tabler Authors
* Copyright 2018-{{ 'now' | date: "%Y" }} codecalm.net Paweł Kuna
* Licensed under MIT (https://github.com/tabler/tabler/blob/master/LICENSE)
-->

View File

@@ -0,0 +1,39 @@
{% if site.useIconfont -%}
<!-- BEGIN ICONFONT STYLES -->
<link href="https://www.unpkg.com/@tabler/icons-webfont@latest/dist/tabler-icons.min.css" rel="stylesheet" />
<!-- END ICON FONT STYLES -->
{% endif -%}
{% if page-libs -%}
<!-- BEGIN PAGE LEVEL STYLES -->
{% for lib in libs.css -%}
{% if page-libs contains lib[0] -%}
{% for file in lib[1] -%}
<link href="{% if file contains 'http://' or file contains 'https://' %}{{ file }}{% else %}{{ page | relative }}/libs/{% if environment != 'development' %}{{ file | replace: '@', '' }}{% else %}{{ file }}{% endif %}{% if environment != 'development' %}?{{ 'now' | date: '%s' }}{% endif %}{% endif %}" rel="stylesheet"/>
{% endfor -%}
{% endif -%}
{% endfor -%}
<!-- END PAGE LEVEL STYLES -->
{% endif %}
<!-- BEGIN GLOBAL MANDATORY STYLES -->
{% if layout-rtl -%}
<link href="{{ page | relative }}/dist/css/tabler-rtl{% if environment != 'development' %}.min{% endif %}.css{% if environment != 'development' %}?{{ 'now' | date: '%s' }}{% endif %}" rel="stylesheet"{% if environment != 'development' %} integrity="{{ sri.css-rtl }}"{% endif %} />
{% else -%}
<link href="{{ page | relative }}/dist/css/tabler{% if environment != 'development' %}.min{% endif %}.css{% if environment != 'development' %}?{{ 'now' | date: '%s' }}{% endif %}" rel="stylesheet"{% if environment != 'development' %} integrity="{{ sri.css }}"{% endif %} />
{% endif -%}
<!-- END GLOBAL MANDATORY STYLES -->
<!-- BEGIN PLUGINS STYLES -->
{% for plugin in site.tablerCssPlugins -%}
{% if layout-rtl -%}
<link href="{{ page | relative }}/dist/css/{{ plugin.name }}.rtl{% if environment != 'development' %}.min{% endif %}.css{% if environment != 'development' %}?{{ 'now' | date: '%s' }}{% endif %}" rel="stylesheet"{% if environment != 'development' %} integrity="{{ sri[`${plugin.sri}-rtl`] }}"{% endif %}/>
{% else -%}
<link href="{{ page | relative }}/dist/css/{{ plugin.name }}{% if environment != 'development' %}.min{% endif %}.css{% if environment != 'development' %}?{{ 'now' | date: '%s' }}{% endif %}" rel="stylesheet"{% if environment != 'development' %} integrity="{{ sri[plugin.sri] }}"{% endif %}/>
{% endif -%}
{% endfor -%}
<!-- END PLUGINS STYLES -->
<!-- BEGIN DEMO STYLES -->
<link href="{{ page | relative }}/preview/css/demo{% if environment != 'development' %}.min{% endif %}.css{% if environment != 'development' %}?{{ 'now' | date: '%s' }}{% endif %}" rel="stylesheet"{% if environment != 'development' %} integrity="{{ sri.demo-css }}"{% endif %}/>
<!-- END DEMO STYLES -->

View File

@@ -0,0 +1,40 @@
<!-- BEGIN FOOTER -->
<footer class="footer footer-transparent d-print-none">
<div class="container-xl">
<div class="row text-center align-items-center flex-row-reverse">
<div class="col-lg-auto ms-lg-auto">
<ul class="list-inline list-inline-dots mb-0">
<li class="list-inline-item"><a href="{{ site.docsUrl }}" target="_blank" class="link-secondary" rel="noopener">Documentation</a></li>
<li class="list-inline-item"><a href="{{ page | relative }}/license.html" class="link-secondary">License</a></li>
<li class="list-inline-item"><a href="{{ site.githubUrl }}" target="_blank" class="link-secondary" rel="noopener">Source code</a></li>
<li class="list-inline-item">
<a href="{{ site.githubSponsorsUrl }}" target="_blank" class="link-secondary" rel="noopener">
{% include "ui/icon.html" icon="heart" inline=true filled=true color="pink" %}
Sponsor
</a>
</li>
</ul>
</div>
<div class="col-12 col-lg-auto mt-3 mt-lg-0">
<ul class="list-inline list-inline-dots mb-0">
<li class="list-inline-item">
Copyright &copy; {{ 'now' | date: '%Y' }}
<a href="{{ page | relative }}" class="link-secondary">{{ site.title }}</a>.
All rights reserved.
</li>
<li class="list-inline-item">
{% if environment == 'production' %}
<a href="{{ page | relative }}/changelog.html" class="link-secondary" rel="noopener">
v{{ package.version }}
</a>
{% else %}
Generated {{ 'now' | date: '%Y-%m-%d %H:%M %Z' }}
{% endif %}
</li>
</ul>
</div>
</div>
</div>
</footer>
<!-- END FOOTER -->

View File

@@ -0,0 +1 @@
{% include "ui/button.html" color="primary" icon="plus" text="Add board" %}

View File

@@ -0,0 +1 @@
{% include "ui/button.html" color="primary" icon="plus" text="Post a job" %}

View File

@@ -0,0 +1,6 @@
{% assign breadcrumb-pages = "Tabler,Pages," %}
{% assign breadcrumb-pages = breadcrumb-pages | append: page.page-header %}
<div class="d-flex">
{% include "ui/breadcrumb.html" pages=breadcrumb-pages class="breadcrumb-arrows" %}
</div>

View File

@@ -0,0 +1,13 @@
<div class="btn-list">
<span class="d-none d-sm-inline">
{% if layout-navbar-overlap and layout-navbar-dark %}
{% include "ui/button.html" text="New view" color="dark" %}
{% else %}
{% include "ui/button.html" text="New view" %}
{% endif %}
</span>
{% include "ui/button.html" icon="plus" text="Create new report" color="primary" class="d-none d-sm-inline-block" modal-id="report" %}
{% include "ui/button.html" icon="plus" icon-only=true color="primary" class="d-sm-none" text="Create new report" modal-id="report" %}
</div>
{% include "ui/modal.html" modal-id="report" size="lg" top=true %}

View File

@@ -0,0 +1,3 @@
<div class="d-flex">
{% include "ui/button.html" text="Add event" color="primary" icon="plus" %}
</div>

View File

@@ -0,0 +1 @@
{% include "ui/button.html" text="New project" icon="plus" color="primary" %}

View File

@@ -0,0 +1,6 @@
<div class="d-flex">
<div class="me-3">
{% include "ui/form/input-icon.html" %}
</div>
{% include "ui/button.html" text="Add event" color="primary" icon="plus" %}
</div>

View File

@@ -0,0 +1,3 @@
<button type="button" class="btn btn-primary" onclick="javascript:window.print();">
{% include "ui/icon.html" icon="printer" %} Print Invoice
</button>

View File

@@ -0,0 +1,4 @@
<div class="d-flex">
<input type="search" class="form-control d-inline-block w-9 me-3" placeholder="Search user…"/>
{% include "ui/button.html" text="New user" color="primary" icon="plus" %}
</div>

View File

@@ -0,0 +1,29 @@
{% assign person = people[0] %}
<div class="page-header">
<div class="row align-items-center">
<div class="col-auto">
{% include "ui/avatar.html" person=person size="md" %}
</div>
<div class="col">
<h2 class="page-title">{{ person.full_name }}</h2>
<div class="page-subtitle">
<div class="row">
<div class="col-auto">
{% include "ui/icon.html" icon="building-skyscraper" %}
<a href="#" class="text-reset">{{ person.job_title }} at {{ person.company }}</a>
</div>
<div class="col-auto">
{% include "ui/icon.html" icon="users" %}
<a href="#" class="text-reset">194 friends</a>
</div>
<div class="col-auto text-success">
{% include "ui/icon.html" icon="check" color="green" %} Verified
</div>
</div>
</div>
</div>
<div class="col-auto d-none d-md-flex">
{% include "ui/button.html" icon="plus" color="primary" icon="message" text="Send message" %}
</div>
</div>
</div>

View File

@@ -0,0 +1,24 @@
<div class="page-header">
<div class="row align-items-center">
<div class="col">
<h2 class="page-title">Gallery</h2>
<div class="text-secondary mt-1">1-12 of 241 photos</div>
</div>
<div class="col-auto ms-auto d-print-none">
<div class="d-flex">
<div class="me-3 d-none d-md-block">
<div class="input-icon">
<input type="text" class="form-control" placeholder="Search…">
<span class="input-icon-addon">
{% include "ui/icon.html" icon="plus" %}
</span>
</div>
</div>
<a href="#" class="btn btn-primary">
{% include "ui/icon.html" icon="plus" %}
Add photo
</a>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,19 @@
{% assign person = people[1] %}
<div class="page-header page-header-border">
<div class="row align-items-center">
<div class="col">
<h2 class="page-title">Improve cards with no border</h2>
<div class="text-secondary mt-1">
<a href="#" class="text-reset">#693</a>
opened by <a href="#" class="text-body">{{ person.full_name }}</a>
in <a href="#" class="text-body">Calendar Page</a>
</div>
</div>
<div class="col-auto">
<div class="btn-list">
{% include "ui/button.html" icon="plus" icon="edit" text="Edit" %}
{% include "ui/button.html" icon="plus" icon="bell" text="Subscribe" class="d-none d-md-inline-flex" %}
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,18 @@
<div class="page-header">
<div class="row align-items-center mw-100">
<div class="col">
<div class="mb-1">
{% include "ui/breadcrumb.html" pages="Home,Library,Articles" %}
</div>
<h2 class="page-title">
<span class="text-truncate">Knights of Ni, we are but simple travelers who seek the enchanter who lives beyond these woods.</span>
</h2>
</div>
<div class="col-auto">
<div class="btn-list">
{% include "ui/button.html" icon="plus" icon="edit" text="Edit" class="d-none d-md-inline-flex" %}
{% include "ui/button.html" color="primary" text="Publish" %}
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,15 @@
<div class="page-header">
<div class="row align-items-center">
<div class="col">
<div class="page-pretitle">
Overview
</div>
<h2 class="page-title">
Dashboard
</h2>
</div>
<div class="col-auto ms-auto">
{% include "layout/header-actions/buttons.html" %}
</div>
</div>
</div>

View File

@@ -0,0 +1,38 @@
{% assign person = people[3] %}
<div class="page-header">
<div class="container">
<div class="row align-items-center">
<div class="col-auto">
{% include "ui/avatar.html" person=person rounded=true size="lg" %}
</div>
<div class="col">
<h1 class="fw-bold m-0">{{ person.full_name }}</h1>
<div class="my-2">Unemployed. Building a $1M solo business while traveling the world. Currently at $400k/yr.
</div>
<div class="list-inline list-inline-dots text-secondary">
<div class="list-inline-item">
{% include "ui/icon.html" icon="map" inline=true %}
{{ person.university }}, {{ person.country }}
</div>
<div class="list-inline-item">
{% include "ui/icon.html" icon="mail" inline=true %}
<a href="#" class="text-reset">{{ person.email }}</a>
</div>
<div class="list-inline-item">
{% include "ui/icon.html" icon="cake" inline=true %}
{{ person.birth_date }}
</div>
</div>
</div>
<div class="col-auto ms-auto">
<div class="btn-list">
{% include "ui/button.html" icon="dots" icon-only=true %}
{% include "ui/button.html" icon="message" icon-only=true %}
{% include "ui/button.html" icon="check" color="primary" text="Following" %}
</div>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,28 @@
<div class="page-header d-print-none">
<div class="container">
<div class="row g-3 align-items-center">
<div class="col-auto">
{% include "ui/status-indicator.html" animated=true color="green" %}
</div>
<div class="col">
<h2 class="page-title">
tabler.io/icons
</h2>
<div class="text-secondary">
<ul class="list-inline list-inline-dots mb-0">
<li class="list-inline-item"><span class="text-green">Up</span></li>
<li class="list-inline-item">Checked every 3 minutes</li>
</ul>
</div>
</div>
<div class="col-md-auto ms-auto d-print-none">
<div class="btn-list">
{% include "ui/button.html" text="Configure" icon="settings" %}
{% include "ui/button.html" color="primary" text="Pause this monitor" icon="player-pause" %}
</div>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,134 @@
<div class="row row-deck row-cards">
<div class="col-sm-6 col-lg-3">
{% include "cards/charts/sales.html" %}
</div>
<div class="col-sm-6 col-lg-3">
{% include "cards/charts/revenue.html" %}
</div>
<div class="col-sm-6 col-lg-3">
{% include "cards/charts/new-clients.html" %}
</div>
<div class="col-sm-6 col-lg-3">
{% include "cards/charts/active-users.html" %}
</div>
<div class="col-12">
<div class="row row-cards">
<div class="col-sm-6 col-lg-3">
{% include "cards/small-stats.html" color="primary" icon="currency-dollar" title="132 Sales" description="12 waiting payments" %}
</div>
<div class="col-sm-6 col-lg-3">
{% include "cards/small-stats.html" color="green" icon="shopping-cart" title="78 Orders" description="32 shipped" %}
</div>
<div class="col-sm-6 col-lg-3">
{% include "cards/small-stats.html" icon="brand-x" color="x" title="623 Shares" description="16 today" %}
</div>
<div class="col-sm-6 col-lg-3">
{% include "cards/small-stats.html" icon="brand-facebook" color="facebook" title="132 Likes" description="21 today" %}
</div>
</div>
</div>
<div class="col-lg-6">
<div class="card">
<div class="card-body">
<h3 class="card-title">Traffic summary</h3>
{% include "ui/chart.html" chart-id="mentions" size="lg" legend=true %}
</div>
</div>
</div>
<div class="col-lg-6">
{% include "cards/map-vector.html" title="Locations" %}
</div>
{% comment %}
<div class="col-lg-6">
<div class="row row-cards">
<div class="col-12">
</div>
<div class="col-sm-4">
{% include "cards/small-stats-3.html" number=43 title="New Tickets" percentage=6 %}
</div>
<div class="col-sm-4">
{% include "cards/small-stats-3.html" number=95 number-prefix="$" title="Daily Earnings" percentage=-2 %}
</div>
<div class="col-sm-4">
{% include "cards/small-stats-3.html" number=7 title="New Replies" percentage=9 %}
</div>
</div>
</div>
{% endcomment %}
<div class="col-lg-6">
<div class="row row-cards">
<div class="col-12">
<div class="card">
<div class="card-body">
<p class="mb-3">Using Storage <strong>6854.45 MB </strong>of 8 GB</p>
<div class="progress progress-separated mb-3">
<div class="progress-bar bg-primary" role="progressbar" style="width: 44%" aria-label="Regular"></div>
<div class="progress-bar bg-info" role="progressbar" style="width: 19%" aria-label="System"></div>
<div class="progress-bar bg-success" role="progressbar" style="width: 9%" aria-label="Shared"></div>
</div>
<div class="row">
<div class="col-auto d-flex align-items-center pe-2">
<span class="legend me-2 bg-primary"></span>
<span>Regular</span>
<span class="d-none d-md-inline d-lg-none d-xxl-inline ms-2 text-secondary">915MB</span>
</div>
<div class="col-auto d-flex align-items-center px-2">
<span class="legend me-2 bg-info"></span>
<span>System</span>
<span class="d-none d-md-inline d-lg-none d-xxl-inline ms-2 text-secondary">415MB</span>
</div>
<div class="col-auto d-flex align-items-center px-2">
<span class="legend me-2 bg-success"></span>
<span>Shared</span>
<span class="d-none d-md-inline d-lg-none d-xxl-inline ms-2 text-secondary">201MB</span>
</div>
<div class="col-auto d-flex align-items-center ps-2">
<span class="legend me-2"></span>
<span>Free</span>
<span class="d-none d-md-inline d-lg-none d-xxl-inline ms-2 text-secondary">612MB</span>
</div>
</div>
</div>
</div>
</div>
<div class="col-12">
{% include "cards/activity.html" %}
</div>
</div>
</div>
<div class="col-lg-6">
{% include "cards/development-activity.html" %}
</div>
<div class="col-12">
{% include "cards/icons-banner.html" %}
</div>
<div class="col-md-12 col-lg-8">
{% include "cards/most-visited-pages.html" %}
</div>
<div class="col-md-6 col-lg-4">
{% include "cards/sponsor.html" %}
</div>
<div class="col-md-6 col-lg-4">
{% include "cards/social-traffic.html" %}
</div>
<div class="col-md-12 col-lg-8">
{% include "cards/tasks.html" %}
</div>
<div class="col-12">
{% include "cards/invoices.html" %}
</div>
</div>

View File

@@ -0,0 +1,18 @@
{% if page-libs -%}
{% capture libs-code -%}
{% for lib in include.libs -%}
{% if page-libs contains lib[0] -%}
{% for file in lib[1] -%}
<script src="{% if file contains 'http://' or file contains 'https://' %}{{ file | replace: 'GOOGLE_MAPS_KEY', google-maps-key }}{% else %}{{ page | relative }}/libs/{% if environment != 'development' %}{{ file | replace: '@', '' }}{% else %}{{ file }}{% endif %}{% if environment != 'development' %}?{{ 'now' | date: '%s' }}{% endif %}{% endif %}" defer></script>
{% endfor -%}
{% endif -%}
{% endfor -%}
{% endcapture -%}
{% assign libs-code = libs-code | strip -%}
{% if libs-code != "" -%}
<!-- BEGIN PAGE LIBRARIES -->
{{ libs-code }}
<!-- END PAGE LIBRARIES -->
{% endif -%}
{% endif -%}

View File

@@ -0,0 +1,15 @@
{% assign google-maps-key = site.googleMapsDevKey -%}
{% if environment != 'development' -%}
{% assign google-maps-key = site.googleMapsKey -%}
{% endif -%}
{% include "layout/js-libs.html" libs=libs.js %}
<!-- BEGIN GLOBAL MANDATORY SCRIPTS -->
<script src="{{ page | relative }}/dist/js/tabler{% if environment != 'development' %}.min{% endif %}.js{% if environment != 'development' %}?{{ 'now' | date: '%s' }}{% endif %}" defer{% if environment != 'development' %} integrity="{{ sri.js }}"{% endif %}></script>
<!-- END GLOBAL MANDATORY SCRIPTS -->
<!-- BEGIN DEMO SCRIPTS -->
<script src="{{ page | relative }}/preview/js/demo{% if environment != 'development' %}.min{% endif %}.js{% if environment != 'development' %}?{{ 'now' | date: '%s' }}{% endif %}" defer{% if environment != 'development' %} integrity="{{ sri.demo-js }}"{% endif %}></script>
<!-- END DEMO SCRIPTS -->
{% scripts %}

View File

@@ -0,0 +1,24 @@
<div class="row {% if include.wide %}mb-n5{% else %}mb-n3 mb-md-n5{% endif %}{% if include.class %} {{ include.class }}{% endif %}">
{% for layout in layouts %}
<div class="{% if include.wide %}col-12{% else %}col-lg-6{% endif %} {% if include.wide %}mb-5{% else %}mb-3 mb-md-5{% endif %}{% if layout.soon %} opacity-25{% endif %}">
<div class="row">
<div class="col-auto">
<a href="{{ page | relative }}/{{ layout.page }}" class="position-relative">
{% include "parts/demo-layout.html" config=layout.config %}
</a>
</div>
<div class="col">
<h3>
<a href="{{ page | relative }}/{{ layout.page }}">{{ layout.title }}</a>
{% if layout.new %}
{% include "ui/badge.html" text="New" color="green" class="ms-2" %}
{% elsif layout.soon %}
{% include "ui/badge.html" text="Soon!" color="yellow" class="ms-2" %}
{% endif %}
</h3>
<p class="text-secondary">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Aperiam assumenda atque consequatur.</p>
</div>
</div>
</div>
{% endfor %}
</div>

View File

@@ -0,0 +1,5 @@
<div class="card card-lg">
<div class="card-body">
{% include "layout/layouts-list.html" %}
</div>
</div>

View File

@@ -0,0 +1,33 @@
<!-- BEGIN NAVBAR LOGO -->
{%- assign prefix = include.prefix | default: 'navbar' -%}
{%- assign breakpoint = include.breakpoint | default: 'lg' -%}
{%- capture class-attr %}class="{{ prefix }}-brand {{ prefix }}-brand-autodark{% if include.class %} {{ include.class }}{% endif %}"{%- endcapture -%}
{%- if include.header -%}
<div {{ class-attr }}>
<a href="{{ page | relative }}{% if include.href %}/{{ include.href }}{% endif %}">
{%- else -%}
<a href="{{ page | relative }}{% if include.href %}/{{ include.href }}{% endif %}" {{ class-attr }}>
{%- endif -%}
{%- unless include.hide-logo -%}
{%- if include.small-logo -%}
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 68 68" width="32" height="32"
aria-label="{{ site.title }}" class="navbar-brand-image{% if include.show-title %} me-3{% endif %}">
<path d="M64.6 16.2C63 9.9 58.1 5 51.8 3.4 40 1.5 28 1.5 16.2 3.4 9.9 5 5 9.9 3.4 16.2 1.5 28 1.5 40 3.4 51.8 5 58.1 9.9 63 16.2 64.6c11.8 1.9 23.8 1.9 35.6 0C58.1 63 63 58.1 64.6 51.8c1.9-11.8 1.9-23.8 0-35.6zM33.3 36.3c-2.8 4.4-6.6 8.2-11.1 11-1.5.9-3.3.9-4.8.1s-2.4-2.3-2.5-4c0-1.7.9-3.3 2.4-4.1 2.3-1.4 4.4-3.2 6.1-5.3-1.8-2.1-3.8-3.8-6.1-5.3-2.3-1.3-3-4.2-1.7-6.4s4.3-2.9 6.5-1.6c4.5 2.8 8.2 6.5 11.1 10.9 1 1.4 1 3.3.1 4.7zM49.2 46H37.8c-2.1 0-3.8-1-3.8-3s1.7-3 3.8-3h11.4c2.1 0 3.8 1 3.8 3s-1.7 3-3.8 3z" fill="#066fd1" style="fill: var(--tblr-primary, #066fd1)" />
</svg>
{%- else -%}
<svg xmlns="http://www.w3.org/2000/svg" width="110" height="32" viewBox="0 0 232 68" class="navbar-brand-image{% if include.show-title %} me-3{% endif %}">
<path d="M64.6 16.2C63 9.9 58.1 5 51.8 3.4 40 1.5 28 1.5 16.2 3.4 9.9 5 5 9.9 3.4 16.2 1.5 28 1.5 40 3.4 51.8 5 58.1 9.9 63 16.2 64.6c11.8 1.9 23.8 1.9 35.6 0C58.1 63 63 58.1 64.6 51.8c1.9-11.8 1.9-23.8 0-35.6zM33.3 36.3c-2.8 4.4-6.6 8.2-11.1 11-1.5.9-3.3.9-4.8.1s-2.4-2.3-2.5-4c0-1.7.9-3.3 2.4-4.1 2.3-1.4 4.4-3.2 6.1-5.3-1.8-2.1-3.8-3.8-6.1-5.3-2.3-1.3-3-4.2-1.7-6.4s4.3-2.9 6.5-1.6c4.5 2.8 8.2 6.5 11.1 10.9 1 1.4 1 3.3.1 4.7zM49.2 46H37.8c-2.1 0-3.8-1-3.8-3s1.7-3 3.8-3h11.4c2.1 0 3.8 1 3.8 3s-1.7 3-3.8 3z" fill="#066fd1" style="fill: var(--tblr-primary, #066fd1)" />
<path d="M105.8 46.1c.4 0 .9.2 1.2.6s.6 1 .6 1.7c0 .9-.5 1.6-1.4 2.2s-2 .9-3.2.9c-2 0-3.7-.4-5-1.3s-2-2.6-2-5.4V31.6h-2.2c-.8 0-1.4-.3-1.9-.8s-.9-1.1-.9-1.9c0-.7.3-1.4.8-1.8s1.2-.7 1.9-.7h2.2v-3.1c0-.8.3-1.5.8-2.1s1.3-.8 2.1-.8 1.5.3 2 .8.8 1.3.8 2.1v3.1h3.4c.8 0 1.4.3 1.9.8s.8 1.2.8 1.9-.3 1.4-.8 1.8-1.2.7-1.9.7h-3.4v13c0 .7.2 1.2.5 1.5s.8.5 1.4.5c.3 0 .6-.1 1.1-.2.5-.2.8-.3 1.2-.3zm28-20.7c.8 0 1.5.3 2.1.8.5.5.8 1.2.8 2.1v20.3c0 .8-.3 1.5-.8 2.1-.5.6-1.2.8-2.1.8s-1.5-.3-2-.8-.8-1.2-.8-2.1c-.8.9-1.9 1.7-3.2 2.4-1.3.7-2.8 1-4.3 1-2.2 0-4.2-.6-6-1.7-1.8-1.1-3.2-2.7-4.2-4.7s-1.6-4.3-1.6-6.9c0-2.6.5-4.9 1.5-6.9s2.4-3.6 4.2-4.8c1.8-1.1 3.7-1.7 5.9-1.7 1.5 0 3 .3 4.3.8 1.3.6 2.5 1.3 3.4 2.1 0-.8.3-1.5.8-2.1.5-.5 1.2-.7 2-.7zm-9.7 21.3c2.1 0 3.8-.8 5.1-2.3s2-3.4 2-5.7-.7-4.2-2-5.8c-1.3-1.5-3-2.3-5.1-2.3-2 0-3.7.8-5 2.3-1.3 1.5-2 3.5-2 5.8s.6 4.2 1.9 5.7 3 2.3 5.1 2.3zm32.1-21.3c2.2 0 4.2.6 6 1.7 1.8 1.1 3.2 2.7 4.2 4.7s1.6 4.3 1.6 6.9-.5 4.9-1.5 6.9-2.4 3.6-4.2 4.8c-1.8 1.1-3.7 1.7-5.9 1.7-1.5 0-3-.3-4.3-.9s-2.5-1.4-3.4-2.3v.3c0 .8-.3 1.5-.8 2.1-.5.6-1.2.8-2.1.8s-1.5-.3-2.1-.8c-.5-.5-.8-1.2-.8-2.1V18.9c0-.8.3-1.5.8-2.1.5-.6 1.2-.8 2.1-.8s1.5.3 2.1.8c.5.6.8 1.3.8 2.1v10c.8-1 1.8-1.8 3.2-2.5 1.3-.7 2.8-1 4.3-1zm-.7 21.3c2 0 3.7-.8 5-2.3s2-3.5 2-5.8-.6-4.2-1.9-5.7-3-2.3-5.1-2.3-3.8.8-5.1 2.3-2 3.4-2 5.7.7 4.2 2 5.8c1.3 1.6 3 2.3 5.1 2.3zm23.6 1.9c0 .8-.3 1.5-.8 2.1s-1.3.8-2.1.8-1.5-.3-2-.8-.8-1.3-.8-2.1V18.9c0-.8.3-1.5.8-2.1s1.3-.8 2.1-.8 1.5.3 2 .8.8 1.3.8 2.1v29.7zm29.3-10.5c0 .8-.3 1.4-.9 1.9-.6.5-1.2.7-2 .7h-15.8c.4 1.9 1.3 3.4 2.6 4.4 1.4 1.1 2.9 1.6 4.7 1.6 1.3 0 2.3-.1 3.1-.4.7-.2 1.3-.5 1.8-.8.4-.3.7-.5.9-.6.6-.3 1.1-.4 1.6-.4.7 0 1.2.2 1.7.7s.7 1 .7 1.7c0 .9-.4 1.6-1.3 2.4-.9.7-2.1 1.4-3.6 1.9s-3 .8-4.6.8c-2.7 0-5-.6-7-1.7s-3.5-2.7-4.6-4.6-1.6-4.2-1.6-6.6c0-2.8.6-5.2 1.7-7.2s2.7-3.7 4.6-4.8 3.9-1.7 6-1.7 4.1.6 6 1.7 3.4 2.7 4.5 4.7c.9 1.9 1.5 4.1 1.5 6.3zm-12.2-7.5c-3.7 0-5.9 1.7-6.6 5.2h12.6v-.3c-.1-1.3-.8-2.5-2-3.5s-2.5-1.4-4-1.4zm30.3-5.2c1 0 1.8.3 2.4.8.7.5 1 1.2 1 1.9 0 1-.3 1.7-.8 2.2-.5.5-1.1.8-1.8.7-.5 0-1-.1-1.6-.3-.2-.1-.4-.1-.6-.2-.4-.1-.7-.1-1.1-.1-.8 0-1.6.3-2.4.8s-1.4 1.3-1.9 2.3-.7 2.3-.7 3.7v11.4c0 .8-.3 1.5-.8 2.1-.5.6-1.2.8-2.1.8s-1.5-.3-2.1-.8c-.5-.6-.8-1.3-.8-2.1V28.8c0-.8.3-1.5.8-2.1.5-.6 1.2-.8 2.1-.8s1.5.3 2.1.8c.5.6.8 1.3.8 2.1v.6c.7-1.3 1.8-2.3 3.2-3 1.3-.7 2.8-1 4.3-1z" fill-rule="evenodd" clip-rule="evenodd" fill="#4a4a4a"/>
</svg>
{%- endif %}
{%- endunless -%}
{%- if include.show-title -%}
Dashboard
{%- endif -%}
{%- if include.header -%}
</a>
</div>
{%- else -%}
</a>
{%- endif -%}
<!-- END NAVBAR LOGO -->

View File

@@ -0,0 +1,95 @@
<!-- BEGIN NAVBAR MENU -->
{% assign current-page = page-menu | default: layout.menu | split: '.' %}
{% assign hide-icons = include.hide-icons %}
{% assign icons-count = icons-info.count %}
{% if include.sample %}
{% assign menu = menu-sample %}
{% endif %}
<ul class="navbar-nav{% if include.class %} {{ include.class }}{% endif %}">
{% for level-1 in menu %}
{% assign icon = level-1[1].icon %}
<li class="nav-item{% if level-1[0] == current-page[0] or level-1[1].active %} active{% endif %}{% if level-1[1].children %} dropdown{% endif %}">
<a class="nav-link{% if level-1[1].children %} dropdown-toggle{% endif %}{% if level-1[1].disabled %} disabled{% endif %}" {% if level-1[1].children %}href="#navbar-{{ level-1[0] }}" data-bs-toggle="dropdown" data-bs-auto-close="{% if include.keep-open %}false{% else %}outside{% endif %}" role="button" aria-expanded="{% if include.auto-open and level-1[0] == current-page[0] %}true{% else %}false{% endif %}" {% else %}href="{{ page | relative }}/{{ level-1[1].url }}" {% endif %}>
{% unless hide-icons %}
<span class="nav-link-icon d-md-none d-lg-inline-block">{% include "ui/icon.html" icon=icon %}</span>
{% endunless %}
<span class="nav-link-title">
{% if include.long-titles %}
{{ level-1[1].title-long | default: level-1[1].title | replace: '%ICONS_COUNT%', icons-count }}
{% else %}
{{ level-1[1].title | replace: '%ICONS_COUNT%', icons-count }}
{% endif %}
</span>
{% if level-1[1].badge %}
<span class="badge badge-sm bg-red text-red-fg">{{ level-1[1].badge }}</span>
{% endif %}
</a>
{% if level-1[1].children %}
<div class="dropdown-menu{% if level-1[1].right %} dropdown-menu-end{% endif %}{% if include.auto-open and level-1[0] == current-page[0] %} show{% endif %}">
{% if level-1[1].columns %}
<div class="dropdown-menu-columns">
{% assign per-column = level-1[1].children | size | times: 1.0 | divided_by: level-1[1].columns | ceil %}
<div class="dropdown-menu-column">
{% endif %}
{% for level-2 in level-1[1].children %}
{% if level-1[1].columns %}
{% assign modulo = forloop.index0 | modulo: per-column %}
{% if forloop.index > 1 and modulo == 0 %}</div><div class="dropdown-menu-column">{% endif %}
{% endif %}
{% if level-2[1].children %}<div class="dropend">{% endif %}
<a class="dropdown-item{% if level-2[1].children %} dropdown-toggle{% endif %}{% if level-1[0] == current-page[0] and level-2[0] == current-page[1] and current-page.size == 2 %} active{% endif %}{% if level-2[1].color %} text-{{ level-2[1].color }}{% endif %}" {% if level-2[1].children %}href="#sidebar-{{ level-2[0] }}" data-bs-toggle="dropdown" data-bs-auto-close="{% if include.keep-open %}false{% else %}outside{% endif %}" role="button" aria-expanded="false" {% else %}href="{% if level-2[1].url contains 'http://' or level-2[1].url contains 'https://'%}{{ level-2[1].url }}{% else %}{{ page | relative }}/{{ level-2[1].url }}{% endif %}"{% endif %}{% if level-2[1].url contains 'http://' or level-2[1].url contains 'https://'%} target="_blank" rel="noopener"{% endif %}>
{% if level-2[1].icon %}
{% assign icon = level-2[1].icon %}
{% include "ui/icon.html" icon=icon class="icon-inline me-1" %}
{% endif %}
{{ level-2[1].title }}
{% if level-2[1].badge %}
<span class="badge badge-sm bg-green-lt text-uppercase ms-auto">{{ level-2[1].badge }}</span>
{% endif %}
</a>
{% if level-2[1].children %}
<div class="dropdown-menu">
{% for level-3 in level-2[1].children %}
<a href="{% if level-3[1].url contains 'http://' or level-3[1].url contains 'https://'%}{{ level-3[1].url }}{% else %}{{ page | relative }}/{{ level-3[1].url }}{% endif %}" class="dropdown-item">
{{ level-3[1].title }}
{% if level-3[1].badge %}
<span class="badge badge-sm bg-green-lt text-uppercase ms-auto">{{ level-3[1].badge }}</span>
{% endif %}
</a>
{% endfor %}
</div>
{% endif %}
{% if level-2[1].children %}</div>{% endif %}
{% endfor %}
{% if level-1[1].columns %}</div></div>{% endif %}
</div>
{% endif %}
</li>
{% endfor %}
{% comment %}
<li class="nav-item d-none-navbar-vertical">
<a href="#" class="nav-link" data-bs-toggle="modal" data-bs-target="#modal-customize">
<span class="nav-link-icon">{% include "ui/icon.html" icon="adjustments" %}</span>
<span class="nav-link-title">Customize</span>
</a>
</li>
{% endcomment %}
</ul>
<!-- END NAVBAR MENU -->

View File

@@ -0,0 +1,7 @@
{% assign breakpoint = include.breakpoint | default: 'lg' %}
<div{% if include.class %} class="{{ include.class }}"{% endif %}>
<form action="{{ page | relative }}/" method="get" autocomplete="off" novalidate>
{% include "ui/form/input-icon.html" prepend=true rounded=include.rounded aria-label="Search in website" %}
</form>
</div>

View File

@@ -0,0 +1,68 @@
{% assign person-id = include.person-id | default: 1 %}
{% assign person = people[person-id] %}
<div class="navbar-nav flex-row{% if include.class %} {{ include.class }}{% endif %}">
{% unless include.condensed %}
<div class="nav-item d-none d-{{ include.breakpoint }}-flex me-3">
<div class="btn-list">
{% include "ui/button.html" icon="brand-github" outline=true text="Source code" href=site.githubUrl
external=true %}
{% include "ui/button.html" icon="heart" icon-color="pink" outline=true text="Sponsor"
href=site.githubSponsorsUrl external=true %}
</div>
</div>
{% endunless %}
<div class="d-none d-{{ include.breakpoint }}-flex">
<div class="nav-item">
<a href="?theme=dark" class="nav-link px-0 hide-theme-dark" title="Enable dark mode" data-bs-toggle="tooltip"
data-bs-placement="bottom">
{% include "ui/icon.html" icon="moon" %}
</a>
<a href="?theme=light" class="nav-link px-0 hide-theme-light" title="Enable light mode" data-bs-toggle="tooltip"
data-bs-placement="bottom">
{% include "ui/icon.html" icon="sun" %}
</a>
</div>
<div class="nav-item dropdown d-none d-md-flex">
<a href="#" class="nav-link px-0" data-bs-toggle="dropdown" tabindex="-1" aria-label="Show notifications" data-bs-auto-close="outside" aria-expanded="false">
{% include "ui/icon.html" icon="bell" %}
<span class="badge bg-red"></span>
</a>
<div class="dropdown-menu dropdown-menu-arrow dropdown-menu-end dropdown-menu-card">
{% include "cards/navbar-notifications.html" %}
</div>
</div>
<div class="nav-item dropdown d-none d-md-flex me-3">
<a href="#" class="nav-link px-0" data-bs-toggle="dropdown" tabindex="-1" aria-label="Show app menu" data-bs-auto-close="outside" aria-expanded="false">
{% include "ui/icon.html" icon="apps" %}
</a>
<div class="dropdown-menu dropdown-menu-arrow dropdown-menu-end dropdown-menu-card">
{% include "cards/navbar-apps.html" %}
</div>
</div>
</div>
<div class="nav-item dropdown">
<a href="#" class="nav-link d-flex lh-1 p-0 px-2" data-bs-toggle="dropdown" aria-label="Open user menu">
{% include "ui/avatar.html" person-id=person-id size="sm" %}
{% unless include.hide-username %}
<div class="d-none d-xl-block ps-2">
<div>{{ person.full_name }}</div>
<div class="mt-1 small text-secondary">{{ person.job_title }}</div>
</div>
{% endunless %}
</a>
<div class="dropdown-menu dropdown-menu-end dropdown-menu-arrow"{% if include.dark %} data-bs-theme="light"{% endif %}>
<a href="#" class="dropdown-item">Status</a>
<a href="{{ page | relative }}/profile.html" class="dropdown-item">Profile</a>
<a href="#" class="dropdown-item">Feedback</a>
<div class="dropdown-divider"></div>
<a href="{{ page | relative }}/settings.html" class="dropdown-item">Settings</a>
<a href="{{ page | relative }}/sign-in.html" class="dropdown-item">Logout</a>
</div>
</div>
</div>

View File

@@ -0,0 +1,5 @@
<!-- BEGIN NAVBAR TOGGLER -->
<button class="navbar-toggler" type="button" data-bs-toggle="collapse"{% if include.target %} data-bs-target="#{{ include.target }}" aria-controls="{{ include.target }}"{% endif %} aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<!-- END NAVBAR TOGGLER -->

View File

@@ -0,0 +1,82 @@
{% assign breakpoint = include.breakpoint | default: 'md' %}
{% assign condensed = include.condensed | default: false %}
{% if include.sticky %}
<div class="sticky-top">
{% endif %}
<header class="navbar navbar-expand-{{ breakpoint }}{% if include.transparent %} navbar-transparent{% else %}{% if include.background %} bg-{{ include.background }}{% endif %}{% endif %}{% if include.sticky %} sticky-top{% endif %}{% if include.overlap %} navbar-overlap{% endif %}{% if include.class %} {{ include.class }}{% endif %} d-print-none"{% if include.background-color %} style="background: {{ include.background-color }}"{% endif %} {% if include.dark %} data-bs-theme="dark"{% endif %}>
<div class="container-xl">
{% include "layout/navbar-toggler.html" target="navbar-menu" %}
{% unless include.hide-brand %}
{% include "layout/navbar-logo.html" small-logo=include.small-logo hide-logo=include.hide-logo class="d-none-navbar-horizontal pe-0 pe-md-3" breakpoint=breakpoint show-title=include.show-title header=true %}
{% endunless %}
{% include "layout/navbar-side.html" class="order-md-last" hide-username=include.hide-username condensed=condensed person-id=include.person-id breakpoint=breakpoint dark=include.dark %}
{% if condensed %}
<div class="collapse navbar-collapse" id="navbar-menu">
{% if include.hide-search %}
{% include "layout/navbar-menu.html" sample=include.sample hide-icons=include.hide-icons %}
{% elsif include.hide-menu %}
{% include "layout/navbar-search.html" rounded=include.transparent %}
{% else %}
<div class="d-flex flex-column flex-md-row flex-fill align-items-stretch align-items-md-center">
{% include "layout/navbar-menu.html" sample=include.sample hide-icons=include.hide-icons %}
{% unless condensed %}
{% assign search-class = "ms-md-auto ps-md-4 py-2 py-md-0 me-md-4 order-first order-md-last flex-grow-1" %}
{% unless include.fluid-search %}
{% assign search-class = search-class | append: " flex-md-grow-0" %}
{% endunless %}
{% include "layout/navbar-search.html" breakpoint=breakpoint rounded=include.transparent class=search-class %}
{% endunless %}
</div>
{% endif %}
</div>
{% endif %}
</div>
</header>
{% unless condensed %}
<header class="navbar-expand-{{ breakpoint }}">
<div class="collapse navbar-collapse" id="navbar-menu">
<div class="navbar"{% if include.dark-secondary %} data-bs-theme="dark"{% endif %}>
<div class="container-xl">
<div class="row flex-column flex-md-row flex-fill align-items-center">
<div class="col">
{% include "layout/navbar-menu.html" sample=include.sample hide-icons=include.hide-icons long-titles=true %}
</div>
{% unless include.hide-search %}
<div class="col-2 d-none d-xxl-block">
{% include "layout/navbar-search.html" breakpoint=breakpoint class="my-2 my-md-0 flex-grow-1 flex-md-grow-0 order-first order-md-last" %}
</div>
{% endunless %}
<div class="col col-md-auto">
<ul class="navbar-nav">
<li class="nav-item">
<a class="nav-link" href="#" data-bs-toggle="offcanvas" data-bs-target="#offcanvasSettings">
<span class="badge badge-sm bg-red text-red-fg">New</span>
<span class="nav-link-icon d-md-none d-lg-inline-block">
{% include "ui/icon.html" icon="settings" %}
</span>
<span class="nav-link-title">
Settings
</span>
</a>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</header>
{% endunless %}
{% if include.sticky %}
</div>
{% endif %}

View File

@@ -0,0 +1,14 @@
<meta name="canonical" content="{{ site.previewUrl }}{{ page.url | replace: 'index.html', '' }}">
<meta name="twitter:image:src" content="{% if environment != 'development' %}{{ site.previewUrl }}{% endif %}/static/og.png">
<meta name="twitter:site" content="@tabler_ui">
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="Tabler: Premium and Open Source dashboard template with responsive and high quality UI.">
<meta name="twitter:description" content="Tabler comes with tons of well-designed components and features. Start your adventure with Tabler and make your dashboard great again. For free!">
<meta property="og:image" content="{% if environment != 'development' %}{{ site.previewUrl }}{% endif %}/static/og.png">
<meta property="og:image:width" content="1280">
<meta property="og:image:height" content="640">
<meta property="og:site_name" content="Tabler">
<meta property="og:type" content="object">
<meta property="og:title" content="Tabler: Premium and Open Source dashboard template with responsive and high quality UI.">
<meta property="og:url" content="{% if environment != 'development' %}{{ site.previewUrl }}{% endif %}/static/og.png">
<meta property="og:description" content="Tabler comes with tons of well-designed components and features. Start your adventure with Tabler and make your dashboard great again. For free!">

View File

@@ -0,0 +1,44 @@
<!-- BEGIN PAGE HEADER -->
{% assign page-header = page-header | default: layout.page-header %}
{% assign description = page-header-description | default: layout.page-header-description %}
{% assign actions = page-header-actions | default: layout.page-header-actions %}
{% assign pretitle = page-header-pretitle | default: layout.page-header-pretitle %}
{% assign class = page-header-class | default: layout.page-header-class %}
{% assign page-icon = page-header-icon | default: layout.page-header-icon %}
{% if page-header-file %}
{% include "layout/headers/{{ page-header-file }}.html" %}
{% elsif page-header %}
<div class="page-header{% if class %} {{ class }}{% endif %} d-print-none{% if layout-navbar-overlap and layout-navbar-dark %} text-white{% endif %}">
<div class="container-xl">
<div class="row g-2 align-items-center">
<div class="col">
{% if pretitle %}
<!-- Page pre-title -->
<div class="page-pretitle">
{{ pretitle }}
</div>
{% endif %}
<h2 class="page-title">
{% if page-icon %}
{% include "ui/icon.html" icon=page-icon %}
{% endif %}
{{ page-header }}
</h2>
{% if description %}
<div class="text-secondary mt-1">{{ description }}</div>
{% endif %}
</div>
{% if actions %}
<!-- Page title actions -->
<div class="col-auto ms-auto d-print-none">
{% include "layout/header-actions/{{ actions }}.html" %}
</div>
{% endif %}
</div>
</div>
</div>
{% endif %}
<!-- END PAGE HEADER -->

View File

@@ -0,0 +1,17 @@
<script
src="https://browser.sentry-cdn.com/5.27.6/bundle.tracing.min.js"
integrity="sha384-9Z8PxByVWP+gIm/rTMPn9BWwknuJR5oJcLj+Nr9mvzk8nJVkVXgQvlLGZ9SIFEJF"
crossorigin="anonymous"
></script>
<script>
Sentry.init({
dsn: "https://8e4ad02f495946f888620f9fb99fd495@o484108.ingest.sentry.io/5536918",
release: "tabler@{{ package.version }}",
integrations: [
new Sentry.Integrations.BrowserTracing()
],
tracesSampleRate: 1.0,
});
</script>

View File

@@ -0,0 +1,17 @@
{% assign breakpoint = include.breakpoint | default: 'lg' %}
<aside class="navbar navbar-vertical{% if include.right %} navbar-right{% endif %} navbar-expand-{{ breakpoint }}{% if include.transparent %} navbar-transparent{% endif %}{% if include.background %} bg-{{ include.background }}{% endif %}{% if include.class %} {{ include.class }}{% endif %}"{% if include.background-color %} style="background: {{ include.background-color }}"{% endif %}{% if include.dark %} data-bs-theme="dark"{% endif %}>
<div class="container-fluid">
{% include "layout/navbar-toggler.html" target="sidebar-menu" %}
{% unless include.hide-brand %}
{% include "layout/navbar-logo.html" breakpoint=breakpoint header=true %}
{% endunless %}
{% include "layout/navbar-side.html" class="d-lg-none" hide-username=include.hide-username person-id=include.person-id breakpoint=breakpoint %}
<div class="collapse navbar-collapse" id="sidebar-menu">
{% include "layout/navbar-menu.html" auto-open=true class="pt-lg-3" keep-open=true %}
</div>
</div>
</aside>