You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by jo...@apache.org on 2021/07/07 07:16:13 UTC

[isis] branch ISIS-2505_Catch_Up_With_Demo_Examples updated: ISIS-2505 use legacy compiler instead of ir, omit formatterComponentFunction in ColumnFactory (data is shown now in parented tables!)

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

joergrade pushed a commit to branch ISIS-2505_Catch_Up_With_Demo_Examples
in repository https://gitbox.apache.org/repos/asf/isis.git


The following commit(s) were added to refs/heads/ISIS-2505_Catch_Up_With_Demo_Examples by this push:
     new 9d5977b  ISIS-2505 use legacy compiler instead of ir, omit formatterComponentFunction in ColumnFactory (data is shown now in parented tables!)
9d5977b is described below

commit 9d5977b43ea8a631e68190261f587d0652422c08
Author: Jörg Rade <jo...@kuehne-nagel.com>
AuthorDate: Wed Jul 7 09:15:38 2021 +0200

    ISIS-2505 use legacy compiler instead of ir, omit formatterComponentFunction in ColumnFactory (data is shown now in parented tables!)
---
 incubator/clients/kroviz/gradle.properties         |  2 +-
 .../isis/client/kroviz/core/event/LogEntry.kt      |  4 ----
 .../isis/client/kroviz/ui/core/ColumnFactory.kt    | 12 +++++------
 .../apache/isis/client/kroviz/ui/core/RoTable.kt   | 24 ++++++----------------
 4 files changed, 13 insertions(+), 29 deletions(-)

diff --git a/incubator/clients/kroviz/gradle.properties b/incubator/clients/kroviz/gradle.properties
index 0b171a6..1f665df 100644
--- a/incubator/clients/kroviz/gradle.properties
+++ b/incubator/clients/kroviz/gradle.properties
@@ -22,4 +22,4 @@ systemProp.kotlinVersion=1.5.10
 serializationVersion=1.2.1
 #Dependencies
 systemProp.kvisionVersion=4.8.3
-kotlin.js.compiler=ir
+kotlin.js.compiler=legacy
diff --git a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/core/event/LogEntry.kt b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/core/event/LogEntry.kt
index 60e1d0f..61d5f7a 100644
--- a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/core/event/LogEntry.kt
+++ b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/core/event/LogEntry.kt
@@ -30,8 +30,6 @@ import org.apache.isis.client.kroviz.to.Link
 import org.apache.isis.client.kroviz.to.Relation
 import org.apache.isis.client.kroviz.to.TransferObject
 import org.apache.isis.client.kroviz.ui.core.Constants
-import org.apache.isis.client.kroviz.ui.core.UiManager
-import org.apache.isis.client.kroviz.utils.Utils
 import kotlin.js.Date
 
 // use color codes from css instead?
@@ -51,9 +49,7 @@ enum class EventState(val id: String, val iconName: String, val style: ButtonSty
     // encapsulate access with managers?
 }
 
-@OptIn(ExperimentalJsExport::class)
 @Serializable
-@JsExport
 data class LogEntry(
         val url: String,
         val method: String? = "",
diff --git a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/core/ColumnFactory.kt b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/core/ColumnFactory.kt
index dadaf10..1294f22 100644
--- a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/core/ColumnFactory.kt
+++ b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/core/ColumnFactory.kt
@@ -96,9 +96,9 @@ class ColumnFactory {
                 field = "iconName",
                 hozAlign = Align.CENTER,
                 width = "40",
-                formatterComponentFunction = { _, _, data ->
+/*                formatterComponentFunction = { _, _, data ->
                     buildButton(data, data["iconName"] as? String)
-                })
+                }*/)
     }
 
     private fun buildButton(data: Exposer, iconName: String?): Button {
@@ -117,11 +117,11 @@ class ColumnFactory {
                 title = "ResultListResult",
                 field = "result",
                 headerFilter = Editor.INPUT,
-                formatterComponentFunction = { _, _, data ->
+/*                formatterComponentFunction = { _, _, data ->
                     Button(text = data["object"].title as String, icon = "fas fa-star-o", style = ButtonStyle.LINK).onClick {
                         console.log(data)
                     }
-                })
+                }*/)
     }
 
     private fun buildCheckBox(): ColumnDefinition<Exposer> {
@@ -154,12 +154,12 @@ class ColumnFactory {
                 hozAlign = Align.CENTER,
                 width = "60",
                 headerSort = false,
-                formatterComponentFunction = { _, _, data ->
+/*                formatterComponentFunction = { _, _, data ->
                     val tObject = data.delegate
                     MenuFactory.buildForObject(
                             tObject,
                             false)
-                })
+                }*/)
     }
 
     private fun getData(cell: Tabulator.CellComponent): Exposer {
diff --git a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/core/RoTable.kt b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/core/RoTable.kt
index be1fd79..c2d20e3 100644
--- a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/core/RoTable.kt
+++ b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/core/RoTable.kt
@@ -18,9 +18,6 @@
  */
 package org.apache.isis.client.kroviz.ui.core
 
-import org.apache.isis.client.kroviz.core.model.Exposer
-import org.apache.isis.client.kroviz.core.model.CollectionDM
-import org.apache.isis.client.kroviz.utils.Utils
 import io.kvision.core.Container
 import io.kvision.core.CssSize
 import io.kvision.core.UNIT
@@ -30,6 +27,9 @@ import io.kvision.tabulator.Layout
 import io.kvision.tabulator.Tabulator
 import io.kvision.tabulator.TabulatorOptions
 import io.kvision.utils.set
+import org.apache.isis.client.kroviz.core.model.CollectionDM
+import org.apache.isis.client.kroviz.core.model.Exposer
+import org.apache.isis.client.kroviz.utils.Utils
 
 /**
  * access attributes from dynamic (JS) objects with varying
@@ -43,7 +43,6 @@ class RoTable(displayCollection: CollectionDM) : SimplePanel() {
         title = Utils.extractTitle(displayCollection.title)
         width = CssSize(100, UNIT.perc)
         val model = displayCollection.data
-//        val model = buildModel(displayCollection)
         val columns = ColumnFactory().buildColumns(
                 displayCollection,
                 true)
@@ -52,7 +51,7 @@ class RoTable(displayCollection: CollectionDM) : SimplePanel() {
                 height = Constants.calcHeight,
                 layout = Layout.FITCOLUMNS,
                 columns = columns,
-                persistenceMode = false//,
+                persistenceMode = false,
                 //selectable = true
         )
 
@@ -61,24 +60,13 @@ class RoTable(displayCollection: CollectionDM) : SimplePanel() {
         tabulator(model, options = options, types = tableTypes) {
             setEventListener<Tabulator<Exposer>> {
                 tabulatorRowClick = {
+                    console.log("[RT.tabulatorRowClick]")
+                    console.log(it)
                 }
             }
         }
     }
 
-    private fun buildModel(displayCollection: CollectionDM) : List<dynamic> {
-        console.log("[RT.buildModel]")
-        val model = mutableListOf<Exposer>()
-        displayCollection.data.forEach {
-            console.log(it)
-            val record = it.asDynamic()
-            console.log(record["readOnlyProperty"])
-            model.add(record)
-            console.log(record)
-        }
-        return model
-    }
-
     fun <T : Any> Container.tabulator(
             data: List<T>? = null,
             dataUpdateOnEdit: Boolean = true,