@iamproperty/components 4.1.0-beta-2 → 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 (131) 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 +3 -3
  44. package/assets/js/components/actionbar/actionbar.component.min.js.map +1 -1
  45. package/assets/js/components/address-lookup/address-lookup.component.js +172 -0
  46. package/assets/js/components/address-lookup/address-lookup.component.min.js +36 -0
  47. package/assets/js/components/address-lookup/address-lookup.component.min.js.map +1 -0
  48. package/assets/js/components/applied-filters/applied-filters.component.min.js +2 -2
  49. package/assets/js/components/applied-filters/applied-filters.component.min.js.map +1 -1
  50. package/assets/js/components/card/card.component.min.js +1 -1
  51. package/assets/js/components/collapsible-side/collapsible-side.component.min.js +1 -1
  52. package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
  53. package/assets/js/components/header/header.component.min.js +2 -2
  54. package/assets/js/components/nav/nav.component.min.js +2 -2
  55. package/assets/js/components/notification/notification.component.min.js +4 -4
  56. package/assets/js/components/notification/notification.component.min.js.map +1 -1
  57. package/assets/js/components/pagination/pagination.component.js +152 -7
  58. package/assets/js/components/pagination/pagination.component.min.js +38 -12
  59. package/assets/js/components/pagination/pagination.component.min.js.map +1 -1
  60. package/assets/js/components/table/table.component.js +95 -69
  61. package/assets/js/components/table/table.component.min.js +9 -13
  62. package/assets/js/components/table/table.component.min.js.map +1 -1
  63. package/assets/js/components/tabs/tabs.component.js +3 -1
  64. package/assets/js/components/tabs/tabs.component.min.js +7 -5
  65. package/assets/js/components/tabs/tabs.component.min.js.map +1 -1
  66. package/assets/js/dynamic.min.js +5 -5
  67. package/assets/js/dynamic.min.js.map +1 -1
  68. package/assets/js/modules/applied-filters.js +3 -4
  69. package/assets/js/modules/dialogs.js +15 -3
  70. package/assets/js/modules/dynamicEvents.js +116 -0
  71. package/assets/js/modules/helpers.js +9 -0
  72. package/assets/js/modules/pagination.js +7 -10
  73. package/assets/js/modules/table.js +51 -52
  74. package/assets/js/modules/tabs.js +10 -1
  75. package/assets/js/scripts.bundle.js +53 -25
  76. package/assets/js/scripts.bundle.js.map +1 -1
  77. package/assets/js/scripts.bundle.min.js +2 -2
  78. package/assets/js/scripts.bundle.min.js.map +1 -1
  79. package/assets/js/tests/table.spec.js +0 -57
  80. package/assets/sass/_components.scss +2 -0
  81. package/assets/sass/_corefiles.scss +6 -2
  82. package/assets/sass/_functions/variables.scss +5 -1
  83. package/assets/sass/components/actionbar-global.scss +11 -2
  84. package/assets/sass/components/address-lookup.scss +22 -0
  85. package/assets/sass/components/admin-panel.scss +4 -0
  86. package/assets/sass/components/dialog.scss +22 -13
  87. package/assets/sass/components/fileupload.scss +2 -0
  88. package/assets/sass/components/forms.scss +231 -71
  89. package/assets/sass/components/lists.scss +119 -1
  90. package/assets/sass/components/nav-global.scss +1 -0
  91. package/assets/sass/components/notification.scss +6 -1
  92. package/assets/sass/components/pagination.scss +192 -100
  93. package/assets/sass/components/table.extras.scss +650 -0
  94. package/assets/sass/components/table.global.scss +103 -0
  95. package/assets/sass/components/table.scss +41 -565
  96. package/assets/sass/components/tabs.scss +95 -32
  97. package/assets/sass/foundations/brand.scss +4 -0
  98. package/assets/sass/foundations/buttons.scss +14 -12
  99. package/assets/sass/foundations/links.scss +2 -1
  100. package/assets/sass/helpers/dynamic.scss +3 -0
  101. package/assets/sass/templates/form.scss +84 -0
  102. package/assets/svg/logo.svg +7 -0
  103. package/assets/ts/components/address-lookup/address-lookup.component.ts +215 -0
  104. package/assets/ts/components/pagination/README.md +11 -0
  105. package/assets/ts/components/pagination/pagination.component.ts +182 -8
  106. package/assets/ts/components/table/README.md +4 -2
  107. package/assets/ts/components/table/table.component.ts +134 -83
  108. package/assets/ts/components/tabs/README.md +6 -5
  109. package/assets/ts/components/tabs/tabs.component.ts +3 -1
  110. package/assets/ts/modules/applied-filters.ts +5 -8
  111. package/assets/ts/modules/dialogs.ts +19 -4
  112. package/assets/ts/modules/dynamicEvents.ts +145 -0
  113. package/assets/ts/modules/helpers.ts +16 -1
  114. package/assets/ts/modules/pagination.ts +7 -10
  115. package/assets/ts/modules/table.ts +70 -57
  116. package/assets/ts/modules/tabs.ts +21 -10
  117. package/assets/ts/tests/table.spec.ts +1 -61
  118. package/dist/components.es.js +1123 -1008
  119. package/dist/components.umd.js +165 -80
  120. package/dist/style.css +1 -1
  121. package/package.json +3 -2
  122. package/src/components/AddressLookup/AddressLookup.vue +27 -0
  123. package/src/components/Pagination/README.md +11 -0
  124. package/src/components/Table/README.md +4 -3
  125. package/src/components/Table/Table.vue +4 -0
  126. package/src/components/Tabs/README.md +10 -7
  127. package/src/components/Tabs/Tab.vue +7 -8
  128. package/src/components/Tabs/Tabs.vue +0 -1
  129. package/src/index.js +1 -0
  130. package/assets/js/tests/pagination.spec.js +0 -15
  131. package/assets/ts/tests/pagination.spec.ts +0 -21
@@ -1,145 +1,237 @@
1
1
  @use "../_func" as *;
2
2
 
3
- @import "../../bootstrap/scss/_pagination.scss";
4
-
5
- // #region Basic fixes
6
- .pagination {
7
- gap: rem(4);
8
- padding-top: rem(24);
3
+ :host {
4
+
5
+ container-type: inline-size;
6
+ display: block;
9
7
  }
10
8
 
11
- .pagination .page-link {
12
- font-size: rem(14);
13
- width: rem(28);
14
- line-height: rem(28);
15
- padding: 0;
16
- text-align: center;
17
- overflow: hidden;
18
- border: none!important;
19
- text-decoration: none;
20
- font-weight: normal;
9
+ .pagination {
21
10
  display: block;
22
- }
23
11
 
24
- .pagination .page-item {
25
- border: var(--#{$prefix}pagination-border-width) solid var(--#{$prefix}pagination-border-color);
26
- border-radius: 4px!important;
27
- @include transition($pagination-transition);
28
- overflow: hidden;
12
+ @include container-up(sm) {
29
13
 
30
- &:hover {
31
- border-color: var(--#{$prefix}pagination-hover-border-color);
14
+ display: flex;
15
+ align-items: center;
16
+ justify-content: space-between!important;
17
+ padding-top: rem(32);
32
18
  }
33
19
 
34
- &:focus {
35
- box-shadow: var(--#{$prefix}pagination-focus-box-shadow);
20
+ > div {
21
+
22
+ display: flex;
23
+ align-items: center;
36
24
  }
25
+ }
26
+
27
+ // #region page jump and per page
28
+ .pagination div:is(.page-jump, .per-page) {
37
29
 
38
- &.active {
39
- border-color: var(--#{$prefix}pagination-active-border-color);
30
+ border: 1px solid var(--colour-light);
31
+ height: rem(52);
32
+
33
+ display: none;
34
+ align-items: center;
35
+ padding-inline: 1rem;
36
+
37
+ .select--minimal {
38
+ height: rem(52);
39
+ line-height: rem(52);
40
+ margin-left: rem(-16);
41
+ padding-left: rem(16);
42
+ font-weight: bold;
40
43
  }
44
+ }
41
45
 
42
- &.disabled {
43
- border-color: var(--#{$prefix}pagination-disabled-border-color);
46
+ .page-jump {
47
+
48
+ border-right: none!important;
49
+ }
50
+
51
+ .total-pages {
52
+ white-space: nowrap;
53
+ }
54
+
55
+ :host([data-page-jump][data-minimal]) {
56
+ .page-jump {
57
+ display: flex!important;
58
+ }
59
+ }
60
+ @include container-up(sm) {
61
+ :host([data-page-jump]) {
62
+ .page-jump {
63
+ display: flex!important;
64
+ }
65
+ }
66
+ }
67
+
68
+ @include container-up(sm) {
69
+ :host([data-per-page]:not([data-page-jump][data-item-count])) {
70
+ .per-page {
71
+ display: flex!important;
72
+ }
73
+ }
74
+ }
75
+ @include container-up(md) {
76
+ :host([data-per-page][data-page-jump][data-item-count]) {
77
+ .per-page {
78
+ display: flex!important;
79
+ }
44
80
  }
45
81
  }
46
82
  // #endregion
47
83
 
48
- // #region First and last buttons
49
- .pagination .page-item {
84
+ // #region Item count
85
+ .pagination > .item-count {
86
+ display: block;
87
+ text-align: center;
88
+ margin-bottom: rem(16);
89
+ margin-inline: auto;
90
+ }
50
91
 
51
- &:first-child .page-link,
52
- &:last-child .page-link {
92
+ @include container-up(sm) {
53
93
 
54
- overflow: hidden;
55
- text-indent: -300%;
56
- background: currentColor;
57
- mask-image: var(--icon-arrow);
58
- mask-size: 50%;
59
- mask-repeat: no-repeat;
60
- mask-position: 50% 50%;
61
- -webkit-mask-image: var(--icon-arrow);
62
- -webkit-mask-size: 50%;
63
- -webkit-mask-repeat: no-repeat;
64
- -webkit-mask-position: 50% 50%;
94
+ .pagination > .item-count {
95
+ display: none;
65
96
  }
66
97
 
67
- &:first-child .page-link,
68
- {
69
- transform: rotate(180deg);
98
+ :host([data-item-count]) {
99
+ .pagination > .item-count {
100
+ display: flex!important;
101
+ margin: 0;
102
+ }
70
103
  }
71
104
  }
72
105
  // #endregion
73
106
 
74
- // #region Minimise the amount of buttons on display
75
- .pagination:has(.page-item:nth-child(8)) {
107
+ // #region buttons
108
+ *:where(.prev, .next) {
76
109
 
77
- .page-item {
78
- display: none;
79
- overflow: visible;
110
+ border: 1px solid var(--colour-light);
111
+ line-height: rem(52);
112
+ height: rem(52);
113
+ margin: 0;
114
+ display: none;
115
+ background: none;
116
+ padding-inline: 1rem;
117
+
118
+
119
+ @include container-up(sm) {
120
+
121
+ display: inline-block;
122
+ }
123
+
124
+ &:after {
125
+ margin-left: 0.5em;
126
+ font-size: 0.8rem;
127
+ content: "\f054";
128
+ font-family: "Font Awesome 6 Pro";
129
+ color:var(--colour-info);
80
130
  }
81
131
 
82
- .page-item:is(:first-child, :last-child, :nth-child(2), :nth-last-child(2)) {
83
- display: block;
132
+ &:is(:hover,:focus):not(:disabled){
133
+ background-color: var(--colour-light);
84
134
  }
85
135
 
86
- .page-item.active {
87
- display: block;
136
+ &:is(:active):not(:disabled){
137
+ background-color: #E0E0E0;
88
138
  }
139
+
140
+ @include dark-mode(){
141
+ &:is(:hover,:focus):not(:disabled){
142
+ background-color: var(--colour-canvas);
143
+ }
89
144
 
90
- .page-item:has(+ .active),
91
- .page-item.active + .page-item,
92
- .page-item:nth-child(2).active + .page-item + .page-item,
93
- .page-item:has(+ .page-item + .page-item:nth-last-child(2).active) {
94
- display: block;
95
- }
96
-
97
- .page-item:nth-child(2),
98
- .page-item:nth-last-child(2) {
99
-
100
- margin-right: rem(4 + 28);
101
- position: relative;
102
-
103
- &:after {
104
- content: "...";
105
- display: block;
106
- width: rem(28);
107
- line-height: rem(28);
108
- position: absolute;
109
- left: calc(100% + #{rem(4)} + 2px);
110
- top: -1px;
111
- pointer-events: none;
112
- border: var(--#{$prefix}pagination-border-width) solid var(--#{$prefix}pagination-border-color);
113
-
114
- border-radius: 4px;
115
- text-align: center;
145
+ &:is(:active):not(:disabled){
146
+ background-color: var(--colour-canvas);
116
147
  }
117
148
  }
118
149
 
119
- .page-item:nth-last-child(2) {
150
+ &:disabled {
151
+
152
+ &:after,
153
+ &:before {
154
+ color: inherit!important;
155
+ }
156
+ }
157
+ }
158
+
159
+ :host([data-minimal]) {
160
+ .pagination {
161
+ justify-content: flex-end;
120
162
 
121
- margin-left: rem(4 + 28);
122
- margin-right: 0;
163
+ @include container-up(sm) {
123
164
 
124
- &:after {
125
- left: auto;
126
- right: calc(100% + #{rem(4)} + 1px);
165
+ justify-content: space-between;
127
166
  }
128
167
  }
168
+ *:where(.prev, .next){
169
+ display: inline-block!important;
170
+ }
171
+ }
129
172
 
130
- .page-item:nth-child(2).active,
131
- .page-item:nth-child(2):has(+ .active),
132
- .page-item:nth-child(2):has(+ .page-item + .active),
133
- .page-item:nth-last-child(4).active + .page-item + .page-item,
134
- .page-item:nth-last-child(3).active + .page-item,
135
- .page-item:nth-last-child(2).active {
136
-
137
- margin-left: 0;
138
- margin-right: 0;
173
+ .prev {
174
+
175
+ border-right: none;
176
+ &:after {
177
+ display: none;
178
+ }
179
+ &:before {
180
+ margin-right: 0.5em;
181
+ font-size: 0.8rem;
182
+ content: "\f053";
183
+ font-family: "Font Awesome 6 Pro";
184
+ color:var(--colour-info);
185
+ }
186
+ }
187
+ // #endregion
139
188
 
140
- &:after {
141
- display: none;
189
+ // #region mobile button
190
+ .mobile-controls {
191
+ display: block;
192
+ }
193
+
194
+ :host([data-minimal]) {
195
+ .pagination {
196
+ padding-top: rem(24);
197
+ display: flex;
198
+ align-items: center;
199
+ justify-content: flex-end;
200
+ }
201
+ *:is(.mobile-controls,.item-count) {
202
+ display: none;
203
+ }
204
+ }
205
+
206
+ @include container-up(sm) {
207
+ .mobile-controls {
208
+ display: none!important;
209
+ }
210
+ :host([data-item-count]) {
211
+ .item-count {
212
+ display: flex!important;
142
213
  }
143
214
  }
144
215
  }
216
+
217
+ .fa-spin {
218
+ display: none!important;
219
+ font-size: rem(48);
220
+ color: var(--colour-info);
221
+ }
222
+
223
+ :host([data-loading]) {
224
+
225
+ .mobile-controls {
226
+ padding-top: rem(32);
227
+ }
228
+ .item-count,
229
+ .mobile-controls > *:not(.fa-spin) {
230
+ display: none!important;
231
+ }
232
+ .fa-spin {
233
+ display: block!important;
234
+ margin: auto;
235
+ }
236
+ }
145
237
  // #endregion