{% extends "withoutnav_template.html" %} {% from "components/banner.html" import banner %} {% from "components/big-number.html" import big_number %} {% from "components/browse-list.html" import browse_list %} {% from "components/page-footer.html" import page_footer %} {% from "components/table.html" import mapping_table, list_table, row, field, text_field, boolean_field, right_aligned_field_heading %} {% from "components/textbox.html" import textbox %} {% from "components/file-upload.html" import file_upload %} {% from "components/api-key.html" import api_key %} {% block per_page_title %} Styleguide {% endblock %} {% block maincolumn_content %}

www.notify.works/_styleguide

View source

Banner

Used to show the status of a thing or action.

{{ banner("You sent 1,234 text messages", with_tick=True) }} {{ banner('You’re not allowed to do this', 'dangerous')}} {{ banner('Are you sure you want to delete?', 'dangerous', delete_button="Yes, delete this thing")}}

Big number

Used to show some important statistics.

{{ big_number("567") }}
{{ big_number("2", "Messages delivered") }}

Browse list

Used to navigate to child pages.

{{ browse_list([ { 'title': 'Change your username', 'link': 'http://example.com', }, { 'title': 'Change your password', 'link': 'http://example.com', 'hint': 'Your password is used to log in' }, { 'title': 'Delete everything', 'link': 'http://example.com', 'hint': 'You can’t undo this', 'destructive': True } ]) }}

Page footer

Used to submit forms and optionally provide a link to go back to the previous page.

Must be used inside a form.

Adds a hidden CSRF token to the page.

{{ page_footer( button_text='Continue' ) }} {{ page_footer( button_text='Save', delete_link='http://example.com', delete_link_text='delete this thing' )}} {{ page_footer( button_text='Delete', destructive=True ) }} {{ page_footer( button_text='Send', back_link='http://example.com', back_link_text="Back to dashboard" ) }} {{ page_footer( button_text='Sign in', secondary_link='http://example.com', secondary_link_text="I’ve forgotten my password" ) }}

Tables

Used for comparing rows of data.

{% call mapping_table( caption='Account settings', field_headings=['Label', 'True', 'False', 'Action'], field_headings_visible=False, caption_visible=True ) %} {% call row() %} {{ text_field('Username' )}} {{ boolean_field(True) }} {{ boolean_field(False) }} {% call field(align='right') %} Change {% endcall %} {% endcall %} {% endcall %} {% call(item, row_number) list_table( [ { 'file': 'dispatch_20151114.csv', 'status': 'Queued' }, { 'file': 'dispatch_20151117.csv', 'status': 'Delivered' }, { 'file': 'remdinder_monday.csv', 'status': 'Failed' } ], caption='Messages', field_headings=['File', right_aligned_field_heading('Status')], field_headings_visible=True, caption_visible=False ) %} {% call field() %} {{ item.file }} {% endcall %} {% call field( align='right', status='error' if item.status == 'Failed' else 'default' ) %} {{ item.status }} {% endcall %} {% endcall %} {% call(item, row_number) list_table( [], caption='Jobs', field_headings=['Job', 'Time'], caption_visible=True, empty_message='You haven’t scheduled any jobs yet' ) %} {% call field() %} {{ item.job }} {% endcall %} {% call field() %} {{ item.time }} {% endcall %} {% endcall %}

Textbox

{{ textbox(form.username) }} {{ textbox(form.password) }} {{ textbox(form.message, highlight_tags=True) }} {{ textbox(form.code, width='1-8') }}

File upload

{{ file_upload(form.file_upload) }}

API key

{{ api_key('d30512af92e1386d63b90e5973b49a10') }}

Formatted list

{{ 'A' | formatted_list(prefix="one item called") }}

{{ 'AB' | formatted_list(prefix_plural="two items called") }}

{{ 'ABC' | formatted_list }}

{{ 'ABCD' | formatted_list(before_each='', after_each='', conjunction='or') }}

{% endblock %}