@iamproperty/components 4.1.0-beta-3 → 4.1.0

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.
Files changed (128) hide show
  1. package/assets/css/components/accordion.css.map +1 -1
  2. package/assets/css/components/actionbar-global.css +1 -1
  3. package/assets/css/components/actionbar-global.css.map +1 -1
  4. package/assets/css/components/address-lookup.css +1 -0
  5. package/assets/css/components/address-lookup.css.map +1 -0
  6. package/assets/css/components/admin-panel.css +1 -1
  7. package/assets/css/components/admin-panel.css.map +1 -1
  8. package/assets/css/components/dialog.css +1 -1
  9. package/assets/css/components/dialog.css.map +1 -1
  10. package/assets/css/components/fileupload.css +1 -1
  11. package/assets/css/components/fileupload.css.map +1 -1
  12. package/assets/css/components/forms.css +1 -1
  13. package/assets/css/components/forms.css.map +1 -1
  14. package/assets/css/components/header.css +1 -1
  15. package/assets/css/components/header.css.map +1 -1
  16. package/assets/css/components/lists.css +1 -1
  17. package/assets/css/components/lists.css.map +1 -1
  18. package/assets/css/components/nav-global.css +1 -1
  19. package/assets/css/components/nav-global.css.map +1 -1
  20. package/assets/css/components/nav.css +1 -1
  21. package/assets/css/components/nav.css.map +1 -1
  22. package/assets/css/components/nav.old.css +1 -1
  23. package/assets/css/components/nav.old.css.map +1 -1
  24. package/assets/css/components/notification.css +1 -1
  25. package/assets/css/components/notification.css.map +1 -1
  26. package/assets/css/components/pagination.css +1 -1
  27. package/assets/css/components/pagination.css.map +1 -1
  28. package/assets/css/components/property-searchbar.css +1 -1
  29. package/assets/css/components/property-searchbar.css.map +1 -1
  30. package/assets/css/components/table.css +1 -1
  31. package/assets/css/components/table.css.map +1 -1
  32. package/assets/css/components/table.extras.css +1 -0
  33. package/assets/css/components/table.extras.css.map +1 -0
  34. package/assets/css/components/table.global.css +1 -0
  35. package/assets/css/components/table.global.css.map +1 -0
  36. package/assets/css/components/tabs.css +1 -1
  37. package/assets/css/components/tabs.css.map +1 -1
  38. package/assets/css/core.min.css +1 -1
  39. package/assets/css/core.min.css.map +1 -1
  40. package/assets/css/style.min.css +1 -1
  41. package/assets/css/style.min.css.map +1 -1
  42. package/assets/js/components/accordion/accordion.component.min.js +1 -1
  43. package/assets/js/components/actionbar/actionbar.component.min.js +1 -1
  44. package/assets/js/components/address-lookup/address-lookup.component.js +172 -0
  45. package/assets/js/components/address-lookup/address-lookup.component.min.js +36 -0
  46. package/assets/js/components/address-lookup/address-lookup.component.min.js.map +1 -0
  47. package/assets/js/components/applied-filters/applied-filters.component.min.js +2 -2
  48. package/assets/js/components/applied-filters/applied-filters.component.min.js.map +1 -1
  49. package/assets/js/components/card/card.component.min.js +1 -1
  50. package/assets/js/components/collapsible-side/collapsible-side.component.min.js +1 -1
  51. package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
  52. package/assets/js/components/header/header.component.min.js +2 -2
  53. package/assets/js/components/nav/nav.component.min.js +2 -2
  54. package/assets/js/components/notification/notification.component.min.js +4 -4
  55. package/assets/js/components/notification/notification.component.min.js.map +1 -1
  56. package/assets/js/components/pagination/pagination.component.js +152 -7
  57. package/assets/js/components/pagination/pagination.component.min.js +38 -12
  58. package/assets/js/components/pagination/pagination.component.min.js.map +1 -1
  59. package/assets/js/components/table/table.component.js +95 -69
  60. package/assets/js/components/table/table.component.min.js +9 -13
  61. package/assets/js/components/table/table.component.min.js.map +1 -1
  62. package/assets/js/components/tabs/tabs.component.js +3 -1
  63. package/assets/js/components/tabs/tabs.component.min.js +7 -5
  64. package/assets/js/components/tabs/tabs.component.min.js.map +1 -1
  65. package/assets/js/dynamic.min.js +2 -2
  66. package/assets/js/dynamic.min.js.map +1 -1
  67. package/assets/js/modules/applied-filters.js +3 -4
  68. package/assets/js/modules/dynamicEvents.js +116 -0
  69. package/assets/js/modules/helpers.js +9 -0
  70. package/assets/js/modules/pagination.js +7 -10
  71. package/assets/js/modules/table.js +51 -52
  72. package/assets/js/modules/tabs.js +10 -1
  73. package/assets/js/scripts.bundle.js +53 -25
  74. package/assets/js/scripts.bundle.js.map +1 -1
  75. package/assets/js/scripts.bundle.min.js +2 -2
  76. package/assets/js/scripts.bundle.min.js.map +1 -1
  77. package/assets/js/tests/table.spec.js +0 -57
  78. package/assets/sass/_components.scss +2 -0
  79. package/assets/sass/_corefiles.scss +6 -2
  80. package/assets/sass/_functions/variables.scss +5 -1
  81. package/assets/sass/components/actionbar-global.scss +11 -2
  82. package/assets/sass/components/address-lookup.scss +22 -0
  83. package/assets/sass/components/admin-panel.scss +4 -0
  84. package/assets/sass/components/dialog.scss +5 -0
  85. package/assets/sass/components/fileupload.scss +2 -0
  86. package/assets/sass/components/forms.scss +217 -57
  87. package/assets/sass/components/lists.scss +119 -1
  88. package/assets/sass/components/nav-global.scss +1 -0
  89. package/assets/sass/components/notification.scss +6 -1
  90. package/assets/sass/components/pagination.scss +192 -100
  91. package/assets/sass/components/table.extras.scss +650 -0
  92. package/assets/sass/components/table.global.scss +103 -0
  93. package/assets/sass/components/table.scss +41 -565
  94. package/assets/sass/components/tabs.scss +95 -32
  95. package/assets/sass/foundations/brand.scss +4 -0
  96. package/assets/sass/foundations/buttons.scss +14 -12
  97. package/assets/sass/foundations/links.scss +2 -1
  98. package/assets/sass/helpers/dynamic.scss +3 -0
  99. package/assets/sass/templates/form.scss +84 -0
  100. package/assets/svg/logo.svg +7 -0
  101. package/assets/ts/components/address-lookup/address-lookup.component.ts +215 -0
  102. package/assets/ts/components/pagination/README.md +11 -0
  103. package/assets/ts/components/pagination/pagination.component.ts +182 -8
  104. package/assets/ts/components/table/README.md +4 -2
  105. package/assets/ts/components/table/table.component.ts +134 -83
  106. package/assets/ts/components/tabs/README.md +6 -5
  107. package/assets/ts/components/tabs/tabs.component.ts +3 -1
  108. package/assets/ts/modules/applied-filters.ts +5 -8
  109. package/assets/ts/modules/dynamicEvents.ts +145 -0
  110. package/assets/ts/modules/helpers.ts +16 -1
  111. package/assets/ts/modules/pagination.ts +7 -10
  112. package/assets/ts/modules/table.ts +70 -57
  113. package/assets/ts/modules/tabs.ts +21 -10
  114. package/assets/ts/tests/table.spec.ts +1 -61
  115. package/dist/components.es.js +1103 -993
  116. package/dist/components.umd.js +161 -76
  117. package/dist/style.css +1 -1
  118. package/package.json +3 -2
  119. package/src/components/AddressLookup/AddressLookup.vue +27 -0
  120. package/src/components/Pagination/README.md +11 -0
  121. package/src/components/Table/README.md +4 -3
  122. package/src/components/Table/Table.vue +4 -0
  123. package/src/components/Tabs/README.md +10 -7
  124. package/src/components/Tabs/Tab.vue +7 -8
  125. package/src/components/Tabs/Tabs.vue +0 -1
  126. package/src/index.js +1 -0
  127. package/assets/js/tests/pagination.spec.js +0 -15
  128. package/assets/ts/tests/pagination.spec.ts +0 -21
@@ -59,44 +59,6 @@ describe('addDataAttributes', () => {
59
59
  expect(table.querySelector('tbody tr:nth-child(3) td:nth-child(2)').getAttribute('data-content')).toEqual('medium');
60
60
  });
61
61
  });
62
- /* TODO: This unit test doesn't work as puppeteer seems to have an issue with query selector all
63
- describe('getLargestLastColWidth', () => {
64
-
65
- test('should return the width of the largest last column content', async() => {
66
-
67
- const browser = await puppeteer.launch({});
68
- try {
69
- const page = await browser.newPage();
70
- await page.exposeFunction("getLargestLastColWidth", tableModule.getLargestLastColWidth);
71
- await page.setContent(`<table id="table">${basicTable}</table>`);
72
- await page.waitForSelector('#table tr');
73
-
74
- const largestWidth = await page.evaluate(`getLargestLastColWidth(document.querySelector("#table"))`);
75
-
76
- //const links = await page.$$eval('#table', e=>getLargestLastColWidth(e))
77
- console.log(await largestWidth)
78
-
79
-
80
- } catch (e) {
81
- console.error(e);
82
- } finally {
83
- await browser.close();
84
- }
85
-
86
-
87
- });
88
-
89
- });
90
- */
91
- describe('createMobileButton', () => {
92
- const table = document.createElement('table');
93
- table.innerHTML = basicTable;
94
- tableModule.createMobileButton(table);
95
- test('should add a button to the first cell in a column', () => {
96
- expect(table.querySelector('tbody td:nth-child(1) button').textContent).toEqual('Cell 1');
97
- expect(table.querySelector('tbody td:nth-child(1) span').textContent).toEqual('Cell 1');
98
- });
99
- });
100
62
  describe('createSearchDataList', () => {
101
63
  const table = document.createElement('table');
102
64
  table.innerHTML = basicTable;
@@ -142,25 +104,6 @@ describe('filterTable', () => {
142
104
  expect(table.querySelectorAll('tbody tr.filtered--matched').length).toEqual(1);
143
105
  });
144
106
  });
145
- /*
146
- describe('populateDataQueries', () => {
147
-
148
- const table = document.createElement('table');
149
- table.innerHTML = basicTable;
150
- const form = document.createElement('form');
151
- form.innerHTML += `<div><input name="heading" value="Low" data-filter="Heading 2" /><span data-query="total"></span><span data-query="Heading 2 == Low"></span></div>`;
152
-
153
- tableModule.addDataAttributes(table);
154
- tableModule.filterTable(table, form, document.createElement('div'));
155
- tableModule.populateDataQueries(table, form);
156
-
157
- test('should populate elements with the data-query attribute with the result of the corresponding query', () => {
158
-
159
- //expect(form.querySelector('[data-query="total"]').textContent).toEqual('4');
160
- //expect(form.querySelector('[data-query="Heading 2 == Low"]').textContent).toEqual('2');
161
- });
162
- });
163
- */
164
107
  describe('formatCell', () => {
165
108
  test('should format the text correctly', () => {
166
109
  expect(tableModule.formatCell('date', '2023-05-15 12:10:45.000000')).toEqual('15 May 23');
@@ -11,3 +11,5 @@
11
11
  @use "components/timeline.scss";
12
12
  @use "components/snapshot.scss";
13
13
  @use "components/stepper.scss";
14
+
15
+ @use "components/pagination.scss";
@@ -13,14 +13,13 @@
13
13
  @use "components/lists.scss";
14
14
  @use "components/tooltips.scss";
15
15
  @use "components/container.scss";
16
- @use "components/table.scss";
16
+ @use "components/table.global.scss";
17
17
  @use "components/tabs.scss";
18
18
  @use "foundations/links.scss";
19
19
  @use "foundations/buttons";
20
20
  @use "components/admin-panel.scss";
21
21
  @use "components/dialog.scss";
22
22
 
23
- @use "components/pagination.scss";
24
23
  @use "components/accordion.scss";
25
24
 
26
25
  @use "components/card-global.scss";
@@ -42,7 +41,12 @@
42
41
  @import "../bootstrap/scss/helpers/text-truncation";
43
42
  //@import "../bootstrap/scss/helpers/vr";
44
43
 
44
+ // Helpers
45
45
  @import "helpers/max-height.scss";
46
+ @import "helpers/dynamic.scss";
46
47
 
47
48
  // Utilities
48
49
  @import "../bootstrap/scss/utilities/_api.scss";
50
+
51
+ // Templates
52
+ @import "templates/form.scss";
@@ -178,7 +178,7 @@ $non-theme-colors: map-merge((
178
178
  "btn-secondary-bg": transparent,
179
179
  "btn-secondary-bg-hover": var(--colour-primary-theme),
180
180
  "btn-secondary-hover": var(--colour-inverted),
181
- "canvas-2": var(--colour-canvas),
181
+ "canvas-2": white,
182
182
  "btn-action-hover-bg": var(--colour-light)
183
183
  ), $non-theme-colors);
184
184
 
@@ -336,6 +336,10 @@ $content-max-width-px: 800;
336
336
  $content-max-width: rem($content-max-width-px);
337
337
  $paragraph-margin-bottom: 2rem;
338
338
 
339
+
340
+ $input-max-width-px: 800;
341
+ $input-max-width: var(--input-max-width, #{rem($input-max-width-px)});
342
+ $select-max-width: var(--select-max-width, #{rem($input-max-width-px)});
339
343
  // #endregion
340
344
 
341
345
  // #region Buttons
@@ -4,6 +4,13 @@
4
4
  iam-actionbar {
5
5
 
6
6
  background-color: #FCFCFC;
7
+
8
+
9
+ @include dark-mode(){
10
+
11
+ background-color: var(--colour-canvas);
12
+ }
13
+
7
14
  display: block;
8
15
  border-top-left-radius: rem(10);
9
16
  border-top-right-radius: rem(10);
@@ -14,7 +21,9 @@ iam-actionbar {
14
21
  // #region at the top
15
22
  main > .actionbar__sticky-wrapper > .actionbar__sticky > iam-actionbar {
16
23
 
17
- background-color: #e6eaec;
24
+ @include light-mode(){
25
+ background-color: #e6eaec;
26
+ }
18
27
  border-radius: rem(8);
19
28
  margin: var(--container-padding);
20
29
  margin-bottom: 2rem;
@@ -91,7 +100,7 @@ iam-table iam-actionbar {
91
100
  }
92
101
  }
93
102
 
94
- @include media-breakpoint-up(sm) {
103
+ @include container-up(sm) {
95
104
 
96
105
  iam-table iam-actionbar {
97
106
 
@@ -0,0 +1,22 @@
1
+ :host {
2
+ margin-bottom: 1rem;
3
+ display: block;
4
+ }
5
+
6
+ input[name="postcode"] {
7
+ border-color: var(--error-border,var(--colour-primary))!important;
8
+ }
9
+
10
+ div:has(input[name="postcode"]) .suffix {
11
+
12
+ border-color: var(--error-border,var(--colour-primary))!important;
13
+ }
14
+
15
+ .invalid-feedback {
16
+ display: var(--error-display,none)!important;
17
+ }
18
+
19
+ .optional {
20
+
21
+ display: var(--req-display,inline-block)!important;
22
+ }
@@ -89,6 +89,10 @@
89
89
  padding-bottom: 0!important;
90
90
  }
91
91
  }
92
+
93
+ > iam-pagination {
94
+ margin-top: -1rem;
95
+ }
92
96
  }
93
97
 
94
98
  [class*="col"] .admin-panel:first-child:last-child:not(:has(.mh-sm,.mh-md,.mh-lg)) {
@@ -611,6 +611,11 @@ dialog::backdrop {
611
611
  top: 0.75rem;
612
612
  }
613
613
  }
614
+
615
+ .btn-action {
616
+ border: none;
617
+ margin: 0;
618
+ }
614
619
  }
615
620
 
616
621
  dialog[open] {
@@ -128,6 +128,8 @@
128
128
  position: relative;
129
129
  padding: rem(24) rem(32) rem(24) rem(32);
130
130
  user-select: none;
131
+ max-width: 100%;
132
+ min-width: 100%;
131
133
 
132
134
  &.focus {
133
135