You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2020/04/16 10:40:14 UTC

[isis] branch master updated: ISIS-2340: AsciiDoc type support for vaadin

This is an automated email from the ASF dual-hosted git repository.

ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git


The following commit(s) were added to refs/heads/master by this push:
     new deec93f  ISIS-2340: AsciiDoc type support for vaadin
deec93f is described below

commit deec93f0028ee3bc107d8c15945eb714a01987e9
Author: Andi Huber <ah...@apache.org>
AuthorDate: Thu Apr 16 12:40:02 2020 +0200

    ISIS-2340: AsciiDoc type support for vaadin
---
 .../viewer/vaadin/ui/pages/main/MainView.java      |  6 +-
 .../viewer/vaadin/ui/util/LocalResourceUtil.java   | 51 +++++++++++++++++
 valuetypes/asciidoc/ui/pom.xml                     | 14 +++++
 .../asciidoc/ui/IsisModuleValAsciidocUi.java       |  8 ++-
 .../ui/components/prism/PrismResources.java        | 47 ++++++++++++++++
 .../ui/components/{ => prism}/css/prism.css        |  0
 .../ui/components/{ => prism}/js/prism1.14.js      |  0
 .../ui/components/vaa/AsciiDocFieldFactoryVaa.java | 45 +++++++++++++++
 .../ui/components/vaa/AsciiDocFieldVaa.java        | 65 ++++++++++++++++++++++
 .../AsciiDocComponentWkt.java}                     | 23 ++++----
 .../AsciiDocPanelFactoriesWkt.java}                |  8 +--
 .../static/prism}/css/prism.css                    |  0
 .../static/prism}/js/prism1.14.js                  |  0
 13 files changed, 244 insertions(+), 23 deletions(-)

diff --git a/incubator/viewers/vaadin/ui/src/main/java/org/apache/isis/incubator/viewer/vaadin/ui/pages/main/MainView.java b/incubator/viewers/vaadin/ui/src/main/java/org/apache/isis/incubator/viewer/vaadin/ui/pages/main/MainView.java
index 78ea923..d7e8a3d 100644
--- a/incubator/viewers/vaadin/ui/src/main/java/org/apache/isis/incubator/viewer/vaadin/ui/pages/main/MainView.java
+++ b/incubator/viewers/vaadin/ui/src/main/java/org/apache/isis/incubator/viewer/vaadin/ui/pages/main/MainView.java
@@ -22,7 +22,6 @@ import java.util.Collections;
 
 import javax.inject.Inject;
 
-import com.vaadin.flow.component.UI;
 import com.vaadin.flow.component.applayout.AppLayout;
 import com.vaadin.flow.component.dependency.JsModule;
 import com.vaadin.flow.component.html.Div;
@@ -41,6 +40,7 @@ import org.apache.isis.incubator.viewer.vaadin.model.action.ActionVaa;
 import org.apache.isis.incubator.viewer.vaadin.ui.components.UiComponentFactoryVaa;
 import org.apache.isis.incubator.viewer.vaadin.ui.components.collection.TableView;
 import org.apache.isis.incubator.viewer.vaadin.ui.components.object.ObjectFormView;
+import org.apache.isis.incubator.viewer.vaadin.ui.util.LocalResourceUtil;
 import org.apache.isis.viewer.common.model.decorator.fa.FontAwesomeDecorator;
 import org.apache.isis.viewer.common.model.header.HeaderUiModelProvider;
 
@@ -82,8 +82,8 @@ implements BeforeEnterObserver {
     @Override
     public void beforeEnter(BeforeEnterEvent event) {
 
-        UI.getCurrent().getPage().addStyleSheet("context://webjars/" 
-                + FontAwesomeDecorator.FONTAWESOME_RESOURCE);
+        val faStyleSheet = LocalResourceUtil.ResourceDescriptor.webjars(FontAwesomeDecorator.FONTAWESOME_RESOURCE);
+        LocalResourceUtil.addStyleSheet(faStyleSheet);
         
         setPrimarySection(Section.NAVBAR);
 
diff --git a/incubator/viewers/vaadin/ui/src/main/java/org/apache/isis/incubator/viewer/vaadin/ui/util/LocalResourceUtil.java b/incubator/viewers/vaadin/ui/src/main/java/org/apache/isis/incubator/viewer/vaadin/ui/util/LocalResourceUtil.java
new file mode 100644
index 0000000..994e8c0
--- /dev/null
+++ b/incubator/viewers/vaadin/ui/src/main/java/org/apache/isis/incubator/viewer/vaadin/ui/util/LocalResourceUtil.java
@@ -0,0 +1,51 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+package org.apache.isis.incubator.viewer.vaadin.ui.util;
+
+import com.vaadin.flow.component.UI;
+
+import lombok.Value;
+import lombok.experimental.UtilityClass;
+
+@UtilityClass
+public final class LocalResourceUtil {
+
+    @Value(staticConstructor = "of")
+    public static class ResourceDescriptor {
+        private final String url;
+        
+        public static ResourceDescriptor webjars(String resourcePath) {
+            return of("context://webjars/" + resourcePath);
+        }
+        
+        public static ResourceDescriptor staticRoot(String resourcePath) {
+            return of("context://" + resourcePath);
+        }
+
+    }
+    
+    public static void addStyleSheet(ResourceDescriptor resourceDescriptor) {
+        UI.getCurrent().getPage().addStyleSheet(resourceDescriptor.getUrl());
+    }
+    
+    public static void addJavaScript(ResourceDescriptor resourceDescriptor) {
+        UI.getCurrent().getPage().addJavaScript(resourceDescriptor.getUrl());
+    }
+    
+}
diff --git a/valuetypes/asciidoc/ui/pom.xml b/valuetypes/asciidoc/ui/pom.xml
index 7cfce05..27a090a 100644
--- a/valuetypes/asciidoc/ui/pom.xml
+++ b/valuetypes/asciidoc/ui/pom.xml
@@ -45,6 +45,13 @@
             <artifactId>isis-viewer-wicket-ui</artifactId>
             <scope>provided</scope>
         </dependency>
+        
+        <dependency>
+			<groupId>org.apache.isis.incubator.viewer</groupId>
+            <artifactId>isis-viewer-vaadin-ui</artifactId>
+            <version>${project.version}</version>
+            <scope>provided</scope>
+        </dependency>
 
 		<!-- provides a ASCII-DOC parser -->
 		<dependency>
@@ -117,6 +124,13 @@
 			<version>0.9.11</version>
 		</dependency>
 		<!-- END OF ASCII-DOC -->
+		
+<!-- TODO instead of providing prism resources with our class path, we should switch to the webjars version -->		
+<!-- 		<dependency> -->
+<!-- 		    <groupId>org.webjars.bower</groupId> -->
+<!-- 		    <artifactId>prism</artifactId> -->
+<!-- 		    <version>1.16.0</version> -->
+<!-- 		</dependency> -->
 
 	</dependencies>
 
diff --git a/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/IsisModuleValAsciidocUi.java b/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/IsisModuleValAsciidocUi.java
index ce1c446..cd6617e 100644
--- a/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/IsisModuleValAsciidocUi.java
+++ b/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/IsisModuleValAsciidocUi.java
@@ -22,13 +22,15 @@ import org.springframework.context.annotation.Configuration;
 import org.springframework.context.annotation.Import;
 
 import org.apache.isis.valuetypes.asciidoc.applib.IsisModuleValAsciidocApplib;
-import org.apache.isis.valuetypes.asciidoc.ui.components.AsciiDocPanelFactoriesForWicket;
+import org.apache.isis.valuetypes.asciidoc.ui.components.vaa.AsciiDocFieldFactoryVaa;
+import org.apache.isis.valuetypes.asciidoc.ui.components.wkt.AsciiDocPanelFactoriesWkt;
 
 @Configuration
 @Import({
     IsisModuleValAsciidocApplib.class,
-    AsciiDocPanelFactoriesForWicket.Parented.class,
-    AsciiDocPanelFactoriesForWicket.Standalone.class
+    AsciiDocFieldFactoryVaa.class,
+    AsciiDocPanelFactoriesWkt.Parented.class,
+    AsciiDocPanelFactoriesWkt.Standalone.class,
 })
 public class IsisModuleValAsciidocUi {
 }
diff --git a/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/prism/PrismResources.java b/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/prism/PrismResources.java
new file mode 100644
index 0000000..ab86df6
--- /dev/null
+++ b/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/prism/PrismResources.java
@@ -0,0 +1,47 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+package org.apache.isis.valuetypes.asciidoc.ui.components.prism;
+
+import org.apache.wicket.request.resource.CssResourceReference;
+import org.apache.wicket.request.resource.JavaScriptResourceReference;
+
+import org.apache.isis.incubator.viewer.vaadin.ui.util.LocalResourceUtil;
+
+import lombok.Getter;
+import lombok.experimental.UtilityClass;
+
+@UtilityClass
+public final class PrismResources {
+
+    @Getter(lazy = true) private static final LocalResourceUtil.ResourceDescriptor cssResourceReferenceVaa = 
+            //LocalResourceUtil.ResourceDescriptor.webjars("prism/1.16.0/themes/prism-okaida.css");
+            LocalResourceUtil.ResourceDescriptor.staticRoot("prism/css/prism.css");
+    
+    
+    @Getter(lazy = true) private static final LocalResourceUtil.ResourceDescriptor jsResourceReferenceVaa =
+            //LocalResourceUtil.ResourceDescriptor.webjars("prism/1.16.0/prism.js");
+            LocalResourceUtil.ResourceDescriptor.staticRoot("prism/js/prism1.14.js");
+    
+    @Getter(lazy = true) private static final CssResourceReference cssResourceReferenceWkt = 
+            new CssResourceReference(PrismResources.class, "css/prism.css");
+    
+    @Getter(lazy = true) private static final JavaScriptResourceReference jsResourceReferenceWkt =
+            new JavaScriptResourceReference(PrismResources.class, "js/prism1.14.js");
+    
+}
diff --git a/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/css/prism.css b/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/prism/css/prism.css
similarity index 100%
copy from valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/css/prism.css
copy to valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/prism/css/prism.css
diff --git a/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/js/prism1.14.js b/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/prism/js/prism1.14.js
similarity index 100%
copy from valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/js/prism1.14.js
copy to valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/prism/js/prism1.14.js
diff --git a/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/vaa/AsciiDocFieldFactoryVaa.java b/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/vaa/AsciiDocFieldFactoryVaa.java
new file mode 100644
index 0000000..ffe6fc5
--- /dev/null
+++ b/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/vaa/AsciiDocFieldFactoryVaa.java
@@ -0,0 +1,45 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+package org.apache.isis.valuetypes.asciidoc.ui.components.vaa;
+
+import com.vaadin.flow.component.Component;
+
+import org.apache.isis.incubator.viewer.vaadin.ui.components.UiComponentHandlerVaa;
+import org.apache.isis.valuetypes.asciidoc.applib.value.AsciiDoc;
+import org.apache.isis.viewer.common.model.binding.UiComponentFactory.Request;
+
+import lombok.val;
+
+@org.springframework.stereotype.Component
+public class AsciiDocFieldFactoryVaa implements UiComponentHandlerVaa {
+
+    @Override
+    public boolean isHandling(Request request) {
+        val spec = request.getObjectFeature().getSpecification();
+        return spec.getFullIdentifier().contentEquals(AsciiDoc.class.getName());
+    }
+
+    @Override
+    public Component handle(Request request) {
+        val uiField = new AsciiDocFieldVaa(request.getObjectFeature().getName());
+        uiField.setValue((AsciiDoc)request.getManagedObject().getPojo()); // pojo is nullable!
+        return uiField;
+    }
+    
+}
diff --git a/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/vaa/AsciiDocFieldVaa.java b/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/vaa/AsciiDocFieldVaa.java
new file mode 100644
index 0000000..b7a71d6
--- /dev/null
+++ b/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/vaa/AsciiDocFieldVaa.java
@@ -0,0 +1,65 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+package org.apache.isis.valuetypes.asciidoc.ui.components.vaa;
+
+import javax.annotation.Nullable;
+
+import com.vaadin.flow.component.Html;
+import com.vaadin.flow.component.customfield.CustomField;
+import com.vaadin.flow.component.html.Div;
+
+import org.apache.isis.incubator.viewer.vaadin.ui.util.LocalResourceUtil;
+import org.apache.isis.valuetypes.asciidoc.applib.value.AsciiDoc;
+import org.apache.isis.valuetypes.asciidoc.ui.components.prism.PrismResources;
+
+public class AsciiDocFieldVaa extends CustomField<AsciiDoc> {
+
+    private static final long serialVersionUID = 1L;
+    
+    private final Div div = new Div();
+    private AsciiDoc markup;
+
+    public AsciiDocFieldVaa(String label) {
+        super();
+        setLabel(label);
+        add(div);
+        
+        LocalResourceUtil.addStyleSheet(PrismResources.getCssResourceReferenceVaa());
+        LocalResourceUtil.addJavaScript(PrismResources.getJsResourceReferenceVaa());
+    }
+    
+    @Override
+    protected AsciiDoc generateModelValue() {
+        return markup;
+    }
+
+    @Override
+    protected void setPresentationValue(@Nullable AsciiDoc markup) {
+        this.markup = markup;
+        
+        div.removeAll();
+        
+        if(markup==null) {
+            return;
+        }
+
+        div.add(new Html("<div>" + markup.asString() + "</div>"));
+    }
+
+}
diff --git a/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/AsciiDocComponent.java b/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/wkt/AsciiDocComponentWkt.java
similarity index 73%
rename from valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/AsciiDocComponent.java
rename to valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/wkt/AsciiDocComponentWkt.java
index 7b18d5f..7a20879 100644
--- a/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/AsciiDocComponent.java
+++ b/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/wkt/AsciiDocComponentWkt.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.valuetypes.asciidoc.ui.components;
+package org.apache.isis.valuetypes.asciidoc.ui.components.wkt;
 
 import org.apache.wicket.markup.ComponentTag;
 import org.apache.wicket.markup.MarkupStream;
@@ -24,20 +24,19 @@ import org.apache.wicket.markup.head.CssHeaderItem;
 import org.apache.wicket.markup.head.IHeaderResponse;
 import org.apache.wicket.markup.head.JavaScriptHeaderItem;
 import org.apache.wicket.model.IModel;
-import org.apache.wicket.request.resource.CssResourceReference;
 import org.apache.wicket.request.resource.JavaScriptResourceReference;
 
-import org.apache.isis.core.commons.internal.base._Lazy;
+import org.apache.isis.valuetypes.asciidoc.ui.components.prism.PrismResources;
 import org.apache.isis.viewer.wicket.ui.components.scalars.markup.MarkupComponent;
 import org.apache.isis.viewer.wicket.ui.components.scalars.markup.MarkupComponent_reloadJs;
 
 import lombok.val;
 
-public class AsciiDocComponent extends MarkupComponent {
+public class AsciiDocComponentWkt extends MarkupComponent {
 
     private static final long serialVersionUID = 1L;
 
-    public AsciiDocComponent(String id, IModel<?> model) {
+    public AsciiDocComponentWkt(String id, IModel<?> model) {
         super(id, model);
     }
 
@@ -45,21 +44,19 @@ public class AsciiDocComponent extends MarkupComponent {
     public void onComponentTagBody(MarkupStream markupStream, ComponentTag openTag) {
         val htmlContent = extractHtmlOrElse(getDefaultModelObject(), "" /*fallback*/);
         replaceComponentTagBody(markupStream, openTag, 
-                MarkupComponent_reloadJs.decorate(htmlContent, jsRef.get()));
+                MarkupComponent_reloadJs.decorate(htmlContent, jsRef()));
     }
 
     @Override
     public void renderHead(IHeaderResponse response) {
         super.renderHead(response);
 
-        response.render(CssHeaderItem.forReference(
-                new CssResourceReference(AsciiDocComponent.class, "css/prism.css")));
-
-        response.render(JavaScriptHeaderItem.forReference(jsRef.get()));
-
+        response.render(CssHeaderItem.forReference(PrismResources.getCssResourceReferenceWkt()));
+        response.render(JavaScriptHeaderItem.forReference(jsRef()));
     }
 
-    private static final _Lazy<JavaScriptResourceReference> jsRef = _Lazy.threadSafe(()->
-    new JavaScriptResourceReference(AsciiDocComponent.class, "js/prism1.14.js"));
+    private static final JavaScriptResourceReference jsRef() {
+        return PrismResources.getJsResourceReferenceWkt();
+    }
 
 }
diff --git a/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/AsciiDocPanelFactoriesForWicket.java b/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/wkt/AsciiDocPanelFactoriesWkt.java
similarity index 90%
rename from valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/AsciiDocPanelFactoriesForWicket.java
rename to valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/wkt/AsciiDocPanelFactoriesWkt.java
index e22a015..1d12d53 100644
--- a/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/AsciiDocPanelFactoriesForWicket.java
+++ b/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/wkt/AsciiDocPanelFactoriesWkt.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.valuetypes.asciidoc.ui.components;
+package org.apache.isis.valuetypes.asciidoc.ui.components.wkt;
 
 import org.springframework.stereotype.Component;
 
@@ -33,7 +33,7 @@ import lombok.val;
  * the {@link AsciiDoc} value-type which requires client-side java-script to be
  * executed to enable syntax highlighting
  */
-public class AsciiDocPanelFactoriesForWicket {
+public class AsciiDocPanelFactoriesWkt {
 
     // -- PARENTED
 
@@ -48,7 +48,7 @@ public class AsciiDocPanelFactoriesForWicket {
         @Override
         protected MarkupComponentFactory getMarkupComponentFactory() {
             return (id, model) -> {
-                val markupComponent = new AsciiDocComponent(id, model);
+                val markupComponent = new AsciiDocComponentWkt(id, model);
                 markupComponent.setEnabled(false);
                 return markupComponent;    
             };
@@ -70,7 +70,7 @@ public class AsciiDocPanelFactoriesForWicket {
         @Override
         protected MarkupComponentFactory getMarkupComponentFactory() {
             return (id, model) -> {
-                val markupComponent = new AsciiDocComponent(id, model);
+                val markupComponent = new AsciiDocComponentWkt(id, model);
                 return markupComponent;    
             };
         }
diff --git a/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/css/prism.css b/valuetypes/asciidoc/ui/src/main/resources/static/prism/css/prism.css
similarity index 100%
rename from valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/css/prism.css
rename to valuetypes/asciidoc/ui/src/main/resources/static/prism/css/prism.css
diff --git a/valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/js/prism1.14.js b/valuetypes/asciidoc/ui/src/main/resources/static/prism/js/prism1.14.js
similarity index 100%
rename from valuetypes/asciidoc/ui/src/main/java/org/apache/isis/valuetypes/asciidoc/ui/components/js/prism1.14.js
rename to valuetypes/asciidoc/ui/src/main/resources/static/prism/js/prism1.14.js