diff --git a/docs/assets/scripts/docs.js b/docs/assets/scripts/docs.js index 5149a98..fc1a5d3 100644 --- a/docs/assets/scripts/docs.js +++ b/docs/assets/scripts/docs.js @@ -100,18 +100,21 @@ const colorToast = (col) => { } // Component: Tab -const tabList = document.querySelector('#tab-demo > nav > ol'); -const tabPanels = document.querySelectorAll('#tab-demo > section > div'); -const tabs = tabList - ? [...tabList.querySelectorAll('li')].filter(t => !t.classList.contains('disabled')) - : []; -tabs.forEach((tab, i) => { - tab.addEventListener('click', () => { - tabs.forEach(t => t.classList.remove('active')) - tabPanels.forEach(p => p.classList.remove('active')); - const panel = [...tabPanels][i]; - panel.classList.add('active'); - tab.classList.add('active'); +const tabGroup = document.querySelectorAll('.tab-group'); +tabGroup.forEach((group) => { + const tabList = group.querySelector('nav > ol'); + const tabPanels = group.querySelectorAll('section > div'); + const tabs = tabList + ? [...tabList.querySelectorAll('li')].filter(t => !t.classList.contains('disabled')) + : []; + tabs.forEach((tab, i) => { + tab.addEventListener('click', () => { + tabs.forEach(t => t.classList.remove('active')) + tabPanels.forEach(p => p.classList.remove('active')); + const panel = [...tabPanels][i]; + panel?.classList.add('active'); + tab.classList.add('active'); + }); }); }); diff --git a/docs/pages/components/loader.md b/docs/pages/components/loader.md index 5270c20..d85f106 100644 --- a/docs/pages/components/loader.md +++ b/docs/pages/components/loader.md @@ -75,3 +75,25 @@ Loaders are also supported on button elements. ``` + +### Input loader + +Similar to buttons, loaders are also supported on input elements. Use the `busy` class to replace the contents of an input element with a loader while keeping the input size. + +
+
+ +
+
+ +
+
+ +```html +
+ +
+
+ +
+``` diff --git a/docs/pages/components/tab.md b/docs/pages/components/tab.md index 4f7f2a1..63845fc 100644 --- a/docs/pages/components/tab.md +++ b/docs/pages/components/tab.md @@ -70,6 +70,28 @@ Use the `tab-group` class on a parent element containing a ` +
+
+
+
+
@@ -116,6 +143,14 @@ Per default the tab bar is on top of the content. The `bottom`, `left` or `right

Tab bar positioned at the bottom

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc viverra viverra nisl, vel maximus turpis ornare a. Ut scelerisque lectus sed odio dictum scelerisque vitae quis nisi. Nulla facilisi. Phasellus vehicula convallis nisl, id suscipit dui semper at. In eu iaculis lorem. In vehicula sed mauris et suscipit. Vivamus pellentesque non massa sit amet ornare. Integer placerat est vitae nisl molestie, eget rhoncus erat vulputate. Proin ornare massa eget bibendum faucibus.

+
+

Quotes created

+

In eu iaculis lorem. In vehicula sed mauris et suscipit. Vivamus pellentesque non massa sit amet ornare. Integer placerat est vitae nisl molestie, eget rhoncus erat vulputate. Proin ornare massa eget bibendum faucibus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc viverra viverra nisl, vel maximus turpis ornare a. Ut scelerisque lectus sed odio dictum scelerisque vitae quis nisi. Nulla facilisi. Phasellus vehicula convallis nisl, id suscipit dui semper at.

+
+
+

Invoices sent

+

Nulla facilisi. Phasellus vehicula convallis nisl, id suscipit dui semper at. In eu iaculis lorem. In vehicula sed mauris et suscipit. Vivamus pellentesque non massa sit amet ornare. Integer placerat est vitae nisl molestie, eget rhoncus erat vulputate. Proin ornare massa eget bibendum faucibus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc viverra viverra nisl, vel maximus turpis ornare a. Ut scelerisque lectus sed odio dictum scelerisque vitae quis nisi.

+
@@ -148,9 +183,17 @@ Per default the tab bar is on top of the content. The `bottom`, `left` or `right
-

Tab bar positioned at the left

+

Tab bar positioned to the left

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc viverra viverra nisl, vel maximus turpis ornare a. Ut scelerisque lectus sed odio dictum scelerisque vitae quis nisi. Nulla facilisi. Phasellus vehicula convallis nisl, id suscipit dui semper at. In eu iaculis lorem. In vehicula sed mauris et suscipit. Vivamus pellentesque non massa sit amet ornare. Integer placerat est vitae nisl molestie, eget rhoncus erat vulputate. Proin ornare massa eget bibendum faucibus.

+
+

Quotes created

+

In eu iaculis lorem. In vehicula sed mauris et suscipit. Vivamus pellentesque non massa sit amet ornare. Integer placerat est vitae nisl molestie, eget rhoncus erat vulputate. Proin ornare massa eget bibendum faucibus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc viverra viverra nisl, vel maximus turpis ornare a. Ut scelerisque lectus sed odio dictum scelerisque vitae quis nisi. Nulla facilisi. Phasellus vehicula convallis nisl, id suscipit dui semper at.

+
+
+

Invoices sent

+

Nulla facilisi. Phasellus vehicula convallis nisl, id suscipit dui semper at. In eu iaculis lorem. In vehicula sed mauris et suscipit. Vivamus pellentesque non massa sit amet ornare. Integer placerat est vitae nisl molestie, eget rhoncus erat vulputate. Proin ornare massa eget bibendum faucibus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc viverra viverra nisl, vel maximus turpis ornare a. Ut scelerisque lectus sed odio dictum scelerisque vitae quis nisi.

+
@@ -183,16 +226,24 @@ Per default the tab bar is on top of the content. The `bottom`, `left` or `right
-

Tab bar positioned at the left

+

Tab bar positioned to the right

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc viverra viverra nisl, vel maximus turpis ornare a. Ut scelerisque lectus sed odio dictum scelerisque vitae quis nisi. Nulla facilisi. Phasellus vehicula convallis nisl, id suscipit dui semper at. In eu iaculis lorem. In vehicula sed mauris et suscipit. Vivamus pellentesque non massa sit amet ornare. Integer placerat est vitae nisl molestie, eget rhoncus erat vulputate. Proin ornare massa eget bibendum faucibus.

+
+

Quotes created

+

In eu iaculis lorem. In vehicula sed mauris et suscipit. Vivamus pellentesque non massa sit amet ornare. Integer placerat est vitae nisl molestie, eget rhoncus erat vulputate. Proin ornare massa eget bibendum faucibus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc viverra viverra nisl, vel maximus turpis ornare a. Ut scelerisque lectus sed odio dictum scelerisque vitae quis nisi. Nulla facilisi. Phasellus vehicula convallis nisl, id suscipit dui semper at.

+
+
+

Invoices sent

+

Nulla facilisi. Phasellus vehicula convallis nisl, id suscipit dui semper at. In eu iaculis lorem. In vehicula sed mauris et suscipit. Vivamus pellentesque non massa sit amet ornare. Integer placerat est vitae nisl molestie, eget rhoncus erat vulputate. Proin ornare massa eget bibendum faucibus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc viverra viverra nisl, vel maximus turpis ornare a. Ut scelerisque lectus sed odio dictum scelerisque vitae quis nisi.

+
```html
-