@iamproperty/components 3.4.6 → 3.4.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/css/components/accordion.css.map +1 -1
- package/assets/css/components/applied-filters.css +1 -0
- package/assets/css/components/applied-filters.css.map +1 -0
- package/assets/css/components/card.css +1 -1
- package/assets/css/components/card.css.map +1 -1
- package/assets/css/components/charts.css +1 -1
- package/assets/css/components/charts.css.map +1 -1
- package/assets/css/components/container.css +1 -1
- package/assets/css/components/container.css.map +1 -1
- package/assets/css/components/dialog.css +1 -0
- package/assets/css/components/dialog.css.map +1 -0
- package/assets/css/components/forms.css +1 -1
- package/assets/css/components/forms.css.map +1 -1
- package/assets/css/components/lists.css +1 -1
- package/assets/css/components/lists.css.map +1 -1
- package/assets/css/components/nav.css +1 -1
- package/assets/css/components/nav.css.map +1 -1
- package/assets/css/components/pagination.css +1 -0
- package/assets/css/components/pagination.css.map +1 -0
- package/assets/css/components/table.css +1 -0
- package/assets/css/components/table.css.map +1 -0
- package/assets/css/core.min.css +1 -1
- package/assets/css/core.min.css.map +1 -1
- package/assets/css/style.min.css +1 -1
- package/assets/css/style.min.css.map +1 -1
- package/assets/js/bundle.js +18 -11
- package/assets/js/components/accordion/accordion.component.js +6 -0
- package/assets/js/components/accordion/accordion.component.min.js +3 -3
- package/assets/js/components/accordion/accordion.component.min.js.map +1 -1
- package/assets/js/components/applied-filters/applied-filters.component.js +26 -0
- package/assets/js/components/card/card.component.js +91 -0
- package/assets/js/components/card/card.component.min.js +21 -0
- package/assets/js/components/card/card.component.min.js.map +1 -0
- package/assets/js/components/filterlist/filterlist.component.js +49 -0
- package/assets/js/components/filterlist/filterlist.component.min.js +23 -0
- package/assets/js/components/filterlist/filterlist.component.min.js.map +1 -0
- package/assets/js/components/header/header.component.js +6 -0
- package/assets/js/components/header/header.component.min.js +2 -2
- package/assets/js/components/header/header.component.min.js.map +1 -1
- package/assets/js/components/pagination/pagination.component.js +34 -0
- package/assets/js/components/table/table.component.js +104 -0
- package/assets/js/components/table/table.component.min.js +24 -0
- package/assets/js/components/table/table.component.min.js.map +1 -0
- package/assets/js/components/tabs/tabs.component.js +6 -0
- package/assets/js/components/tabs/tabs.component.min.js +17 -0
- package/assets/js/components/tabs/tabs.component.min.js.map +1 -0
- package/assets/js/dynamic.js +7 -18
- package/assets/js/dynamic.min.js +2 -53
- package/assets/js/dynamic.min.js.map +1 -1
- package/assets/js/flat-components.js +27 -9
- package/assets/js/modules/applied-filters.js +100 -0
- package/assets/js/modules/data-layer.js +45 -0
- package/assets/js/modules/filterlist.js +32 -0
- package/assets/js/modules/helpers.js +77 -49
- package/assets/js/modules/pagination.js +33 -0
- package/assets/js/modules/table.js +507 -420
- package/assets/js/modules/tabs.js +6 -0
- package/assets/js/modules/youtubevideo.js +53 -61
- package/assets/js/scripts.bundle.js +77 -62
- package/assets/js/scripts.bundle.js.map +1 -1
- package/assets/js/scripts.bundle.min.js +2 -2
- package/assets/js/scripts.bundle.min.js.map +1 -1
- package/assets/js/tests/filterlist.spec.js +22 -0
- package/assets/js/tests/pagination.spec.js +15 -0
- package/assets/js/tests/table.spec.js +147 -0
- package/assets/sass/_components.scss +1 -2
- package/assets/sass/_corefiles.scss +5 -4
- package/assets/sass/_functions/utilities.scss +16 -0
- package/assets/sass/_functions/variables.scss +32 -18
- package/assets/sass/_tests/colours.spec.scss +1 -1
- package/assets/sass/components/applied-filters.scss +65 -0
- package/assets/sass/components/card.scss +177 -233
- package/assets/sass/components/charts.scss +4 -0
- package/assets/sass/components/container.scss +7 -2
- package/assets/sass/components/dialog.scss +202 -0
- package/assets/sass/components/forms.scss +37 -5
- package/assets/sass/components/lists.scss +15 -0
- package/assets/sass/components/nav.scss +5 -1
- package/assets/sass/components/pagination.scss +140 -0
- package/assets/sass/components/table.scss +419 -0
- package/assets/sass/foundations/icons.scss +1 -1
- package/assets/sass/{components → foundations}/links.scss +26 -0
- package/assets/sass/foundations/reboot.scss +19 -13
- package/assets/svg/illustrations/table.svg +165 -0
- package/assets/ts/bundle.ts +23 -12
- package/assets/ts/components/accordion/accordion.component.ts +7 -0
- package/assets/ts/components/applied-filters/README.md +5 -0
- package/assets/ts/components/applied-filters/applied-filters.component.ts +33 -0
- package/assets/ts/components/card/README.md +22 -0
- package/assets/ts/components/card/card.component.ts +117 -0
- package/assets/ts/components/filterlist/README.md +17 -0
- package/assets/ts/components/filterlist/filterlist.component.ts +60 -0
- package/assets/ts/components/header/header.component.ts +8 -0
- package/assets/ts/components/pagination/README.md +11 -0
- package/assets/ts/components/pagination/pagination.component.ts +45 -0
- package/assets/ts/components/table/README.md +23 -0
- package/assets/ts/components/table/table.component.ts +128 -0
- package/assets/ts/components/tabs/tabs.component.ts +7 -0
- package/assets/ts/dynamic.ts +12 -19
- package/assets/ts/flat-components.ts +37 -9
- package/assets/ts/modules/applied-filters.ts +146 -0
- package/assets/ts/modules/data-layer.ts +58 -0
- package/assets/ts/modules/filterlist.ts +46 -0
- package/assets/ts/modules/helpers.ts +90 -60
- package/assets/ts/modules/pagination.ts +44 -0
- package/assets/ts/modules/table.ts +598 -433
- package/assets/ts/modules/tabs.ts +8 -1
- package/assets/ts/modules/youtubevideo.ts +58 -63
- package/assets/ts/tests/filterlist.spec.ts +29 -0
- package/assets/ts/tests/pagination.spec.ts +21 -0
- package/assets/ts/tests/table.spec.ts +191 -0
- package/dist/components.es.js +1264 -1296
- package/dist/components.umd.js +70 -65
- package/dist/style.css +1 -1
- package/package.json +7 -5
- package/src/components/AppliedFilters/AppliedFilters.vue +20 -0
- package/src/components/AppliedFilters/README.md +5 -0
- package/src/components/Card/Card.vue +11 -112
- package/src/components/Card/README.md +16 -18
- package/src/components/Carousel/Carousel.vue +49 -10
- package/src/components/Chart/Chart.vue +46 -4
- package/src/components/Filterlist/Filterlist.vue +20 -0
- package/src/components/Filterlist/README.md +17 -0
- package/src/components/Pagination/Pagination.vue +30 -0
- package/src/components/Pagination/README.md +11 -0
- package/src/components/Table/README.md +29 -44
- package/src/components/Table/Table.spec.js +5 -37
- package/src/components/Table/Table.vue +16 -91
- package/src/foundations/YoutubeVideo/YoutubeVideo.vue +1 -1
- package/src/index.js +3 -2
- package/assets/css/components/cardDeck.css +0 -1
- package/assets/css/components/cardDeck.css.map +0 -1
- package/assets/css/components/links.css +0 -1
- package/assets/css/components/links.css.map +0 -1
- package/assets/css/components/modal.css +0 -1
- package/assets/css/components/modal.css.map +0 -1
- package/assets/css/components/tables.css +0 -1
- package/assets/css/components/tables.css.map +0 -1
- package/assets/js/modules/modal.js +0 -69
- package/assets/sass/components/cardDeck.scss +0 -108
- package/assets/sass/components/modal.scss +0 -136
- package/assets/sass/components/tables.scss +0 -291
- package/assets/ts/modules/modal.ts +0 -91
- package/src/components/CardDeck/CardDeck.spec.js +0 -99
- package/src/components/CardDeck/CardDeck.vue +0 -77
- package/src/components/CardDeck/README.md +0 -25
- package/src/components/Modal/Modal.spec.js +0 -22
- package/src/components/Modal/Modal.vue +0 -43
- package/src/components/Modal/README.md +0 -20
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
import '@testing-library/jest-dom';
|
|
3
|
+
import { filterTheList } from "../modules/filterlist.js";
|
|
4
|
+
const listHTML = `
|
|
5
|
+
<li class="lead text-primary pb-1">Olivia Anderson</li>
|
|
6
|
+
<li class="lead text-primary pb-1">Ethan Ramirez</li>
|
|
7
|
+
<li class="lead text-primary pb-1">Sophia Patel</li>
|
|
8
|
+
<li class="lead text-primary pb-1">Noah Jenkins</li>
|
|
9
|
+
<li class="lead text-primary pb-1">Ava Thompson</li>
|
|
10
|
+
<li class="lead text-primary pb-1">Lucas Myers</li>
|
|
11
|
+
<li class="lead text-primary pb-1">Mia Carter</li>
|
|
12
|
+
<li class="lead text-primary pb-1">Benjamin Lee</li>
|
|
13
|
+
`;
|
|
14
|
+
describe('addDataAttributes', () => {
|
|
15
|
+
let list = document.createElement('ul');
|
|
16
|
+
list.innerHTML = listHTML;
|
|
17
|
+
filterTheList(list, "Lucas");
|
|
18
|
+
test('should add a class of d-none to each item except the one containing Lucas Myers', () => {
|
|
19
|
+
expect(list.querySelectorAll('li:not(.d-none)').length).toEqual(1);
|
|
20
|
+
expect(list.querySelector('li:not(.d-none').textContent).toEqual('Lucas Myers');
|
|
21
|
+
});
|
|
22
|
+
});
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
import '@testing-library/jest-dom';
|
|
3
|
+
import createPaginationButttons from "../modules/pagination.js";
|
|
4
|
+
describe('createPaginationButttons', () => {
|
|
5
|
+
const pagination = document.createElement('div');
|
|
6
|
+
pagination.setAttribute('data-page', 2);
|
|
7
|
+
pagination.setAttribute('data-pages', 5);
|
|
8
|
+
pagination.setAttribute('data-show', 15);
|
|
9
|
+
pagination.setAttribute('data-total', 150);
|
|
10
|
+
pagination.setAttribute('data-increment', 15);
|
|
11
|
+
createPaginationButttons(pagination, pagination);
|
|
12
|
+
test('should populate the pagination with links to each page', () => {
|
|
13
|
+
expect(pagination.querySelectorAll('a.page-link').length).toEqual(6);
|
|
14
|
+
});
|
|
15
|
+
});
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
import '@testing-library/jest-dom';
|
|
3
|
+
import * as tableModule from "../modules/table.js";
|
|
4
|
+
import "expect-puppeteer";
|
|
5
|
+
const basicTable = `<thead>
|
|
6
|
+
<tr>
|
|
7
|
+
<th>Heading 1</th>
|
|
8
|
+
<th>Heading 2</th>
|
|
9
|
+
<th>Heading 3</th>
|
|
10
|
+
</tr>
|
|
11
|
+
</thead>
|
|
12
|
+
<tbody
|
|
13
|
+
<tr>
|
|
14
|
+
<td>Cell 1</td>
|
|
15
|
+
<td>Low</td>
|
|
16
|
+
<td>Cell 3</td>
|
|
17
|
+
</tr>
|
|
18
|
+
<tr>
|
|
19
|
+
<td>Cell 1</td>
|
|
20
|
+
<td>Low</td>
|
|
21
|
+
<td><a href="/link">View information</a></td>
|
|
22
|
+
</tr>
|
|
23
|
+
<tr>
|
|
24
|
+
<td>Different Cell 1</td>
|
|
25
|
+
<td>Medium</td>
|
|
26
|
+
<td><a href="/link">View information</a></td>
|
|
27
|
+
</tr>
|
|
28
|
+
<tr>
|
|
29
|
+
<td>Different Cell 1</td>
|
|
30
|
+
<td>High</td>
|
|
31
|
+
<td><a href="/link">View information</a></td>
|
|
32
|
+
</tr>
|
|
33
|
+
</tbody>`;
|
|
34
|
+
describe('addDataAttributes', () => {
|
|
35
|
+
const table = document.createElement('table');
|
|
36
|
+
table.innerHTML = basicTable;
|
|
37
|
+
tableModule.addDataAttributes(table);
|
|
38
|
+
test('should add data-label attribute to the table cells', () => {
|
|
39
|
+
expect(table.querySelector('tbody td').getAttribute('data-label')).toEqual('Heading 1');
|
|
40
|
+
expect(table.querySelector('tbody td:nth-child(2)').getAttribute('data-label')).toEqual('Heading 2');
|
|
41
|
+
});
|
|
42
|
+
test('should add data-content attribute to the table cells if the content matches a pre-defined list', () => {
|
|
43
|
+
expect(table.querySelector('tbody tr:nth-child(2) td:nth-child(2)').getAttribute('data-content')).toEqual('Low');
|
|
44
|
+
expect(table.querySelector('tbody tr:nth-child(3) td:nth-child(2)').getAttribute('data-content')).toEqual('Medium');
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
/* TODO: This unit test doesn't work as puppeteer seems to have an issue with query selector all
|
|
48
|
+
describe('getLargestLastColWidth', () => {
|
|
49
|
+
|
|
50
|
+
test('should return the width of the largest last column content', async() => {
|
|
51
|
+
|
|
52
|
+
const browser = await puppeteer.launch({});
|
|
53
|
+
try {
|
|
54
|
+
const page = await browser.newPage();
|
|
55
|
+
await page.exposeFunction("getLargestLastColWidth", tableModule.getLargestLastColWidth);
|
|
56
|
+
await page.setContent(`<table id="table">${basicTable}</table>`);
|
|
57
|
+
await page.waitForSelector('#table tr');
|
|
58
|
+
|
|
59
|
+
const largestWidth = await page.evaluate(`getLargestLastColWidth(document.querySelector("#table"))`);
|
|
60
|
+
|
|
61
|
+
//const links = await page.$$eval('#table', e=>getLargestLastColWidth(e))
|
|
62
|
+
console.log(await largestWidth)
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
} catch (e) {
|
|
66
|
+
console.error(e);
|
|
67
|
+
} finally {
|
|
68
|
+
await browser.close();
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
});
|
|
73
|
+
|
|
74
|
+
});
|
|
75
|
+
*/
|
|
76
|
+
describe('createMobileButton', () => {
|
|
77
|
+
const table = document.createElement('table');
|
|
78
|
+
table.innerHTML = basicTable;
|
|
79
|
+
tableModule.createMobileButton(table);
|
|
80
|
+
test('should add a button to the first cell in a column', () => {
|
|
81
|
+
expect(table.querySelector('tbody td:nth-child(1) button').textContent).toEqual('Cell 1');
|
|
82
|
+
expect(table.querySelector('tbody td:nth-child(1) span').textContent).toEqual('Cell 1');
|
|
83
|
+
});
|
|
84
|
+
});
|
|
85
|
+
describe('createSearchDataList', () => {
|
|
86
|
+
const table = document.createElement('table');
|
|
87
|
+
table.innerHTML = basicTable;
|
|
88
|
+
const form = document.createElement('form');
|
|
89
|
+
form.innerHTML += `<div><input name="search" id="search" type="text" class="form-control" data-search="Heading 1"></div>`;
|
|
90
|
+
tableModule.addDataAttributes(table);
|
|
91
|
+
tableModule.createSearchDataList(table, form);
|
|
92
|
+
test('should create a datalist populated by the defined columns in the data-search ', () => {
|
|
93
|
+
expect(form.querySelectorAll('datalist').length).toEqual(1);
|
|
94
|
+
expect(form.querySelectorAll('datalist option').length).toEqual(2);
|
|
95
|
+
expect(form.querySelector('datalist option:nth-child(1)').value).toEqual('Cell 1');
|
|
96
|
+
expect(form.querySelector('datalist option:nth-child(2)').value).toEqual('Different Cell 1');
|
|
97
|
+
});
|
|
98
|
+
test('should set the autocomplete attribute to off', () => {
|
|
99
|
+
expect(form.querySelectorAll('datalist').length).toEqual(1);
|
|
100
|
+
expect(form.querySelectorAll('datalist option').length).toEqual(2);
|
|
101
|
+
expect(form.querySelector('datalist option:nth-child(1)').value).toEqual('Cell 1');
|
|
102
|
+
expect(form.querySelector('input').getAttribute('autocomplete')).toEqual('off');
|
|
103
|
+
});
|
|
104
|
+
});
|
|
105
|
+
describe('sortTable', () => {
|
|
106
|
+
const table = document.createElement('table');
|
|
107
|
+
table.innerHTML = basicTable;
|
|
108
|
+
const form = document.createElement('form');
|
|
109
|
+
form.innerHTML += `<div><select type="select" name="sort" id="sort" class="form-select" data-sort=""><option value="-1">Sort by</option><option value="high" data-sort="Heading 2" data-order="High,Medium,Low" selected="selected">high to low</option></select></div>`;
|
|
110
|
+
const savedTableBody = table.querySelector('tbody');
|
|
111
|
+
tableModule.addDataAttributes(table);
|
|
112
|
+
tableModule.sortTable(table, form, savedTableBody);
|
|
113
|
+
test('should sort the table from high to low', () => {
|
|
114
|
+
expect(table.querySelector('tbody tr:nth-child(1) td:nth-child(2)').textContent).toEqual('High');
|
|
115
|
+
expect(table.querySelector('tbody tr:nth-child(2) td:nth-child(2)').textContent).toEqual('Medium');
|
|
116
|
+
expect(table.querySelector('tbody tr:nth-child(3) td:nth-child(2)').textContent).toEqual('Low');
|
|
117
|
+
});
|
|
118
|
+
});
|
|
119
|
+
describe('filterTable', () => {
|
|
120
|
+
const table = document.createElement('table');
|
|
121
|
+
table.innerHTML = basicTable;
|
|
122
|
+
const form = document.createElement('form');
|
|
123
|
+
form.innerHTML += `<div><input type="text" name="filter" id="filter" data-filter="Heading 2" value="High" /></div>`;
|
|
124
|
+
tableModule.addDataAttributes(table);
|
|
125
|
+
tableModule.filterTable(table, form, document.createElement('div'));
|
|
126
|
+
test('should filter the table to only show high values', () => {
|
|
127
|
+
expect(table.querySelectorAll('tbody tr.filtered--matched').length).toEqual(1);
|
|
128
|
+
});
|
|
129
|
+
});
|
|
130
|
+
describe('populateDataQueries', () => {
|
|
131
|
+
const table = document.createElement('table');
|
|
132
|
+
table.innerHTML = basicTable;
|
|
133
|
+
const form = document.createElement('form');
|
|
134
|
+
form.innerHTML += `<div><span data-query="total"></span><span data-query="Heading 2 == Low"></span></div>`;
|
|
135
|
+
tableModule.addDataAttributes(table);
|
|
136
|
+
tableModule.populateDataQueries(table, form);
|
|
137
|
+
test('should populate elements with the data-query attribute with the result of the corresponding query', () => {
|
|
138
|
+
expect(form.querySelector('[data-query="total"]').textContent).toEqual('4');
|
|
139
|
+
expect(form.querySelector('[data-query="Heading 2 == Low"]').textContent).toEqual('2');
|
|
140
|
+
});
|
|
141
|
+
});
|
|
142
|
+
describe('formatCell', () => {
|
|
143
|
+
test('should format the text correctly', () => {
|
|
144
|
+
expect(tableModule.formatCell('date', '2023-05-15 12:10:45.000000')).toEqual('15 May 23');
|
|
145
|
+
expect(tableModule.formatCell('capitalise', 'low')).toEqual('Low');
|
|
146
|
+
});
|
|
147
|
+
});
|
|
@@ -1,13 +1,12 @@
|
|
|
1
|
+
@use "components/card.scss";
|
|
1
2
|
@use "components/nav.scss";
|
|
2
3
|
@use "components/header.scss";
|
|
3
4
|
@use "components/testimonial.scss";
|
|
4
|
-
@use "components/cardDeck.scss";
|
|
5
5
|
@use "components/accordion.scss";
|
|
6
6
|
@use "components/alert";
|
|
7
7
|
@use "components/carousel.scss";
|
|
8
8
|
@use "components/property-searchbar.scss";
|
|
9
9
|
@use "components/tabs.scss";
|
|
10
|
-
@use "components/modal.scss";
|
|
11
10
|
@use "components/charts.scss";
|
|
12
11
|
@use "components/timeline.scss";
|
|
13
12
|
@use "components/snapshot.scss";
|
|
@@ -13,15 +13,16 @@
|
|
|
13
13
|
@use "components/lists.scss";
|
|
14
14
|
@use "components/tooltips.scss";
|
|
15
15
|
@use "components/container.scss";
|
|
16
|
-
@use "components/
|
|
17
|
-
@use "
|
|
16
|
+
@use "components/table.scss";
|
|
17
|
+
@use "foundations/links.scss";
|
|
18
18
|
@use "components/buttons";
|
|
19
|
-
@use "components/card.scss";
|
|
20
19
|
@use "components/panel.scss";
|
|
20
|
+
@use "components/dialog.scss";
|
|
21
|
+
|
|
22
|
+
@use "components/pagination.scss";
|
|
21
23
|
|
|
22
24
|
// Bootstrap elements
|
|
23
25
|
@import "../../node_modules/bootstrap/scss/_transitions.scss";
|
|
24
|
-
@import "../../node_modules/bootstrap/scss/_pagination.scss";
|
|
25
26
|
@import "../../node_modules/bootstrap/scss/_badge.scss";
|
|
26
27
|
|
|
27
28
|
// Helpers
|
|
@@ -120,6 +120,22 @@ $utilities: map-merge(
|
|
|
120
120
|
"primary": linear-gradient(var(--gradient-direction), var(--colour-primary) 0, transparent 100%),
|
|
121
121
|
"info": linear-gradient(var(--gradient-direction), var(--colour-info) 0, transparent 100%)
|
|
122
122
|
)
|
|
123
|
+
),
|
|
124
|
+
"colour": (
|
|
125
|
+
property: --colour,
|
|
126
|
+
class: colour,
|
|
127
|
+
values:
|
|
128
|
+
(
|
|
129
|
+
"primary": var(--colour-primary),
|
|
130
|
+
"secondary": var(--colour-secondary),
|
|
131
|
+
"info": var(--colour-info),
|
|
132
|
+
"success": var(--colour-success),
|
|
133
|
+
"warning": var(--colour-warning),
|
|
134
|
+
"danger": var(--colour-danger),
|
|
135
|
+
"light": var(--colour-light),
|
|
136
|
+
"dark": var(--colour-dark),
|
|
137
|
+
"admin": var(--colour-admin)
|
|
138
|
+
)
|
|
123
139
|
)
|
|
124
140
|
)
|
|
125
141
|
);
|
|
@@ -89,7 +89,7 @@ $dark: #46003c;
|
|
|
89
89
|
// Functional/state variables
|
|
90
90
|
$colour-body: #595959;
|
|
91
91
|
$colour-muted: #9d9d9d;
|
|
92
|
-
$colour-border: #
|
|
92
|
+
$colour-border: #D8D8D8;
|
|
93
93
|
$colour-link: $primary;
|
|
94
94
|
$colour-focus: #000000;
|
|
95
95
|
$colour-hover: #000000;
|
|
@@ -331,7 +331,8 @@ $input-line-height: 1.5;
|
|
|
331
331
|
$input-padding-y: 0.75em;
|
|
332
332
|
$input-padding-x: 1em;
|
|
333
333
|
$input-border-radius: rem(10);
|
|
334
|
-
$input-border-color: var(--colour-
|
|
334
|
+
$input-border-color: var(--colour-primary);
|
|
335
|
+
$input-border-width: 2px;
|
|
335
336
|
|
|
336
337
|
// sm
|
|
337
338
|
$input-height-sm: null;
|
|
@@ -357,8 +358,9 @@ $input-group-addon-border-color: var(--colour-border);
|
|
|
357
358
|
$form-select-padding-y: $input-padding-y;
|
|
358
359
|
//$form-select-indicator-padding
|
|
359
360
|
$form-select-padding-x: #{$input-padding-x};
|
|
360
|
-
$form-select-border-color: var(--colour-
|
|
361
|
+
$form-select-border-color: var(--colour-primary);
|
|
361
362
|
$form-select-border-radius: $input-border-radius;
|
|
363
|
+
$form-select-border-width: 2px;
|
|
362
364
|
|
|
363
365
|
// Checkbox
|
|
364
366
|
$form-check-input-width: 1.5rem;
|
|
@@ -369,13 +371,13 @@ $form-check-margin-bottom: #{rem(16)};
|
|
|
369
371
|
$form-check-input-border: 1px solid var(--colour-border);
|
|
370
372
|
|
|
371
373
|
$form-check-input-checked-color: $primary;
|
|
372
|
-
$form-check-input-checked-bg-color: var(--colour-
|
|
374
|
+
$form-check-input-checked-bg-color: var(--colour-info);
|
|
373
375
|
$form-check-input-checked-border-color: var(--colour-border);
|
|
374
376
|
$form-check-input-checked-bg-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'><path fill='none' stroke='#{$form-check-input-checked-color}' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M6 10l3 3l6-6'/></svg>");
|
|
375
377
|
|
|
376
378
|
$form-check-input-indeterminate-color: $primary;
|
|
377
|
-
$form-check-input-indeterminate-bg-color: var(--colour-
|
|
378
|
-
$form-check-input-indeterminate-border-color: var(--colour-
|
|
379
|
+
$form-check-input-indeterminate-bg-color: var(--colour-info);
|
|
380
|
+
$form-check-input-indeterminate-border-color: var(--colour-info);
|
|
379
381
|
$form-check-input-indeterminate-bg-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'><path fill='none' stroke='#{$form-check-input-indeterminate-color}' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M6 10h8'/></svg>");
|
|
380
382
|
|
|
381
383
|
$form-switch-bg-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='3' fill='#{$colour-border}'/></svg>");
|
|
@@ -403,7 +405,7 @@ $card-cap-bg: transparent;
|
|
|
403
405
|
// #endregion card-variables
|
|
404
406
|
|
|
405
407
|
// #region Icons
|
|
406
|
-
$icon-blank: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'><path d='M17 13v6c0 0.276-0.111 0.525-0.293 0.707s-0.431 0.293-0.707 0.293h-11c-0.276 0-0.525-0.111-0.707-0.293s-0.293-0.431-0.293-0.707v-11c0-0.276 0.111-0.525 0.293-0.707s0.431-0.293 0.707-0.293h6c0.552 0 1-0.448 1-1s-0.448-1-1-1h-6c-0.828 0-1.58 0.337-2.121 0.879s-0.879 1.293-0.879 2.121v11c0 0.828 0.337 1.58 0.879 2.121s1.293 0.879 2.121 0.879h11c0.828 0 1.58-0.337 2.121-0.879s0.879-1.293 0.879-2.121v-6c0-0.552-0.448-1-1-1s-1 0.448-1 1zM10.707 14.707l9.293-9.293v3.586c0 0.552 0.448 1 1 1s1-0.448 1-1v-6c0-0.136-0.027-0.265-0.076-0.383s-0.121-0.228-0.216-0.323c-0.001-0.001-0.001-0.001-0.002-0.002-0.092-0.092-0.202-0.166-0.323-0.216-0.118-0.049-0.247-0.076-0.383-0.076h-6c-0.552 0-1 0.448-1 1s0.448 1 1 1h3.586l-9.293 9.293c-0.391 0.391-0.391 1.024 0 1.414s1.024 0.391 1.414 0z' stroke-width='
|
|
408
|
+
$icon-blank: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'><path d='M17 13v6c0 0.276-0.111 0.525-0.293 0.707s-0.431 0.293-0.707 0.293h-11c-0.276 0-0.525-0.111-0.707-0.293s-0.293-0.431-0.293-0.707v-11c0-0.276 0.111-0.525 0.293-0.707s0.431-0.293 0.707-0.293h6c0.552 0 1-0.448 1-1s-0.448-1-1-1h-6c-0.828 0-1.58 0.337-2.121 0.879s-0.879 1.293-0.879 2.121v11c0 0.828 0.337 1.58 0.879 2.121s1.293 0.879 2.121 0.879h11c0.828 0 1.58-0.337 2.121-0.879s0.879-1.293 0.879-2.121v-6c0-0.552-0.448-1-1-1s-1 0.448-1 1zM10.707 14.707l9.293-9.293v3.586c0 0.552 0.448 1 1 1s1-0.448 1-1v-6c0-0.136-0.027-0.265-0.076-0.383s-0.121-0.228-0.216-0.323c-0.001-0.001-0.001-0.001-0.002-0.002-0.092-0.092-0.202-0.166-0.323-0.216-0.118-0.049-0.247-0.076-0.383-0.076h-6c-0.552 0-1 0.448-1 1s0.448 1 1 1h3.586l-9.293 9.293c-0.391 0.391-0.391 1.024 0 1.414s1.024 0.391 1.414 0z' stroke-width='4px'></path></svg>");
|
|
407
409
|
$icon-sort: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' preserveAspectRatio='none'%3E%3Cpath opacity='.3' d='M51 1l25 23 24 22H1l25-22zm0 100l25-23 24-22H1l25 22z'/%3E%3C/svg%3E");
|
|
408
410
|
$icon-arrow: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 22 22'><path d='M6.5,2l9,9-9,9' style='fill:none;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px'/></svg>");
|
|
409
411
|
$icon-close: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/></svg>");
|
|
@@ -425,26 +427,25 @@ $vars: map-merge((
|
|
|
425
427
|
// #region pagination
|
|
426
428
|
// Default
|
|
427
429
|
$pagination-color: var(--colour-heading);
|
|
428
|
-
$pagination-disabled-color: var(--colour-
|
|
430
|
+
$pagination-disabled-color: var(--colour-border);
|
|
429
431
|
$pagination-bg: transparent;
|
|
430
432
|
$pagination-border-width: 1px;
|
|
431
|
-
$pagination-border-color: var(--colour-
|
|
433
|
+
$pagination-border-color: var(--colour-primary);
|
|
432
434
|
|
|
433
435
|
// Hover and focus
|
|
434
436
|
$pagination-hover-color: var(--colour-heading);
|
|
435
|
-
$pagination-hover-bg: var(--colour-
|
|
436
|
-
$pagination-hover-border-color: var(--colour-
|
|
437
|
-
$pagination-focus-color: var(--colour-
|
|
438
|
-
$pagination-focus-bg: var(--colour-
|
|
437
|
+
$pagination-hover-bg: var(--colour-info);
|
|
438
|
+
$pagination-hover-border-color: var(--colour-info);
|
|
439
|
+
$pagination-focus-color: var(--colour-heading);
|
|
440
|
+
$pagination-focus-bg: var(--colour-info);
|
|
439
441
|
|
|
440
442
|
// Active
|
|
441
|
-
$pagination-active-color: var(--
|
|
442
|
-
$pagination-active-bg: var(--colour-
|
|
443
|
-
$pagination-active-border-color: var(--colour-
|
|
444
|
-
|
|
443
|
+
$pagination-active-color: var(--colour-primary);
|
|
444
|
+
$pagination-active-bg: var(--colour-info);
|
|
445
|
+
$pagination-active-border-color: var(--colour-info);
|
|
445
446
|
// Disabled
|
|
446
447
|
$pagination-disabled-bg: $pagination-bg;
|
|
447
|
-
$pagination-disabled-border-color:
|
|
448
|
+
$pagination-disabled-border-color: var(--colour-border);
|
|
448
449
|
// #endregion
|
|
449
450
|
|
|
450
451
|
// #region Accordion
|
|
@@ -493,4 +494,17 @@ $zindex-modal-backdrop: var(--index-overlay);
|
|
|
493
494
|
$zindex-modal: var(--index-overlay);
|
|
494
495
|
$zindex-popover: var(--index-above);
|
|
495
496
|
$zindex-tooltip: var(--index-above);
|
|
497
|
+
// #endregion
|
|
498
|
+
|
|
499
|
+
// #region Table
|
|
500
|
+
$td-mw-px: 120;
|
|
501
|
+
$td-mw: #{rem($td-mw-px)};
|
|
502
|
+
$table-padding-px: 32;
|
|
503
|
+
$table-padding: #{rem($table-padding-px)};
|
|
504
|
+
$table-mh-sm-px: 200;
|
|
505
|
+
$table-mh-sm: #{rem($table-mh-sm-px)};
|
|
506
|
+
$table-mh-md-px: 400;
|
|
507
|
+
$table-mh-md: #{rem($table-mh-md-px)};
|
|
508
|
+
$table-mh-lg-px: 600;
|
|
509
|
+
$table-mh-lg: #{rem($table-mh-lg-px)};
|
|
496
510
|
// #endregion
|
|
@@ -13,7 +13,7 @@ $test_colors: map-merge((
|
|
|
13
13
|
"dark": rgba(70, 0, 60, var(--alpha, 1)),
|
|
14
14
|
"muted-theme": #9d9d9d,
|
|
15
15
|
"muted": var(--colour-muted-theme),
|
|
16
|
-
"border-theme": #
|
|
16
|
+
"border-theme": #D8D8D8,
|
|
17
17
|
"border": var(--colour-border-theme),
|
|
18
18
|
"link-theme": #00313c,
|
|
19
19
|
"link": var(--colour-link-theme),
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
@use "../_func.scss" as *;
|
|
2
|
+
|
|
3
|
+
.applied-filters {
|
|
4
|
+
|
|
5
|
+
&:not(.applied-filters--compact):not(:empty):before {
|
|
6
|
+
content: "Applied filters";
|
|
7
|
+
font-weight: bold;
|
|
8
|
+
font-size: rem(18);
|
|
9
|
+
line-height: rem(22);
|
|
10
|
+
color: var(--colour-header);
|
|
11
|
+
margin-bottom: rem(16);
|
|
12
|
+
display: block;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
&:not(:empty) {
|
|
16
|
+
margin-bottom: 1rem;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.applied-filters .filter {
|
|
21
|
+
|
|
22
|
+
border: 1px solid var(--colour-border);
|
|
23
|
+
padding: 1rem rem(24) 1rem rem(24);
|
|
24
|
+
background: transparent;
|
|
25
|
+
margin-right: 0.5rem!important;
|
|
26
|
+
margin-bottom: 0.5rem!important;
|
|
27
|
+
line-height: rem(24);
|
|
28
|
+
white-space: nowrap;
|
|
29
|
+
|
|
30
|
+
&:after {
|
|
31
|
+
content: "";
|
|
32
|
+
display: inline-block;
|
|
33
|
+
height: rem(20);
|
|
34
|
+
width: rem(20);
|
|
35
|
+
padding:0;
|
|
36
|
+
margin-left: rem(24);
|
|
37
|
+
margin-bottom: -0.25rem;
|
|
38
|
+
border: none;
|
|
39
|
+
z-index: var(--index-focus);
|
|
40
|
+
background: currentColor;
|
|
41
|
+
mask-image: var(--icon-close);
|
|
42
|
+
mask-size: 100%;
|
|
43
|
+
mask-repeat: no-repeat;
|
|
44
|
+
mask-position: 50% 50%;
|
|
45
|
+
-webkit-mask-image: var(--icon-close);
|
|
46
|
+
-webkit-mask-size: 100%;
|
|
47
|
+
-webkit-mask-repeat: no-repeat;
|
|
48
|
+
-webkit-mask-position: 50% 50%;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
.applied-filters--compact .filter {
|
|
53
|
+
background-color: var(--colour-light);
|
|
54
|
+
border: none;
|
|
55
|
+
padding: rem(10);
|
|
56
|
+
line-height: rem(16);
|
|
57
|
+
border-radius: rem(5);
|
|
58
|
+
|
|
59
|
+
&:after {
|
|
60
|
+
margin-left: rem(10);
|
|
61
|
+
height: rem(16);
|
|
62
|
+
width: rem(16);
|
|
63
|
+
margin-bottom: -0.1rem;
|
|
64
|
+
}
|
|
65
|
+
}
|