upgraded all dependencies to latest releases

This commit is contained in:
Ronald A. Richardson
2023-12-25 15:03:04 +08:00
parent e4f64021d7
commit eabd83c8ad
21 changed files with 3743 additions and 2934 deletions

View File

@@ -9,9 +9,9 @@
"license": "MIT",
"require": {
"php": "^7.3|^8.0",
"fleetbase/core-api": "^1.3.2",
"fleetbase/fleetops-api": "^0.3.5",
"fleetbase/storefront-api": "^0.2.4",
"fleetbase/core-api": "^1.3.3",
"fleetbase/fleetops-api": "^0.3.6",
"fleetbase/storefront-api": "^0.2.5",
"fruitcake/laravel-cors": "^2.0",
"guzzlehttp/guzzle": "^7.0.1",
"laravel/framework": "^8.75",

540
api/composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -32,7 +32,7 @@ return [
'local' => [
'driver' => 'local',
'root' => storage_path('app'),
'root' => storage_path('app')
],
'public' => [
@@ -73,8 +73,7 @@ return [
*/
'links' => [
public_path('storage') => storage_path('app/public'),
public_path('uploads') => storage_path('app/uploads'),
public_path('storage') => storage_path('app/public')
],
];

View File

@@ -60,6 +60,10 @@ return [
'transport' => 'postmark',
],
'sendgrid' => [
'transport' => 'sendgrid',
],
'sendmail' => [
'transport' => 'sendmail',
'path' => env('MAIL_SENDMAIL_PATH', '/usr/sbin/sendmail -t -i'),

View File

@@ -30,4 +30,8 @@ return [
'region' => env('AWS_DEFAULT_REGION', 'us-east-1'),
],
'sendgrid' => [
'api_key' => env('SENDGRID_API_KEY'),
],
];

View File

@@ -1 +0,0 @@
/var/www/html/api/storage/app/uploads

View File

@@ -14,7 +14,7 @@ export default class App extends Application {
async ready() {
const extensions = await loadExtensions();
this.extensions = extensions;
this.engines = mapEngines(extensions);
}

View File

@@ -72,6 +72,20 @@ export default class ConsoleController extends Controller {
*/
@tracked sidebarContext;
/**
* State of sidebar toggle icon
*
* @var {SidebarContext}
*/
@tracked sidebarToggleEnabled = true;
/**
* The sidebar toggle state.
*
* @var {SidebarContext}
*/
@tracked sidebarToggleState = {};
/**
* Routes which should hide the sidebar menu.
*
@@ -104,15 +118,47 @@ export default class ConsoleController extends Controller {
this.router.on('routeDidChange', (transition) => {
if (this.sidebarContext) {
if (this.hiddenSidebarRoutes.includes(transition.to.name)) {
// Determine if the new route should hide the sidebar
const shouldHideSidebar = this.hiddenSidebarRoutes.includes(transition.to.name);
// Check if the sidebar was manually toggled and is currently closed
const isSidebarManuallyClosed = this.sidebarToggleState.clicked && !this.sidebarToggleState.isOpen;
// Hide the sidebar if the current route is in hiddenSidebarRoutes
if (shouldHideSidebar) {
this.sidebarContext.hideNow();
this.sidebarToggleEnabled = false;
return; // Exit early as no further action is required
}
// If the sidebar was manually closed and not on a hidden route, keep it closed
if (isSidebarManuallyClosed) {
this.sidebarContext.hideNow();
} else {
// Otherwise, show the sidebar
this.sidebarContext.show();
}
// Ensure toggle is enabled unless on a hidden route
this.sidebarToggleEnabled = !shouldHideSidebar;
}
});
}
/**
* When sidebar is manually toggled
*
* @param {SidebarContext} sidebar
* @param {boolean} isOpen
* @memberof ConsoleController
*/
@action onSidebarToggle(sidebar, isOpen) {
this.sidebarToggleState = {
clicked: true,
isOpen
};
}
/**
* Sets the sidebar context
*
@@ -125,6 +171,7 @@ export default class ConsoleController extends Controller {
if (this.hiddenSidebarRoutes.includes(this.router.currentRouteName)) {
this.sidebarContext.hideNow();
this.sidebarToggleEnabled = false;
}
}

View File

@@ -104,6 +104,16 @@ export default class ConsoleAdminBrandingController extends Controller {
.save()
.then(() => {
this.notifications.success('Branding settings saved.');
// if logo url is null
if (this.model.logo_url === null) {
this.model.set('logo_url', '/images/fleetbase-logo-svg.svg');
}
// if icon url is null
if (this.model.icon_url === null) {
this.model.set('icon_url', '/images/icon.png');
}
})
.finally(() => {
this.isLoading = false;

View File

@@ -1,6 +1,6 @@
{{page-title "Console"}}
<Layout::Container>
<Layout::Header @brand={{@model}} @user={{this.user}} @organizations={{this.organizations}} @menuItems={{this.universe.headerMenuItems}} @extensions={{this.extensions}} @onAction={{this.onAction}} />
<Layout::Header @brand={{@model}} @user={{this.user}} @organizations={{this.organizations}} @menuItems={{this.universe.headerMenuItems}} @extensions={{this.extensions}} @onAction={{this.onAction}} @showSidebarToggle={{true}} @sidebarToggleEnabled={{this.sidebarToggleEnabled}} @onSidebarToggle={{this.onSidebarToggle}} />
<Layout::Main>
<Layout::Sidebar @onSetup={{this.setSidebarContext}}>
<div class="next-sidebar-content-inner">

View File

@@ -1,159 +1,158 @@
{
"name": "@fleetbase/console",
"version": "0.3.2",
"private": true,
"description": "Fleetbase Console",
"repository": "",
"license": "MIT",
"author": "",
"directories": {
"doc": "doc",
"test": "tests"
},
"scripts": {
"prebuild": "node prebuild.js",
"build": "pnpm run prebuild && ember build --environment=production",
"lint": "concurrently \"npm:lint:*(!fix)\" --names \"lint:\"",
"lint:css": "stylelint \"**/*.css\"",
"lint:css:fix": "concurrently \"npm:lint:css -- --fix\"",
"lint:fix": "concurrently \"npm:lint:*:fix\" --names \"fix:\"",
"lint:hbs": "ember-template-lint .",
"lint:hbs:fix": "ember-template-lint . --fix",
"lint:js": "eslint . --cache",
"lint:js:fix": "eslint . --fix",
"start": "pnpm run prebuild && ember serve",
"test": "concurrently \"npm:lint\" \"npm:test:*\" --names \"lint,test:\"",
"test:ember": "ember test"
},
"dependencies": {
"@ember/legacy-built-in-components": "^0.4.1",
"@fleetbase/dev-engine": "^0.1.9",
"@fleetbase/ember-core": "^0.1.8",
"@fleetbase/ember-ui": "^0.2.6",
"@fleetbase/fleetops-data": "^0.1.5",
"@fleetbase/fleetops-engine": "^0.3.5",
"@fleetbase/iam-engine": "^0.0.7",
"@fleetbase/leaflet-routing-machine": "^3.2.16",
"@fleetbase/storefront-engine": "^0.2.4",
"@fortawesome/ember-fontawesome": "^0.4.1",
"ember-changeset": "^4.1.2",
"ember-changeset-validations": "^4.1.1",
"ember-composable-helpers": "^5.0.0",
"ember-concurrency": "^3.0.0",
"ember-concurrency-decorators": "^2.0.3",
"ember-intl": "6.3.2",
"ember-math-helpers": "^2.18.2",
"ember-power-select": "^6.0.1",
"ember-prism": "^0.13.0",
"ember-radio-button": "3.0.0-beta.1",
"ember-tag-input": "^3.1.0",
"fleetbase-extensions-indexer": "^0.0.4",
"postcss-at-rules-variables": "^0.3.0",
"postcss-custom-properties": "^12.1.9",
"postcss-nth-list": "^1.0.2"
},
"devDependencies": {
"@babel/core": "^7.23.2",
"@babel/eslint-parser": "^7.22.15",
"@babel/plugin-proposal-decorators": "^7.23.2",
"@ember/optional-features": "^2.0.0",
"@ember/string": "^3.1.1",
"@ember/test-helpers": "^3.2.0",
"@fortawesome/fontawesome-svg-core": "^6.4.0",
"@fortawesome/free-brands-svg-icons": "^6.4.0",
"@fortawesome/free-solid-svg-icons": "^6.4.0",
"@glimmer/component": "^1.1.2",
"@glimmer/tracking": "^1.1.2",
"@tailwindcss/forms": "^0.5.3",
"autoprefixer": "^10.4.8",
"broccoli-asset-rev": "^3.0.0",
"broccoli-funnel": "^3.0.8",
"concurrently": "^8.2.2",
"date-fns": "^2.30.0",
"dragula": "^3.7.3",
"ember-auto-import": "^2.6.3",
"ember-cli": "~5.4.1",
"ember-cli-app-version": "^6.0.1",
"ember-cli-babel": "^8.2.0",
"ember-cli-clean-css": "^3.0.0",
"ember-cli-dependency-checker": "^3.3.2",
"ember-cli-dotenv": "^3.1.0",
"ember-cli-es6-transform": "^1.0.0",
"ember-cli-htmlbars": "^6.3.0",
"ember-cli-inject-live-reload": "^2.1.0",
"ember-cli-postcss": "^8.2.0",
"ember-cli-sri": "^2.1.1",
"ember-cli-string-helpers": "^6.1.0",
"ember-cli-terser": "^4.0.2",
"ember-data": "^5.3.0",
"ember-engines": "^0.8.23",
"ember-fetch": "^8.1.2",
"ember-leaflet": "^5.1.1",
"ember-load-initializers": "^2.1.2",
"ember-modifier": "^4.1.0",
"ember-page-title": "^8.0.0",
"ember-qunit": "^8.0.1",
"ember-resolver": "^11.0.1",
"ember-responsive": "^5.0.0",
"ember-source": "~5.4.0",
"ember-template-lint": "^5.11.2",
"ember-wormhole": "^0.6.0",
"eslint": "^8.52.0",
"eslint-config-prettier": "^9.0.0",
"eslint-plugin-ember": "^11.11.1",
"eslint-plugin-n": "^16.2.0",
"eslint-plugin-prettier": "^5.0.1",
"eslint-plugin-qunit": "^8.0.1",
"fast-glob": "^3.3.0",
"fs": "0.0.1-security",
"inter-ui": "^3.19.3",
"leaflet": "^1.9.4",
"loader.js": "^4.7.0",
"normalize.css": "^8.0.1",
"postcss": "^8.4.21",
"postcss-conditionals-renewed": "^1.0.0",
"postcss-each": "^1.1.0",
"postcss-import": "14.1.0",
"postcss-mixins": "^9.0.4",
"postcss-preset-env": "^7.8.2",
"postcss-simple-vars": "^7.0.0",
"prettier": "^3.0.3",
"qunit": "^2.20.0",
"qunit-dom": "^2.0.0",
"recast": "^0.23.3",
"stylelint": "^15.11.0",
"stylelint-config-standard": "^34.0.0",
"stylelint-prettier": "^4.0.2",
"tailwindcss": "^3.1.8",
"tracked-built-ins": "^3.3.0",
"webpack": "^5.89.0"
},
"engines": {
"node": ">= 18"
},
"ember": {
"edition": "octane"
},
"pnpm": {
"overrides": {
"@fleetbase/fleetops-data": "^0.1.5",
"@fleetbase/ember-core": "^0.1.8",
"@fleetbase/ember-ui": "^0.2.6"
}
},
"prettier": {
"trailingComma": "es5",
"tabWidth": 4,
"semi": true,
"singleQuote": true,
"printWidth": 190,
"overrides": [
{
"files": "*.hbs",
"options": {
"singleQuote": false
"name": "@fleetbase/console",
"version": "0.3.2",
"private": true,
"description": "Fleetbase Console",
"repository": "",
"license": "MIT",
"author": "Fleetbase Pte Ltd <hello@fleetbase.io>",
"directories": {
"doc": "doc",
"test": "tests"
},
"scripts": {
"prebuild": "node prebuild.js",
"build": "pnpm run prebuild && ember build --environment=production",
"lint": "concurrently \"npm:lint:*(!fix)\" --names \"lint:\"",
"lint:css": "stylelint \"**/*.css\"",
"lint:css:fix": "concurrently \"npm:lint:css -- --fix\"",
"lint:fix": "concurrently \"npm:lint:*:fix\" --names \"fix:\"",
"lint:hbs": "ember-template-lint .",
"lint:hbs:fix": "ember-template-lint . --fix",
"lint:js": "eslint . --cache",
"lint:js:fix": "eslint . --fix",
"start": "pnpm run prebuild && ember serve",
"test": "concurrently \"npm:lint\" \"npm:test:*\" --names \"lint,test:\"",
"test:ember": "ember test"
},
"dependencies": {
"@fleetbase/ember-core": "^0.1.9",
"@fleetbase/ember-ui": "^0.2.8",
"@fleetbase/storefront-engine": "^0.2.5",
"@fleetbase/fleetops-engine": "^0.3.6",
"@fleetbase/fleetops-data": "^0.1.6",
"@fleetbase/dev-engine": "^0.2.0",
"@fleetbase/iam-engine": "^0.0.8",
"@fleetbase/leaflet-routing-machine": "^3.2.16",
"@ember/legacy-built-in-components": "^0.4.1",
"@fortawesome/ember-fontawesome": "^0.4.1",
"ember-changeset": "^4.1.2",
"ember-changeset-validations": "^4.1.1",
"ember-composable-helpers": "^5.0.0",
"ember-concurrency": "^3.0.0",
"ember-concurrency-decorators": "^2.0.3",
"ember-intl": "6.3.2",
"ember-math-helpers": "^2.18.2",
"ember-power-select": "^6.0.1",
"ember-prism": "^0.13.0",
"ember-radio-button": "3.0.0-beta.1",
"ember-tag-input": "^3.1.0",
"fleetbase-extensions-indexer": "^0.0.4",
"postcss-at-rules-variables": "^0.3.0",
"postcss-custom-properties": "^12.1.9",
"postcss-nth-list": "^1.0.2"
},
"devDependencies": {
"@babel/core": "^7.23.2",
"@babel/eslint-parser": "^7.22.15",
"@babel/plugin-proposal-decorators": "^7.23.2",
"@ember/optional-features": "^2.0.0",
"@ember/string": "^3.1.1",
"@ember/test-helpers": "^3.2.0",
"@fortawesome/fontawesome-svg-core": "^6.4.0",
"@fortawesome/free-brands-svg-icons": "^6.4.0",
"@fortawesome/free-solid-svg-icons": "^6.4.0",
"@glimmer/component": "^1.1.2",
"@glimmer/tracking": "^1.1.2",
"@tailwindcss/forms": "^0.5.3",
"autoprefixer": "^10.4.8",
"broccoli-asset-rev": "^3.0.0",
"broccoli-funnel": "^3.0.8",
"concurrently": "^8.2.2",
"date-fns": "^2.30.0",
"dragula": "^3.7.3",
"ember-auto-import": "^2.6.3",
"ember-cli": "~5.4.1",
"ember-cli-app-version": "^6.0.1",
"ember-cli-babel": "^8.2.0",
"ember-cli-clean-css": "^3.0.0",
"ember-cli-dependency-checker": "^3.3.2",
"ember-cli-dotenv": "^3.1.0",
"ember-cli-htmlbars": "^6.3.0",
"ember-cli-inject-live-reload": "^2.1.0",
"ember-cli-postcss": "^8.2.0",
"ember-cli-sri": "^2.1.1",
"ember-cli-string-helpers": "^6.1.0",
"ember-cli-terser": "^4.0.2",
"ember-data": "^4.12.5",
"ember-engines": "^0.8.23",
"ember-fetch": "^8.1.2",
"ember-leaflet": "^5.1.1",
"ember-load-initializers": "^2.1.2",
"ember-modifier": "^4.1.0",
"ember-page-title": "^8.0.0",
"ember-qunit": "^8.0.1",
"ember-resolver": "^11.0.1",
"ember-responsive": "^5.0.0",
"ember-source": "~5.4.0",
"ember-template-lint": "^5.11.2",
"ember-wormhole": "^0.6.0",
"eslint": "^8.52.0",
"eslint-config-prettier": "^9.0.0",
"eslint-plugin-ember": "^11.11.1",
"eslint-plugin-n": "^16.2.0",
"eslint-plugin-prettier": "^5.0.1",
"eslint-plugin-qunit": "^8.0.1",
"fast-glob": "^3.3.0",
"fs": "0.0.1-security",
"inter-ui": "^3.19.3",
"leaflet": "^1.9.4",
"loader.js": "^4.7.0",
"normalize.css": "^8.0.1",
"postcss": "^8.4.21",
"postcss-conditionals-renewed": "^1.0.0",
"postcss-each": "^1.1.0",
"postcss-import": "14.1.0",
"postcss-mixins": "^9.0.4",
"postcss-preset-env": "^7.8.2",
"postcss-simple-vars": "^7.0.0",
"prettier": "^3.0.3",
"qunit": "^2.20.0",
"qunit-dom": "^2.0.0",
"recast": "^0.23.3",
"stylelint": "^15.11.0",
"stylelint-config-standard": "^34.0.0",
"stylelint-prettier": "^4.0.2",
"tailwindcss": "^3.1.8",
"tracked-built-ins": "^3.3.0",
"webpack": "^5.89.0"
},
"engines": {
"node": ">= 18"
},
"ember": {
"edition": "octane"
},
"pnpm": {
"overrides": {
"@fleetbase/fleetops-data": "^0.1.6",
"@fleetbase/ember-core": "^0.1.9",
"@fleetbase/ember-ui": "^0.2.8"
}
}
]
}
},
"prettier": {
"trailingComma": "es5",
"tabWidth": 4,
"semi": true,
"singleQuote": true,
"printWidth": 190,
"overrides": [
{
"files": "*.hbs",
"options": {
"singleQuote": false
}
}
]
}
}

5713
console/pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

View File

@@ -5,6 +5,17 @@ const recast = require('recast');
const babelParser = require('recast/parsers/babel');
const builders = recast.types.builders;
function getExtensionMountPath(extensionName) {
let extensionNameSegments = extensionName.split('/');
let mountName = extensionNameSegments[1];
if (typeof mountName !== 'string') {
mountName = extensionNameSegments[0];
}
return mountName.replace('-engine', '');
}
function only(subject, props = []) {
const keys = Object.keys(subject);
const result = {};
@@ -85,8 +96,7 @@ function getRouterFileContents() {
if (functionExpression) {
// Check and add the new engine mounts
extensions.forEach((extension) => {
const mountName = extension.name.split('/')[1];
const mountPath = mountName.replace('-engine', '');
const mountPath = getExtensionMountPath(extension.name);
let route = mountPath;
if (extension.fleetbase && extension.fleetbase.route) {