You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@atlas.apache.org by kb...@apache.org on 2020/04/01 09:35:04 UTC

[atlas] branch branch-2.0 updated (1c38f71 -> e71d6c2)

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

kbhatt pushed a change to branch branch-2.0
in repository https://gitbox.apache.org/repos/asf/atlas.git.


    from 1c38f71  ATLAS-3701: performance improvements in classification-dissociation
     new fdbd3b7  ATLAS-3713 : UI : DSL select count() query doesn't display results on UI
     new e71d6c2  ATLAS-3711 : UI: Classification/Term modal should close after create/update/delete response

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 dashboardv2/public/css/scss/common.scss            | 49 ++++++++--------------
 dashboardv2/public/js/utils/CommonViewFunction.js  | 26 ++++++++++--
 dashboardv2/public/js/utils/TableLayout.js         |  4 +-
 dashboardv2/public/js/utils/Utils.js               | 24 ++++++++---
 .../js/views/glossary/AssignTermLayoutView.js      |  5 ++-
 dashboardv2/public/js/views/tag/AddTagModalView.js |  4 ++
 dashboardv3/public/css/scss/common.scss            | 49 ++++++++--------------
 dashboardv3/public/js/utils/CommonViewFunction.js  | 26 ++++++++++--
 dashboardv3/public/js/utils/TableLayout.js         |  4 +-
 dashboardv3/public/js/utils/Utils.js               | 24 ++++++++---
 .../js/views/glossary/AssignTermLayoutView.js      |  5 ++-
 dashboardv3/public/js/views/tag/AddTagModalView.js |  4 ++
 12 files changed, 142 insertions(+), 82 deletions(-)


[atlas] 01/02: ATLAS-3713 : UI : DSL select count() query doesn't display results on UI

Posted by kb...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

kbhatt pushed a commit to branch branch-2.0
in repository https://gitbox.apache.org/repos/asf/atlas.git

commit fdbd3b7fe2c32d0d7fc9392555daf7c7b9ed0887
Author: kevalbhatt <kb...@apache.org>
AuthorDate: Wed Apr 1 14:43:13 2020 +0530

    ATLAS-3713 : UI : DSL select count() query doesn't display results on UI
    
    (cherry picked from commit 6ece28fd957ca2e90936914bdfd26c7c35c1f306)
---
 dashboardv2/public/js/utils/TableLayout.js | 4 +++-
 dashboardv3/public/js/utils/TableLayout.js | 4 +++-
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/dashboardv2/public/js/utils/TableLayout.js b/dashboardv2/public/js/utils/TableLayout.js
index b451041..a66411e 100644
--- a/dashboardv2/public/js/utils/TableLayout.js
+++ b/dashboardv2/public/js/utils/TableLayout.js
@@ -359,7 +359,9 @@ define(['require',
                 });
                 if (this.showDefaultTableSorted) {
                     this.grid.render();
-                    this.grid.sort(this.sortOpts.sortColumn, this.sortOpts.sortDirection);
+                    if (this.collection.fullCollection.length > 1) {
+                        this.grid.sort(this.sortOpts.sortColumn, this.sortOpts.sortDirection);
+                    }
                     this.rTableList.show(this.grid);
                 } else {
                     this.rTableList.show(this.grid);
diff --git a/dashboardv3/public/js/utils/TableLayout.js b/dashboardv3/public/js/utils/TableLayout.js
index b451041..a66411e 100644
--- a/dashboardv3/public/js/utils/TableLayout.js
+++ b/dashboardv3/public/js/utils/TableLayout.js
@@ -359,7 +359,9 @@ define(['require',
                 });
                 if (this.showDefaultTableSorted) {
                     this.grid.render();
-                    this.grid.sort(this.sortOpts.sortColumn, this.sortOpts.sortDirection);
+                    if (this.collection.fullCollection.length > 1) {
+                        this.grid.sort(this.sortOpts.sortColumn, this.sortOpts.sortDirection);
+                    }
                     this.rTableList.show(this.grid);
                 } else {
                     this.rTableList.show(this.grid);


[atlas] 02/02: ATLAS-3711 : UI: Classification/Term modal should close after create/update/delete response

Posted by kb...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

kbhatt pushed a commit to branch branch-2.0
in repository https://gitbox.apache.org/repos/asf/atlas.git

commit e71d6c29e2d265f707341cf060d1f2e3633a2f4d
Author: kevalbhatt <kb...@apache.org>
AuthorDate: Wed Apr 1 14:41:24 2020 +0530

    ATLAS-3711 : UI: Classification/Term modal should close after create/update/delete response
    
    (cherry picked from commit 2ac034253386ca8d173f67317505076783cedbf7)
---
 dashboardv2/public/css/scss/common.scss            | 49 ++++++++--------------
 dashboardv2/public/js/utils/CommonViewFunction.js  | 26 ++++++++++--
 dashboardv2/public/js/utils/Utils.js               | 24 ++++++++---
 .../js/views/glossary/AssignTermLayoutView.js      |  5 ++-
 dashboardv2/public/js/views/tag/AddTagModalView.js |  4 ++
 dashboardv3/public/css/scss/common.scss            | 49 ++++++++--------------
 dashboardv3/public/js/utils/CommonViewFunction.js  | 26 ++++++++++--
 dashboardv3/public/js/utils/Utils.js               | 24 ++++++++---
 .../js/views/glossary/AssignTermLayoutView.js      |  5 ++-
 dashboardv3/public/js/views/tag/AddTagModalView.js |  4 ++
 10 files changed, 136 insertions(+), 80 deletions(-)

diff --git a/dashboardv2/public/css/scss/common.scss b/dashboardv2/public/css/scss/common.scss
index c79a96c..718ac95 100644
--- a/dashboardv2/public/css/scss/common.scss
+++ b/dashboardv2/public/css/scss/common.scss
@@ -274,36 +274,23 @@ pre {
     float: left;
 }
 
-.button-loader:after {
-    content: "\f021";
-    position: absolute;
-    left: -6px;
-    bottom: 4px;
-    font-family: FontAwesome;
-    background: transparent;
-    height: 34px;
-    width: 38px;
-    line-height: 34px;
-    text-align: center;
-    animation: spin 1000ms infinite linear;
-}
-
-@-webkit-keyframes spin {
-    0% {
-        transform: rotate(0deg);
-    }
-
-    100% {
-        transform: rotate(359deg);
-    }
-}
-
-@keyframes spin {
-    0% {
-        transform: rotate(0deg);
-    }
-
-    100% {
-        transform: rotate(359deg);
+.button-loader {
+    position: relative;
+    padding-left: 22px !important;
+
+    &:after {
+        content: "\f021";
+        position: absolute;
+        display: flex;
+        justify-content: center;
+        align-items: center;
+        left: 0px;
+        top: 0px;
+        font-family: FontAwesome;
+        background: transparent;
+        height: 100%;
+        width: 26px;
+        font-size: 11px;
+        animation: spin 1000ms infinite linear;
     }
 }
\ No newline at end of file
diff --git a/dashboardv2/public/js/utils/CommonViewFunction.js b/dashboardv2/public/js/utils/CommonViewFunction.js
index 60d6527..ba10e11 100644
--- a/dashboardv2/public/js/utils/CommonViewFunction.js
+++ b/dashboardv2/public/js/utils/CommonViewFunction.js
@@ -24,18 +24,25 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
         require(['models/VTag'], function(VTag) {
             if (options && options.guid && options.tagName) {
                 var tagModel = new VTag(),
+                    noticeRef = null,
                     notifyObj = {
                         modal: true,
+                        okCloses: false,
+                        okShowLoader: true,
                         text: options.msg,
                         title: options.titleMessage,
                         okText: options.okText,
-                        ok: function(argument) {
+                        ok: function(notice) {
+                            noticeRef = notice;
                             if (options.showLoader) {
                                 options.showLoader();
                             }
                             tagModel.deleteAssociation(options.guid, options.tagName, options.associatedGuid, {
                                 defaultErrorMessage: options.tagName + Messages.deleteErrorMessage,
                                 success: function(data) {
+                                    if (noticeRef) {
+                                        noticeRef.remove();
+                                    }
                                     Utils.notifySuccess({
                                         content: "Classification " + options.tagName + Messages.getAbbreviationMsg(false, 'removeSuccessMessage')
                                     });
@@ -48,6 +55,9 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
 
                                 },
                                 cust_error: function(model, response) {
+                                    if (noticeRef) {
+                                        noticeRef.hideButtonLoader();
+                                    }
                                     if (options.hideLoader) {
                                         options.hideLoader();
                                     }
@@ -789,8 +799,12 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
                 collection = options.collection,
                 model = options.model,
                 newModel = new options.collection.model(),
+                noticeRef = null,
                 ajaxOptions = {
                     success: function(rModel, response) {
+                        if (noticeRef) {
+                            noticeRef.remove();
+                        }
                         Utils.notifySuccess({
                             content: ((isCategoryView || isEntityView ? "Term" : "Category") + " association is removed successfully")
                         });
@@ -799,6 +813,9 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
                         }
                     },
                     cust_error: function() {
+                        if (noticeRef) {
+                            noticeRef.hideButtonLoader();
+                        }
                         if (options.hideLoader) {
                             options.hideLoader();
                         }
@@ -806,10 +823,13 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
                 },
                 notifyObj = {
                     modal: true,
+                    okCloses: false,
+                    okShowLoader: true,
                     text: options.msg,
                     title: options.titleMessage,
                     okText: options.buttonText,
-                    ok: function(argument) {
+                    ok: function(notice) {
+                        noticeRef = notice;
                         if (options.showLoader) {
                             options.showLoader();
                         }
@@ -832,7 +852,7 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
                             }));
                         }
                     },
-                    cancel: function(argument) {}
+                    cancel: function() {}
                 };
             Utils.notifyConfirm(notifyObj);
         }
diff --git a/dashboardv2/public/js/utils/Utils.js b/dashboardv2/public/js/utils/Utils.js
index f4c55da..0c03ba6 100644
--- a/dashboardv2/public/js/utils/Utils.js
+++ b/dashboardv2/public/js/utils/Utils.js
@@ -184,7 +184,7 @@ define(['require', 'utils/Globals', 'pnotify', 'utils/Messages', 'utils/Enums',
                 confirm: true,
                 buttons: [{
                         text: options.cancelText || 'Cancel',
-                        addClass: 'btn-action btn-md',
+                        addClass: 'btn-action btn-md cancel',
                         click: function(notice) {
                             options.cancel(notice);
                             notice.remove();
@@ -192,10 +192,24 @@ define(['require', 'utils/Globals', 'pnotify', 'utils/Messages', 'utils/Enums',
                     },
                     {
                         text: options.okText || 'Ok',
-                        addClass: 'btn-atlas btn-md',
+                        addClass: 'btn-atlas btn-md ok',
                         click: function(notice) {
-                            options.ok(notice);
-                            notice.remove();
+                            if (options.ok) {
+                                options.ok($.extend({}, notice, {
+                                    hideButtonLoader: function() {
+                                        notice.container.find("button.ok").hideButtonLoader();
+                                    },
+                                    showButtonLoader: function() {
+                                        notice.container.find("button.ok").showButtonLoader();
+                                    }
+                                }));
+                            }
+                            if (options.okShowLoader) {
+                                notice.container.find("button.ok").showButtonLoader();
+                            }
+                            if (options.okCloses !== false) {
+                                notice.remove();
+                            }
                         }
                     }
                 ]
@@ -872,7 +886,7 @@ define(['require', 'utils/Globals', 'pnotify', 'utils/Messages', 'utils/Enums',
         }
     }
     $.fn.showButtonLoader = function() {
-        $(this).css({ "position": "relative" }).attr("disabled", "true").addClass('button-loader');
+        $(this).attr("disabled", "true").addClass('button-loader');
     }
     $.fn.hideButtonLoader = function() {
         $(this).removeClass('button-loader').removeAttr("disabled");
diff --git a/dashboardv2/public/js/views/glossary/AssignTermLayoutView.js b/dashboardv2/public/js/views/glossary/AssignTermLayoutView.js
index e0ebeed..e9da313 100644
--- a/dashboardv2/public/js/views/glossary/AssignTermLayoutView.js
+++ b/dashboardv2/public/js/views/glossary/AssignTermLayoutView.js
@@ -84,7 +84,8 @@ define(['require',
                     "okText": "Assign",
                     "allowCancel": true,
                     "showFooter": this.isAttributeRelationView ? false : true,
-                    "mainClass": "wizard-modal"
+                    "mainClass": "wizard-modal",
+                    "okCloses": false
                 });
                 this.modal.open();
                 this.modal.$el.find('button.ok').attr("disabled", true);
@@ -145,6 +146,7 @@ define(['require',
                 }
             },
             assignTerm: function() {
+                this.modal.$el.find('button.ok').showButtonLoader();
                 this.assignTermError = false;
                 var that = this,
                     data = [],
@@ -163,6 +165,7 @@ define(['require',
                             }
                         },
                         cust_error: function() {
+                            that.modal.$el.find('button.ok').hideButtonLoader();
                             that.assignTermError = true;
                         }
                     },
diff --git a/dashboardv2/public/js/views/tag/AddTagModalView.js b/dashboardv2/public/js/views/tag/AddTagModalView.js
index 214de07..5626edc 100644
--- a/dashboardv2/public/js/views/tag/AddTagModalView.js
+++ b/dashboardv2/public/js/views/tag/AddTagModalView.js
@@ -125,6 +125,7 @@ define(['require',
                     cancelText: "Cancel",
                     mainClass: 'modal-lg',
                     allowCancel: true,
+                    okCloses: false
                 };
             if (this.tagModel) {
                 modalObj.title = 'Edit Classification';
@@ -134,6 +135,7 @@ define(['require',
             this.modal.open();
             this.modal.$el.find('button.ok').attr("disabled", true);
             this.on('ok', function() {
+                that.modal.$el.find('button.ok').showButtonLoader();
                 var tagName = this.tagModel ? this.tagModel.typeName : this.ui.addTagOptions.val(),
                     tagAttributes = {},
                     tagAttributeNames = this.$(".attrName"),
@@ -453,8 +455,10 @@ define(['require',
                     if (that.callback) {
                         that.callback();
                     }
+                    that.modal.close();
                 },
                 cust_error: function(model, response) {
+                    that.modal.$el.find('button.ok').hideButtonLoader();
                     if (that.hideLoader) {
                         that.hideLoader();
                     }
diff --git a/dashboardv3/public/css/scss/common.scss b/dashboardv3/public/css/scss/common.scss
index 053c1cf..69fcfc1 100644
--- a/dashboardv3/public/css/scss/common.scss
+++ b/dashboardv3/public/css/scss/common.scss
@@ -287,36 +287,23 @@ pre {
 
 }
 
-.button-loader:after {
-    content: "\f021";
-    position: absolute;
-    left: -6px;
-    bottom: 4px;
-    font-family: FontAwesome;
-    background: transparent;
-    height: 34px;
-    width: 38px;
-    line-height: 34px;
-    text-align: center;
-    animation: spin 1000ms infinite linear;
-}
-
-@-webkit-keyframes spin {
-    0% {
-        transform: rotate(0deg);
-    }
-
-    100% {
-        transform: rotate(359deg);
-    }
-}
-
-@keyframes spin {
-    0% {
-        transform: rotate(0deg);
-    }
-
-    100% {
-        transform: rotate(359deg);
+.button-loader {
+    position: relative;
+    padding-left: 22px !important;
+
+    &:after {
+        content: "\f021";
+        position: absolute;
+        display: flex;
+        justify-content: center;
+        align-items: center;
+        left: 0px;
+        top: 0px;
+        font-family: FontAwesome;
+        background: transparent;
+        height: 100%;
+        width: 26px;
+        font-size: 11px;
+        animation: spin 1000ms infinite linear;
     }
 }
\ No newline at end of file
diff --git a/dashboardv3/public/js/utils/CommonViewFunction.js b/dashboardv3/public/js/utils/CommonViewFunction.js
index ea50aa6..4a57c83 100644
--- a/dashboardv3/public/js/utils/CommonViewFunction.js
+++ b/dashboardv3/public/js/utils/CommonViewFunction.js
@@ -24,18 +24,25 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
         require(['models/VTag'], function(VTag) {
             if (options && options.guid && options.tagName) {
                 var tagModel = new VTag(),
+                    noticeRef = null,
                     notifyObj = {
                         modal: true,
+                        okCloses: false,
+                        okShowLoader: true,
                         text: options.msg,
                         title: options.titleMessage,
                         okText: options.okText,
-                        ok: function(argument) {
+                        ok: function(notice) {
+                            noticeRef = notice;
                             if (options.showLoader) {
                                 options.showLoader();
                             }
                             tagModel.deleteAssociation(options.guid, options.tagName, options.associatedGuid, {
                                 defaultErrorMessage: options.tagName + Messages.deleteErrorMessage,
                                 success: function(data) {
+                                    if (noticeRef) {
+                                        noticeRef.remove();
+                                    }
                                     Utils.notifySuccess({
                                         content: "Classification " + options.tagName + Messages.getAbbreviationMsg(false, 'removeSuccessMessage')
                                     });
@@ -48,6 +55,9 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
 
                                 },
                                 cust_error: function(model, response) {
+                                    if (noticeRef) {
+                                        noticeRef.hideButtonLoader();
+                                    }
                                     if (options.hideLoader) {
                                         options.hideLoader();
                                     }
@@ -809,8 +819,12 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
                 collection = options.collection,
                 model = options.model,
                 newModel = new options.collection.model(),
+                noticeRef = null,
                 ajaxOptions = {
                     success: function(rModel, response) {
+                        if (noticeRef) {
+                            noticeRef.remove();
+                        }
                         Utils.notifySuccess({
                             content: ((isCategoryView || isEntityView ? "Term" : "Category") + " association is removed successfully")
                         });
@@ -819,6 +833,9 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
                         }
                     },
                     cust_error: function() {
+                        if (noticeRef) {
+                            noticeRef.hideButtonLoader();
+                        }
                         if (options.hideLoader) {
                             options.hideLoader();
                         }
@@ -826,10 +843,13 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
                 },
                 notifyObj = {
                     modal: true,
+                    okCloses: false,
+                    okShowLoader: true,
                     text: options.msg,
                     title: options.titleMessage,
                     okText: options.buttonText,
-                    ok: function(argument) {
+                    ok: function(notice) {
+                        noticeRef = notice;
                         if (options.showLoader) {
                             options.showLoader();
                         }
@@ -852,7 +872,7 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
                             }));
                         }
                     },
-                    cancel: function(argument) {}
+                    cancel: function() {}
                 };
             Utils.notifyConfirm(notifyObj);
         }
diff --git a/dashboardv3/public/js/utils/Utils.js b/dashboardv3/public/js/utils/Utils.js
index 3b99446..97fa40b 100644
--- a/dashboardv3/public/js/utils/Utils.js
+++ b/dashboardv3/public/js/utils/Utils.js
@@ -190,7 +190,7 @@ define(['require', 'utils/Globals', 'pnotify', 'utils/Messages', 'utils/Enums',
                 confirm: true,
                 buttons: [{
                         text: options.cancelText || 'Cancel',
-                        addClass: 'btn-action btn-md',
+                        addClass: 'btn-action btn-md cancel',
                         click: function(notice) {
                             options.cancel(notice);
                             notice.remove();
@@ -198,10 +198,24 @@ define(['require', 'utils/Globals', 'pnotify', 'utils/Messages', 'utils/Enums',
                     },
                     {
                         text: options.okText || 'Ok',
-                        addClass: 'btn-atlas btn-md',
+                        addClass: 'btn-atlas btn-md ok',
                         click: function(notice) {
-                            options.ok(notice);
-                            notice.remove();
+                            if (options.ok) {
+                                options.ok($.extend({}, notice, {
+                                    hideButtonLoader: function() {
+                                        notice.container.find("button.ok").hideButtonLoader();
+                                    },
+                                    showButtonLoader: function() {
+                                        notice.container.find("button.ok").showButtonLoader();
+                                    }
+                                }));
+                            }
+                            if (options.okShowLoader) {
+                                notice.container.find("button.ok").showButtonLoader();
+                            }
+                            if (options.okCloses !== false) {
+                                notice.remove();
+                            }
                         }
                     }
                 ]
@@ -920,7 +934,7 @@ define(['require', 'utils/Globals', 'pnotify', 'utils/Messages', 'utils/Enums',
 
     }
     $.fn.showButtonLoader = function() {
-        $(this).css({ "position": "relative" }).attr("disabled", "true").addClass('button-loader');
+        $(this).attr("disabled", "true").addClass('button-loader');
     }
     $.fn.hideButtonLoader = function() {
         $(this).removeClass('button-loader').removeAttr("disabled");
diff --git a/dashboardv3/public/js/views/glossary/AssignTermLayoutView.js b/dashboardv3/public/js/views/glossary/AssignTermLayoutView.js
index e0ebeed..e9da313 100644
--- a/dashboardv3/public/js/views/glossary/AssignTermLayoutView.js
+++ b/dashboardv3/public/js/views/glossary/AssignTermLayoutView.js
@@ -84,7 +84,8 @@ define(['require',
                     "okText": "Assign",
                     "allowCancel": true,
                     "showFooter": this.isAttributeRelationView ? false : true,
-                    "mainClass": "wizard-modal"
+                    "mainClass": "wizard-modal",
+                    "okCloses": false
                 });
                 this.modal.open();
                 this.modal.$el.find('button.ok').attr("disabled", true);
@@ -145,6 +146,7 @@ define(['require',
                 }
             },
             assignTerm: function() {
+                this.modal.$el.find('button.ok').showButtonLoader();
                 this.assignTermError = false;
                 var that = this,
                     data = [],
@@ -163,6 +165,7 @@ define(['require',
                             }
                         },
                         cust_error: function() {
+                            that.modal.$el.find('button.ok').hideButtonLoader();
                             that.assignTermError = true;
                         }
                     },
diff --git a/dashboardv3/public/js/views/tag/AddTagModalView.js b/dashboardv3/public/js/views/tag/AddTagModalView.js
index 214de07..5626edc 100644
--- a/dashboardv3/public/js/views/tag/AddTagModalView.js
+++ b/dashboardv3/public/js/views/tag/AddTagModalView.js
@@ -125,6 +125,7 @@ define(['require',
                     cancelText: "Cancel",
                     mainClass: 'modal-lg',
                     allowCancel: true,
+                    okCloses: false
                 };
             if (this.tagModel) {
                 modalObj.title = 'Edit Classification';
@@ -134,6 +135,7 @@ define(['require',
             this.modal.open();
             this.modal.$el.find('button.ok').attr("disabled", true);
             this.on('ok', function() {
+                that.modal.$el.find('button.ok').showButtonLoader();
                 var tagName = this.tagModel ? this.tagModel.typeName : this.ui.addTagOptions.val(),
                     tagAttributes = {},
                     tagAttributeNames = this.$(".attrName"),
@@ -453,8 +455,10 @@ define(['require',
                     if (that.callback) {
                         that.callback();
                     }
+                    that.modal.close();
                 },
                 cust_error: function(model, response) {
+                    that.modal.$el.find('button.ok').hideButtonLoader();
                     if (that.hideLoader) {
                         that.hideLoader();
                     }