diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index 1558624..419781b 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -11,7 +11,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
- java: [17, 21]
+ java: [21]
name: Java ${{ matrix.java }}
steps:
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index b42b517..4283377 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -1,7 +1,7 @@
lockfileVersion: '9.0'
settings:
- autoInstallPeers: true
+ autoInstallPeers: false
excludeLinksFromLockfile: false
importers:
@@ -15,17 +15,38 @@ importers:
specifier: 1.0.2
version: 1.0.2
'@utrecht/component-library-css':
- specifier: ^6.1.0
+ specifier: 6.1.0
version: 6.1.0
chokidar-cli:
- specifier: ^3.0.0
+ specifier: 3.0.0
version: 3.0.0
npm-run-all:
- specifier: ^4.1.5
+ specifier: 4.1.5
version: 4.1.5
+ prettier:
+ specifier: 3.3.3
+ version: 3.3.3
+ prettier-plugin-java:
+ specifier: 2.6.5
+ version: 2.6.5
packages:
+ '@chevrotain/cst-dts-gen@11.0.3':
+ resolution: {integrity: sha512-BvIKpRLeS/8UbfxXxgC33xOumsacaeCKAjAeLyOn7Pcp95HiRbrpl14S+9vaZLolnbssPIUuiUd8IvgkRyt6NQ==}
+
+ '@chevrotain/gast@11.0.3':
+ resolution: {integrity: sha512-+qNfcoNk70PyS/uxmj3li5NiECO+2YKZZQMbmjTqRI3Qchu8Hig/Q9vgkHpI3alNjr7M+a2St5pw5w5F6NL5/Q==}
+
+ '@chevrotain/regexp-to-ast@11.0.3':
+ resolution: {integrity: sha512-1fMHaBZxLFvWI067AVbGJav1eRY7N8DDvYCTwGBiE/ytKBgP8azTdgyrKyWZ9Mfh09eHWb5PgTSO8wi7U824RA==}
+
+ '@chevrotain/types@11.0.3':
+ resolution: {integrity: sha512-gsiM3G8b58kZC2HaWR50gu6Y1440cHiJ+i3JUvcp/35JchYejb2+5MVeJK0iKThYpAa/P2PYFV4hoi44HD+aHQ==}
+
+ '@chevrotain/utils@11.0.3':
+ resolution: {integrity: sha512-YslZMgtJUyuMbZ+aKvfF3x1f5liK4mWNxghFRv7jqRR9C3R3fAOGTTKvxXDa2Y1s9zSbcpuO0cAxDYsc9SrXoQ==}
+
'@gemeente-rotterdam/design-tokens@1.0.0-alpha.35':
resolution: {integrity: sha512-PCeByC6lefxcvxd5aModHD8psz5x9zzNGtzVkKFClG22FrrP73vY5y7lcR0S/zWlqbMkoK9jT0Zuir5aAwquYw==}
@@ -85,6 +106,14 @@ packages:
resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
engines: {node: '>=4'}
+ chevrotain-allstar@0.3.1:
+ resolution: {integrity: sha512-b7g+y9A0v4mxCW1qUhf3BSVPg+/NvGErk/dOkrDaHA0nQIQGAtrOjlX//9OQtRlSCy+x9rfB5N8yC71lH1nvMw==}
+ peerDependencies:
+ chevrotain: ^11.0.0
+
+ chevrotain@11.0.3:
+ resolution: {integrity: sha512-ci2iJH6LeIkvP9eJW6gpueU8cnZhv85ELY8w8WiFtNjMHA5ad6pQLaJo9mEly/9qUyCpvqX8/POVUTf18/HFdw==}
+
chokidar-cli@3.0.0:
resolution: {integrity: sha512-xVW+Qeh7z15uZRxHOkP93Ux8A0xbPzwK4GaqD8dQOYc34TlkqUhVSS59fK36DOp5WdJlrRzlYSy02Ht99FjZqQ==}
engines: {node: '>= 8.10.0'}
@@ -340,6 +369,9 @@ packages:
isexe@2.0.0:
resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
+ java-parser@2.3.2:
+ resolution: {integrity: sha512-/O42UbEHy3VVJw8W0ruHkQjW75oWvQx4QisoUDRIGir6q3/IZ4JslDMPMYEqp7LU56PYJkH5uXdQiBaCXt/Opw==}
+
json-parse-better-errors@1.0.2:
resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==}
@@ -351,12 +383,18 @@ packages:
resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==}
engines: {node: '>=6'}
+ lodash-es@4.17.21:
+ resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==}
+
lodash.debounce@4.0.8:
resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==}
lodash.throttle@4.1.1:
resolution: {integrity: sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==}
+ lodash@4.17.21:
+ resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
+
memorystream@0.3.1:
resolution: {integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==}
engines: {node: '>= 0.10.0'}
@@ -439,6 +477,19 @@ packages:
resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==}
engines: {node: '>= 0.4'}
+ prettier-plugin-java@2.6.5:
+ resolution: {integrity: sha512-2RkPNXyYpP5dRhr04pz45n+e5LXwYWTh1JXrztiCkZTGGokIGYrfwUuGa8csnDoGbP6CDPgVm8zZSIm/9I0SRQ==}
+
+ prettier@3.2.5:
+ resolution: {integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==}
+ engines: {node: '>=14'}
+ hasBin: true
+
+ prettier@3.3.3:
+ resolution: {integrity: sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==}
+ engines: {node: '>=14'}
+ hasBin: true
+
read-pkg@3.0.0:
resolution: {integrity: sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==}
engines: {node: '>=4'}
@@ -602,6 +653,23 @@ packages:
snapshots:
+ '@chevrotain/cst-dts-gen@11.0.3':
+ dependencies:
+ '@chevrotain/gast': 11.0.3
+ '@chevrotain/types': 11.0.3
+ lodash-es: 4.17.21
+
+ '@chevrotain/gast@11.0.3':
+ dependencies:
+ '@chevrotain/types': 11.0.3
+ lodash-es: 4.17.21
+
+ '@chevrotain/regexp-to-ast@11.0.3': {}
+
+ '@chevrotain/types@11.0.3': {}
+
+ '@chevrotain/utils@11.0.3': {}
+
'@gemeente-rotterdam/design-tokens@1.0.0-alpha.35': {}
'@nl-design-system-candidate/paragraph-css@1.0.2': {}
@@ -668,6 +736,20 @@ snapshots:
escape-string-regexp: 1.0.5
supports-color: 5.5.0
+ chevrotain-allstar@0.3.1(chevrotain@11.0.3):
+ dependencies:
+ chevrotain: 11.0.3
+ lodash-es: 4.17.21
+
+ chevrotain@11.0.3:
+ dependencies:
+ '@chevrotain/cst-dts-gen': 11.0.3
+ '@chevrotain/gast': 11.0.3
+ '@chevrotain/regexp-to-ast': 11.0.3
+ '@chevrotain/types': 11.0.3
+ '@chevrotain/utils': 11.0.3
+ lodash-es: 4.17.21
+
chokidar-cli@3.0.0:
dependencies:
chokidar: 3.6.0
@@ -984,6 +1066,12 @@ snapshots:
isexe@2.0.0: {}
+ java-parser@2.3.2:
+ dependencies:
+ chevrotain: 11.0.3
+ chevrotain-allstar: 0.3.1(chevrotain@11.0.3)
+ lodash: 4.17.21
+
json-parse-better-errors@1.0.2: {}
load-json-file@4.0.0:
@@ -998,10 +1086,14 @@ snapshots:
p-locate: 3.0.0
path-exists: 3.0.0
+ lodash-es@4.17.21: {}
+
lodash.debounce@4.0.8: {}
lodash.throttle@4.1.1: {}
+ lodash@4.17.21: {}
+
memorystream@0.3.1: {}
minimatch@3.1.2:
@@ -1075,6 +1167,16 @@ snapshots:
possible-typed-array-names@1.0.0: {}
+ prettier-plugin-java@2.6.5:
+ dependencies:
+ java-parser: 2.3.2
+ lodash: 4.17.21
+ prettier: 3.2.5
+
+ prettier@3.2.5: {}
+
+ prettier@3.3.3: {}
+
read-pkg@3.0.0:
dependencies:
load-json-file: 4.0.0
diff --git a/src/main/java/nl/nldesignsystem/candidate/CandidateParagraph.html b/src/main/java/nl/nldesignsystem/candidate/CandidateParagraph.html
index 13305e2..3a125d2 100644
--- a/src/main/java/nl/nldesignsystem/candidate/CandidateParagraph.html
+++ b/src/main/java/nl/nldesignsystem/candidate/CandidateParagraph.html
@@ -1,5 +1,5 @@
-
-
+
+
diff --git a/src/main/java/nl/nldesignsystem/candidate/CandidateParagraph.java b/src/main/java/nl/nldesignsystem/candidate/CandidateParagraph.java
index c0201c8..cac8e25 100644
--- a/src/main/java/nl/nldesignsystem/candidate/CandidateParagraph.java
+++ b/src/main/java/nl/nldesignsystem/candidate/CandidateParagraph.java
@@ -1,5 +1,3 @@
package nl.nldesignsystem.candidate;
-public class CandidateParagraph {
-
-}
+public class CandidateParagraph {}
diff --git a/src/main/java/nl/rotterdam/wicket/HTMLUtil.java b/src/main/java/nl/rotterdam/wicket/HTMLUtil.java
new file mode 100644
index 0000000..cbfb59c
--- /dev/null
+++ b/src/main/java/nl/rotterdam/wicket/HTMLUtil.java
@@ -0,0 +1,22 @@
+package nl.rotterdam.wicket;
+
+import java.util.Arrays;
+import java.util.stream.Collectors;
+
+public class HTMLUtil {
+
+ public static String className(String... classes) {
+ return joinTokens(classes);
+ }
+
+ public static String idRefs(String... classes) {
+ return joinTokens(classes);
+ }
+
+ public static String joinTokens(String... classes) {
+ return Arrays.asList(classes)
+ .stream()
+ .filter(className -> className != null && !className.trim().isEmpty())
+ .collect(Collectors.joining(" "));
+ }
+}
diff --git a/src/main/java/nl/rotterdam/wicket/docs/Changelog.java b/src/main/java/nl/rotterdam/wicket/docs/Changelog.java
index 935452d..0a9ffe1 100644
--- a/src/main/java/nl/rotterdam/wicket/docs/Changelog.java
+++ b/src/main/java/nl/rotterdam/wicket/docs/Changelog.java
@@ -1,16 +1,14 @@
package nl.rotterdam.wicket.docs;
import nl.utrecht.components.UtrechtCodeBlock;
-
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.model.Model;
-public class Changelog extends EmptyPage
-{
- public Changelog()
- {
- add( new Label( TITLE_ID, "Changelog · Apache Wicket · Rotterdam Design System"));
+public class Changelog extends EmptyPage {
+
+ public Changelog() {
+ add(new Label(TITLE_ID, "Changelog · Apache Wicket · Rotterdam Design System"));
- add( new UtrechtCodeBlock( "changelog", Model.of("Reload Page")));
- }
+ add(new UtrechtCodeBlock("changelog", Model.of("Reload Page")));
+ }
}
diff --git a/src/main/java/nl/rotterdam/wicket/docs/Components.html b/src/main/java/nl/rotterdam/wicket/docs/Components.html
index abcf6cb..4836ee6 100644
--- a/src/main/java/nl/rotterdam/wicket/docs/Components.html
+++ b/src/main/java/nl/rotterdam/wicket/docs/Components.html
@@ -1,50 +1,50 @@
- Components 2
- Code
-
- Code Block
-
- Heading
- Heading 1
-
- Heading 2
-
- Heading 3
-
- Heading 4
-
- Heading 5
-
- Heading 6
-
- Heading level 1
-
-
- Action Group
-
- Form Field with Checkbox
-
- Form Field with Checkbox (checked)
-
- Form Field with Checkbox (required)
-
- Form Field with Checkbox (invalid)
-
- Form Field with Checkbox (description)
-
+
+
Components 2
+
Code
+
+
Code Block
+
+
Heading
+
Heading 1
+
+
Heading 2
+
+
Heading 3
+
+
Heading 4
+
+
Heading 5
+
+
Heading 6
+
+
Heading level 1
+
+
Heading level 2
+
+
Heading level 3
+
+
Heading level 4
+
+
Heading level 5
+
+
Heading level 6
+
+
Action Group
+
+
Form Field with Checkbox
+
+
Form Field with Checkbox (checked)
+
+
Form Field with Checkbox (required)
+
+
Form Field with Checkbox (invalid)
+
+
Form Field with Checkbox (description)
+
+
diff --git a/src/main/java/nl/rotterdam/wicket/docs/Components.java b/src/main/java/nl/rotterdam/wicket/docs/Components.java
index b61d764..5f4cd4e 100644
--- a/src/main/java/nl/rotterdam/wicket/docs/Components.java
+++ b/src/main/java/nl/rotterdam/wicket/docs/Components.java
@@ -1,9 +1,5 @@
package nl.rotterdam.wicket.docs;
-import org.apache.wicket.markup.html.basic.Label;
-// import org.apache.wicket.markup.html.link.BookmarkablePageLink;
-import org.apache.wicket.model.Model;
-
import nl.utrecht.components.UtrechtActionGroup;
import nl.utrecht.components.UtrechtCheckbox;
import nl.utrecht.components.UtrechtCode;
@@ -15,43 +11,92 @@
import nl.utrecht.components.UtrechtHeading4;
import nl.utrecht.components.UtrechtHeading5;
import nl.utrecht.components.UtrechtHeading6;
+import org.apache.wicket.markup.html.basic.Label;
+// import org.apache.wicket.markup.html.link.BookmarkablePageLink;
+import org.apache.wicket.model.Model;
// import nl.utrecht.components.UtrechtUnorderedList;
-public class Components extends EmptyPage
-{
- public Components()
- {
- add( new Label( TITLE_ID, "Components · Apache Wicket · Rotterdam Design System"));
-
- // add(new BookmarkablePageLink("body", Changelog.class));
- add( new UtrechtCode( "code-example", Model.of("Reload Page")));
-
- add( new UtrechtCodeBlock( "code-block-example", Model.of("Reload Page")));
-
- add( new UtrechtHeading( "heading-level-1-example", Model.of("Op brute wijze ving de schooljuf de quasi-kalme lynx"), UtrechtHeading.HeadingLevel.LEVEL_1));
- // add( new UtrechtHeading( "heading-level-2-example", Model.of("Op brute wijze ving de schooljuf de quasi-kalme lynx"), UtrechtHeading.HeadingLevel.LEVEL_2));
- // add( new UtrechtHeading( "heading-level-3-example", Model.of("Op brute wijze ving de schooljuf de quasi-kalme lynx"), UtrechtHeading.HeadingLevel.LEVEL_3));
- // add( new UtrechtHeading( "heading-level-4-example", Model.of("Op brute wijze ving de schooljuf de quasi-kalme lynx"), UtrechtHeading.HeadingLevel.LEVEL_4));
- // add( new UtrechtHeading( "heading-level-5-example", Model.of("Op brute wijze ving de schooljuf de quasi-kalme lynx"), UtrechtHeading.HeadingLevel.LEVEL_5));
- // add( new UtrechtHeading( "heading-level-6-example", Model.of("Op brute wijze ving de schooljuf de quasi-kalme lynx"), UtrechtHeading.HeadingLevel.LEVEL_6));
-
- add( new UtrechtHeading1( "heading-1-example", Model.of("Op brute wijze ving de schooljuf de quasi-kalme lynx")));
- add( new UtrechtHeading2( "heading-2-example", Model.of("Op brute wijze ving de schooljuf de quasi-kalme lynx")));
- add( new UtrechtHeading3( "heading-3-example", Model.of("Op brute wijze ving de schooljuf de quasi-kalme lynx")));
- add( new UtrechtHeading4( "heading-4-example", Model.of("Op brute wijze ving de schooljuf de quasi-kalme lynx")));
- add( new UtrechtHeading5( "heading-5-example", Model.of("Op brute wijze ving de schooljuf de quasi-kalme lynx")));
- add( new UtrechtHeading6( "heading-6-example", Model.of("Op brute wijze ving de schooljuf de quasi-kalme lynx")));
-
- add( new UtrechtActionGroup( "action-group-example"));
-
- add( new UtrechtCheckbox( "form-field-checkbox-example", Model.of(false), "I agree"));
- add( new UtrechtCheckbox( "form-field-checkbox-checked-example", Model.of(true), "I agree"));
- add( new UtrechtCheckbox( "form-field-checkbox-invalid-example", Model.of(false), "I agree"));
- UtrechtCheckbox requiredCheckbox = new UtrechtCheckbox( "form-field-checkbox-required-example", Model.of(false), "I agree");
- requiredCheckbox.setRequired(true);
- add( requiredCheckbox );
- add( new UtrechtCheckbox( "form-field-checkbox-description-example", Model.of(false), Model.of("I agree"), Model.of("Description"), Model.of("error")));
-
- }
+public class Components extends EmptyPage {
+
+ public Components() {
+ add(new Label(TITLE_ID, "Components · Apache Wicket · Rotterdam Design System"));
+
+ // add(new BookmarkablePageLink("body", Changelog.class));
+ add(new UtrechtCode("code-example", Model.of("Reload Page")));
+
+ add(new UtrechtCodeBlock("code-block-example", Model.of("Reload Page")));
+
+ add(
+ new UtrechtHeading(
+ "heading-level-1-example",
+ Model.of("Op brute wijze ving de schooljuf de quasi-kalme lynx"),
+ UtrechtHeading.HeadingLevel.LEVEL_1
+ )
+ );
+ add(
+ new UtrechtHeading(
+ "heading-level-2-example",
+ Model.of("Op brute wijze ving de schooljuf de quasi-kalme lynx"),
+ UtrechtHeading.HeadingLevel.LEVEL_2
+ )
+ );
+ add(
+ new UtrechtHeading(
+ "heading-level-3-example",
+ Model.of("Op brute wijze ving de schooljuf de quasi-kalme lynx"),
+ UtrechtHeading.HeadingLevel.LEVEL_3
+ )
+ );
+ add(
+ new UtrechtHeading(
+ "heading-level-4-example",
+ Model.of("Op brute wijze ving de schooljuf de quasi-kalme lynx"),
+ UtrechtHeading.HeadingLevel.LEVEL_4
+ )
+ );
+ add(
+ new UtrechtHeading(
+ "heading-level-5-example",
+ Model.of("Op brute wijze ving de schooljuf de quasi-kalme lynx"),
+ UtrechtHeading.HeadingLevel.LEVEL_5
+ )
+ );
+ add(
+ new UtrechtHeading(
+ "heading-level-6-example",
+ Model.of("Op brute wijze ving de schooljuf de quasi-kalme lynx"),
+ UtrechtHeading.HeadingLevel.LEVEL_6
+ )
+ );
+
+ add(new UtrechtHeading1("heading-1-example", Model.of("Op brute wijze ving de schooljuf de quasi-kalme lynx")));
+ add(new UtrechtHeading2("heading-2-example", Model.of("Op brute wijze ving de schooljuf de quasi-kalme lynx")));
+ add(new UtrechtHeading3("heading-3-example", Model.of("Op brute wijze ving de schooljuf de quasi-kalme lynx")));
+ add(new UtrechtHeading4("heading-4-example", Model.of("Op brute wijze ving de schooljuf de quasi-kalme lynx")));
+ add(new UtrechtHeading5("heading-5-example", Model.of("Op brute wijze ving de schooljuf de quasi-kalme lynx")));
+ add(new UtrechtHeading6("heading-6-example", Model.of("Op brute wijze ving de schooljuf de quasi-kalme lynx")));
+
+ add(new UtrechtActionGroup("action-group-example"));
+
+ add(new UtrechtCheckbox("form-field-checkbox-example", Model.of(false), "I agree"));
+ add(new UtrechtCheckbox("form-field-checkbox-checked-example", Model.of(true), "I agree"));
+ add(new UtrechtCheckbox("form-field-checkbox-invalid-example", Model.of(false), "I agree"));
+ UtrechtCheckbox requiredCheckbox = new UtrechtCheckbox(
+ "form-field-checkbox-required-example",
+ Model.of(false),
+ "I agree"
+ );
+ requiredCheckbox.setRequired(true);
+ add(requiredCheckbox);
+ add(
+ new UtrechtCheckbox(
+ "form-field-checkbox-description-example",
+ Model.of(false),
+ Model.of("I agree"),
+ Model.of("Description"),
+ Model.of("error")
+ )
+ );
+ }
}
diff --git a/src/main/java/nl/rotterdam/wicket/docs/DocsApplication.java b/src/main/java/nl/rotterdam/wicket/docs/DocsApplication.java
index 3599fbd..c3a612a 100755
--- a/src/main/java/nl/rotterdam/wicket/docs/DocsApplication.java
+++ b/src/main/java/nl/rotterdam/wicket/docs/DocsApplication.java
@@ -6,49 +6,49 @@
import org.apache.wicket.protocol.http.WebApplication;
import org.apache.wicket.settings.ExceptionSettings;
-public class DocsApplication extends WebApplication
-{
- @Override
- public void init()
- {
- super.init();
+public class DocsApplication extends WebApplication {
- // Avoid in the output HTML
- getMarkupSettings().setStripWicketTags(true);
+ @Override
+ public void init() {
+ super.init();
- // Configure our own fance error page
- getApplicationSettings().setInternalErrorPage( ErrorPage.class );
- getExceptionSettings().setUnexpectedExceptionDisplay(ExceptionSettings.SHOW_INTERNAL_ERROR_PAGE);
+ // Avoid in the output HTML
+ getMarkupSettings().setStripWicketTags(true);
- /*
- * `CSPDirective` does not appear to support every option we want.
- *
- * TODO: Implement the following CSP directives:
- *
- * - `.add("block-all-mixed-content")`
- * - `.add("worker-src", "blob")`
- * - `.add("form-action", CSPDirectiveSrcValue.SELF)`
- */
- getCspSettings().blocking().clear()
- .add(CSPDirective.DEFAULT_SRC, CSPDirectiveSrcValue.SELF)
- .add(CSPDirective.OBJECT_SRC, CSPDirectiveSrcValue.NONE)
- .add(CSPDirective.BASE_URI, CSPDirectiveSrcValue.SELF)
- .add(CSPDirective.FRAME_ANCESTORS, CSPDirectiveSrcValue.NONE)
- .add(CSPDirective.CONNECT_SRC, CSPDirectiveSrcValue.SELF)
- .add(CSPDirective.CONNECT_SRC, "'blob'")
- .add(CSPDirective.CONNECT_SRC, "data:")
- .add(CSPDirective.IMG_SRC, CSPDirectiveSrcValue.SELF)
- .add(CSPDirective.IMG_SRC, "'blob'")
- .add(CSPDirective.IMG_SRC, "data:")
- .add(CSPDirective.FONT_SRC, CSPDirectiveSrcValue.SELF)
- .add(CSPDirective.STYLE_SRC, CSPDirectiveSrcValue.UNSAFE_INLINE)
- .add(CSPDirective.SCRIPT_SRC, CSPDirectiveSrcValue.SELF)
- .add(CSPDirective.STYLE_SRC, CSPDirectiveSrcValue.SELF);
- }
+ // Configure our own fance error page
+ getApplicationSettings().setInternalErrorPage(ErrorPage.class);
+ getExceptionSettings().setUnexpectedExceptionDisplay(ExceptionSettings.SHOW_INTERNAL_ERROR_PAGE);
- @Override
- public Class extends WebPage> getHomePage()
- {
- return Components.class;
- }
+ /*
+ * `CSPDirective` does not appear to support every option we want.
+ *
+ * TODO: Implement the following CSP directives:
+ *
+ * - `.add("block-all-mixed-content")`
+ * - `.add("worker-src", "blob")`
+ * - `.add("form-action", CSPDirectiveSrcValue.SELF)`
+ */
+ getCspSettings()
+ .blocking()
+ .clear()
+ .add(CSPDirective.DEFAULT_SRC, CSPDirectiveSrcValue.SELF)
+ .add(CSPDirective.OBJECT_SRC, CSPDirectiveSrcValue.NONE)
+ .add(CSPDirective.BASE_URI, CSPDirectiveSrcValue.SELF)
+ .add(CSPDirective.FRAME_ANCESTORS, CSPDirectiveSrcValue.NONE)
+ .add(CSPDirective.CONNECT_SRC, CSPDirectiveSrcValue.SELF)
+ .add(CSPDirective.CONNECT_SRC, "'blob'")
+ .add(CSPDirective.CONNECT_SRC, "data:")
+ .add(CSPDirective.IMG_SRC, CSPDirectiveSrcValue.SELF)
+ .add(CSPDirective.IMG_SRC, "'blob'")
+ .add(CSPDirective.IMG_SRC, "data:")
+ .add(CSPDirective.FONT_SRC, CSPDirectiveSrcValue.SELF)
+ .add(CSPDirective.STYLE_SRC, CSPDirectiveSrcValue.UNSAFE_INLINE)
+ .add(CSPDirective.SCRIPT_SRC, CSPDirectiveSrcValue.SELF)
+ .add(CSPDirective.STYLE_SRC, CSPDirectiveSrcValue.SELF);
+ }
+
+ @Override
+ public Class extends WebPage> getHomePage() {
+ return Components.class;
+ }
}
diff --git a/src/main/java/nl/rotterdam/wicket/docs/EmptyPage.java b/src/main/java/nl/rotterdam/wicket/docs/EmptyPage.java
index 7fe9d53..4c4e77b 100644
--- a/src/main/java/nl/rotterdam/wicket/docs/EmptyPage.java
+++ b/src/main/java/nl/rotterdam/wicket/docs/EmptyPage.java
@@ -2,12 +2,9 @@
import org.apache.wicket.markup.html.WebPage;
-public abstract class EmptyPage extends WebPage
-{
- public static final String TITLE_ID = "title";
-
- public EmptyPage()
- {
-
- }
+public abstract class EmptyPage extends WebPage {
+
+ public static final String TITLE_ID = "title";
+
+ public EmptyPage() {}
}
diff --git a/src/main/java/nl/rotterdam/wicket/docs/ErrorPage.java b/src/main/java/nl/rotterdam/wicket/docs/ErrorPage.java
index 63f0045..d8edc72 100644
--- a/src/main/java/nl/rotterdam/wicket/docs/ErrorPage.java
+++ b/src/main/java/nl/rotterdam/wicket/docs/ErrorPage.java
@@ -1,18 +1,16 @@
package nl.rotterdam.wicket.docs;
+import nl.utrecht.components.UtrechtButton;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.model.Model;
-import nl.utrecht.components.UtrechtButton;
-public class ErrorPage extends EmptyPage
-{
-
- public static final String ERROR_MESSAGE_ID = "error-message";
- public static final String ERROR_ACTION_ID = "error-action";
+public class ErrorPage extends EmptyPage {
+
+ public static final String ERROR_MESSAGE_ID = "error-message";
+ public static final String ERROR_ACTION_ID = "error-action";
- public ErrorPage()
- {
- add( new Label( ERROR_MESSAGE_ID, "An error occured."));
- add( new UtrechtButton( ERROR_ACTION_ID, Model.of("Reload Page"), UtrechtButton.ButtonStyle.PRIMARY_ACTION) );
- }
+ public ErrorPage() {
+ add(new Label(ERROR_MESSAGE_ID, "An error occured."));
+ add(new UtrechtButton(ERROR_ACTION_ID, Model.of("Reload Page"), UtrechtButton.ButtonStyle.PRIMARY_ACTION));
+ }
}
diff --git a/src/main/java/nl/utrecht/components/UtrechtActionGroup.html b/src/main/java/nl/utrecht/components/UtrechtActionGroup.html
index 4c75caf..c69bf51 100644
--- a/src/main/java/nl/utrecht/components/UtrechtActionGroup.html
+++ b/src/main/java/nl/utrecht/components/UtrechtActionGroup.html
@@ -1,5 +1,3 @@
-
+
diff --git a/src/main/java/nl/utrecht/components/UtrechtActionGroup.java b/src/main/java/nl/utrecht/components/UtrechtActionGroup.java
index 5e52394..e9eead0 100644
--- a/src/main/java/nl/utrecht/components/UtrechtActionGroup.java
+++ b/src/main/java/nl/utrecht/components/UtrechtActionGroup.java
@@ -1,17 +1,12 @@
package nl.utrecht.components;
-import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.panel.Panel;
-import org.apache.wicket.model.IModel;
public class UtrechtActionGroup extends Panel {
- public static final String SLOT_ID = "slot";
- private final Label label;
+ public static final String SLOT_ID = "slot";
- public UtrechtActionGroup(String id,IModel textContent) {
- super(id);
- label = new Label(SLOT_ID, textContent);
- add(label);
- }
-}
\ No newline at end of file
+ public UtrechtActionGroup(String id) {
+ super(id);
+ }
+}
diff --git a/src/main/java/nl/utrecht/components/UtrechtButton.java b/src/main/java/nl/utrecht/components/UtrechtButton.java
index 9665645..5c6c000 100644
--- a/src/main/java/nl/utrecht/components/UtrechtButton.java
+++ b/src/main/java/nl/utrecht/components/UtrechtButton.java
@@ -10,71 +10,75 @@
import org.apache.wicket.model.Model;
public class UtrechtButton extends Panel {
- private static final long serialVersionUID = 1L;
-
- public enum ButtonStyle {
- PRIMARY_ACTION("utrecht-button--primary-action"),
- SECONDARY_ACTION("utrecht-button--secondary-action"),
- SUBTLE("utrecht-button--subtle"),
- SUCCESS("utrecht-button--ready"),
- DANGER("utrech-button--danger"),
- WARNING("utrech-button--warning");
-
- private final String cssClass;
-
- ButtonStyle(String cssClass) {
- this.cssClass = cssClass;
- }
-
- public String getCssClass() {
- return cssClass;
- }
- }
- private final AjaxLink button;
- private final Label label;
- private boolean isDisabled = false;
-
- public UtrechtButton(String id, IModel labelModel) {
- this(id, labelModel, ButtonStyle.PRIMARY_ACTION);
- }
-
- public UtrechtButton(String id, IModel labelModel, ButtonStyle style) {
- super(id);
-
- button = new AjaxLink("button") {
- @Override
- public void onClick(AjaxRequestTarget target) {
- if (!isDisabled) {
- UtrechtButton.this.onClick(target);
- }
- }
-
- @Override
- protected void onComponentTag(ComponentTag tag) {
- super.onComponentTag(tag);
- tag.put("class", "utrecht-button " + style.getCssClass() + " " + (isDisabled ? "utrecht-button--disabled": ""));
- if (isDisabled) {
- tag.put("disabled", "disabled");
- }
- }
- };
-
- label = new Label("label", labelModel);
- button.add(label);
- add(button);
- }
-
- protected void onClick(AjaxRequestTarget target) {
- // Override this method to handle click events
- }
-
- public UtrechtButton setDisabled(boolean disabled) {
- this.isDisabled = disabled;
- return this;
+
+ private static final long serialVersionUID = 1L;
+
+ public enum ButtonStyle {
+ PRIMARY_ACTION("utrecht-button--primary-action"),
+ SECONDARY_ACTION("utrecht-button--secondary-action"),
+ SUBTLE("utrecht-button--subtle"),
+ SUCCESS("utrecht-button--ready"),
+ DANGER("utrech-button--danger"),
+ WARNING("utrech-button--warning");
+
+ private final String cssClass;
+
+ ButtonStyle(String cssClass) {
+ this.cssClass = cssClass;
}
-
- public UtrechtButton addCssClass(String cssClass) {
- button.add(new AttributeAppender("class", Model.of(cssClass), " "));
- return this;
+
+ public String getCssClass() {
+ return cssClass;
}
-}
\ No newline at end of file
+ }
+
+ private final AjaxLink button;
+ private final Label label;
+ private boolean isDisabled = false;
+
+ public UtrechtButton(String id, IModel labelModel) {
+ this(id, labelModel, ButtonStyle.PRIMARY_ACTION);
+ }
+
+ public UtrechtButton(String id, IModel labelModel, ButtonStyle style) {
+ super(id);
+ button = new AjaxLink("button") {
+ @Override
+ public void onClick(AjaxRequestTarget target) {
+ if (!isDisabled) {
+ UtrechtButton.this.onClick(target);
+ }
+ }
+
+ @Override
+ protected void onComponentTag(ComponentTag tag) {
+ super.onComponentTag(tag);
+ tag.put(
+ "class",
+ "utrecht-button " + style.getCssClass() + " " + (isDisabled ? "utrecht-button--disabled" : "")
+ );
+ if (isDisabled) {
+ tag.put("disabled", "disabled");
+ }
+ }
+ };
+
+ label = new Label("label", labelModel);
+ button.add(label);
+ add(button);
+ }
+
+ protected void onClick(AjaxRequestTarget target) {
+ // Override this method to handle click events
+ }
+
+ public UtrechtButton setDisabled(boolean disabled) {
+ this.isDisabled = disabled;
+ return this;
+ }
+
+ public UtrechtButton addCssClass(String cssClass) {
+ button.add(new AttributeAppender("class", Model.of(cssClass), " "));
+ return this;
+ }
+}
diff --git a/src/main/java/nl/utrecht/components/UtrechtCheckbox.html b/src/main/java/nl/utrecht/components/UtrechtCheckbox.html
index 10c28f8..f0a49a9 100644
--- a/src/main/java/nl/utrecht/components/UtrechtCheckbox.html
+++ b/src/main/java/nl/utrecht/components/UtrechtCheckbox.html
@@ -1,9 +1,9 @@