From 877fb43503e34066a0fc9a7831c8230b461cd357 Mon Sep 17 00:00:00 2001 From: Mark Chapman Date: Wed, 28 Aug 2019 14:39:02 +0000 Subject: [PATCH 1/4] chore (update deps) --- website/package.json | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/website/package.json b/website/package.json index 7539dab1..27d31648 100644 --- a/website/package.json +++ b/website/package.json @@ -1,7 +1,7 @@ { "name": "website", "author": "Mark Chapman ", - "version": "0.12.0-beta.43", + "version": "0.12.0-beta.45", "description": "The demonstration website for the forms-angular library", "repository": { "type": "git", @@ -27,16 +27,16 @@ "compression": "1.7.4", "errorhandler": "1.5.1", "express": "4.17.1", - "fng-audit": "0.12.0-beta.43", - "fng-bootstrap-date": "0.12.0-beta.43", - "fng-bootstrap-datetime": "0.12.0-beta.43", - "fng-ckeditor": "0.12.0-beta.43", - "fng-colour-picker": "^0.12.0-beta.43", - "fng-jq-upload": "0.12.0-beta.43", - "fng-reports": "^0.12.0-beta.43", - "fng-ui-date": "0.12.0-beta.43", - "fng-ui-select": "0.12.0-beta.43", - "forms-angular": "^0.12.0-beta.43", + "fng-audit": "0.12.0-beta.45", + "fng-bootstrap-date": "0.12.0-beta.45", + "fng-bootstrap-datetime": "0.12.0-beta.45", + "fng-ckeditor": "0.12.0-beta.45", + "fng-colour-picker": "^0.12.0-beta.45", + "fng-jq-upload": "0.12.0-beta.45", + "fng-reports": "^0.12.0-beta.45", + "fng-ui-date": "0.12.0-beta.45", + "fng-ui-select": "0.12.0-beta.45", + "forms-angular": "^0.12.0-beta.45", "jspdf-autotable": "^3.2.4", "lodash": "^4.17.15", "method-override": "3.0.0", From 0c127d114e3ee2f87793a8e7434b1c2cddf4ce1d Mon Sep 17 00:00:00 2001 From: Mark Chapman Date: Sun, 8 Sep 2019 17:27:14 +0000 Subject: [PATCH 2/4] WIP --- src/client/index.d.ts | 4 +- src/client/js/controllers/nav.ts | 44 +++++++++++--------- src/client/js/directives/dropdown.ts | 2 +- src/client/js/directives/error-display.ts | 10 +---- src/client/js/services/record-handler.ts | 12 +++++- src/client/less/forms-angular-bs-common.less | 12 ++++++ src/client/template/base-analysis.html | 2 +- src/client/template/base-edit.html | 2 +- src/client/template/base-list-view.html | 2 +- src/client/template/base-list.html | 2 +- src/client/template/base-view.html | 2 +- src/client/template/error-display-bs2.html | 8 ++++ src/client/template/error-display-bs3.html | 8 ++++ website/app/scripts/app.js | 1 + 14 files changed, 75 insertions(+), 36 deletions(-) create mode 100644 src/client/template/error-display-bs2.html create mode 100644 src/client/template/error-display-bs3.html diff --git a/src/client/index.d.ts b/src/client/index.d.ts index 6613616f..92e11e45 100644 --- a/src/client/index.d.ts +++ b/src/client/index.d.ts @@ -283,6 +283,7 @@ declare module fng { formName: string; alertTitle: any; errorMessage: any; + errorHideTimer: number; save: any; newRecord: boolean; initialiseNewRecord?: any; @@ -334,7 +335,8 @@ declare module fng { generateNewUrl: any; scrollTheList: any; getListData: any; - dismissError: any; + dismissError: () => void; + stickError: () => void; handleHttpError: (response: any) => void; dropConversionWatcher: () => void; } diff --git a/src/client/js/controllers/nav.ts b/src/client/js/controllers/nav.ts index 5296c8ff..7046203b 100644 --- a/src/client/js/controllers/nav.ts +++ b/src/client/js/controllers/nav.ts @@ -98,32 +98,36 @@ module fng.controllers { }); $scope.doClick = function (index, event) { - var option = angular.element(event.target); - var item = $scope.items[index]; + const option = angular.element(event.target); + const item = $scope.items[index]; if (item.divider || option.parent().hasClass('disabled')) { event.preventDefault(); } else if (item.broadcast) { $scope.$broadcast(item.broadcast); } else { // Performance optimization: http://jsperf.com/apply-vs-call-vs-invoke - var args = item.args || [], - fn = item.fn; - switch (args.length) { - case 0: - fn(); - break; - case 1: - fn(args[0]); - break; - case 2: - fn(args[0], args[1]); - break; - case 3: - fn(args[0], args[1], args[2]); - break; - case 4: - fn(args[0], args[1], args[2], args[3]); - break; + const args = item.args || []; + const fn = item.fn; + if (typeof fn === "function") { + switch (args.length) { + case 0: + fn(); + break; + case 1: + fn(args[0]); + break; + case 2: + fn(args[0], args[1]); + break; + case 3: + fn(args[0], args[1], args[2]); + break; + case 4: + fn(args[0], args[1], args[2], args[3]); + break; + } + } else if (fn) { + throw new Error("Incorrect menu setup") } } }; diff --git a/src/client/js/directives/dropdown.ts b/src/client/js/directives/dropdown.ts index 077a67b8..a22b73b8 100644 --- a/src/client/js/directives/dropdown.ts +++ b/src/client/js/directives/dropdown.ts @@ -13,7 +13,7 @@ module fng.directives { ' ' + '