Skip to content

Commit 1501807

Browse files
committed
feat: use PicoCSS instead of Angular
Signed-off-by: Andrew Berezovskyi <[email protected]>
1 parent 8a24ccf commit 1501807

File tree

3 files changed

+42
-23
lines changed

3 files changed

+42
-23
lines changed

src/server-rm/src/main/java/co/oslc/refimpl/rm/gen/services/RequirementsService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -295,7 +295,7 @@ public Response RequirementSelector(
295295
// we need to return HTML fragment
296296
RequestDispatcher rd = httpServletRequest.getRequestDispatcher("/co/oslc/refimpl/rm" +
297297
"/gen/requirementselector-results.jsp");
298-
httpServletRequest.setAttribute("resources", resources);
298+
httpServletRequest.setAttribute("resources", resources);
299299
rd.forward(httpServletRequest, httpServletResponse);
300300
} else {
301301
// this is really bad, we should not be mixing HTML and JSON without content

src/server-rm/src/main/webapp/co/oslc/refimpl/rm/gen/requirementselector-results.jsp

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,16 @@
1919

2020
<%@ page contentType="text/html" language="java" pageEncoding="UTF-8" %>
2121

22-
<c:forEach var="requirement" items="${resources}">
23-
<ul>
24-
<li>
25-
<a href="${requirement.about}"
26-
onclick="sendOslcSelectionPostMessage(this, event)"
27-
>${requirement.title}</a>
28-
</li>
29-
</ul>
30-
</c:forEach>
22+
<aside>
23+
<nav>
24+
<ul>
25+
<c:forEach var="requirement" items="${resources}">
26+
<li>
27+
<a href="${requirement.about}"
28+
onclick="sendOslcSelectionPostMessage(this, event)"
29+
>${requirement.title}</a>
30+
</li>
31+
</c:forEach>
32+
</ul>
33+
</nav>
34+
</aside>

src/server-rm/src/main/webapp/co/oslc/refimpl/rm/gen/requirementselector.jsp

Lines changed: 28 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -29,23 +29,26 @@
2929
String selectionUri = (String) request.getAttribute("selectionUri");
3030
%>
3131

32-
<html>
33-
<head>
34-
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
32+
<!DOCTYPE html>
33+
<html lang="en">
34+
<head>
35+
<meta charset="UTF-8">
36+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
3537
<title>RequirementSD</title>
38+
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@picocss/pico@1/css/pico.min.css">
3639
<script src="https://unpkg.com/[email protected]" integrity="sha384-HGfztofotfshcF7+8n44JQL2oJmowVChPTg48S+jvZoztPfvwD79OC/LTtG6dMp+" crossorigin="anonymous"></script>
37-
</head>
38-
<body style="padding: 10px;">
39-
<div id="selector-body">
40+
</head>
41+
<body>
42+
<main class="container">
4043
<p id="searchMessage">Find a specific OSLC resource through a free-text search.</p>
41-
4244
<div>
43-
<input type="search" style="width: 335px" id="searchTerms" name="terms" placeholder="Begin typing to search" autofocus
44-
hx-trigger="keyup changed delay:180ms" hx-get="<%= selectionUri %>" hx-target="#search-results">
45+
<input type="search" id="searchTerms" name="terms" placeholder="Begin typing to search" autofocus
46+
hx-trigger="input changed delay:120ms, keyup[key=='Enter'], load"
47+
hx-get="<%= selectionUri %>" hx-target="#search-results"
48+
hx-ext="aria-busy">
4549
</div>
46-
47-
<div id="search-results"></div>
48-
</div>
50+
<div id="search-results" class="grid"></div>
51+
</main>
4952

5053
<script>
5154
function sendOslcSelectionPostMessage(target, event) {
@@ -57,9 +60,21 @@
5760
}
5861
]
5962
}
60-
window.parent.postMessage("oslc-response:" + JSON.stringify(message), '*');
63+
window.parent.postMessage("oslc-response:" + JSON.stringify(message), '*')
6164
event.preventDefault()
6265
}
66+
67+
// use accessible busy indicators
68+
htmx.defineExtension('aria-busy', {
69+
onEvent : function(name, evt) {
70+
var elt = evt.detail.elt;
71+
if(name === "htmx:beforeRequest") {
72+
elt.setAttribute("aria-busy", "true")
73+
} else if(name === "htmx:afterRequest" ) {
74+
elt.removeAttribute("aria-busy")
75+
}
76+
}
77+
})
6378
</script>
6479
</body>
6580
</html>

0 commit comments

Comments
 (0)