@aarhus-university/au-lib-react-components 8.20.2 → 8.82.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 (167) hide show
  1. package/.eslintrc.js +44 -0
  2. package/README.md +19 -20
  3. package/babel.config.js +7 -0
  4. package/build/umd/all.css +1 -2
  5. package/build/umd/all.css.map +1 -1
  6. package/build/umd/all.js +1 -1
  7. package/build/umd/all.js.map +1 -1
  8. package/build/umd/alphabox.js +1 -1
  9. package/build/umd/alphabox.js.map +1 -1
  10. package/build/umd/databox.js +1 -6
  11. package/build/umd/databox.js.map +1 -1
  12. package/build/umd/diagramme.js +1 -1
  13. package/build/umd/diagramme.js.map +1 -1
  14. package/build/umd/flowbox.js +1 -1
  15. package/build/umd/flowbox.js.map +1 -1
  16. package/build/umd/universe.js +1 -1
  17. package/build/umd/universe.js.map +1 -1
  18. package/package.json +66 -65
  19. package/src/components/AUAlertComponent.tsx +70 -0
  20. package/src/components/{AutoSuggestComponent.js → AUAutoSuggestComponent.js} +45 -19
  21. package/src/components/AUCalendarComponent.tsx +493 -0
  22. package/src/components/AUContentToggleComponent.tsx +33 -0
  23. package/src/components/AUDatepickerComponent.tsx +117 -0
  24. package/src/components/AUMobilePrefixComponent.tsx +15 -0
  25. package/src/components/{delphinus/AUModalComponent.js → AUModalComponent.tsx} +78 -76
  26. package/src/components/{form/AUReceiptComponent.js → AUReceiptComponent.tsx} +33 -40
  27. package/src/components/AUSpinnerComponent.tsx +64 -0
  28. package/src/components/{delphinus/AUSubNavComponent.js → AUSubNavComponent.tsx} +38 -53
  29. package/src/components/{form/AUSubmitButtonContainerComponent.js → AUSubmitButtonContainerComponent.tsx} +31 -39
  30. package/src/components/AUTabbedContentComponent.tsx +145 -0
  31. package/src/components/{delphinus/AUTableComponent.js → AUTableComponent.tsx} +24 -28
  32. package/src/components/{delphinus/AUToastComponent.js → AUToastComponent.tsx} +104 -91
  33. package/src/components/{delphinus/AUToolbarComponent.js → AUToolbarComponent.tsx} +45 -48
  34. package/src/components/profile/AUProfileActions.js +128 -113
  35. package/src/components/profile/AUProfileAvatarComponent.js +83 -83
  36. package/src/components/profile/AUProfileAvatarV2Component.js +91 -0
  37. package/src/components/profile/AUProfileAvatarV3Component.tsx +42 -0
  38. package/src/components/profile/AUProfileContainerComponent.js +283 -285
  39. package/src/components/profile/AUProfileHooks.js +30 -30
  40. package/src/components/profile/AUProfileItemComponent.js +54 -54
  41. package/src/components/profile/AUProfileLanguageComponent.js +131 -131
  42. package/src/components/profile/{AUProfileLoginComponent.js → AUProfileLoginComponent.tsx} +3 -18
  43. package/src/components/profile/AUProfileMailComponent.js +307 -299
  44. package/src/components/profile/AUProfileMobileComponent.js +164 -164
  45. package/src/components/profile/AUProfileNameComponent.js +253 -253
  46. package/src/components/profile/AUProfileNextOfKinComponent.js +216 -216
  47. package/src/components/profile/AUProfileReducer.js +230 -210
  48. package/src/components/profile/AUProfileWidgetComponent.js +95 -95
  49. package/src/components/profile/AUProfileWidgetV2Component.js +116 -0
  50. package/src/components/profile/AUProfileWidgetV3Component.tsx +122 -0
  51. package/src/components/wrapping/AUEmbedComponent.js +47 -47
  52. package/src/{components → layout-2016/components}/alphabox/AlphaBoxComponent.js +29 -28
  53. package/src/{components → layout-2016/components}/alphabox/AlphaBoxContentComponent.js +25 -14
  54. package/src/{components → layout-2016/components/common}/AUCollapsibleComponent.js +1 -22
  55. package/src/{components → layout-2016/components/common}/AUSpinnerComponent.js +2 -24
  56. package/src/{components → layout-2016/components}/databox/DataBoxAlphabetComponent.js +1 -1
  57. package/src/{components → layout-2016/components}/databox/DataBoxAssociationComponent.js +2 -2
  58. package/src/{components → layout-2016/components}/databox/DataBoxButtonComponent.js +7 -3
  59. package/src/{components → layout-2016/components}/databox/DataBoxComponent.js +2 -2
  60. package/src/{components → layout-2016/components}/databox/DataBoxGroupingComponent.js +2 -0
  61. package/src/{components → layout-2016/components}/databox/DataBoxSearchResultComponent.js +1 -5
  62. package/src/{components → layout-2016/components}/databox/DataBoxStackedAssociationComponent.js +1 -5
  63. package/src/{components → layout-2016/components}/databox/DataBoxSuggestionComponent.js +0 -0
  64. package/src/{components → layout-2016/components/diagramme}/AUDiagrammeComponent.js +5 -6
  65. package/src/{components → layout-2016/components}/flowbox/FlowBoxComponent.js +8 -8
  66. package/src/{components → layout-2016/components}/flowbox/FlowBoxPhoneComponent.js +3 -5
  67. package/src/{components → layout-2016/components}/profile/AUProfileAvatar2016Component.js +6 -2
  68. package/src/{components → layout-2016/components}/universe/StaffTopComponent.js +4 -3
  69. package/src/{components → layout-2016/components}/universe/StudentTopComponent.js +0 -0
  70. package/src/{components → layout-2016/components}/universe/UniverseContainerComponent.js +11 -8
  71. package/src/layout-2016/lib/all.js +3 -0
  72. package/src/{lib → layout-2016/lib}/au-alphabox.js +1 -3
  73. package/src/{lib → layout-2016/lib}/au-databox.js +6 -9
  74. package/src/{lib → layout-2016/lib}/au-diagramme.js +2 -4
  75. package/src/{lib → layout-2016/lib}/au-flowbox.js +1 -3
  76. package/src/{lib → layout-2016/lib}/universe.js +0 -0
  77. package/src/lib/{helpers.js → helpers.ts} +41 -66
  78. package/src/{components/delphinus/hooks.js → lib/hooks.ts} +33 -26
  79. package/src/lib/{i18n.js → i18n.ts} +600 -595
  80. package/src/lib/tracking.ts +69 -0
  81. package/src/lib/{wrapping.js → wrapping.ts} +21 -16
  82. package/src/styles/_settings.scss +11 -11
  83. package/src/styles/alphabox.scss +222 -209
  84. package/src/styles/app.scss +7 -12
  85. package/src/styles/autosuggest.scss +57 -57
  86. package/src/styles/databox.scss +563 -563
  87. package/src/styles/diagramme.scss +119 -119
  88. package/src/styles/flowbox.scss +72 -72
  89. package/src/styles/maps.scss +396 -0
  90. package/tsconfig.json +47 -0
  91. package/types/common/interfaces.d.ts +91 -0
  92. package/types/common/main.d.ts +4 -0
  93. package/types/common/package.json +5 -0
  94. package/types/common/payloads.d.ts +0 -0
  95. package/types/common/props.d.ts +165 -0
  96. package/webpack.config.js +89 -0
  97. package/.eslintrc +0 -19
  98. package/DOCUMENTATION.md +0 -369
  99. package/build/cjs/auAuth.js +0 -2
  100. package/build/cjs/auAuth.js.map +0 -1
  101. package/build/dev.html +0 -329
  102. package/build/umd/auAuth.js +0 -2
  103. package/build/umd/auAuth.js.map +0 -1
  104. package/build/umd/news.js +0 -2
  105. package/build/umd/news.js.map +0 -1
  106. package/src/all.js +0 -3
  107. package/src/app.js +0 -263
  108. package/src/components/AUAlertComponent.js +0 -158
  109. package/src/components/AUAmountComponent.js +0 -84
  110. package/src/components/AUBannerComponent.js +0 -99
  111. package/src/components/AUCalendarComponent.js +0 -393
  112. package/src/components/AUDatepickerComponent.js +0 -105
  113. package/src/components/AUFilterCheckboxComponent.js +0 -122
  114. package/src/components/AUFocusComponent.js +0 -55
  115. package/src/components/AUModalComponent.js +0 -94
  116. package/src/components/AUPaginationComponent.js +0 -103
  117. package/src/components/context/AUUserContextComponent.js +0 -91
  118. package/src/components/context/ImpersonateComponent.js +0 -54
  119. package/src/components/delphinus/AUCalendarComponent.js +0 -422
  120. package/src/components/delphinus/AUContentToggleComponent.js +0 -32
  121. package/src/components/delphinus/AUDatepickerComponent.js +0 -113
  122. package/src/components/delphinus/AULoginComponent.js +0 -65
  123. package/src/components/delphinus/AUSpinnerComponent.js +0 -114
  124. package/src/components/delphinus/AUTabbedContentComponent.js +0 -53
  125. package/src/components/form/AUMobilePrefixComponent.js +0 -18
  126. package/src/components/news/EventLayout1Component.js +0 -94
  127. package/src/components/news/EventLayout2Component.js +0 -90
  128. package/src/components/news/EventLayout3Component.js +0 -68
  129. package/src/components/news/NewsCategoriesComponent.js +0 -21
  130. package/src/components/news/NewsCollageBannerComponent.js +0 -71
  131. package/src/components/news/NewsColumnsComponent.js +0 -125
  132. package/src/components/news/NewsLanguageChangeComponent.js +0 -74
  133. package/src/components/news/NewsLayout1Component.js +0 -80
  134. package/src/components/news/NewsLayout2Component.js +0 -80
  135. package/src/components/news/NewsLayout3Component.js +0 -81
  136. package/src/components/news/NewsLayout4Component.js +0 -80
  137. package/src/components/news/NewsLayout5Component.js +0 -61
  138. package/src/components/news/NewsLayout6Component.js +0 -55
  139. package/src/components/news/NewsLayout7Component.js +0 -58
  140. package/src/components/news/NewsLayout8Component.js +0 -57
  141. package/src/components/news/NewsListComponent.js +0 -291
  142. package/src/components/news/NewsPopUpComponent.js +0 -591
  143. package/src/components/news/NewsRSSComponent.js +0 -74
  144. package/src/components/news/NewsSocialComponent.js +0 -104
  145. package/src/components/news/NewsSubHeaderComponent.js +0 -19
  146. package/src/components/password/AUChangePasswordComponent.js +0 -177
  147. package/src/components/password/AUCurrentPasswordComponent.js +0 -72
  148. package/src/components/password/AUNewPasswordComponent.js +0 -143
  149. package/src/components/password/AUPasswordActions.js +0 -101
  150. package/src/components/password/AUPasswordHooks.js +0 -47
  151. package/src/components/password/AUPasswordReducer.js +0 -78
  152. package/src/components/password/AUPasswordRequirementsComponent.js +0 -29
  153. package/src/config/webpack.cjs.config.js +0 -75
  154. package/src/config/webpack.dev.config.js +0 -61
  155. package/src/config/webpack.umd.config.js +0 -107
  156. package/src/index.js +0 -6
  157. package/src/lib/au-auth.js +0 -221
  158. package/src/lib/au-news.js +0 -306
  159. package/src/lib/menu.js +0 -10
  160. package/src/lib/urlHandler.js +0 -63
  161. package/src/lib/validation.js +0 -181
  162. package/src/styles/alert.scss +0 -39
  163. package/src/styles/calendar.scss +0 -112
  164. package/src/styles/filtercheckbox.scss +0 -5
  165. package/src/styles/modal.scss +0 -35
  166. package/src/styles/pagination.scss +0 -11
  167. package/src/styles/spinner.scss +0 -30
@@ -0,0 +1,396 @@
1
+ @font-face {
2
+ font-family: 'font-awesome';
3
+ src: url('https://fonts.au.dk/fonts/fa-pro-regular-400.otf');
4
+ font-weight: 400;
5
+ font-style: normal;
6
+ }
7
+
8
+ $padding-default: 1.363636364rem;
9
+
10
+ .layout13,
11
+ .layout14,
12
+ .layout15,
13
+ .layout16,
14
+ .layout17 {
15
+ .au-map {
16
+ margin-bottom: $padding-default;
17
+
18
+ .react-autosuggest__container {
19
+ margin-bottom: 1rem;
20
+ position: relative;
21
+ }
22
+
23
+ .react-autosuggest__suggestions-container {
24
+ max-height: none;
25
+ overflow: visible;
26
+
27
+ li:nth-child(n+21) {
28
+ display: none;
29
+ }
30
+ }
31
+
32
+ .gm-style-iw {
33
+
34
+ .au_collapsible,
35
+ hr {
36
+ display: none;
37
+ }
38
+ }
39
+
40
+ &__search {
41
+ display: flex;
42
+
43
+ >div {
44
+ flex-basis: 85%;
45
+
46
+ @media (max-width: 640px) {
47
+ flex-basis: 76%;
48
+ }
49
+ }
50
+
51
+ button {
52
+ flex-basis: 15%;
53
+ font-family: 'AUPassataRegular';
54
+ border-top: 1px solid #ccc;
55
+ border-right: 1px solid #ccc;
56
+ border-bottom: 1px solid #ccc;
57
+ height: 2.6 * $padding-default;
58
+ cursor: pointer;
59
+ background: none;
60
+ color: black;
61
+ padding: 0;
62
+
63
+ &:hover {
64
+ background: none;
65
+ color: inherit;
66
+ }
67
+
68
+ span::before {
69
+ font-family: 'font-awesome';
70
+ content: '\f5a0';
71
+ display: inline-block;
72
+ margin-right: 1rem;
73
+ }
74
+
75
+ @media (max-width: 640px) {
76
+ flex-basis: 24%;
77
+ }
78
+ }
79
+ }
80
+
81
+ &__overlay-buttons {
82
+ display: flex;
83
+ flex-wrap: wrap;
84
+
85
+ button {
86
+ margin-right: 1rem;
87
+ }
88
+ }
89
+
90
+ &__person-suggestion {
91
+ >div {
92
+ &:first-child {
93
+ padding-left: $padding-default;
94
+ width: 15%;
95
+ }
96
+
97
+ &:last-child {
98
+ padding-left: $padding-default;
99
+ width: 85%;
100
+ }
101
+ }
102
+
103
+ h4,
104
+ p {
105
+ margin: 0;
106
+ }
107
+
108
+ img {
109
+ max-width: 100px;
110
+ }
111
+ }
112
+
113
+ .vcard,
114
+ .bld-card,
115
+ .overlay-card,
116
+ .top-search {
117
+ >h2 {
118
+ margin-top: 0;
119
+ }
120
+
121
+ button {
122
+ cursor: pointer;
123
+ text-decoration: underline;
124
+ font-family: inherit;
125
+ text-align: left;
126
+ }
127
+
128
+ strong button {
129
+ font-weight: bold;
130
+ }
131
+
132
+ @media (max-width: 640px) {
133
+ padding: $padding-default 0;
134
+ }
135
+ }
136
+
137
+ .vcard {
138
+ img {
139
+ float: right;
140
+ margin-left: $padding-default;
141
+ margin-bottom: $padding-default;
142
+ max-width: 120px;
143
+ }
144
+
145
+ &::after {
146
+ display: block;
147
+ content: '';
148
+ clear: both;
149
+ }
150
+ }
151
+
152
+ &__route {
153
+ margin-bottom: $padding-default;
154
+ }
155
+
156
+ .show-on-map {
157
+ display: none;
158
+ }
159
+
160
+ .au_collapsible {
161
+ .csc-header+* {
162
+ position: relative;
163
+ max-height: 350px;
164
+ overflow-y: auto;
165
+ }
166
+ }
167
+
168
+ &__directions-panel {
169
+ display: flex;
170
+ flex-wrap: wrap;
171
+ padding: 1rem 0 1rem 1rem;
172
+ margin-bottom: 1rem;
173
+ border: 1px solid #cacaca;
174
+
175
+ &__modes-of-transportation {
176
+ flex-basis: 100%;
177
+ display: flex;
178
+ }
179
+
180
+ &__from-to {
181
+ flex-basis: 85%;
182
+ }
183
+
184
+ &__swap {
185
+ flex-basis: 15%;
186
+ display: flex;
187
+ align-items: center;
188
+ justify-content: center;
189
+ }
190
+
191
+ .button-route {
192
+ background-color: transparent;
193
+ color: #878787;
194
+ height: 3rem;
195
+ overflow: hidden;
196
+ padding: 0;
197
+ margin-right: 1rem;
198
+ display: inline-flex;
199
+ border: none;
200
+
201
+ &--selected {
202
+ border-bottom: 2px solid black;
203
+ }
204
+
205
+ &::before {
206
+ font-family: 'font-awesome';
207
+ font-size: 2rem;
208
+ display: inline-block;
209
+ }
210
+
211
+ &--car {
212
+ width: 22px;
213
+
214
+ &::before {
215
+ content: '\f1b9';
216
+ }
217
+ }
218
+
219
+ &--walk {
220
+ width: 13px;
221
+
222
+ &::before {
223
+ content: '\f554';
224
+ }
225
+ }
226
+
227
+ &--bicycle {
228
+ width: 27px;
229
+
230
+ &::before {
231
+ content: '\f206';
232
+ }
233
+ }
234
+
235
+ &--public {
236
+ width: 22px;
237
+ padding-top: 4px;
238
+
239
+ &::before {
240
+ content: '\f207';
241
+ }
242
+ }
243
+
244
+ &--close {
245
+ margin-left: auto;
246
+ width: 14px;
247
+
248
+ &::before {
249
+ content: '\f00d';
250
+ }
251
+ }
252
+
253
+ &--swap {
254
+ margin: 0 0 1.45455rem 0;
255
+ width: 24px;
256
+
257
+ &::before {
258
+ font-size: 3rem;
259
+ content: '\f883';
260
+ }
261
+ }
262
+ }
263
+ }
264
+
265
+ &__suggestion {
266
+ display: inline-block;
267
+
268
+ &::before {
269
+ font-family: 'font-awesome';
270
+ display: inline-block;
271
+ margin-right: .5rem;
272
+ }
273
+
274
+ &__building {
275
+ &::before {
276
+ content: '\f1ad';
277
+ }
278
+ }
279
+
280
+ &__department {
281
+ &::before {
282
+ content: '\f19c';
283
+ }
284
+ }
285
+
286
+ &__denmark {
287
+ &::before {
288
+ content: '\f1ad';
289
+ }
290
+ }
291
+
292
+ &__denmark {
293
+ &::before {
294
+ content: '\f276';
295
+ }
296
+ }
297
+
298
+ &__lecture-hall {
299
+ &::before {
300
+ content: '\f63d';
301
+ }
302
+ }
303
+
304
+ &__library {
305
+ &::before {
306
+ content: '\f02d';
307
+ }
308
+ }
309
+
310
+ &__friday-bar {
311
+ &::before {
312
+ content: '\f0fc';
313
+ }
314
+ }
315
+
316
+ &__study-place {
317
+ &::before {
318
+ content: '\f63d';
319
+ }
320
+ }
321
+
322
+ &__canteen {
323
+ &::before {
324
+ content: '\f2e7';
325
+ }
326
+ }
327
+
328
+ &__counselling {
329
+ &::before {
330
+ content: '\f128';
331
+ }
332
+ }
333
+
334
+ &__it-support {
335
+ &::before {
336
+ content: '\f82d';
337
+ }
338
+ }
339
+
340
+ &__myprint {
341
+ &::before {
342
+ content: '\f02f';
343
+ }
344
+ }
345
+ }
346
+
347
+ }
348
+
349
+ .au-map.find-container,
350
+ .dropdown-pane .find-container {
351
+
352
+ >.row>.column {
353
+ position: relative;
354
+ }
355
+
356
+ h3 {
357
+ margin-top: 0;
358
+ }
359
+
360
+ .au-map__person-suggestion {
361
+ img {
362
+ max-width: 30px;
363
+ }
364
+ }
365
+
366
+ .react-autosuggest__suggestions-container li {
367
+ margin-bottom: 0;
368
+ }
369
+
370
+ .vcard,
371
+ .bld-card {
372
+ margin-top: $padding-default;
373
+ padding: 1rem;
374
+ background: #fff;
375
+ color: #333;
376
+ font-size: 1.25rem;
377
+ font-family: Georgia, "Times New Roman", Times, serif;
378
+
379
+ hr {
380
+ display: none;
381
+ }
382
+
383
+ img {
384
+ width: 70px;
385
+ float: right;
386
+ margin-left: 1rem;
387
+ }
388
+
389
+ a {
390
+ color: #000 !important;
391
+ text-decoration: underline;
392
+ }
393
+ }
394
+ }
395
+
396
+ }
package/tsconfig.json ADDED
@@ -0,0 +1,47 @@
1
+ {
2
+ "compilerOptions": {
3
+ // Target latest version of ECMAScript.
4
+ "target": "esnext",
5
+ // path to output directory
6
+ "outDir": "../wwwroot/js",
7
+ // enable strict null checks as a best practice
8
+ "strictNullChecks": true,
9
+ // Search under node_modules for non-relative imports.
10
+ "moduleResolution": "node",
11
+ // Process & infer types from .js files.
12
+ "allowJs": true,
13
+ // Don't emit; allow Babel to transform files.
14
+ "noEmit": true,
15
+ // Enable strictest settings like strictNullChecks & noImplicitAny.
16
+ "strict": true,
17
+ // Import non-ES modules as default imports.
18
+ "esModuleInterop": true,
19
+ // use typescript to transpile jsx to js
20
+ "jsx": "react",
21
+ "baseUrl": "./src",
22
+ "lib": [
23
+ "es2015",
24
+ "dom.iterable",
25
+ "es2016.array.include",
26
+ "es2017.object",
27
+ "dom"
28
+ ],
29
+ "module": "es6",
30
+ "removeComments": true,
31
+ "alwaysStrict": true,
32
+ "allowUnreachableCode": false,
33
+ "noImplicitAny": false,
34
+ "noImplicitThis": true,
35
+ "noUnusedLocals": true,
36
+ "noUnusedParameters": true,
37
+ "noImplicitReturns": true,
38
+ "noFallthroughCasesInSwitch": true,
39
+ "forceConsistentCasingInFileNames": true,
40
+ "importHelpers": true,
41
+ "resolveJsonModule": true,
42
+ "typeRoots": [
43
+ "./node_modules/@types",
44
+ "./types"
45
+ ]
46
+ },
47
+ }
@@ -0,0 +1,91 @@
1
+ /* eslint-disable import/prefer-default-export */
2
+ interface IAlertButton {
3
+ className: string,
4
+ text: string,
5
+ dataIcon: string |null,
6
+ onClick: () => void,
7
+ }
8
+
9
+ interface ITabbedObject {
10
+ domElement: Element,
11
+ rendered: boolean,
12
+ }
13
+
14
+ interface ITabbedTab {
15
+ href: string,
16
+ text: string,
17
+ dataGtm: string,
18
+ }
19
+
20
+ interface IToastMessage {
21
+ message: string,
22
+ type: string,
23
+ }
24
+
25
+ interface IModal {
26
+ modal: boolean,
27
+ sender: HTMLElement | null,
28
+ }
29
+
30
+ interface ICalendarState {
31
+ day: number,
32
+ month: number,
33
+ year: number,
34
+ hour: number,
35
+ minute: number,
36
+ selected: Date,
37
+ }
38
+
39
+ interface IProgressable {
40
+ onProgress: () => Promise<IProgressable>,
41
+ progressed: boolean,
42
+ }
43
+
44
+ interface ICountryCode {
45
+ da: string,
46
+ en: string,
47
+ code: number,
48
+ important?: boolean | undefined,
49
+ }
50
+
51
+ interface IReceiptButton {
52
+ gotoLink: string,
53
+ gotoText: string,
54
+ }
55
+
56
+ interface IPhoneNumber {
57
+ prefix: string,
58
+ number: string,
59
+ }
60
+
61
+ interface ITrackers {
62
+ account: string,
63
+ name: string,
64
+ }
65
+
66
+ interface IProfileSettings {
67
+ type: string,
68
+ url: string,
69
+ classNames?: string,
70
+ icon?: string,
71
+ dataGtm: string,
72
+ text: string,
73
+ disabled?: boolean,
74
+ onClick?: (el: Element) => void,
75
+ }
76
+
77
+ interface IUserContext {
78
+ auId: number,
79
+ firstNames: string,
80
+ lastName: string,
81
+ name: string,
82
+ preferredLanguage: string,
83
+ userName: string,
84
+ memberOfGroups: IAdGroup[],
85
+ impersonatingUser: IUserContext | null,
86
+ }
87
+
88
+ interface IAdGroup {
89
+ id: string,
90
+ name: string,
91
+ }
@@ -0,0 +1,4 @@
1
+ /* eslint-disable @typescript-eslint/triple-slash-reference */
2
+ /// <reference path="./interfaces.d.ts" />
3
+ /// <reference path="./payloads.d.ts" />
4
+ /// <reference path="./props.d.ts" />
@@ -0,0 +1,5 @@
1
+ {
2
+ "name": "common",
3
+ "version": "1.0.0",
4
+ "typings": "main.d.ts"
5
+ }
File without changes
@@ -0,0 +1,165 @@
1
+ interface AUAlertComponentProps {
2
+ message: string,
3
+ children: JSX.Element,
4
+ alert: boolean,
5
+ buttons?: IAlertButton[],
6
+ }
7
+
8
+ interface AUCalendarComponentProps {
9
+ lang?: string,
10
+ day: number,
11
+ month: number,
12
+ year: number,
13
+ hour: number,
14
+ minute: number,
15
+ selected?: Date,
16
+ onSelected: (selected: Date) => void,
17
+ highlightWeekend?: boolean,
18
+ highlightHolidays?: boolean,
19
+ yearSpanMinus?: number,
20
+ yearSpanPlus?: number,
21
+ minuteInterval?: number,
22
+ showTime?: boolean,
23
+ closeable?: boolean,
24
+ onClose?: () => void,
25
+ limitStart?: Date | null,
26
+ limitEnd?: Date | null,
27
+ controls: string,
28
+ }
29
+
30
+ interface AUContentToggleComponentProps {
31
+ toggled: boolean,
32
+ classNames?: string | undefined,
33
+ children: JSX.Element,
34
+ }
35
+
36
+ interface AUDatepickerComponentProps {
37
+ id: string;
38
+ lang?: string;
39
+ date?: Date;
40
+ onDateChange: (date: Date, formatted: string) => void;
41
+ onHide: (date: Date, dateFormatted: string) => void;
42
+ format?: string;
43
+ showTime?: boolean;
44
+ showLabel?: boolean;
45
+ labelInline?: boolean;
46
+ labelText?: string;
47
+ fullWidth?: boolean;
48
+ yearSpanMinus?: number;
49
+ yearSpanPlus?: number;
50
+ limitStart?: Date | null;
51
+ limitEnd?: Date | null;
52
+ disabled?: boolean;
53
+ }
54
+
55
+ interface AUModalComponentProps {
56
+ domId: string,
57
+ children?: JSX.Element,
58
+ onClose?: () => void,
59
+ closeButton?: boolean,
60
+ closeButtonDisabled?: boolean,
61
+ lang?: string,
62
+ sender: HTMLElement | null,
63
+ className?: string,
64
+ }
65
+
66
+ interface AUSpinnerComponentProps {
67
+ domID?: string,
68
+ className?: string,
69
+ children: JSX.Element,
70
+ visible?: boolean,
71
+ loaded: boolean,
72
+ loadingCondition: boolean,
73
+ height?: string,
74
+ init?: string,
75
+ onLoad: () => void,
76
+ }
77
+
78
+ interface AUSubNavComponentProps {
79
+ children: JSX.Element,
80
+ className: string,
81
+ dataIcon: string,
82
+ text: string,
83
+ ariaLabel: string,
84
+ id: string,
85
+ }
86
+
87
+ interface AUTableComponentProps {
88
+ children: JSX.Element,
89
+ className: string,
90
+ }
91
+
92
+ interface TabRoutesProps {
93
+ onRouteChange: (location: any) => void, // Noget react-router-dom halløj her der ikke spiller...
94
+ content: JSX.Element[],
95
+ }
96
+
97
+ interface AUTabbedContentComponentProps {
98
+ tabKey?: number,
99
+ tabs: ITabbedTab[],
100
+ tabContent?: ITabbedObject[] | null,
101
+ children?: JSX.Element | null,
102
+ focus?: boolean,
103
+ initial?: number,
104
+ lang?: string,
105
+ callback?: () => void,
106
+ withRouter?: boolean,
107
+ classNames?: string,
108
+ }
109
+
110
+ interface AUToastComponentProps {
111
+ message: IToastMessage,
112
+ dismiss?: () => void,
113
+ onOpen?: () => void,
114
+ }
115
+
116
+ interface AUToolbarComponentProps {
117
+ lang: string,
118
+ elements: JSX.Element[],
119
+ }
120
+
121
+ interface AUSubmitButtonContainerComponentProps {
122
+ lang: string,
123
+ disabled: boolean,
124
+ onSubmit: () => void,
125
+ onCancel: () => void,
126
+ }
127
+
128
+ interface AUMobilePrefixComponentProps {
129
+ countryCodes: ICountryCode[],
130
+ important: boolean,
131
+ }
132
+
133
+ interface AUReceiptComponentProps {
134
+ receiptText: string,
135
+ helpText: JSX.Element | null,
136
+ showGoTo: boolean,
137
+ buttons: IReceiptButton[],
138
+ }
139
+
140
+ interface AUProfileWidgetComponentProps {
141
+ lang: string,
142
+ name: string,
143
+ auId: number,
144
+ studentNumber?: string,
145
+ settings: IProfileSettings[],
146
+ changeLanguageUri: string,
147
+ logoutUri: string,
148
+ profileLabels: any, // Noget med labels her?
149
+ }
150
+
151
+ interface AUProfileAvatarComponentProps {
152
+ user: IUserContext,
153
+ settings: IProfileSettings[],
154
+ profileLabels: any, // Noget med labels her?
155
+ logoutUri: string,
156
+ changeLanguageUri?: string,
157
+ lang: string,
158
+ }
159
+
160
+ interface AUProfileLoginComponentProps {
161
+ loggedIn: boolean,
162
+ loginUri: string,
163
+ children: JSX.Element,
164
+ text: string,
165
+ }