Skip to content

Commit 86fb60e

Browse files
authored
Merge branch 'master' into patch-12
2 parents cbb7c9f + 068891e commit 86fb60e

File tree

78 files changed

+2550
-1734
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

78 files changed

+2550
-1734
lines changed

build/checkstyle-import.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@
6464
<allow pkg="com.github.tomakehurst.wiremock"/>
6565
<allow pkg="org.reflections"/>
6666
<allow pkg="org.bouncycastle.jce.provider"/>
67+
<allow pkg="org.openjdk.jmh"/>
6768

6869
<!-- gson -->
6970
<allow pkg="com.google.gson"/>

client/package.json

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,7 @@
1212
"clean": "rimraf dist/",
1313
"test": "karma start test/karma.conf.js",
1414
"test-single-run": "karma start test/karma.conf.js --singleRun --no-auto-watch",
15-
"start": "webpack-dev-server --mode=development --port 4000 --history-api-fallback --colors",
16-
"sync": "webpack --env.disableMinimize=true --mode=production --output-path=../webapp/target/pwm-1.8.0-SNAPSHOT/public/resources/webjars/pwm-client --watch --progress --colors"
15+
"start": "webpack-dev-server --mode=development --port 4000 --history-api-fallback --colors"
1716
},
1817
"author": "",
1918
"license": "ISC",

client/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@
7979
<plugin>
8080
<groupId>com.github.eirslett</groupId>
8181
<artifactId>frontend-maven-plugin</artifactId>
82-
<version>1.7.5</version>
82+
<version>1.7.6</version>
8383
<configuration>
8484
<nodeVersion>v8.9.4</nodeVersion>
8585
<npmVersion>5.6.0</npmVersion>

client/src/modules/helpdesk/helpdesk-search-table.component.html

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -76,14 +76,15 @@ <h2 id="page-content-title" ng-if="!$ctrl.advancedSearch" translate="Title_Helpd
7676
<ias-icon icon="view_list_thin"></ias-icon>
7777
</ias-button>
7878
<div class="icon-divider vertical"></div>
79-
<ias-button class="ias-icon-button table-configuration-menu-toggle" ias-toggle="menu1">
79+
<ias-button class="ias-icon-button table-configuration-menu-toggle" ias-toggle="menu1"
80+
ng-attr-title="{{ 'Title_Settings' | translate }}">
8081
<ias-icon icon="configure_thick"></ias-icon>
8182
</ias-button>
8283
<ias-menu name="menu1" ias-align="end end" class="ias-styles-root">
8384
<div class="ias-input-container">
8485
<div class="checkbox-button" ng-repeat="(key, value) in $ctrl.columnConfiguration">
85-
<input type="checkbox" ng-checked="value.visible" aria-label="Toggle column visibility" disabled/>
86-
<ias-button ng-click="$ctrl.toggleColumnVisible($event, key)">{{value.label}}</ias-button>
86+
<input type="checkbox" ng-model="value.visible" aria-label="Toggle column visibility" />
87+
<ias-button class="toggle-column-btn" ng-click="value.visible = !value.visible; $event.stopImmediatePropagation();">{{value.label}}</ias-button>
8788
</div>
8889
</div>
8990
</ias-menu>

client/src/modules/helpdesk/helpdesk-search-table.component.ts

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -106,18 +106,6 @@ export default class HelpDeskSearchTableComponent extends HelpDeskSearchBaseComp
106106
this.toggleView('search.cards');
107107
}
108108

109-
toggleColumnVisible(event, columnId): void {
110-
const visibleColumns = Object.keys(this.columnConfiguration).filter((columnId) => {
111-
return this.columnConfiguration[columnId].visible;
112-
});
113-
114-
if (!(visibleColumns.length === 1 && this.columnConfiguration[columnId].visible)) {
115-
this.columnConfiguration[columnId].visible = !this.columnConfiguration[columnId].visible;
116-
}
117-
118-
event.stopImmediatePropagation();
119-
}
120-
121109
private onSearchResult(searchResult: SearchResult): void {
122110
this.searchResult = searchResult;
123111
}

client/src/modules/helpdesk/helpdesk-search.component.scss

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,4 +110,11 @@
110110
}
111111
}
112112
}
113+
114+
.ias-input-container > .checkbox-button > .ias-button.toggle-column-btn {
115+
&:focus, &:hover {
116+
background-color: transparent;
117+
box-shadow: none;
118+
}
119+
}
113120
}

client/src/modules/helpdesk/verifications-dialog.controller.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,13 @@ export default class VerificationsDialogController {
9696
this.status = STATUS_SELECT;
9797
this.determineAvailableVerificationMethods();
9898
}
99+
})
100+
.catch((reason: any) => {
101+
alert(reason);
102+
103+
this.status = STATUS_NONE;
104+
this.verificationStatus = STATUS_NONE;
105+
this.IasDialogService.close();
99106
});
100107
}
101108

client/src/modules/peoplesearch/peoplesearch-table.component.html

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -80,14 +80,15 @@ <h2 id="page-content-title" translate="Title_PeopleSearch">People Search</h2>
8080
ng-attr-title="{{ 'Title_OrgChart' | translate }}">
8181
<ias-icon class="ias-selected" icon="orgchart_thin"></ias-icon>
8282
</ias-button>
83-
<ias-button class="ias-icon-button table-configuration-menu-toggle" ias-toggle="menu1">
83+
<ias-button class="ias-icon-button table-configuration-menu-toggle" ias-toggle="menu1"
84+
ng-attr-title="{{ 'Title_Settings' | translate }}">
8485
<ias-icon icon="configure_thick"></ias-icon>
8586
</ias-button>
8687
<ias-menu name="menu1" ias-align="end end" class="ias-styles-root">
8788
<div class="ias-input-container">
8889
<div class="checkbox-button" ng-repeat="(key, value) in $ctrl.columnConfiguration">
89-
<input type="checkbox" ng-checked="value.visible" aria-label="Toggle column visibility" disabled/>
90-
<ias-button ng-click="$ctrl.toggleColumnVisible($event, key)">{{value.label}}</ias-button>
90+
<input type="checkbox" ng-model="value.visible" aria-label="Toggle column visibility" />
91+
<ias-button class="toggle-column-btn" ng-click="value.visible = !value.visible; $event.stopImmediatePropagation();">{{value.label}}</ias-button>
9192
</div>
9293
</div>
9394
</ias-menu>

client/src/modules/peoplesearch/peoplesearch-table.component.scss

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,4 +43,11 @@
4343
}
4444
}
4545
}
46+
47+
.ias-input-container > .checkbox-button > .ias-button.toggle-column-btn {
48+
&:focus, &:hover {
49+
background-color: transparent;
50+
box-shadow: none;
51+
}
52+
}
4653
}

client/src/modules/peoplesearch/peoplesearch-table.component.ts

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -116,18 +116,6 @@ export default class PeopleSearchTableComponent extends PeopleSearchBaseComponen
116116
}
117117
}
118118

119-
toggleColumnVisible(event, columnId): void {
120-
const visibleColumns = Object.keys(this.columnConfiguration).filter((columnId) => {
121-
return this.columnConfiguration[columnId].visible;
122-
});
123-
124-
if (!(visibleColumns.length === 1 && this.columnConfiguration[columnId].visible)) {
125-
this.columnConfiguration[columnId].visible = !this.columnConfiguration[columnId].visible;
126-
}
127-
128-
event.stopImmediatePropagation();
129-
}
130-
131119
private onSearchResult(searchResult: SearchResult): void {
132120
this.searchResult = searchResult;
133121
}

client/src/modules/peoplesearch/person-details-dialog.component.scss

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,11 +36,29 @@
3636
}
3737

3838
.person-details-dialog {
39+
display: flex;
40+
align-items: center;
41+
justify-content: center;
3942
text-align: left;
4043
overflow: hidden;
4144

4245
.ias-dialog-container {
46+
display: flex;
47+
margin: 0;
4348
padding: 0;
49+
position: relative;
50+
top: auto;
51+
transform: none;
52+
53+
> .ias-dialog-content {
54+
display: grid;
55+
grid-template-rows: max-content 1fr;
56+
flex-grow: 1;
57+
58+
> .person-details-content {
59+
overflow: auto;
60+
}
61+
}
4462
}
4563

4664
.ias-avatar {

client/webpack.config.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -119,8 +119,8 @@ module.exports = function (env, argv) {
119119
// Development-specific configuration
120120
return webpackMerge(commonConfig, {
121121
entry: {
122-
'peoplesearch.ng': './src/modules/peoplesearch/main.dev',
123-
'helpdesk.ng': './src/modules/helpdesk/main.dev'
122+
'peoplesearch.ng': './src/modules/peoplesearch/main',
123+
'helpdesk.ng': './src/modules/helpdesk/main'
124124
},
125125
plugins: [
126126
new HtmlWebpackPlugin({

docker/pom.xml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
<plugin>
3535
<groupId>com.google.cloud.tools</groupId>
3636
<artifactId>jib-maven-plugin</artifactId>
37-
<version>1.1.0</version>
37+
<version>1.1.2</version>
3838
<executions>
3939
<execution>
4040
<id>make-docker-image</id>
@@ -44,8 +44,9 @@
4444
</goals>
4545
<configuration>
4646
<skip>${skipDocker}</skip>
47+
<jib.console>plain</jib.console>
4748
<from>
48-
<image>adoptopenjdk/openjdk11:slim</image>
49+
<image>adoptopenjdk/openjdk11:jre</image>
4950
</from>
5051
<to>
5152
<image>${dockerImageTag}</image>

pom.xml

Lines changed: 45 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -294,6 +294,50 @@
294294
<version>4.0.0-beta1</version>
295295
<scope>provided</scope>
296296
</dependency>
297-
</dependencies>
298297

298+
<!-- Test dependencies -->
299+
<dependency>
300+
<groupId>junit</groupId>
301+
<artifactId>junit</artifactId>
302+
<version>4.12</version>
303+
<scope>test</scope>
304+
</dependency>
305+
<dependency>
306+
<groupId>org.mockito</groupId>
307+
<artifactId>mockito-core</artifactId>
308+
<version>2.27.0</version>
309+
<scope>test</scope>
310+
</dependency>
311+
<dependency>
312+
<groupId>org.assertj</groupId>
313+
<artifactId>assertj-core</artifactId>
314+
<version>3.12.2</version>
315+
<scope>test</scope>
316+
</dependency>
317+
<dependency>
318+
<groupId>com.github.tomakehurst</groupId>
319+
<artifactId>wiremock</artifactId>
320+
<version>2.23.2</version>
321+
<scope>test</scope>
322+
</dependency>
323+
<dependency>
324+
<groupId>org.reflections</groupId>
325+
<artifactId>reflections</artifactId>
326+
<version>0.9.11</version>
327+
<scope>test</scope>
328+
</dependency>
329+
<dependency>
330+
<groupId>org.openjdk.jmh</groupId>
331+
<artifactId>jmh-core</artifactId>
332+
<version>1.21</version>
333+
<scope>test</scope>
334+
</dependency>
335+
<dependency>
336+
<groupId>org.openjdk.jmh</groupId>
337+
<artifactId>jmh-generator-annprocess</artifactId>
338+
<version>1.21</version>
339+
<scope>test</scope>
340+
</dependency>
341+
342+
</dependencies>
299343
</project>

rest-test-service/pom.xml

Lines changed: 0 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -59,32 +59,6 @@
5959
<dependencies>
6060
<!-- dev tool -->
6161

62-
<!-- Test dependencies -->
63-
<dependency>
64-
<groupId>junit</groupId>
65-
<artifactId>junit</artifactId>
66-
<version>4.12</version>
67-
<scope>test</scope>
68-
</dependency>
69-
<dependency>
70-
<groupId>org.assertj</groupId>
71-
<artifactId>assertj-core</artifactId>
72-
<version>3.11.1</version>
73-
<scope>test</scope>
74-
</dependency>
75-
<dependency>
76-
<groupId>com.github.tomakehurst</groupId>
77-
<artifactId>wiremock</artifactId>
78-
<version>2.20.0</version>
79-
<scope>test</scope>
80-
</dependency>
81-
<dependency>
82-
<groupId>org.reflections</groupId>
83-
<artifactId>reflections</artifactId>
84-
<version>0.9.11</version>
85-
<scope>test</scope>
86-
</dependency>
87-
8862
<!-- container dependencies -->
8963
<dependency>
9064
<groupId>javax.servlet</groupId>

server/pom.xml

Lines changed: 2 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -151,38 +151,6 @@
151151

152152
<dependencies>
153153

154-
<!-- Test dependencies -->
155-
<dependency>
156-
<groupId>junit</groupId>
157-
<artifactId>junit</artifactId>
158-
<version>4.12</version>
159-
<scope>test</scope>
160-
</dependency>
161-
<dependency>
162-
<groupId>org.mockito</groupId>
163-
<artifactId>mockito-core</artifactId>
164-
<version>2.23.4</version>
165-
<scope>test</scope>
166-
</dependency>
167-
<dependency>
168-
<groupId>org.assertj</groupId>
169-
<artifactId>assertj-core</artifactId>
170-
<version>3.11.1</version>
171-
<scope>test</scope>
172-
</dependency>
173-
<dependency>
174-
<groupId>com.github.tomakehurst</groupId>
175-
<artifactId>wiremock</artifactId>
176-
<version>2.20.0</version>
177-
<scope>test</scope>
178-
</dependency>
179-
<dependency>
180-
<groupId>org.reflections</groupId>
181-
<artifactId>reflections</artifactId>
182-
<version>0.9.11</version>
183-
<scope>test</scope>
184-
</dependency>
185-
186154
<!-- container dependencies -->
187155
<dependency>
188156
<groupId>javax.servlet</groupId>
@@ -299,7 +267,7 @@
299267
<dependency>
300268
<groupId>jaxen</groupId>
301269
<artifactId>jaxen</artifactId>
302-
<version>1.1.6</version>
270+
<version>1.2.0</version>
303271
</dependency>
304272
<dependency>
305273
<groupId>org.jdom</groupId>
@@ -354,7 +322,7 @@
354322
<dependency>
355323
<groupId>com.github.ziplet</groupId>
356324
<artifactId>ziplet</artifactId>
357-
<version>2.3.0</version>
325+
<version>2.4.1</version>
358326
<exclusions>
359327
<exclusion>
360328
<groupId>com.google.googlejavaformat</groupId>

server/src/main/java/password/pwm/AppProperty.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -276,6 +276,7 @@ public enum AppProperty
276276
PASSWORD_STRENGTH_THRESHOLD_GOOD ( "password.strength.threshold.good" ),
277277
PASSWORD_STRENGTH_THRESHOLD_WEAK ( "password.strength.threshold.weak" ),
278278
PASSWORD_STRENGTH_THRESHOLD_VERY_WEAK ( "password.strength.threshold.veryWeak" ),
279+
PASSWORD_RULE_WORDLIST_FAIL_WHEN_CLOSED ( "password.rule.wordlist.failWhenClosed" ),
279280
PWNOTIFY_BATCH_COUNT ( "pwNotify.batch.count" ),
280281
PWNOTIFY_BATCH_DELAY_TIME_MULTIPLIER ( "pwNotify.batch.delayTimeMultiplier" ),
281282
PWNOTIFY_MAX_LDAP_SEARCH_SIZE ( "pwNotify.maxLdapSearchSize" ),

server/src/main/java/password/pwm/PwmApplication.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -300,8 +300,6 @@ private void initialize( )
300300

301301
pwmScheduler.immediateExecuteInNewThread( this::postInitTasks );
302302
}
303-
304-
305303
}
306304

307305
private void postInitTasks( )

server/src/main/java/password/pwm/PwmConstants.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,7 @@ public abstract class PwmConstants
168168
public static final String PARAM_USERKEY = "userKey";
169169

170170

171-
public static final String COOKIE_PERSISTENT_CONFIG_LOGIN = "persistentConfigLogin";
171+
public static final String COOKIE_PERSISTENT_CONFIG_LOGIN = "CONFIG-AUTH";
172172

173173
public static final String VALUE_REPLACEMENT_USERNAME = "%USERNAME%";
174174

0 commit comments

Comments
 (0)