mirror of
https://github.com/fleetbase/fleetbase.git
synced 2026-01-08 07:16:49 +00:00
Merge branch 'main' of github.com:fleetbase/fleetbase into cloud
This commit is contained in:
6
.github/workflows/cd.yml
vendored
6
.github/workflows/cd.yml
vendored
@@ -132,11 +132,15 @@ jobs:
|
||||
restore-keys: |
|
||||
${{ runner.os }}-pnpm-store-
|
||||
|
||||
- name: Check for _GITHUB_AUTH_TOKEN and create .npmrc
|
||||
- name: Create and Setup .npmrc
|
||||
run: |
|
||||
if [[ -n "${{ secrets._GITHUB_AUTH_TOKEN }}" ]]; then
|
||||
echo "//npm.pkg.github.com/:_authToken=${{ secrets._GITHUB_AUTH_TOKEN }}" > .npmrc
|
||||
fi
|
||||
if [[ -n "${{ secrets.FLEETBASE_REGISTRY_TOKEN }}" ]]; then
|
||||
echo "//registry.fleetbase.io/:_authToken=${{ secrets.FLEETBASE_REGISTRY_TOKEN }}" >> .npmrc
|
||||
echo "@fleetbase:registry=https://registry.fleetbase.io" >> .npmrc
|
||||
fi
|
||||
working-directory: ./console
|
||||
|
||||
- name: Set Env Variables for QA
|
||||
|
||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -30,6 +30,7 @@ packages/flespi
|
||||
packages/loconav
|
||||
packages/internals
|
||||
packages/projectargus-engine
|
||||
packages/customer-portal
|
||||
# wip
|
||||
packages/solid
|
||||
solid
|
||||
|
||||
11
README.md
11
README.md
@@ -143,12 +143,11 @@ Fleetbase offers a few open sourced apps which are built on Fleetbase which can
|
||||
</ul>
|
||||
|
||||
## 🛣️ Roadmap
|
||||
1. **Customer Facing Views** ~ Extensions will be able to create public/customer facing views tracking and management from outside of the console UI.
|
||||
2. **Inventory and Warehouse Management** ~ Pallet will be Fleetbase’s first official extension for WMS & Inventory.
|
||||
3. **Accounting and Invoicing** ~ Pallet will be Fleetbase’s first official extension for WMS & Inventory.
|
||||
4. **Binary Builds** ~ Run Fleetbase from a single binary.
|
||||
6. **Fleetbase for Desktop** ~ Desktop builds for OSX and Windows.
|
||||
7. **Custom Maps and Routing Engines** ~ Feature to enable easy integrations with custom maps and routing engines like Google Maps or Mapbox etc…
|
||||
1. **Inventory and Warehouse Management** ~ Pallet will be Fleetbase’s first official extension for WMS & Inventory.
|
||||
2. **Accounting and Invoicing** ~ Ledger will be Fleetbase’s first official extension accounting and invoicing.
|
||||
3. **Binary Builds** ~ Run Fleetbase from a single binary.
|
||||
4. **Fleetbase for Desktop** ~ Desktop builds for OSX and Windows.
|
||||
5. **Custom Maps and Routing Engines** ~ Feature to enable easy integrations with custom maps and routing engines like Google Maps or Mapbox etc…
|
||||
|
||||
## 🪲 Bugs and 💡 Feature Requests
|
||||
|
||||
|
||||
@@ -9,13 +9,13 @@
|
||||
"license": "AGPL-3.0-or-later",
|
||||
"require": {
|
||||
"php": "^8.0",
|
||||
"fleetbase/core-api": "^1.5.6",
|
||||
"fleetbase/fleetops-api": "^0.5.7",
|
||||
"fleetbase/registry-bridge": "^0.0.13",
|
||||
"fleetbase/storefront-api": "^0.3.14",
|
||||
"fleetbase/core-api": "^1.5.9",
|
||||
"fleetbase/fleetops-api": "^0.5.8",
|
||||
"fleetbase/registry-bridge": "^0.0.14",
|
||||
"fleetbase/storefront-api": "^0.3.15",
|
||||
"fleetbase/billing-api": "^0.1.2",
|
||||
"fleetbase/internals-api": "^0.0.4",
|
||||
"fleetbase/flespi-integration": "^0.1.12",
|
||||
"fleetbase/flespi-integration": "^0.1.13",
|
||||
"guzzlehttp/guzzle": "^7.0.1",
|
||||
"laravel/framework": "^10.0",
|
||||
"laravel/octane": "^2.3",
|
||||
|
||||
849
api/composer.lock
generated
849
api/composer.lock
generated
File diff suppressed because it is too large
Load Diff
@@ -34,4 +34,9 @@ return [
|
||||
'api_key' => env('SENDGRID_API_KEY'),
|
||||
],
|
||||
|
||||
'stripe' => [
|
||||
'key' => env('STRIPE_KEY', env('STRIPE_API_KEY')),
|
||||
'secret' => env('STRIPE_SECRET', env('STRIPE_API_SECRET')),
|
||||
'webhook_secret' => env('STRIPE_WEBHOOK_SECRET'),
|
||||
],
|
||||
];
|
||||
|
||||
@@ -1,99 +0,0 @@
|
||||
<div class="fleetbase-dashboard-grid flex items-center justify-between mb-4 mt-6 px-14">
|
||||
<div class="left-section">
|
||||
<h1 class="text-lg font-bold">{{this.dashboard.currentDashboard.name}}</h1>
|
||||
</div>
|
||||
<div class="fleetbase-dashboard-actions right-section ml-4 flex items-center">
|
||||
<div class="fleetbase-model-select fleetbase-power-select ember-model-select h-10">
|
||||
|
||||
<DropdownButton
|
||||
class="h-10"
|
||||
@text={{if this.dashboard.currentDashboard.name this.dashboard.currentDashboard.name (t "component.dashboard.select-dashboard")}}
|
||||
@textClass="text-sm mr-2"
|
||||
@buttonClass="flex-row-reverse w-44 justify-between"
|
||||
@icon="caret-down"
|
||||
@iconClass="mr-0i"
|
||||
@size="sm"
|
||||
@iconPrefix="fas"
|
||||
@triggerClass="hidden md:flex"
|
||||
as |dd|
|
||||
>
|
||||
<div class="next-dd-menu mt-1 mx-0" aria-labelledby="user-menu">
|
||||
<div class="p-1">
|
||||
{{#each this.dashboard.dashboards as |dashboard|}}
|
||||
<a href="javascript:;" class="next-dd-item" {{on "click" (dropdown-fn dd this.selectDashboard dashboard)}}>
|
||||
<div class="flex-1 flex flex-row items-center">
|
||||
<div class="w-6">
|
||||
<FaIcon @icon="desktop" />
|
||||
</div>
|
||||
<span>{{dashboard.name}}</span>
|
||||
</div>
|
||||
<div>
|
||||
{{#if (eq this.dashboard.currentDashboard.id dashboard.id)}}
|
||||
<FaIcon @icon="check" class="text-green-500" />
|
||||
{{/if}}
|
||||
</div>
|
||||
</a>
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
</DropdownButton>
|
||||
</div>
|
||||
|
||||
<div class="ml-2 relative h-10">
|
||||
<DropdownButton class="h-10" @icon="ellipsis-h" @size="sm" @iconPrefix="fas" @triggerClass="hidden md:flex" as |dd|>
|
||||
<div class="next-dd-menu mt-1 mx-0" aria-labelledby="user-menu">
|
||||
<div class="p-1">
|
||||
<a href="javascript:;" class="next-dd-item" {{on "click" (dropdown-fn dd this.createDashboard)}}>
|
||||
<div class="w-6">
|
||||
<FaIcon @icon="add" />
|
||||
</div>
|
||||
<span>{{t "component.dashboard.create-new-dashboard"}}</span>
|
||||
</a>
|
||||
|
||||
{{#unless (eq this.dashboard.currentDashboard.user_uuid "system")}}
|
||||
<a href="javascript:;" class="next-dd-item" {{on "click" (dropdown-fn dd this.onChangeEdit true)}}>
|
||||
<div class="w-6">
|
||||
<FaIcon @icon="edit" />
|
||||
</div>
|
||||
<span>{{t "component.dashboard.edit-layout"}}</span>
|
||||
</a>
|
||||
<a href="javascript:;" class="next-dd-item" {{on "click" (dropdown-fn dd this.onAddingWidget true)}}>
|
||||
<div class="w-6">
|
||||
<FaIcon @icon="add" />
|
||||
</div>
|
||||
<span>{{t "component.dashboard.add-widgets"}}</span>
|
||||
</a>
|
||||
|
||||
<a href="javascript:;" class="next-dd-item" {{on "click" (dropdown-fn dd this.deleteDashboard this.dashboard.currentDashboard)}}>
|
||||
<div class="w-6">
|
||||
<FaIcon @icon="trash" />
|
||||
</div>
|
||||
<span>{{t "component.dashboard.delete-dashboard"}}</span>
|
||||
</a>
|
||||
{{/unless}}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</DropdownButton>
|
||||
</div>
|
||||
{{#if this.dashboard.isEditingDashboard}}
|
||||
<div class="ml-2 h-10">
|
||||
<Button @type="magic" @icon="save" @helpText={{t "component.dashboard.save-dashboard"}} @onClick={{fn this.onChangeEdit false}} class="h-10" />
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="px-10">
|
||||
<Dashboard::Create @isEdit={{this.dashboard.isEditingDashboard}} @isAddingWidget={{this.dashboard.isAddingWidget}} @dashboard={{this.dashboard.currentDashboard}} />
|
||||
{{#if this.dashboard.isAddingWidget}}
|
||||
<EmberWormhole @to="console-home-wormhole">
|
||||
<Dashboard::WidgetPanel
|
||||
@isOpen={{this.dashboard.isAddingWidget}}
|
||||
@onLoad={{this.setWidgetSelectorPanelContext}}
|
||||
@dashboard={{this.dashboard.currentDashboard}}
|
||||
@onClose={{fn this.onAddingWidget false}}
|
||||
/>
|
||||
</EmberWormhole>
|
||||
{{/if}}
|
||||
</div>
|
||||
@@ -1,140 +0,0 @@
|
||||
import Component from '@glimmer/component';
|
||||
import { action } from '@ember/object';
|
||||
import { inject as service } from '@ember/service';
|
||||
|
||||
/**
|
||||
* DashboardComponent for managing dashboards in an Ember application.
|
||||
* This component handles actions such as selecting, creating, deleting dashboards,
|
||||
* and managing widget selectors and dashboard editing states.
|
||||
*
|
||||
* @extends Component
|
||||
*/
|
||||
export default class DashboardComponent extends Component {
|
||||
/**
|
||||
* Ember Data store service.
|
||||
* @type {Service}
|
||||
*/
|
||||
@service store;
|
||||
|
||||
/**
|
||||
* Internationalization service for managing translations.
|
||||
* @type {Service}
|
||||
*/
|
||||
@service intl;
|
||||
|
||||
/**
|
||||
* Notifications service for displaying alerts or confirmations.
|
||||
* @type {Service}
|
||||
*/
|
||||
@service notifications;
|
||||
|
||||
/**
|
||||
* Modals manager service for handling modal dialogs.
|
||||
* @type {Service}
|
||||
*/
|
||||
@service modalsManager;
|
||||
|
||||
/**
|
||||
* Fetch service for handling HTTP requests.
|
||||
* @type {Service}
|
||||
*/
|
||||
@service fetch;
|
||||
|
||||
/**
|
||||
* Dashboard service for business logic related to dashboards.
|
||||
* @type {Service}
|
||||
*/
|
||||
@service dashboard;
|
||||
|
||||
/**
|
||||
* Creates an instance of DashboardComponent.
|
||||
* @memberof DashboardComponent
|
||||
*/
|
||||
constructor() {
|
||||
super(...arguments);
|
||||
this.dashboard.loadDashboards.perform();
|
||||
}
|
||||
|
||||
/**
|
||||
* Action to select a dashboard.
|
||||
* @param {Object} dashboard - The dashboard to be selected.
|
||||
*/
|
||||
@action selectDashboard(dashboard) {
|
||||
this.dashboard.selectDashboard.perform(dashboard);
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the context for the widget selector panel.
|
||||
* @param {Object} widgetSelectorContext - The context object for the widget selector.
|
||||
*/
|
||||
@action setWidgetSelectorPanelContext(widgetSelectorContext) {
|
||||
this.widgetSelectorContext = widgetSelectorContext;
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a new dashboard.
|
||||
* @param {Object} dashboard - The dashboard to be created.
|
||||
* @param {Object} [options={}] - Optional parameters for dashboard creation.
|
||||
*/
|
||||
@action createDashboard(dashboard, options = {}) {
|
||||
this.modalsManager.show('modals/create-dashboard', {
|
||||
title: this.intl.t('component.dashboard.create-a-new-dashboard'),
|
||||
acceptButtonText: this.intl.t('component.dashboard.confirm-create-dashboard'),
|
||||
confirm: async (modal, done) => {
|
||||
modal.startLoading();
|
||||
|
||||
// Get the name from the modal options
|
||||
const { name } = modal.getOptions();
|
||||
|
||||
await this.dashboard.createDashboard.perform(name);
|
||||
done();
|
||||
},
|
||||
...options,
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Deletes a dashboard.
|
||||
* @param {Object} dashboard - The dashboard to be deleted.
|
||||
* @param {Object} [options={}] - Optional parameters for dashboard deletion.
|
||||
*/
|
||||
@action deleteDashboard(dashboard, options = {}) {
|
||||
if (this.dashboard.dashboards?.length === 1) {
|
||||
return this.notifications.error(this.intl.t('component.dashboard.you-cannot-delete-this-dashboard'));
|
||||
}
|
||||
|
||||
this.modalsManager.confirm({
|
||||
title: this.intl.t('component.dashboard.are-you-sure-you-want-delete-dashboard', { dashboardName: dashboard.name }),
|
||||
confirm: async (modal, done) => {
|
||||
modal.startLoading();
|
||||
await this.dashboard.deleteDashboard.perform(dashboard);
|
||||
done();
|
||||
},
|
||||
...options,
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Action to handle the addition of a widget.
|
||||
* @param {boolean} [state=true] - The state to set for adding a widget.
|
||||
*/
|
||||
@action onAddingWidget(state = true) {
|
||||
this.dashboard.onAddingWidget(state);
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the current dashboard.
|
||||
* @param {Object} dashboard - The dashboard to be set as current.
|
||||
*/
|
||||
@action setCurrentDashboard(dashboard) {
|
||||
this.dashboard.setCurrentDashboard.perform(dashboard);
|
||||
}
|
||||
|
||||
/**
|
||||
* Changes the editing state of the dashboard.
|
||||
* @param {boolean} [state=true] - The state to set for editing the dashboard.
|
||||
*/
|
||||
@action onChangeEdit(state = true) {
|
||||
this.dashboard.onChangeEdit(state);
|
||||
}
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
<div class="fleetbase-dashboard-grid" ...attributes>
|
||||
<GridStack @options={{this.gridOptions}} @onChange={{this.onChangeGrid}}>
|
||||
{{#each @dashboard.widgets as |widget|}}
|
||||
{{#if (component-resolvable widget.component)}}
|
||||
<GridStackItem id={{widget.id}} @options={{spread-widget-options (hash id=widget.id options=widget.grid_options)}} class="relative">
|
||||
{{component widget.component options=widget.options}}
|
||||
{{#if @isEdit}}
|
||||
<div class="absolute top-2 right-2">
|
||||
<Button @type="default" @icon="trash" @helpText={{"Remove widget from the dashboard"}} @onClick={{fn this.removeWidget widget}} />
|
||||
</div>
|
||||
{{/if}}
|
||||
</GridStackItem>
|
||||
{{/if}}
|
||||
{{/each}}
|
||||
</GridStack>
|
||||
</div>
|
||||
@@ -1,99 +0,0 @@
|
||||
import Component from '@glimmer/component';
|
||||
import { tracked } from '@glimmer/tracking';
|
||||
import { action, computed } from '@ember/object';
|
||||
import { inject as service } from '@ember/service';
|
||||
|
||||
/**
|
||||
* Component responsible for creating and managing the dashboard layout.
|
||||
* Provides functionalities such as toggling widget float, changing grid layout, and removing widgets.
|
||||
*
|
||||
* @extends Component
|
||||
*/
|
||||
export default class DashboardCreateComponent extends Component {
|
||||
/**
|
||||
* Notifications service for displaying alerts or errors.
|
||||
* @type {Service}
|
||||
*/
|
||||
@service notifications;
|
||||
|
||||
/**
|
||||
* Tracked array to keep track of widgets that have been updated.
|
||||
* @type {Array}
|
||||
*/
|
||||
@tracked updatedWidgets = [];
|
||||
|
||||
/**
|
||||
* Action to toggle the floating state of widgets on the grid.
|
||||
*/
|
||||
@action toggleFloat() {
|
||||
this.shouldFloat = !this.shouldFloat;
|
||||
}
|
||||
|
||||
/**
|
||||
* Handles changes to the grid layout, such as repositioning or resizing widgets.
|
||||
* Iterates over each widget event detail and updates the corresponding widget's properties if necessary.
|
||||
*
|
||||
* @param {Event} event - Event containing details about the grid change.
|
||||
* @action
|
||||
*/
|
||||
@action onChangeGrid(event) {
|
||||
const { dashboard } = this.args;
|
||||
|
||||
event.detail.forEach((currentWidgetEvent) => {
|
||||
const alreadyUpdated = this.updatedWidgets.find((item) => item.id === currentWidgetEvent.id);
|
||||
if (alreadyUpdated || !this.dashboard) {
|
||||
return;
|
||||
}
|
||||
|
||||
const changedWidget = dashboard.widgets.find((widget) => widget.id === currentWidgetEvent.id);
|
||||
if (!changedWidget) {
|
||||
return;
|
||||
}
|
||||
|
||||
const { x, y, w, h } = currentWidgetEvent;
|
||||
const response = changedWidget.updateProperties({
|
||||
grid_options: { x, y, w, h },
|
||||
});
|
||||
if (response) {
|
||||
this.updatedWidgets.push(changedWidget);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes a specified widget from the dashboard.
|
||||
* Performs a removal operation on the dashboard and handles any errors that occur during the process.
|
||||
*
|
||||
* @param {Object} widget - The widget object to be removed.
|
||||
* @action
|
||||
*/
|
||||
@action removeWidget(widget) {
|
||||
const { dashboard } = this.args;
|
||||
|
||||
if (dashboard) {
|
||||
dashboard.removeWidget(widget.id).catch((error) => {
|
||||
this.notifications.serverError(error);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Computed property that returns grid options based on the current edit state.
|
||||
* Configures grid behavior such as floating, animation, and drag and resize capabilities.
|
||||
*
|
||||
* @computed
|
||||
* @returns {Object} An object containing grid configuration options.
|
||||
*/
|
||||
@computed('args.isEdit') get gridOptions() {
|
||||
return {
|
||||
float: true,
|
||||
animate: true,
|
||||
acceptWidgets: true,
|
||||
alwaysShowResizeHandle: this.args.isEdit,
|
||||
disableDrag: !this.args.isEdit,
|
||||
disableResize: !this.args.isEdit,
|
||||
resizable: { handles: 'all' },
|
||||
cellHeight: 30,
|
||||
};
|
||||
}
|
||||
}
|
||||
@@ -4,25 +4,8 @@ import { tracked } from '@glimmer/tracking';
|
||||
import { task } from 'ember-concurrency';
|
||||
|
||||
export default class AuthForgotPasswordController extends Controller {
|
||||
/**
|
||||
* Inject the `fetch` service
|
||||
*
|
||||
* @memberof AuthForgotPasswordController
|
||||
*/
|
||||
@service fetch;
|
||||
|
||||
/**
|
||||
* Inject the `notifications` service
|
||||
*
|
||||
* @memberof AuthForgotPasswordController
|
||||
*/
|
||||
@service notifications;
|
||||
|
||||
/**
|
||||
* Inject the `intl` service
|
||||
*
|
||||
* @memberof AuthForgotPasswordController
|
||||
*/
|
||||
@service intl;
|
||||
|
||||
/**
|
||||
|
||||
@@ -5,53 +5,12 @@ import { action } from '@ember/object';
|
||||
import pathToRoute from '@fleetbase/ember-core/utils/path-to-route';
|
||||
|
||||
export default class AuthLoginController extends Controller {
|
||||
/**
|
||||
* Inject the `forgotPassword` controller
|
||||
*
|
||||
* @var {Controller}
|
||||
*/
|
||||
@controller('auth.forgot-password') forgotPasswordController;
|
||||
|
||||
/**
|
||||
* Inject the `notifications` service
|
||||
*
|
||||
* @var {Service}
|
||||
*/
|
||||
@service notifications;
|
||||
|
||||
/**
|
||||
* Inject the `urlSearchParams` service
|
||||
*
|
||||
* @var {Service}
|
||||
*/
|
||||
@service urlSearchParams;
|
||||
|
||||
/**
|
||||
* Inject the `session` service
|
||||
*
|
||||
* @var {Service}
|
||||
*/
|
||||
@service session;
|
||||
|
||||
/**
|
||||
* Inject the `router` service
|
||||
*
|
||||
* @var {Service}
|
||||
*/
|
||||
@service router;
|
||||
|
||||
/**
|
||||
* Inject the `intl` service
|
||||
*
|
||||
* @var {Service}
|
||||
*/
|
||||
@service intl;
|
||||
|
||||
/**
|
||||
* Inject the `fetch` service
|
||||
*
|
||||
* @var {Service}
|
||||
*/
|
||||
@service fetch;
|
||||
|
||||
/**
|
||||
@@ -110,8 +69,20 @@ export default class AuthLoginController extends Controller {
|
||||
*/
|
||||
@tracked failedAttempts = 0;
|
||||
|
||||
/**
|
||||
* Authentication token.
|
||||
*
|
||||
* @memberof AuthLoginController
|
||||
*/
|
||||
@tracked token;
|
||||
|
||||
/**
|
||||
* Action to login user.
|
||||
*
|
||||
* @param {Event} event
|
||||
* @return {void}
|
||||
* @memberof AuthLoginController
|
||||
*/
|
||||
@action async login(event) {
|
||||
// firefox patch
|
||||
event.preventDefault();
|
||||
|
||||
@@ -155,9 +155,9 @@ export default class ConsoleController extends Controller {
|
||||
*
|
||||
* @void
|
||||
*/
|
||||
@action invalidateSession(noop, event) {
|
||||
@action async invalidateSession(noop, event) {
|
||||
event.preventDefault();
|
||||
this.session.invalidateWithLoader();
|
||||
await this.session.invalidateWithLoader();
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -12,32 +12,9 @@ import getTwoFaMethods from '@fleetbase/console/utils/get-two-fa-methods';
|
||||
* @extends Controller
|
||||
*/
|
||||
export default class ConsoleAccountAuthController extends Controller {
|
||||
/**
|
||||
* Service for handling data fetching.
|
||||
*
|
||||
* @type {fetch}
|
||||
*/
|
||||
@service fetch;
|
||||
|
||||
/**
|
||||
* Service for displaying notifications.
|
||||
*
|
||||
* @type {notifications}
|
||||
*/
|
||||
@service notifications;
|
||||
|
||||
/**
|
||||
* Service for managing application routing.
|
||||
*
|
||||
* @type {router}
|
||||
*/
|
||||
@service router;
|
||||
|
||||
/**
|
||||
* Service for managing modals.
|
||||
*
|
||||
* @type {router}
|
||||
*/
|
||||
@service modalsManager;
|
||||
|
||||
/**
|
||||
@@ -187,14 +164,12 @@ export default class ConsoleAccountAuthController extends Controller {
|
||||
* @param {Object} twoFaSettings - User-specific two-factor authentication settings.
|
||||
*/
|
||||
@task *saveUserTwoFaSettings(twoFaSettings = {}) {
|
||||
yield this.fetch
|
||||
.post('users/two-fa', { twoFaSettings })
|
||||
.then(() => {
|
||||
this.notifications.success('2FA Settings saved successfully.');
|
||||
})
|
||||
.catch((error) => {
|
||||
this.notifications.serverError(error);
|
||||
});
|
||||
try {
|
||||
yield this.fetch.post('users/two-fa', { twoFaSettings });
|
||||
this.notifications.success('2FA Settings saved successfully.');
|
||||
} catch (error) {
|
||||
this.notifications.serverError(error);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -203,13 +178,17 @@ export default class ConsoleAccountAuthController extends Controller {
|
||||
* @method loadUserTwoFaSettings
|
||||
*/
|
||||
@task *loadUserTwoFaSettings() {
|
||||
const twoFaSettings = yield this.fetch.get('users/two-fa');
|
||||
try {
|
||||
const twoFaSettings = yield this.fetch.get('users/two-fa');
|
||||
if (twoFaSettings) {
|
||||
this.isUserTwoFaEnabled = twoFaSettings.enabled;
|
||||
this.twoFaSettings = twoFaSettings;
|
||||
}
|
||||
|
||||
if (twoFaSettings) {
|
||||
this.isUserTwoFaEnabled = twoFaSettings.enabled;
|
||||
this.twoFaSettings = twoFaSettings;
|
||||
return twoFaSettings;
|
||||
} catch (error) {
|
||||
this.notifications.serverError(error);
|
||||
}
|
||||
return twoFaSettings;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -218,12 +197,16 @@ export default class ConsoleAccountAuthController extends Controller {
|
||||
* @method loadSystemTwoFaConfig
|
||||
*/
|
||||
@task *loadSystemTwoFaConfig() {
|
||||
const twoFaConfig = yield this.fetch.get('two-fa/config');
|
||||
try {
|
||||
const twoFaConfig = yield this.fetch.get('two-fa/config');
|
||||
if (twoFaConfig) {
|
||||
this.isSystemTwoFaEnabled = twoFaConfig.enabled;
|
||||
this.twoFaConfig = twoFaConfig;
|
||||
}
|
||||
|
||||
if (twoFaConfig) {
|
||||
this.isSystemTwoFaEnabled = twoFaConfig.enabled;
|
||||
this.twoFaConfig = twoFaConfig;
|
||||
return twoFaConfig;
|
||||
} catch (error) {
|
||||
this.notifications.serverError(error);
|
||||
}
|
||||
return twoFaConfig;
|
||||
}
|
||||
}
|
||||
|
||||
7
console/app/controllers/console/account/virtual.js
Normal file
7
console/app/controllers/console/account/virtual.js
Normal file
@@ -0,0 +1,7 @@
|
||||
import Controller from '@ember/controller';
|
||||
import { tracked } from '@glimmer/tracking';
|
||||
|
||||
export default class ConsoleAccountVirtualController extends Controller {
|
||||
@tracked view;
|
||||
queryParams = ['view'];
|
||||
}
|
||||
7
console/app/controllers/console/admin/virtual.js
Normal file
7
console/app/controllers/console/admin/virtual.js
Normal file
@@ -0,0 +1,7 @@
|
||||
import Controller from '@ember/controller';
|
||||
import { tracked } from '@glimmer/tracking';
|
||||
|
||||
export default class ConsoleAdminVirtualController extends Controller {
|
||||
@tracked view;
|
||||
queryParams = ['view'];
|
||||
}
|
||||
@@ -1,3 +1,26 @@
|
||||
import Controller from '@ember/controller';
|
||||
|
||||
export default class ConsoleHomeController extends Controller {}
|
||||
export default class ConsoleHomeController extends Controller {
|
||||
rows = [
|
||||
{
|
||||
name: 'Jason',
|
||||
age: 24,
|
||||
vehicle: 'Honda',
|
||||
},
|
||||
];
|
||||
|
||||
columns = [
|
||||
{
|
||||
label: 'Name',
|
||||
valuePath: 'name',
|
||||
},
|
||||
{
|
||||
label: 'Age',
|
||||
valuePath: 'age',
|
||||
},
|
||||
{
|
||||
label: 'Vehicle',
|
||||
valuePath: 'vehicle',
|
||||
},
|
||||
];
|
||||
}
|
||||
|
||||
7
console/app/controllers/console/settings/virtual.js
Normal file
7
console/app/controllers/console/settings/virtual.js
Normal file
@@ -0,0 +1,7 @@
|
||||
import Controller from '@ember/controller';
|
||||
import { tracked } from '@glimmer/tracking';
|
||||
|
||||
export default class ConsoleSettingsVirtualController extends Controller {
|
||||
@tracked view;
|
||||
queryParams = ['view'];
|
||||
}
|
||||
7
console/app/controllers/console/virtual.js
Normal file
7
console/app/controllers/console/virtual.js
Normal file
@@ -0,0 +1,7 @@
|
||||
import Controller from '@ember/controller';
|
||||
import { tracked } from '@glimmer/tracking';
|
||||
|
||||
export default class ConsoleVirtualController extends Controller {
|
||||
@tracked view;
|
||||
queryParams = ['view'];
|
||||
}
|
||||
@@ -1,7 +0,0 @@
|
||||
import { helper } from '@ember/component/helper';
|
||||
|
||||
export default helper(function spreadWidgetOptions([params]) {
|
||||
const { id, options } = params;
|
||||
const gridOptions = { id, ...options };
|
||||
return gridOptions;
|
||||
});
|
||||
@@ -1,7 +1,7 @@
|
||||
export function initialize(owner) {
|
||||
const universe = owner.lookup('service:universe');
|
||||
if (universe) {
|
||||
universe.createRegistry('@fleetbase/console');
|
||||
universe.createRegistries(['@fleetbase/console', 'auth:login']);
|
||||
universe.bootEngines(owner);
|
||||
}
|
||||
}
|
||||
|
||||
18
console/app/instance-initializers/load-leaflet.js
Normal file
18
console/app/instance-initializers/load-leaflet.js
Normal file
@@ -0,0 +1,18 @@
|
||||
export function initialize(owner) {
|
||||
const leafletService = owner.lookup('service:leaflet');
|
||||
if (leafletService) {
|
||||
leafletService.load({
|
||||
onReady: function (L) {
|
||||
// This will prevent the awkward scroll bug produced by Chrome browsers
|
||||
// https://github.com/Leaflet/Leaflet/issues/4125#issuecomment-356289643
|
||||
L.Control.include({
|
||||
_refocusOnMap: L.Util.falseFn,
|
||||
});
|
||||
},
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
export default {
|
||||
initialize,
|
||||
};
|
||||
@@ -83,4 +83,14 @@ export default class DashboardModel extends Model {
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
getRegistry() {
|
||||
const owner = getOwner(this);
|
||||
const universe = owner.lookup('service:universe');
|
||||
if (universe) {
|
||||
return universe.getDashboardRegistry(this.id);
|
||||
}
|
||||
|
||||
return undefined;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,9 +23,11 @@ export default class UserModel extends Model {
|
||||
@attr('string') country;
|
||||
@attr('string') ip_address;
|
||||
@attr('string') slug;
|
||||
@attr('string') role_name;
|
||||
@attr('string') type;
|
||||
@attr('string') session_status;
|
||||
@attr('string') status;
|
||||
@attr('string') locale;
|
||||
@attr('boolean') is_online;
|
||||
@attr('boolean') is_admin;
|
||||
@attr('raw') meta;
|
||||
|
||||
@@ -11,7 +11,9 @@ export default class ApplicationRoute extends Route {
|
||||
@service urlSearchParams;
|
||||
@service modalsManager;
|
||||
@service intl;
|
||||
@service currentUser;
|
||||
@service router;
|
||||
@service universe;
|
||||
@tracked defaultTheme;
|
||||
|
||||
/**
|
||||
@@ -45,11 +47,10 @@ export default class ApplicationRoute extends Route {
|
||||
*/
|
||||
async beforeModel() {
|
||||
await this.session.setup();
|
||||
await this.universe.booting();
|
||||
|
||||
const { isAuthenticated } = this.session;
|
||||
const shift = this.urlSearchParams.get('shift');
|
||||
|
||||
if (isAuthenticated && shift) {
|
||||
if (this.session.isAuthenticated && shift) {
|
||||
return this.router.transitionTo(pathToRoute(shift));
|
||||
}
|
||||
}
|
||||
@@ -61,6 +62,19 @@ export default class ApplicationRoute extends Route {
|
||||
* @void
|
||||
*/
|
||||
activate() {
|
||||
this.initializeTheme();
|
||||
this.initializeLocale();
|
||||
}
|
||||
|
||||
/**
|
||||
* Initializes the application's theme settings, applying necessary class names and default theme configurations.
|
||||
*
|
||||
* This method prepares the theme by setting up an array of class names that should be applied to the
|
||||
* application's body element. If the application is running inside an Electron environment, it adds the
|
||||
* `'is-electron'` class to the array. It then calls the `initialize` method of the `theme` service,
|
||||
* passing in the `bodyClassNames` array and the `defaultTheme` configuration.
|
||||
*/
|
||||
initializeTheme() {
|
||||
const bodyClassNames = [];
|
||||
|
||||
if (isElectron()) {
|
||||
@@ -68,7 +82,18 @@ export default class ApplicationRoute extends Route {
|
||||
}
|
||||
|
||||
this.theme.initialize({ bodyClassNames, theme: this.defaultTheme });
|
||||
this.intl.setLocale(['en-us']);
|
||||
}
|
||||
|
||||
/**
|
||||
* Initializes the application's locale settings based on the current user's preferences.
|
||||
*
|
||||
* This method retrieves the user's preferred locale using the `getOption` method from the `currentUser` service.
|
||||
* If no locale is set by the user, it defaults to `'en-us'`. It then sets the application's locale by calling
|
||||
* the `setLocale` method of the `intl` service with the retrieved locale.
|
||||
*/
|
||||
initializeLocale() {
|
||||
const locale = this.currentUser.getOption('locale', 'en-us');
|
||||
this.intl.setLocale([locale]);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -3,6 +3,7 @@ import { inject as service } from '@ember/service';
|
||||
|
||||
export default class AuthLoginRoute extends Route {
|
||||
@service session;
|
||||
@service universe;
|
||||
|
||||
/**
|
||||
* If user is authentication redirect to console.
|
||||
@@ -10,7 +11,8 @@ export default class AuthLoginRoute extends Route {
|
||||
* @memberof AuthLoginRoute
|
||||
* @void
|
||||
*/
|
||||
beforeModel() {
|
||||
beforeModel(transition) {
|
||||
this.session.prohibitAuthentication('console');
|
||||
return this.universe.virtualRouteRedirect(transition, 'auth:login', 'virtual', { restoreQueryParams: true });
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,11 +1,14 @@
|
||||
import Route from '@ember/routing/route';
|
||||
import { inject as service } from '@ember/service';
|
||||
import { action } from '@ember/object';
|
||||
import '@fleetbase/leaflet-routing-machine';
|
||||
|
||||
export default class ConsoleRoute extends Route {
|
||||
@service store;
|
||||
@service session;
|
||||
@service universe;
|
||||
@service router;
|
||||
@service currentUser;
|
||||
@service intl;
|
||||
|
||||
/**
|
||||
* Require authentication to access all `console` routes.
|
||||
@@ -14,10 +17,14 @@ export default class ConsoleRoute extends Route {
|
||||
* @return {Promise}
|
||||
* @memberof ConsoleRoute
|
||||
*/
|
||||
@action async beforeModel(transition) {
|
||||
this.session.requireAuthentication(transition, 'auth.login');
|
||||
async beforeModel(transition) {
|
||||
await this.session.requireAuthentication(transition, 'auth.login');
|
||||
|
||||
return this.session.promiseCurrentUser(transition);
|
||||
this.universe.callHooks('console:before-model', this.session, this.router, transition);
|
||||
|
||||
if (this.session.isAuthenticated) {
|
||||
return this.session.promiseCurrentUser(transition);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -4,7 +4,14 @@ import { inject as service } from '@ember/service';
|
||||
export default class ConsoleAccountVirtualRoute extends Route {
|
||||
@service universe;
|
||||
|
||||
model({ slug, view }) {
|
||||
return this.universe.lookupMenuItemFromRegistry('account', slug, view);
|
||||
queryParams = {
|
||||
view: {
|
||||
refreshModel: true,
|
||||
},
|
||||
};
|
||||
|
||||
model({ slug }, transition) {
|
||||
const view = this.universe.getViewFromTransition(transition);
|
||||
return this.universe.lookupMenuItemFromRegistry('console:account', slug, view);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,7 +4,14 @@ import { inject as service } from '@ember/service';
|
||||
export default class ConsoleAdminVirtualRoute extends Route {
|
||||
@service universe;
|
||||
|
||||
model({ slug, view }) {
|
||||
return this.universe.lookupMenuItemFromRegistry('admin', slug, view);
|
||||
queryParams = {
|
||||
view: {
|
||||
refreshModel: true,
|
||||
},
|
||||
};
|
||||
|
||||
model({ slug }, transition) {
|
||||
const view = this.universe.getViewFromTransition(transition);
|
||||
return this.universe.lookupMenuItemFromRegistry('console:admin', slug, view);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,7 +4,14 @@ import { inject as service } from '@ember/service';
|
||||
export default class ConsoleSettingsVirtualRoute extends Route {
|
||||
@service universe;
|
||||
|
||||
model({ slug, view }) {
|
||||
return this.universe.lookupMenuItemFromRegistry('settings', slug, view);
|
||||
queryParams = {
|
||||
view: {
|
||||
refreshModel: true,
|
||||
},
|
||||
};
|
||||
|
||||
model({ slug }, transition) {
|
||||
const view = this.universe.getViewFromTransition(transition);
|
||||
return this.universe.lookupMenuItemFromRegistry('console:settings', slug, view);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,7 +4,14 @@ import { inject as service } from '@ember/service';
|
||||
export default class ConsoleVirtualRoute extends Route {
|
||||
@service universe;
|
||||
|
||||
model({ slug, view }) {
|
||||
queryParams = {
|
||||
view: {
|
||||
refreshModel: true,
|
||||
},
|
||||
};
|
||||
|
||||
model({ slug }, transition) {
|
||||
const view = this.universe.getViewFromTransition(transition);
|
||||
return this.universe.lookupMenuItemFromRegistry('console', slug, view);
|
||||
}
|
||||
}
|
||||
|
||||
17
console/app/routes/virtual.js
Normal file
17
console/app/routes/virtual.js
Normal file
@@ -0,0 +1,17 @@
|
||||
import Route from '@ember/routing/route';
|
||||
import { inject as service } from '@ember/service';
|
||||
|
||||
export default class VirtualRoute extends Route {
|
||||
@service universe;
|
||||
|
||||
queryParams = {
|
||||
view: {
|
||||
refreshModel: true,
|
||||
},
|
||||
};
|
||||
|
||||
model({ slug }, transition) {
|
||||
const view = this.universe.getViewFromTransition(transition);
|
||||
return this.universe.lookupMenuItemFromRegistry('auth:login', slug, view);
|
||||
}
|
||||
}
|
||||
@@ -27,6 +27,14 @@ export default class UserSerializer extends ApplicationSerializer.extend(Embedde
|
||||
|
||||
// delete the password always
|
||||
delete json.password;
|
||||
// delete verification attributes
|
||||
delete json.email_verified_at;
|
||||
delete json.phone_verified_at;
|
||||
|
||||
// delete server managed dates
|
||||
delete json.deleted_at;
|
||||
delete json.created_at;
|
||||
delete json.updated_at;
|
||||
|
||||
return json;
|
||||
}
|
||||
|
||||
@@ -1,255 +0,0 @@
|
||||
import Service from '@ember/service';
|
||||
import { inject as service } from '@ember/service';
|
||||
import { tracked } from '@glimmer/tracking';
|
||||
import { task } from 'ember-concurrency-decorators';
|
||||
import { action } from '@ember/object';
|
||||
import { isArray } from '@ember/array';
|
||||
|
||||
/**
|
||||
* Service for managing dashboards, including loading, creating, and deleting dashboards, as well as managing the current dashboard and widget states.
|
||||
* Utilizes Ember services such as `store`, `fetch`, `notifications`, and `universe` for data management and user interaction.
|
||||
*
|
||||
* @extends Service
|
||||
*/
|
||||
export default class DashboardService extends Service {
|
||||
/**
|
||||
* Ember Data store service for managing model data.
|
||||
* @type {Service}
|
||||
*/
|
||||
@service store;
|
||||
|
||||
/**
|
||||
* Fetch service for making network requests.
|
||||
* @type {Service}
|
||||
*/
|
||||
@service fetch;
|
||||
|
||||
/**
|
||||
* Notifications service for displaying user notifications.
|
||||
* @type {Service}
|
||||
*/
|
||||
@service notifications;
|
||||
|
||||
/**
|
||||
* Universe service for accessing global application state or utility methods.
|
||||
* @type {Service}
|
||||
*/
|
||||
@service universe;
|
||||
|
||||
/**
|
||||
* Internationalization service.
|
||||
* @type {Service}
|
||||
*/
|
||||
@service intl;
|
||||
|
||||
/**
|
||||
* Tracked array of available dashboards.
|
||||
* @type {Array}
|
||||
*/
|
||||
@tracked dashboards = [];
|
||||
|
||||
/**
|
||||
* Tracked property representing the currently selected dashboard.
|
||||
* @type {Object}
|
||||
*/
|
||||
@tracked currentDashboard;
|
||||
|
||||
/**
|
||||
* Tracked boolean indicating if the dashboard is in editing mode.
|
||||
* @type {boolean}
|
||||
*/
|
||||
@tracked isEditingDashboard = false;
|
||||
|
||||
/**
|
||||
* Tracked boolean indicating if a widget is being added.
|
||||
* @type {boolean}
|
||||
*/
|
||||
@tracked isAddingWidget = false;
|
||||
|
||||
/**
|
||||
* Task for loading dashboards from the store. It sets the current dashboard and checks if adding widget is necessary.
|
||||
*/
|
||||
@task *loadDashboards() {
|
||||
const dashboards = yield this.store.findAll('dashboard');
|
||||
|
||||
if (isArray(dashboards)) {
|
||||
this.dashboards = dashboards.toArray();
|
||||
|
||||
// insert default dashboard if it's not loaded
|
||||
const defaultDashboard = this._createDefaultDashboard();
|
||||
if (this._isDefaultDashboardNotLoaded()) {
|
||||
this.dashboards.unshiftObject(defaultDashboard);
|
||||
}
|
||||
|
||||
// Set the current dashboard
|
||||
this.currentDashboard = this._getNextDashboard();
|
||||
if (this.currentDashboard && this.currentDashboard.widgets.length === 0) {
|
||||
this.onAddingWidget(true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Task for selecting a dashboard. Handles dashboard switching and updates the current dashboard.
|
||||
* @param {Object} dashboard - The dashboard object to select.
|
||||
*/
|
||||
@task *selectDashboard(dashboard) {
|
||||
if (dashboard.user_uuid === 'system') {
|
||||
this.currentDashboard = dashboard;
|
||||
yield this.fetch.post('dashboards/reset-default');
|
||||
return;
|
||||
}
|
||||
|
||||
const currentDashboard = yield this.fetch.post('dashboards/switch', { dashboard_uuid: dashboard.id }, { normalizeToEmberData: true }).catch((error) => {
|
||||
this.notifications.serverError(error);
|
||||
});
|
||||
|
||||
if (currentDashboard) {
|
||||
this.currentDashboard = currentDashboard;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Task for creating a new dashboard. It handles dashboard creation, success notification, and dashboard selection.
|
||||
* @param {string} name - Name of the new dashboard.
|
||||
*/
|
||||
@task *createDashboard(name) {
|
||||
const dashboardRecord = this.store.createRecord('dashboard', { name, is_default: true });
|
||||
const dashboard = yield dashboardRecord.save().catch((error) => {
|
||||
this.notifications.serverError(error);
|
||||
});
|
||||
|
||||
if (dashboard) {
|
||||
this.notifications.success(this.intl.t('services.dashboard-service.create-dashboard-success-notification', { dashboardName: dashboard.name }));
|
||||
this.selectDashboard.perform(dashboard);
|
||||
this.dashboards.pushObject(dashboard);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Task for deleting a dashboard. Handles dashboard deletion and success notification.
|
||||
* @param {Object} dashboard - The dashboard object to delete.
|
||||
* @param {Object} [options={}] - Optional configuration options.
|
||||
*/
|
||||
@task *deleteDashboard(dashboard, options = {}) {
|
||||
yield dashboard.destroyRecord().catch((error) => {
|
||||
this.notification.serverError(error);
|
||||
|
||||
if (typeof options.onError === 'function') {
|
||||
options.onError(error, dashboard);
|
||||
}
|
||||
});
|
||||
|
||||
this.notifications.success(this.intl.t('services.dashboard-service.delete-dashboard-success-notification', { dashboardName: dashboard.name }));
|
||||
yield this.loadDashboards.perform();
|
||||
yield this.selectDashboard.perform(this._getNextDashboard());
|
||||
|
||||
if (typeof options.callback === 'function') {
|
||||
options.callback(this.currentDashboard);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Task for setting the current dashboard.
|
||||
* @param {Object} dashboard - The dashboard object to set as current.
|
||||
*/
|
||||
@task *setCurrentDashboard(dashboard) {
|
||||
const currentDashboard = yield this.fetch.post('dashboards/switch', { dashboard_uuid: dashboard.id }, { normalizeToEmberData: true }).catch((error) => {
|
||||
this.notifications.serverError(error);
|
||||
});
|
||||
|
||||
if (currentDashboard) {
|
||||
this.currentDashboard = currentDashboard;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Action to toggle dashboard editing state.
|
||||
* @param {boolean} [state=true] - State to set for editing.
|
||||
*/
|
||||
@action onChangeEdit(state = true) {
|
||||
this.isEditingDashboard = state;
|
||||
}
|
||||
|
||||
/**
|
||||
* Action to toggle the state of adding a widget.
|
||||
* @param {boolean} [state=true] - State to set for adding a widget.
|
||||
*/
|
||||
@action onAddingWidget(state = true) {
|
||||
this.isAddingWidget = state;
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a default dashboard with predefined widgets.
|
||||
* @private
|
||||
* @returns {Object} The default dashboard object.
|
||||
*/
|
||||
_createDefaultDashboard() {
|
||||
let defaultDashboard;
|
||||
|
||||
// check store for default dashboard
|
||||
const loadedDashboars = this.store.peekAll('dashboard');
|
||||
|
||||
// check for default dashboard loaded in store
|
||||
defaultDashboard = loadedDashboars.find((dashboard) => dashboard.id === 'system');
|
||||
if (defaultDashboard) {
|
||||
return defaultDashboard;
|
||||
}
|
||||
|
||||
// create new default dashboard
|
||||
defaultDashboard = this.store.createRecord('dashboard', {
|
||||
id: 'system',
|
||||
uuid: 'system',
|
||||
name: 'Default Dashboard',
|
||||
is_default: false,
|
||||
user_uuid: 'system',
|
||||
widgets: this._createDefaultDashboardWidgets(),
|
||||
});
|
||||
|
||||
return defaultDashboard;
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates default widgets for the default dashboard.
|
||||
* @private
|
||||
* @returns {Array} An array of default dashboard widgets.
|
||||
*/
|
||||
_createDefaultDashboardWidgets() {
|
||||
const widgets = this.universe.getDefaultDashboardWidgets().map((defaultWidget) => {
|
||||
return this.store.createRecord('dashboard-widget', defaultWidget);
|
||||
});
|
||||
|
||||
return widgets;
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks if default dashboard is already loaded.
|
||||
* @private
|
||||
* @return {Boolean}
|
||||
* @memberof DashboardService
|
||||
*/
|
||||
_isDefaultDashboardLoaded() {
|
||||
const defaultDashboard = this._createDefaultDashboard();
|
||||
return this.dashboards.some((dashboard) => dashboard.id === defaultDashboard.id);
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks if default dashboard is not already loaded.
|
||||
* @private
|
||||
* @return {Boolean}
|
||||
* @memberof DashboardService
|
||||
*/
|
||||
_isDefaultDashboardNotLoaded() {
|
||||
return !this._isDefaultDashboardLoaded();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the current dasbhoard or next available dashboard.
|
||||
*
|
||||
* @return {DashboardModel}
|
||||
* @memberof DashboardService
|
||||
*/
|
||||
_getNextDashboard() {
|
||||
return this.dashboards.find((dashboard) => dashboard.is_default) || this.dashboards[0];
|
||||
}
|
||||
}
|
||||
@@ -13,16 +13,6 @@ body[data-theme='dark'] .two-fa-enforcement-alert button#two-fa-setup-button.btn
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
.app-version-in-nav {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
|
||||
font-size: 0.8rem;
|
||||
line-height: 1rem;
|
||||
padding-left: 1rem;
|
||||
padding-top: 0.2rem;
|
||||
}
|
||||
|
||||
.fleetbase-pagination-meta-info-wrapper.within-layout-section-header {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
{{page-title (t "app.name")}}
|
||||
<ModalsContainer />
|
||||
<NotificationContainer @position="top" @zindex="99999" />
|
||||
<div id="application-root-wormhole"></div>
|
||||
{{outlet}}
|
||||
@@ -28,7 +28,7 @@
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<form class="space-y-6" {{on "submit" this.sendSecureLink}}>
|
||||
<form class="space-y-6" {{on "submit" (perform this.sendSecureLink)}}>
|
||||
<div>
|
||||
<label for="email" class="block text-sm font-medium text-gray-700 dark:text-gray-50">
|
||||
{{t "auth.forgot-password.form.email-label"}}
|
||||
|
||||
@@ -8,16 +8,24 @@
|
||||
</div>
|
||||
|
||||
{{#if (gte this.failedAttempts 3)}}
|
||||
<div class="px-3 py-2 my-6 rounded-md shadow-sm bg-yellow-200">
|
||||
<div class="flex mb-5">
|
||||
<div>
|
||||
<FaIcon @icon="exclamation-triangle" @size="lg" class="text-yellow-900 mr-4" />
|
||||
<div class="flex flex-col flex-grow-0 flex-shrink-0 text-sm bg-yellow-800 border border-yellow-600 px-2 py-2 rounded-md text-yellow-100 my-4 transition-all">
|
||||
<div class="flex flex-row items-start mb-2">
|
||||
<div class="w-8 flex-grow-0 flex-shrink-0">
|
||||
<FaIcon @icon="triangle-exclamation" @size="xl" class="pt-1" />
|
||||
</div>
|
||||
<div class="flex-1">
|
||||
<p class="flex-1 text-sm text-yellow-100">
|
||||
{{t "auth.login.failed-attempt.message" htmlSafe=true}}
|
||||
</p>
|
||||
</div>
|
||||
<p class="flex-1 text-sm text-yellow-900 dark:yellow-red-900">
|
||||
{{t "auth.login.failed-attempt.message" htmlSafe=true}}
|
||||
</p>
|
||||
</div>
|
||||
<Button @text={{t "auth.login.failed-attempt.button-text"}} @type="warning" @onClick={{this.forgotPassword}} />
|
||||
<Button
|
||||
@text={{t "auth.login.failed-attempt.button-text"}}
|
||||
@type="link"
|
||||
class="text-yellow-100"
|
||||
@wrapperClass="px-4 py-2 bg-gray-900 bg-opacity-25 hover:opacity-50"
|
||||
@onClick={{this.forgotPassword}}
|
||||
/>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
@@ -65,18 +73,34 @@
|
||||
href="javascript:;"
|
||||
{{on "click" this.forgotPassword}}
|
||||
disabled={{this.isLoading}}
|
||||
class="font-medium transition duration-150 ease-in-out text-sky-600 hover:text-sky-500 focus:outline-none focus:underline"
|
||||
class="font-medium transition duration-150 ease-in-out text-sky-500 hover:text-sky-400 focus:outline-none focus:underline"
|
||||
>
|
||||
{{t "auth.login.form.forgot-password-label"}}
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="mt-6">
|
||||
<Button @buttonType="submit" @type="primary" @text={{t "auth.login.form.sign-in-button"}} @icon="lock" @wrapperClass="btn-block" @isLoading={{this.isLoading}} @onClick={{this.login}} />
|
||||
</div>
|
||||
|
||||
<div class="mt-3">
|
||||
<Button @text={{t "auth.login.form.create-account-button"}} @wrapperClass="btn-block" @disabled={{this.isLoading}} @onClick={{fn (transition-to "onboard")}} />
|
||||
<div class="mt-6 space-y-4">
|
||||
<Button
|
||||
@buttonType="submit"
|
||||
@type="primary"
|
||||
@text={{t "auth.login.form.sign-in-button"}}
|
||||
@icon="lock"
|
||||
@wrapperClass="btn-block"
|
||||
@isLoading={{this.isLoading}}
|
||||
@onClick={{this.login}}
|
||||
/>
|
||||
<Button @text={{t "auth.login.form.create-account-button"}} @icon="briefcase" @wrapperClass="btn-block" @disabled={{this.isLoading}} @onClick={{fn (transition-to "onboard")}} />
|
||||
<RegistryYield @type="menu" @registry="auth:login" as |menuItem|>
|
||||
<Button
|
||||
@text={{menuItem.title}}
|
||||
@icon={{menuItem.icon}}
|
||||
@type={{menuItem.type}}
|
||||
@wrapperClass={{menuItem.wrapperClass}}
|
||||
@disabled={{this.isLoading}}
|
||||
@onClick={{menuItem.onClick}}
|
||||
@permission={{menuItem.permission}}
|
||||
/>
|
||||
</RegistryYield>
|
||||
</div>
|
||||
</form>
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
<div class="bg-white dark:bg-gray-800 py-8 px-4 shadow rounded-lg w-full">
|
||||
<div class="mb-8">
|
||||
<img class="mx-auto h-12 w-auto " src="/images/fleetbase-logo-svg.svg" alt={{t "app.name"}}>
|
||||
<img class="mx-auto h-12 w-auto" src="/images/fleetbase-logo-svg.svg" alt={{t "app.name"}} />
|
||||
<h2 class="mt-6 text-center text-lg font-extrabold text-gray-900 dark:text-white truncate">
|
||||
{{t "auth.verification.title"}}
|
||||
</h2>
|
||||
@@ -13,34 +13,66 @@
|
||||
<FaIcon @icon="shield-check" @size="lg" class="text-blue-900 mr-4" />
|
||||
</div>
|
||||
<p class="flex-1 text-sm text-blue-900 dark:text-blue-900">
|
||||
{{t "auth.verification.message-text" htmlSafe=true}}
|
||||
{{t "auth.verification.message-text" htmlSafe=true}}
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<form class="mt-8 space-y-6" {{on "submit" this.verifyCode}}>
|
||||
<InputGroup @type="tel" @name={{t "auth.verification.verification-input-label"}} @value={{this.code}} @helpText={{t "auth.verification.verification-code-text"}} @inputClass="input-lg" {{on "input" this.validateInput}} {{did-insert this.validateInitInput}} />
|
||||
<InputGroup
|
||||
@type="tel"
|
||||
@name={{t "auth.verification.verification-input-label"}}
|
||||
@value={{this.code}}
|
||||
@helpText={{t "auth.verification.verification-code-text"}}
|
||||
@inputClass="input-lg"
|
||||
{{on "input" this.validateInput}}
|
||||
{{did-insert this.validateInitInput}}
|
||||
/>
|
||||
|
||||
<div class="flex flex-row items-center space-x-4">
|
||||
<Button @icon="check" @iconPrefix="fas" @buttonType="submit" @type="primary" @size="lg" @text="Verify & Continue" @isLoading={{this.isLoading}} @disabled={{this.isNotReadyToSubmit}} @onClick={{this.verifyCode}} />
|
||||
<a href="#" {{on "click" this.onDidntReceiveCode}} class="text-sm text-blue-400 hover:text-blue-300">{{t "auth.verification.didnt-receive-a-code"}}</a>
|
||||
<Button
|
||||
@icon="check"
|
||||
@iconPrefix="fas"
|
||||
@buttonType="submit"
|
||||
@type="primary"
|
||||
@size="lg"
|
||||
@text="Verify & Continue"
|
||||
@isLoading={{this.isLoading}}
|
||||
@disabled={{this.isNotReadyToSubmit}}
|
||||
@onClick={{this.verifyCode}}
|
||||
/>
|
||||
<a href="javascript:;" {{on "click" this.onDidntReceiveCode}} class="text-sm text-blue-400 hover:text-blue-300">{{t "auth.verification.didnt-receive-a-code"}}</a>
|
||||
</div>
|
||||
|
||||
{{#if this.stillWaiting}}
|
||||
<div class="bg-yellow-50 rounded shadow-sm border-l-4 border-yellow-400 px-4 py-2">
|
||||
<div class="flex">
|
||||
<div class="flex-shrink-0">
|
||||
<FaIcon @icon="exclamation-triangle" @size="lg" class="text-yellow-400" />
|
||||
<div class="flex flex-col flex-grow-0 flex-shrink-0 text-sm bg-yellow-800 border border-yellow-600 px-2 py-2 rounded-md text-yellow-100 my-4 transition-all">
|
||||
<div class="flex flex-row items-start mb-2">
|
||||
<div class="w-8 flex-grow-0 flex-shrink-0">
|
||||
<FaIcon @icon="triangle-exclamation" @size="xl" class="pt-1" />
|
||||
</div>
|
||||
<div class="ml-3 flex items-center">
|
||||
<span class="text-lg font-extrabold text-yellow-800">{{t "auth.verification.didnt-receive-a-code"}}</span>
|
||||
<div class="flex-1">
|
||||
<div class="flex-1 text-sm text-yellow-100">
|
||||
<div>{{t "auth.verification.didnt-receive-a-code" htmlSafe=true}}</div>
|
||||
<div>{{t "auth.verification.not-sent.alternative-choice" htmlSafe=true}}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="py-1">
|
||||
<p class="text-yellow-700 text-sm">{{t "auth.verification.not-sent.alternative-choice"}}</p>
|
||||
<div class="flex items-center mt-3">
|
||||
<Button @buttonType="button" @type="warning" @wrapperClass="mr-2" @onClick={{this.resendEmail}} class="btn-warning-alert">{{t "auth.verification.not-sent.resend-email"}}</Button>
|
||||
<Button @buttonType="button" @type="warning" @onClick={{this.resendBySms}} class="btn-warning-alert">{{t "auth.verification.not-sent.send-by-sms"}}</Button>
|
||||
</div>
|
||||
<div class="flex items-center space-x-2">
|
||||
<Button
|
||||
@text={{t "auth.verification.not-sent.resend-email"}}
|
||||
@buttonType="button"
|
||||
@type="link"
|
||||
class="text-yellow-100"
|
||||
@wrapperClass="px-4 py-2 bg-gray-900 bg-opacity-25 hover:opacity-50"
|
||||
@onClick={{this.resendEmail}}
|
||||
/>
|
||||
<Button
|
||||
@text={{t "auth.verification.not-sent.send-by-sms"}}
|
||||
@buttonType="button"
|
||||
@type="link"
|
||||
class="text-yellow-100"
|
||||
@wrapperClass="px-4 py-2 bg-gray-900 bg-opacity-25 hover:opacity-50"
|
||||
@onClick={{this.resendBySms}}
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<Layout::Section::Header @title="Account Auth" />
|
||||
|
||||
<Layout::Section::Body class="overflow-y-scroll h-full">
|
||||
<div class="container mx-auto h-screen" {{increase-height-by 500}}>
|
||||
<div class="container mx-auto h-screen">
|
||||
<div class="max-w-3xl my-10 mx-auto space-y-6">
|
||||
<ContentPanel @title="Change Password" @open={{true}} @pad={{true}} @panelBodyClass="bg-white dark:bg-gray-800">
|
||||
<form id="change-password-form" aria-label="change-password" {{on "submit" (perform this.changePassword)}}>
|
||||
@@ -31,4 +31,5 @@
|
||||
{{/if}}
|
||||
</div>
|
||||
</div>
|
||||
<Spacer @height="500px" />
|
||||
</Layout::Section::Body>
|
||||
@@ -2,9 +2,10 @@
|
||||
<Layout::Section::Header @title={{@model.title}} />
|
||||
|
||||
<Layout::Section::Body class="overflow-y-scroll h-full">
|
||||
<div class="container mx-auto h-screen" {{increase-height-by 300}}>
|
||||
<div class="container mx-auto h-screen">
|
||||
<div class="max-w-3xl my-10 mx-auto space-y-">
|
||||
{{component @model.component params=@model.componentParams}}
|
||||
</div>
|
||||
</div>
|
||||
<Spacer @height="300px" />
|
||||
</Layout::Section::Body>
|
||||
@@ -2,9 +2,10 @@
|
||||
<Layout::Section::Header @title={{t "console.admin.config.database.title"}} />
|
||||
|
||||
<Layout::Section::Body class="overflow-y-scroll h-full">
|
||||
<div class="container mx-auto h-screen" {{increase-height-by 800}}>
|
||||
<div class="container mx-auto h-screen">
|
||||
<div class="max-w-3xl my-10 mx-auto space-y-6">
|
||||
<Configure::Database />
|
||||
</div>
|
||||
</div>
|
||||
<Spacer @height="300px" />
|
||||
</Layout::Section::Body>
|
||||
@@ -2,9 +2,10 @@
|
||||
<Layout::Section::Header @title={{t "console.admin.config.filesystem.title"}} />
|
||||
|
||||
<Layout::Section::Body class="overflow-y-scroll h-full">
|
||||
<div class="container mx-auto h-screen" {{increase-height-by 800}}>
|
||||
<div class="container mx-auto h-screen">
|
||||
<div class="max-w-3xl my-10 mx-auto space-y-6">
|
||||
<Configure::Filesystem />
|
||||
</div>
|
||||
</div>
|
||||
<Spacer @height="300px" />
|
||||
</Layout::Section::Body>
|
||||
@@ -2,9 +2,10 @@
|
||||
<Layout::Section::Header @title={{t "console.admin.config.mail.title"}} />
|
||||
|
||||
<Layout::Section::Body class="overflow-y-scroll h-full">
|
||||
<div class="container mx-auto h-screen" {{increase-height-by 800}}>
|
||||
<div class="container mx-auto h-screen">
|
||||
<div class="max-w-3xl my-10 mx-auto space-y-6">
|
||||
<Configure::Mail />
|
||||
</div>
|
||||
</div>
|
||||
<Spacer @height="300px" />
|
||||
</Layout::Section::Body>
|
||||
@@ -2,9 +2,10 @@
|
||||
<Layout::Section::Header @title={{t "console.admin.config.notification-channels.title"}} />
|
||||
|
||||
<Layout::Section::Body class="overflow-y-scroll h-full">
|
||||
<div class="container mx-auto h-screen" {{increase-height-by 800}}>
|
||||
<div class="container mx-auto h-screen">
|
||||
<div class="max-w-3xl my-10 mx-auto space-y-6">
|
||||
<Configure::NotificationChannels />
|
||||
</div>
|
||||
</div>
|
||||
<Spacer @height="300px" />
|
||||
</Layout::Section::Body>
|
||||
@@ -2,9 +2,10 @@
|
||||
<Layout::Section::Header @title={{t "console.admin.config.queue.title"}} />
|
||||
|
||||
<Layout::Section::Body class="overflow-y-scroll h-full">
|
||||
<div class="container mx-auto h-screen" {{increase-height-by 800}}>
|
||||
<div class="container mx-auto h-screen">
|
||||
<div class="max-w-3xl my-10 mx-auto space-y-6">
|
||||
<Configure::Queue />
|
||||
</div>
|
||||
</div>
|
||||
<Spacer @height="300px" />
|
||||
</Layout::Section::Body>
|
||||
@@ -2,9 +2,10 @@
|
||||
<Layout::Section::Header @title={{t "console.admin.config.services.title"}} />
|
||||
|
||||
<Layout::Section::Body class="overflow-y-scroll h-full">
|
||||
<div class="container mx-auto h-screen" {{increase-height-by 900}}>
|
||||
<div class="container mx-auto h-screen">
|
||||
<div class="max-w-3xl my-10 mx-auto space-y-6">
|
||||
<Configure::Services />
|
||||
</div>
|
||||
</div>
|
||||
<Spacer @height="300px" />
|
||||
</Layout::Section::Body>
|
||||
@@ -2,9 +2,10 @@
|
||||
<Layout::Section::Header @title={{t "console.admin.config.socket.title"}} />
|
||||
|
||||
<Layout::Section::Body class="overflow-y-scroll h-full">
|
||||
<div class="container mx-auto h-screen" {{increase-height-by 900}}>
|
||||
<div class="container mx-auto h-screen">
|
||||
<div class="max-w-3xl my-10 mx-auto space-y-6">
|
||||
<Configure::Socket />
|
||||
</div>
|
||||
</div>
|
||||
<Spacer @height="300px" />
|
||||
</Layout::Section::Body>
|
||||
@@ -2,7 +2,7 @@
|
||||
<Layout::Section::Header @title={{t "common.overview"}} />
|
||||
|
||||
<Layout::Section::Body class="overflow-y-scroll h-full">
|
||||
<div class="container mx-auto h-screen" {{increase-height-by 800}}>
|
||||
<div class="container mx-auto h-screen">
|
||||
<div class="max-w-3xl my-10 mx-auto space-y-6">
|
||||
<div class="grid grid-cols-3 xs:grid-cols-1 gap-4">
|
||||
<StatWidget @title={{t "console.admin.index.total-users"}} @value={{@model.total_users}} />
|
||||
@@ -11,4 +11,5 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<Spacer @height="300px" />
|
||||
</Layout::Section::Body>
|
||||
@@ -2,9 +2,10 @@
|
||||
<Layout::Section::Header @title={{@model.title}} />
|
||||
|
||||
<Layout::Section::Body class="overflow-y-scroll h-full">
|
||||
<div class="container mx-auto h-screen" {{increase-height-by 300}}>
|
||||
<div class="container mx-auto h-screen">
|
||||
<div class="max-w-3xl my-10 mx-auto space-y-">
|
||||
{{component @model.component params=@model.componentParams}}
|
||||
</div>
|
||||
</div>
|
||||
<Spacer @height="300px" />
|
||||
</Layout::Section::Body>
|
||||
@@ -1,7 +1,7 @@
|
||||
{{page-title "Dashboard"}}
|
||||
<Layout::Section::Body class="overflow-y-scroll h-full">
|
||||
<TwoFaEnforcementAlert />
|
||||
<Dashboard @sidebar={{this.sidebarContext}} />
|
||||
<Dashboard @sidebar={{this.sidebarContext}} class="flex items-center justify-between mb-4 mt-6 px-14" />
|
||||
<Spacer @height="300px" />
|
||||
</Layout::Section::Body>
|
||||
<div id="console-home-wormhole" />
|
||||
@@ -1,7 +1,7 @@
|
||||
<Layout::Section::Header @title={{t "console.settings.index.title"}} />
|
||||
|
||||
<Layout::Section::Body class="overflow-y-scroll h-full">
|
||||
<div class="container mx-auto h-screen" {{increase-height-by 500}}>
|
||||
<div class="container mx-auto h-screen">
|
||||
<div class="max-w-3xl my-10 mx-auto space-y-6">
|
||||
<ContentPanel @title={{t "console.settings.index.title"}} @open={{true}} @pad={{true}} @panelBodyClass="bg-white dark:bg-gray-800">
|
||||
<form {{on "submit" this.saveSettings}}>
|
||||
@@ -65,4 +65,5 @@
|
||||
</ContentPanel>
|
||||
</div>
|
||||
</div>
|
||||
<Spacer @height="500px" />
|
||||
</Layout::Section::Body>
|
||||
@@ -2,7 +2,7 @@
|
||||
<Layout::Section::Header @title="2FA" />
|
||||
|
||||
<Layout::Section::Body class="overflow-y-scroll h-full">
|
||||
<div class="container mx-auto h-screen" {{increase-height-by 500}}>
|
||||
<div class="container mx-auto h-screen">
|
||||
<div class="max-w-3xl my-10 mx-auto space-y-6">
|
||||
<ContentPanel @title="2FA Settings" @open={{true}} @pad={{true}} @panelBodyClass="bg-white dark:bg-gray-800">
|
||||
<div class="mb-3">
|
||||
@@ -33,4 +33,5 @@
|
||||
</ContentPanel>
|
||||
</div>
|
||||
</div>
|
||||
<Spacer @height="300px" />
|
||||
</Layout::Section::Body>
|
||||
@@ -2,9 +2,10 @@
|
||||
<Layout::Section::Header @title={{@model.title}} />
|
||||
|
||||
<Layout::Section::Body class="overflow-y-scroll h-full">
|
||||
<div class="container mx-auto h-screen" {{increase-height-by 300}}>
|
||||
<div class="container mx-auto h-screen">
|
||||
<div class="max-w-3xl my-10 mx-auto space-y-">
|
||||
{{component @model.component params=@model.componentParams}}
|
||||
</div>
|
||||
</div>
|
||||
<Spacer @height="300px" />
|
||||
</Layout::Section::Body>
|
||||
@@ -2,9 +2,10 @@
|
||||
<Layout::Section::Header @title={{@model.title}} />
|
||||
|
||||
<Layout::Section::Body class="overflow-y-scroll h-full">
|
||||
<div class="container mx-auto h-screen" {{increase-height-by 300}}>
|
||||
<div class="container mx-auto h-screen">
|
||||
<div class="max-w-3xl my-10 mx-auto space-y-">
|
||||
{{component @model.component params=@model.componentParams}}
|
||||
</div>
|
||||
</div>
|
||||
<Spacer @height="300px" />
|
||||
</Layout::Section::Body>
|
||||
@@ -1,5 +1,6 @@
|
||||
<div class="flex items-center justify-center h-screen min-h-screen px-4 py-12 bg-gray-50 dark:bg-gray-900 sm:px-6 lg:px-8 overflow-y-scroll">
|
||||
<div class="w-full max-w-md h-screen flex items-center justify-center py-4" {{increase-height-by 300}}>
|
||||
<div class="w-full max-w-md h-screen flex items-center justify-center py-4">
|
||||
{{outlet}}
|
||||
</div>
|
||||
<Spacer @height="300px" />
|
||||
</div>
|
||||
@@ -26,21 +26,35 @@
|
||||
</div>
|
||||
|
||||
{{#if this.stillWaiting}}
|
||||
<div class="bg-yellow-50 rounded shadow-sm border-l-4 border-yellow-400 px-4 py-2">
|
||||
<div class="flex">
|
||||
<div class="flex-shrink-0">
|
||||
<FaIcon @icon="exclamation-triangle" @size="lg" class="text-yellow-400" />
|
||||
<div class="flex flex-col flex-grow-0 flex-shrink-0 text-sm bg-yellow-800 border border-yellow-600 px-2 py-2 rounded-md text-yellow-100 my-4 transition-all">
|
||||
<div class="flex flex-row items-start mb-2">
|
||||
<div class="w-8 flex-grow-0 flex-shrink-0">
|
||||
<FaIcon @icon="triangle-exclamation" @size="xl" class="pt-1" />
|
||||
</div>
|
||||
<div class="ml-3 flex items-center">
|
||||
<span class="text-lg font-extrabold text-yellow-800">{{t "onboard.verify-email.didnt-receive-a-code"}}</span>
|
||||
<div class="flex-1">
|
||||
<div class="flex-1 text-sm text-yellow-100">
|
||||
<div>{{t "onboard.verify-email.didnt-receive-a-code" htmlSafe=true}}</div>
|
||||
<div>{{t "onboard.verify-email.not-sent.alternative-choice" htmlSafe=true}}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="py-1">
|
||||
<p class="text-yellow-700 text-sm">{{t "onboard.verify-email.not-sent.alternative-choice"}}</p>
|
||||
<div class="flex items-center mt-3">
|
||||
<Button @buttonType="button" @type="warning" @wrapperClass="mr-2" @onClick={{this.resendEmail}} class="btn-warning-alert">{{t "onboard.verify-email.not-sent.resend-email"}}</Button>
|
||||
<Button @buttonType="button" @type="warning" @onClick={{this.resendBySms}} class="btn-warning-alert">{{t "onboard.verify-email.not-sent.send-by-sms"}}</Button>
|
||||
</div>
|
||||
<div class="flex items-center space-x-2">
|
||||
<Button
|
||||
@text={{t "onboard.verify-email.not-sent.resend-email"}}
|
||||
@buttonType="button"
|
||||
@type="link"
|
||||
class="text-yellow-100"
|
||||
@wrapperClass="px-4 py-2 bg-gray-900 bg-opacity-25 hover:opacity-50"
|
||||
@onClick={{this.resendEmail}}
|
||||
/>
|
||||
<Button
|
||||
@text={{t "onboard.verify-email.not-sent.send-by-sms"}}
|
||||
@buttonType="button"
|
||||
@type="link"
|
||||
class="text-yellow-100"
|
||||
@wrapperClass="px-4 py-2 bg-gray-900 bg-opacity-25 hover:opacity-50"
|
||||
@onClick={{this.resendBySms}}
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
2
console/app/templates/virtual.hbs
Normal file
2
console/app/templates/virtual.hbs
Normal file
@@ -0,0 +1,2 @@
|
||||
{{page-title @model.title}}
|
||||
{{component @model.component params=@model.componentParams}}
|
||||
@@ -74,6 +74,12 @@ module.exports = function (environment) {
|
||||
autoClear: true,
|
||||
clearDuration: 1000 * 3.5,
|
||||
},
|
||||
|
||||
'ember-leaflet': {
|
||||
excludeCSS: true,
|
||||
excludeJS: true,
|
||||
excludeImages: true,
|
||||
},
|
||||
};
|
||||
|
||||
if (environment === 'development') {
|
||||
|
||||
@@ -3,9 +3,18 @@ module.exports = function asArray(value) {
|
||||
return value;
|
||||
}
|
||||
|
||||
if (typeof value === 'string' && value.includes(',')) {
|
||||
if (typeof value === 'string') {
|
||||
return value.split(',');
|
||||
}
|
||||
|
||||
try {
|
||||
let iterable = Array.from(value);
|
||||
if (Array.isArray(iterable)) {
|
||||
return iterable;
|
||||
}
|
||||
} catch (error) {
|
||||
return [];
|
||||
}
|
||||
|
||||
return [];
|
||||
};
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@fleetbase/console",
|
||||
"version": "0.5.7",
|
||||
"version": "0.5.8",
|
||||
"private": true,
|
||||
"description": "Modular logistics and supply chain operating system (LSOS)",
|
||||
"repository": "https://github.com/fleetbase/fleetbase",
|
||||
@@ -21,7 +21,6 @@
|
||||
"lint:hbs:fix": "ember-template-lint . --fix",
|
||||
"lint:js": "eslint . --cache",
|
||||
"lint:js:fix": "eslint . --fix",
|
||||
"postinstall": "patch-package",
|
||||
"lint:intl": "fleetbase-intl-lint",
|
||||
"start": "pnpm run prebuild && ember serve",
|
||||
"start:dev": "pnpm run prebuild && ember serve --environment development",
|
||||
@@ -29,16 +28,16 @@
|
||||
"test:ember": "ember test"
|
||||
},
|
||||
"dependencies": {
|
||||
"@fleetbase/ember-core": "^0.2.17",
|
||||
"@fleetbase/ember-ui": "^0.2.24",
|
||||
"@fleetbase/fleetops-engine": "^0.5.7",
|
||||
"@fleetbase/storefront-engine": "^0.3.14",
|
||||
"@fleetbase/dev-engine": "^0.2.6",
|
||||
"@fleetbase/iam-engine": "^0.1.0",
|
||||
"@fleetbase/registry-bridge-engine": "^0.0.13",
|
||||
"@fleetbase/fleetops-data": "^0.1.17",
|
||||
"@fleetbase/billing-engine": "^0.1.0",
|
||||
"@fleetbase/flespi-engine": "^0.1.12",
|
||||
"@fleetbase/ember-core": "^0.2.19",
|
||||
"@fleetbase/ember-ui": "^0.2.32",
|
||||
"@fleetbase/fleetops-engine": "^0.5.8",
|
||||
"@fleetbase/storefront-engine": "^0.3.15",
|
||||
"@fleetbase/dev-engine": "^0.2.7",
|
||||
"@fleetbase/iam-engine": "^0.1.1",
|
||||
"@fleetbase/registry-bridge-engine": "^0.0.14",
|
||||
"@fleetbase/fleetops-data": "^0.1.18",
|
||||
"@fleetbase/billing-engine": "^0.1.1",
|
||||
"@fleetbase/flespi-engine": "^0.1.13",
|
||||
"@fleetbase/leaflet-routing-machine": "^3.2.16",
|
||||
"@ember/legacy-built-in-components": "^0.4.2",
|
||||
"@fortawesome/ember-fontawesome": "^2.0.0",
|
||||
@@ -47,7 +46,6 @@
|
||||
"ember-composable-helpers": "^5.0.0",
|
||||
"ember-concurrency": "^3.1.1",
|
||||
"ember-concurrency-decorators": "^2.0.3",
|
||||
"ember-gridstack": "^4.0.0",
|
||||
"ember-intl": "6.3.2",
|
||||
"ember-math-helpers": "^2.18.2",
|
||||
"ember-power-select": "^7.2.0",
|
||||
@@ -55,8 +53,6 @@
|
||||
"ember-radio-button": "3.0.0-beta.1",
|
||||
"ember-tag-input": "^3.1.0",
|
||||
"fleetbase-extensions-indexer": "^0.0.5",
|
||||
"gridstack": "^7.3.0",
|
||||
"patch-package": "^8.0.0",
|
||||
"postcss-at-rules-variables": "^0.3.0",
|
||||
"postcss-custom-properties": "^12.1.11",
|
||||
"postcss-nth-list": "^1.0.2"
|
||||
@@ -97,7 +93,6 @@
|
||||
"ember-data": "^4.12.8",
|
||||
"ember-engines": "^0.9.0",
|
||||
"ember-fetch": "^8.1.2",
|
||||
"ember-leaflet": "^5.1.3",
|
||||
"ember-load-initializers": "^2.1.2",
|
||||
"ember-modifier": "^4.2.0",
|
||||
"ember-page-title": "^8.2.3",
|
||||
@@ -116,7 +111,6 @@
|
||||
"fast-glob": "^3.3.2",
|
||||
"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.41",
|
||||
@@ -145,9 +139,12 @@
|
||||
},
|
||||
"pnpm": {
|
||||
"overrides": {
|
||||
"@fleetbase/ember-core": "^0.2.17",
|
||||
"@fleetbase/ember-ui": "^0.2.24",
|
||||
"@fleetbase/fleetops-data": "^0.1.17"
|
||||
"@fleetbase/ember-core": "^0.2.19",
|
||||
"@fleetbase/ember-ui": "^0.2.32",
|
||||
"@fleetbase/fleetops-data": "^0.1.18"
|
||||
},
|
||||
"patchedDependencies": {
|
||||
"ember-leaflet@5.1.3": "patches/ember-leaflet@5.1.3.patch"
|
||||
}
|
||||
},
|
||||
"prettier": {
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
diff --git a/node_modules/ember-gridstack/addon/components/grid-stack.js b/node_modules/ember-gridstack/addon/components/grid-stack.js
|
||||
index fa51392..fdabb2a 100644
|
||||
--- a/node_modules/ember-gridstack/addon/components/grid-stack.js
|
||||
+++ b/node_modules/ember-gridstack/addon/components/grid-stack.js
|
||||
@@ -133,5 +133,6 @@ export default class GridStackComponent extends Component {
|
||||
removeWidget(element, removeDOM = false, triggerEvent = true) {
|
||||
triggerEvent = triggerEvent && !this.isDestroying && !this.isDestroyed;
|
||||
this.gridStack?.removeWidget(element, removeDOM, triggerEvent);
|
||||
+ this.gridStack?.compact();
|
||||
}
|
||||
}
|
||||
95
console/patches/ember-leaflet@5.1.3.patch
Normal file
95
console/patches/ember-leaflet@5.1.3.patch
Normal file
@@ -0,0 +1,95 @@
|
||||
diff --git a/index.js b/index.js
|
||||
index 7361871adfe0b79c70a3699e38cc435f3741cb33..e02f7e6d61605d8b770ed5c0454b6c905d538ff9 100644
|
||||
--- a/index.js
|
||||
+++ b/index.js
|
||||
@@ -1,87 +1,5 @@
|
||||
-'use strict';
|
||||
-const resolve = require('resolve');
|
||||
-const path = require('path');
|
||||
-const mergeTrees = require('broccoli-merge-trees');
|
||||
-const Funnel = require('broccoli-funnel');
|
||||
-const fastbootTransform = require('fastboot-transform');
|
||||
+'use strict'
|
||||
|
||||
module.exports = {
|
||||
- name: require('./package').name,
|
||||
-
|
||||
- treeForVendor() {
|
||||
- let dist = path.join(this.pathBase('leaflet'), 'dist');
|
||||
-
|
||||
- let leafletJs = fastbootTransform(
|
||||
- new Funnel(dist, {
|
||||
- files: ['leaflet-src.js'],
|
||||
- destDir: 'leaflet'
|
||||
- })
|
||||
- );
|
||||
-
|
||||
- let leafletFiles = new Funnel(dist, {
|
||||
- exclude: ['leaflet.js', 'leaflet-src.js', '*.html'],
|
||||
- destDir: 'leaflet'
|
||||
- });
|
||||
-
|
||||
- return mergeTrees([leafletJs, leafletFiles]);
|
||||
- },
|
||||
-
|
||||
- included(app) {
|
||||
- this._super.included.apply(this, arguments);
|
||||
-
|
||||
- // Addon options from the apps ember-cli-build.js
|
||||
- let options = app.options[this.name] || {};
|
||||
-
|
||||
- // If the addon has the _findHost() method (in ember-cli >= 2.7.0), we'll just
|
||||
- // use that.
|
||||
- // if (typeof this._findHost === 'function') {
|
||||
- // app = this._findHost();
|
||||
- // }
|
||||
-
|
||||
- // Otherwise, we'll use this implementation borrowed from the _findHost()
|
||||
- // method in ember-cli.
|
||||
- // Keep iterating upward until we don't have a grandparent.
|
||||
- // Has to do this grandparent check because at some point we hit the project.
|
||||
- let current = this;
|
||||
- do {
|
||||
- if (current.lazyLoading === true || (current.lazyLoading && current.lazyLoading.enabled === true)) {
|
||||
- app = current;
|
||||
- break;
|
||||
- }
|
||||
- app = current.app || app;
|
||||
- } while (current.parent.parent && (current = current.parent));
|
||||
-
|
||||
- if (!options.excludeJS) {
|
||||
- app.import('vendor/leaflet/leaflet-src.js');
|
||||
- }
|
||||
-
|
||||
- // Import leaflet css
|
||||
- if (!options.excludeCSS) {
|
||||
- app.import('vendor/leaflet/leaflet.css');
|
||||
- }
|
||||
-
|
||||
- // Import leaflet images
|
||||
- if (!options.excludeImages) {
|
||||
- let imagesDestDir = '/assets/images';
|
||||
- app.import('vendor/leaflet/images/layers-2x.png', {
|
||||
- destDir: imagesDestDir
|
||||
- });
|
||||
- app.import('vendor/leaflet/images/layers.png', {
|
||||
- destDir: imagesDestDir
|
||||
- });
|
||||
- app.import('vendor/leaflet/images/marker-icon-2x.png', {
|
||||
- destDir: imagesDestDir
|
||||
- });
|
||||
- app.import('vendor/leaflet/images/marker-icon.png', {
|
||||
- destDir: imagesDestDir
|
||||
- });
|
||||
- app.import('vendor/leaflet/images/marker-shadow.png', {
|
||||
- destDir: imagesDestDir
|
||||
- });
|
||||
- }
|
||||
- },
|
||||
-
|
||||
- pathBase(packageName) {
|
||||
- return path.dirname(resolve.sync(packageName + '/package.json', { basedir: __dirname }));
|
||||
- }
|
||||
-};
|
||||
+ name: require('./package').name
|
||||
+}
|
||||
337
console/pnpm-lock.yaml
generated
337
console/pnpm-lock.yaml
generated
@@ -5,9 +5,14 @@ settings:
|
||||
excludeLinksFromLockfile: false
|
||||
|
||||
overrides:
|
||||
'@fleetbase/ember-core': ^0.2.17
|
||||
'@fleetbase/ember-ui': ^0.2.24
|
||||
'@fleetbase/fleetops-data': ^0.1.17
|
||||
'@fleetbase/ember-core': ^0.2.19
|
||||
'@fleetbase/ember-ui': ^0.2.32
|
||||
'@fleetbase/fleetops-data': ^0.1.18
|
||||
|
||||
patchedDependencies:
|
||||
ember-leaflet@5.1.3:
|
||||
hash: 2hdi7ajimhpivctwjmqkqnthem
|
||||
path: patches/ember-leaflet@5.1.3.patch
|
||||
|
||||
importers:
|
||||
|
||||
@@ -17,38 +22,38 @@ importers:
|
||||
specifier: ^0.4.2
|
||||
version: 0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))
|
||||
'@fleetbase/billing-engine':
|
||||
specifier: ^0.1.0
|
||||
version: 0.1.0(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
specifier: ^0.1.1
|
||||
version: 0.1.1(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
'@fleetbase/dev-engine':
|
||||
specifier: ^0.2.6
|
||||
version: 0.2.6(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
specifier: ^0.2.7
|
||||
version: 0.2.7(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
'@fleetbase/ember-core':
|
||||
specifier: ^0.2.17
|
||||
version: 0.2.17(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
specifier: ^0.2.19
|
||||
version: 0.2.19(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
'@fleetbase/ember-ui':
|
||||
specifier: ^0.2.24
|
||||
version: 0.2.24(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
specifier: ^0.2.32
|
||||
version: 0.2.32(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
'@fleetbase/fleetops-data':
|
||||
specifier: ^0.1.17
|
||||
version: 0.1.17(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
specifier: ^0.1.18
|
||||
version: 0.1.18(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
'@fleetbase/fleetops-engine':
|
||||
specifier: ^0.5.7
|
||||
version: 0.5.7(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
specifier: ^0.5.8
|
||||
version: 0.5.8(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
'@fleetbase/flespi-engine':
|
||||
specifier: ^0.1.12
|
||||
version: 0.1.12(@babel/core@7.25.2)(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
specifier: ^0.1.13
|
||||
version: 0.1.13(@babel/core@7.25.2)(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
'@fleetbase/iam-engine':
|
||||
specifier: ^0.1.0
|
||||
version: 0.1.0(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
specifier: ^0.1.1
|
||||
version: 0.1.1(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
'@fleetbase/leaflet-routing-machine':
|
||||
specifier: ^3.2.16
|
||||
version: 3.2.16
|
||||
'@fleetbase/registry-bridge-engine':
|
||||
specifier: ^0.0.13
|
||||
version: 0.0.13(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
specifier: ^0.0.14
|
||||
version: 0.0.14(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
'@fleetbase/storefront-engine':
|
||||
specifier: ^0.3.14
|
||||
version: 0.3.14(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
specifier: ^0.3.15
|
||||
version: 0.3.15(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
'@fortawesome/ember-fontawesome':
|
||||
specifier: ^2.0.0
|
||||
version: 2.0.0(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(rollup@2.79.1)(webpack@5.94.0)
|
||||
@@ -67,9 +72,6 @@ importers:
|
||||
ember-concurrency-decorators:
|
||||
specifier: ^2.0.3
|
||||
version: 2.0.3(@babel/core@7.25.2)
|
||||
ember-gridstack:
|
||||
specifier: ^4.0.0
|
||||
version: 4.0.0(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
ember-intl:
|
||||
specifier: 6.3.2
|
||||
version: 6.3.2(@babel/core@7.25.2)(webpack@5.94.0)
|
||||
@@ -91,12 +93,6 @@ importers:
|
||||
fleetbase-extensions-indexer:
|
||||
specifier: ^0.0.5
|
||||
version: 0.0.5
|
||||
gridstack:
|
||||
specifier: ^7.3.0
|
||||
version: 7.3.0
|
||||
patch-package:
|
||||
specifier: ^8.0.0
|
||||
version: 8.0.0
|
||||
postcss-at-rules-variables:
|
||||
specifier: ^0.3.0
|
||||
version: 0.3.0(postcss@8.4.41)
|
||||
@@ -212,9 +208,6 @@ importers:
|
||||
ember-fetch:
|
||||
specifier: ^8.1.2
|
||||
version: 8.1.2
|
||||
ember-leaflet:
|
||||
specifier: ^5.1.3
|
||||
version: 5.1.3(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(leaflet@1.9.4)(webpack@5.94.0)
|
||||
ember-load-initializers:
|
||||
specifier: ^2.1.2
|
||||
version: 2.1.2(@babel/core@7.25.2)
|
||||
@@ -269,9 +262,6 @@ importers:
|
||||
inter-ui:
|
||||
specifier: ^3.19.3
|
||||
version: 3.19.3
|
||||
leaflet:
|
||||
specifier: ^1.9.4
|
||||
version: 1.9.4
|
||||
loader.js:
|
||||
specifier: ^4.7.0
|
||||
version: 4.7.0
|
||||
@@ -1601,14 +1591,14 @@ packages:
|
||||
resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==}
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
|
||||
'@fleetbase/billing-engine@0.1.0':
|
||||
resolution: {integrity: sha512-htwa9cx3hto2y1kT6ukVIfvt9bHMvPhOpV+0isrXJCMDRqWWka4h1Jprc+w1rl+3+nmrRQClfFOwFCB+iAUWlw==, tarball: https://npm.pkg.github.com/download/@fleetbase/billing-engine/0.1.0/b414408bb7a49cd70fa45d1b39072b6e52c740ff}
|
||||
'@fleetbase/billing-engine@0.1.1':
|
||||
resolution: {integrity: sha512-4Bke5XJMikRXfMCSPGLsKy1v9DTSl6grnIk1G0aj8PWJKw1fRLWN/QV/BcumHNs6irG1vTxUpWAojaQKOuhMow==, tarball: https://npm.pkg.github.com/download/@fleetbase/billing-engine/0.1.1/59eb5b130e42c6ec32cce8ecc7c19a0e403ae621}
|
||||
engines: {node: '>= 18'}
|
||||
peerDependencies:
|
||||
ember-engines: ^0.9.0
|
||||
|
||||
'@fleetbase/dev-engine@0.2.6':
|
||||
resolution: {integrity: sha512-j6LLBANhhuHtELcys9OIoy8vU2vomG8v88esODqeXMBXW3gIVCOX56zZQ7Rcbm9WfyhxZ63aVuX+RxUDX8Z/zg==, tarball: https://npm.pkg.github.com/download/@fleetbase/dev-engine/0.2.6/3472c27b36387585c161393f11c88806cab84b2d}
|
||||
'@fleetbase/dev-engine@0.2.7':
|
||||
resolution: {integrity: sha512-+XQqJQ97y4WPC3iRgdEjo/9DXHPfSXQf/+2grzZzZ3JNzsMgeKu/0yet0oD4ESdHTK5ymp5WoyOuumnkq4L6Jw==, tarball: https://npm.pkg.github.com/download/@fleetbase/dev-engine/0.2.7/2d31ff8a997b9c16ab5c4798a9d8c3ce1c6c51d0}
|
||||
engines: {node: '>= 18'}
|
||||
peerDependencies:
|
||||
ember-engines: ^0.9.0
|
||||
@@ -1619,32 +1609,32 @@ packages:
|
||||
peerDependencies:
|
||||
ember-source: '>= 4.0.0'
|
||||
|
||||
'@fleetbase/ember-core@0.2.17':
|
||||
resolution: {integrity: sha512-4xtkBYDOmLUD2kIFl90Rg+G4BS7BdTXB2jf654VzsWxtV6vhjiFOeMBn/BErT8wnx0Re/7jdcQ3sdrJjBf1gBg==, tarball: https://npm.pkg.github.com/download/@fleetbase/ember-core/0.2.17/5f46ab848971c350b9929cc23dc0e3b7c8cc10e9}
|
||||
'@fleetbase/ember-core@0.2.19':
|
||||
resolution: {integrity: sha512-xXRBp+dqZ975bPyAxvxlw1K+kcVxu1XZ9/Db+eySNPS2ua+wswg8+KyegnU6hkJflDgFjo7xTqBL30WVrjRUiQ==, tarball: https://npm.pkg.github.com/download/@fleetbase/ember-core/0.2.19/6fcbd3003965c72993c10a5329e65cd387b104ac}
|
||||
engines: {node: '>= 18'}
|
||||
|
||||
'@fleetbase/ember-ui@0.2.24':
|
||||
resolution: {integrity: sha512-EAPdgz3SDgLVqEn165lfdamS7xI3rszVO6P1EwLgLdzpOFleI6rzVX4WfhGhB/CXJTtjVlr74RSbV0gPDMp/tQ==, tarball: https://npm.pkg.github.com/download/@fleetbase/ember-ui/0.2.24/44e633fc783e61c017047b731f29603c5fd35fd3}
|
||||
'@fleetbase/ember-ui@0.2.32':
|
||||
resolution: {integrity: sha512-+6lPyziomGKA405ILe6DSY9tBfehMTO1pSpe/8ZUQrez06wda6Ci4C2DCNd5vWmOlOtiC91cRKLUcN6Myx9dwQ==, tarball: https://npm.pkg.github.com/download/@fleetbase/ember-ui/0.2.32/15331ea2098a21daa274bbe78d974fdc34ac61b4}
|
||||
engines: {node: '>= 18'}
|
||||
|
||||
'@fleetbase/fleetops-data@0.1.17':
|
||||
resolution: {integrity: sha512-cT3MgW0klMByRtUZMJO5d5CfaWCg4Ss9vVr/YA1iUL5DtHP5RgpCmndFLqa0nyYpncIwhkCykfWAUts4PUl+sg==, tarball: https://npm.pkg.github.com/download/@fleetbase/fleetops-data/0.1.17/ae87d46c760f56c623c6e3623c02c10a71db9234}
|
||||
'@fleetbase/fleetops-data@0.1.18':
|
||||
resolution: {integrity: sha512-SBiL992igloYgEGMbUX65uW95nv8k32u2QSoqVm7HrWfhCwMEeHubEOA916otDkBalkHNSE6QgWigaJDMNnW4A==, tarball: https://npm.pkg.github.com/download/@fleetbase/fleetops-data/0.1.18/af697d1804fa96d79c4b4a5ea6123e820e1f0864}
|
||||
engines: {node: '>= 18'}
|
||||
|
||||
'@fleetbase/fleetops-engine@0.5.7':
|
||||
resolution: {integrity: sha512-zFZWb/4iba79ED4oDL5f85tmudAIhqCkidxm9tWwyzUXecoXeH4rNXWRLijK8H/SKjWL0t3Oos/UueD8BqjkMg==, tarball: https://npm.pkg.github.com/download/@fleetbase/fleetops-engine/0.5.7/b86955d1824a2f5300b45d72dd1cb97d6a6e5c02}
|
||||
'@fleetbase/fleetops-engine@0.5.8':
|
||||
resolution: {integrity: sha512-UCvj5lZlLEzD1bQnXedzaNnJcoKF1Y4qkfwTGd9+6eVZ6dymLnSLAyqVUhC0lPFt+UE2QkmZU8gieCcoh1Z2nQ==, tarball: https://npm.pkg.github.com/download/@fleetbase/fleetops-engine/0.5.8/403bb2a74553cac152a1b42187710e1661da0486}
|
||||
engines: {node: '>= 18'}
|
||||
peerDependencies:
|
||||
ember-engines: ^0.9.0
|
||||
|
||||
'@fleetbase/flespi-engine@0.1.12':
|
||||
resolution: {integrity: sha512-rpl8MJj/mMFiiG/VUSE68Bp4wy3q2fH8BqtBPGHOmPsROkXQf9I8s9r9Bf6mmc+79hfHbtL59PJuutQt0vXeoA==, tarball: https://npm.pkg.github.com/download/@fleetbase/flespi-engine/0.1.12/dff2b9acb35df3e6fb006fd2e3c0f91f7bd8a079}
|
||||
'@fleetbase/flespi-engine@0.1.13':
|
||||
resolution: {integrity: sha512-SzdWwa6eyAdb6S/3iKsCC+35U+e2+81doiiCMMgyHKDFlvPLR8iZE7P9Tz8eRbbfZPMbUB9d7ge7VLBB8QaNPw==, tarball: https://npm.pkg.github.com/download/@fleetbase/flespi-engine/0.1.13/110ee37b9de064bf5a5133c00724c1e4dc60d71b}
|
||||
engines: {node: 14.* || >= 16}
|
||||
peerDependencies:
|
||||
ember-engines: ^0.9.0
|
||||
|
||||
'@fleetbase/iam-engine@0.1.0':
|
||||
resolution: {integrity: sha512-i0O1D/GPKhkoKFtvema5KTnK45KRCH8qeVRSV3IRw7fAtyNe2Exsdhw3MYOwsvcrQuNOfXexR1SKZ7li1oCw4g==, tarball: https://npm.pkg.github.com/download/@fleetbase/iam-engine/0.1.0/cb1caec6e310257849f2f272383eb4beb5ab6a2e}
|
||||
'@fleetbase/iam-engine@0.1.1':
|
||||
resolution: {integrity: sha512-T8OGEYyAMaSXPffE3VTBDUYhF61am1zBUIvLcl3DCjyWIfOoL7jM+Gmipsys7hRzsmGn4CaeOv4UG6duhSLsWA==, tarball: https://npm.pkg.github.com/download/@fleetbase/iam-engine/0.1.1/3eaa46e5c5d940f20eca752712a8d26afc41a47b}
|
||||
engines: {node: '>= 18'}
|
||||
peerDependencies:
|
||||
ember-engines: ^0.9.0
|
||||
@@ -1656,14 +1646,14 @@ packages:
|
||||
'@fleetbase/leaflet-routing-machine@3.2.16':
|
||||
resolution: {integrity: sha512-sd+Cn3TmWQKyx3Wtx+nFfkejV0f/3ugY6Gl71NUBhaEZ5SlwiR/npibHWXXXQWA377TFSXTc3MKjY+MnpO2uAA==, tarball: https://npm.pkg.github.com/download/@fleetbase/leaflet-routing-machine/3.2.16/f5c1d638b5d1ebd0a81544ae49740005eec27a92}
|
||||
|
||||
'@fleetbase/registry-bridge-engine@0.0.13':
|
||||
resolution: {integrity: sha512-S6gSM9Bm1fF7xPgeX3nuf9K4XnMhT9ADOHXtj8wN/LHMZ2C33qvCP+Q7BLWXbhNloArwI8n8WuHr0qUFtIpglw==, tarball: https://npm.pkg.github.com/download/@fleetbase/registry-bridge-engine/0.0.13/ac24a14f9953eed1efd4c82da9c34a1fd7fb7533}
|
||||
'@fleetbase/registry-bridge-engine@0.0.14':
|
||||
resolution: {integrity: sha512-RAZ9MC23PcI3nENpU1waGXszesxIhzyYY1Ob1xu+w/oZpPlj9UX+vB8YdvuiizC4WxmLZiERB6UvJfJzkTjVLg==, tarball: https://npm.pkg.github.com/download/@fleetbase/registry-bridge-engine/0.0.14/0fa10cc3ecbe8492c858047096b49bcddb8e18a0}
|
||||
engines: {node: '>= 18'}
|
||||
peerDependencies:
|
||||
ember-engines: ^0.9.0
|
||||
|
||||
'@fleetbase/storefront-engine@0.3.14':
|
||||
resolution: {integrity: sha512-dV+63yOBb+G+0SNAe4cTKfCBIvt2nOsdhjSa5yBU9slE6Ry6u2eca6bZTdWrveVL2Wg4qatBo+Q6I8vOtIfqpw==, tarball: https://npm.pkg.github.com/download/@fleetbase/storefront-engine/0.3.14/9a94aed09078fd37846fd1c9dc4f333c0094668c}
|
||||
'@fleetbase/storefront-engine@0.3.15':
|
||||
resolution: {integrity: sha512-hKL8pk+Ajzk0xOvklo4Z/1xq0cb21kbOFtLfFK08RrZTG0tOf2JhrU3gMw0G9Sa2MLslOBpPFR7DLyaOPLTP/Q==, tarball: https://npm.pkg.github.com/download/@fleetbase/storefront-engine/0.3.15/a33f2ab041e0cf124c09df37ab9b43bf540f733f}
|
||||
engines: {node: '>= 18'}
|
||||
peerDependencies:
|
||||
ember-engines: ^0.9.0
|
||||
@@ -1706,10 +1696,6 @@ packages:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@fortawesome/ember-fontawesome@0.4.3':
|
||||
resolution: {integrity: sha512-1qAYrpEH29JO74yGGyUYMHnrA9VBFD9QO/g8xDZov3YxcjIiHN9L2liu0X3YNkrNUXgySgx/xa4t1dGINN9WVg==}
|
||||
engines: {node: 12.* || 14.* || >= 16}
|
||||
|
||||
'@fortawesome/ember-fontawesome@2.0.0':
|
||||
resolution: {integrity: sha512-lUyMvocZZzMuCwr8pkKhejXKBj5RGnIs8YUHc/tCNSEyHSx7/E5xAhtE4fa5B1c9+UO789Kng8z6DQ9E/agVGA==}
|
||||
engines: {node: 14.* || 16.* || >= 18}
|
||||
@@ -1745,9 +1731,6 @@ packages:
|
||||
peerDependencies:
|
||||
'@fullcalendar/core': ~6.1.15
|
||||
|
||||
'@glimmer/compiler@0.27.0':
|
||||
resolution: {integrity: sha512-SJUUEpkFCL+GTpEK6c2EhZQJant67ahGLF6M1xRmIsq6E+AtbHgu+y8mWvFbtpb7lx4gqNKpXSEwlHUTTuxVGw==}
|
||||
|
||||
'@glimmer/compiler@0.84.3':
|
||||
resolution: {integrity: sha512-cj9sGlnvExP9httxY6ZMivJRGulyaZ31DddCYB5h6LxupR4Nk2d1nAJCWPLsvuQJ8qR+eYw0y9aiY/VeT0krpQ==}
|
||||
|
||||
@@ -1770,9 +1753,6 @@ packages:
|
||||
'@glimmer/global-context@0.84.3':
|
||||
resolution: {integrity: sha512-8Oy9Wg5IZxMEeAnVmzD2NkObf89BeHoFSzJgJROE/deutd3rxg83mvlOez4zBBGYwnTb+VGU2LYRpet92egJjA==}
|
||||
|
||||
'@glimmer/interfaces@0.27.0':
|
||||
resolution: {integrity: sha512-Uz9txXB0Agnac6vUOAk6uZIB7SeS/fFrdjyNsNJnge5XeojvOQs1YyIFqOhky3G7NHO/mcx3Tdt8PXggFakVtQ==}
|
||||
|
||||
'@glimmer/interfaces@0.84.3':
|
||||
resolution: {integrity: sha512-dk32ykoNojt0mvEaIW6Vli5MGTbQo58uy3Epj7ahCgTHmWOKuw/0G83f2UmFprRwFx689YTXG38I/vbpltEjzg==}
|
||||
|
||||
@@ -1800,18 +1780,12 @@ packages:
|
||||
'@glimmer/runtime@0.84.3':
|
||||
resolution: {integrity: sha512-LzlJbPDCUH/wjsgJ5kRImvOkqAImSyVRW37t34n/1Qd3v7ZoI8xVQg92lS+2kHZe030sT49ZwKkEIeVZiBreBw==}
|
||||
|
||||
'@glimmer/syntax@0.27.0':
|
||||
resolution: {integrity: sha512-IC+JaGkfF+J3e5jUXrW4SkVAAgI6WyN4kzfJKqWEnjMAa6pB8XGEDkaaMhoMrxjfK+R0Us2PO45CWhGB3FqsKg==}
|
||||
|
||||
'@glimmer/syntax@0.84.3':
|
||||
resolution: {integrity: sha512-ioVbTic6ZisLxqTgRBL2PCjYZTFIwobifCustrozRU2xGDiYvVIL0vt25h2c1ioDsX59UgVlDkIK4YTAQQSd2A==}
|
||||
|
||||
'@glimmer/tracking@1.1.2':
|
||||
resolution: {integrity: sha512-cyV32zsHh+CnftuRX84ALZpd2rpbDrhLhJnTXn9W//QpqdRZ5rdMsxSY9fOsj0CKEc706tmEU299oNnDc0d7tA==}
|
||||
|
||||
'@glimmer/util@0.27.0':
|
||||
resolution: {integrity: sha512-GxER83ZuyEyZ5Phn86VkHcjjN/3MagK0MMr91S5t62IVSW/zyFevpaVV26YKmisDqOe4918nvwGqn543O5gGXw==}
|
||||
|
||||
'@glimmer/util@0.44.0':
|
||||
resolution: {integrity: sha512-duAsm30uVK9jSysElCbLyU6QQYO2X9iLDLBIBUcCqck9qN1o3tK2qWiHbGK5d6g8E2AJ4H88UrfElkyaJlGrwg==}
|
||||
|
||||
@@ -1830,9 +1804,6 @@ packages:
|
||||
'@glimmer/vm@0.84.3':
|
||||
resolution: {integrity: sha512-3mBWvQLEbB8We2EwdmuALMT3zQEcE13ItfLJ0wxlSO2uj1uegeHat++mli8RMxeYNqex27DC+VuhHeWVve6Ngg==}
|
||||
|
||||
'@glimmer/wire-format@0.27.0':
|
||||
resolution: {integrity: sha512-gNhityUr9HODYH9GydHVk7C6NZ57MqSbdGzC5TM8VdPibtd72N3+3Zggrm12Faw4E4zTvTM1692Sz/bNwMxLNw==}
|
||||
|
||||
'@glimmer/wire-format@0.84.3':
|
||||
resolution: {integrity: sha512-aZVfQhqv4k7tTo2vwjy+b4mAxKt7cHH75JR3zAeCilimApa+yYTYUyY73NDNSUVbelgAlQ5s6vTiMSQ55WwVow==}
|
||||
|
||||
@@ -2395,9 +2366,6 @@ packages:
|
||||
'@xtuc/long@4.2.2':
|
||||
resolution: {integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==}
|
||||
|
||||
'@yarnpkg/lockfile@1.1.0':
|
||||
resolution: {integrity: sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==}
|
||||
|
||||
'@zestia/ember-dragula@12.1.0':
|
||||
resolution: {integrity: sha512-iDc0qgdHobvMuoXB0tij+cVR8xmaEdBml97XwUkykbu7st7W0E6waWo65Qei+d8wHlCoFxchd9/7HOXHT0+73Q==}
|
||||
engines: {node: 16.* || >= 18}
|
||||
@@ -3273,7 +3241,6 @@ packages:
|
||||
|
||||
chokidar@2.1.8:
|
||||
resolution: {integrity: sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==}
|
||||
deprecated: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies
|
||||
|
||||
chokidar@3.6.0:
|
||||
resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==}
|
||||
@@ -4043,10 +4010,6 @@ packages:
|
||||
resolution: {integrity: sha512-GKHhT4HD2fhtDnuBk6eCdCA8XGew9hY7TVs8zjrykegiI7weC0CGtpJscmIG3O0gEEb0d07UTkF2pjfNGLx4Nw==}
|
||||
engines: {node: '>= 12'}
|
||||
|
||||
ember-ast-helpers@0.3.5:
|
||||
resolution: {integrity: sha512-ZtaGAUDvRX13G9D4t4WbTMhcUzqsw6KqhcHreIiZi3ZhRFlSZ3BumgyJ6buDZj+tCBLiQsxRv7l5AY6imqNR6Q==}
|
||||
engines: {node: '>= 6'}
|
||||
|
||||
ember-ast-helpers@0.4.0:
|
||||
resolution: {integrity: sha512-3gBsatspW3AT2hwzD27aQbgyWA29RXeMxCnMYgFBYtmS/T1M6TxuatEgfpofKqai4OC/JijftmN4s6dydeXGzQ==}
|
||||
engines: {node: '>= 6'}
|
||||
@@ -5176,7 +5139,7 @@ packages:
|
||||
resolution: {integrity: sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==}
|
||||
engines: {node: '>= 4.0'}
|
||||
os: [darwin]
|
||||
deprecated: The v1 package contains DANGEROUS / INSECURE binaries. Upgrade to safe fsevents v2
|
||||
deprecated: Upgrade to fsevents v2 to mitigate potential security issues
|
||||
|
||||
fsevents@2.3.3:
|
||||
resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
|
||||
@@ -5967,9 +5930,6 @@ packages:
|
||||
resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
|
||||
klaw-sync@6.0.0:
|
||||
resolution: {integrity: sha512-nIeuVSzdCCs6TDPTqI8w1Yre34sSq7AkZ4B3sfOBbI2CgVSB4Du4aLQijFU2+lhAFCwt9+42Hel6lQNIv6AntQ==}
|
||||
|
||||
known-css-properties@0.29.0:
|
||||
resolution: {integrity: sha512-Ne7wqW7/9Cz54PDt4I3tcV+hAyat8ypyOGzYRJQfdxnnjeWsTxt1cy8pjvvKeI5kfXuyvULyeeAvwvvtAX3ayQ==}
|
||||
|
||||
@@ -5990,14 +5950,6 @@ packages:
|
||||
leaflet-draw@1.0.4:
|
||||
resolution: {integrity: sha512-rsQ6saQO5ST5Aj6XRFylr5zvarWgzWnrg46zQ1MEOEIHsppdC/8hnN8qMoFvACsPvTioAuysya/TVtog15tyAQ==}
|
||||
|
||||
leaflet-drift-marker@2.0.0:
|
||||
resolution: {integrity: sha512-dmYMW5A/rpNA2YGnakMzhhQNGJADjJG1L6THa/UKMYZ/CI3podhmsCaWCNh0/DnqcxRaSCR/8JBp+iimNx7lEQ==}
|
||||
peerDependencies:
|
||||
leaflet: '>=1.2.0'
|
||||
|
||||
leaflet-rotatedmarker@0.2.0:
|
||||
resolution: {integrity: sha512-yc97gxLXwbZa+Gk9VCcqI0CkvIBC9oNTTjFsHqq4EQvANrvaboib4UdeQLyTnEqDpaXHCqzwwVIDHtvz2mUiDg==}
|
||||
|
||||
leaflet@1.9.4:
|
||||
resolution: {integrity: sha512-nxS1ynzJOmOlHp+iL3FyWqK89GtNL8U8rvlMOsQdTTssxZwCXh8N2NB3GDQOL+YR3XnWyZAxwQixURb+FA74PA==}
|
||||
|
||||
@@ -6698,10 +6650,6 @@ packages:
|
||||
resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
|
||||
engines: {node: '>=6'}
|
||||
|
||||
open@7.4.2:
|
||||
resolution: {integrity: sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==}
|
||||
engines: {node: '>=8'}
|
||||
|
||||
optionator@0.9.4:
|
||||
resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==}
|
||||
engines: {node: '>= 0.8.0'}
|
||||
@@ -6853,11 +6801,6 @@ packages:
|
||||
resolution: {integrity: sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
|
||||
patch-package@8.0.0:
|
||||
resolution: {integrity: sha512-da8BVIhzjtgScwDJ2TtKsfT5JFWz1hYoBl9rUQ1f38MC2HwnEIkK8VN3dKMKcP7P7bvvgzNDbfNHtx3MsQb5vA==}
|
||||
engines: {node: '>=14', npm: '>5'}
|
||||
hasBin: true
|
||||
|
||||
path-browserify@0.0.1:
|
||||
resolution: {integrity: sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==}
|
||||
|
||||
@@ -8033,9 +7976,6 @@ packages:
|
||||
silent-error@1.1.1:
|
||||
resolution: {integrity: sha512-n4iEKyNcg4v6/jpb3c0/iyH2G1nzUNl7Gpqtn/mHIJK9S/q/7MCfoO4rwVOoO59qPFIc0hVHvMbiOJ0NdtxKKw==}
|
||||
|
||||
simple-html-tokenizer@0.3.0:
|
||||
resolution: {integrity: sha512-cuUWLyKJbCExtBmxJWhmIk/KIbMF1yOuNaansJiPEdxqitM7r7So3a1M4Sw2uqfNYWjBTiVVdJjb7vtYIaEjhw==}
|
||||
|
||||
simple-html-tokenizer@0.5.11:
|
||||
resolution: {integrity: sha512-C2WEK/Z3HoSFbYq8tI7ni3eOo/NneSPRoPpcM7WdLjFOArFuyXEjAoCdOC3DgMfRyziZQ1hCNR4mrNdWEvD0og==}
|
||||
|
||||
@@ -8043,10 +7983,6 @@ packages:
|
||||
resolution: {integrity: sha512-3TYDR7xWt4dIqV2JauJr+EJeW356RXijHeUlO+8djJ+uBXPn8/2dpzBc8yQhh583sVvc9CvFAeQVgijsH+PNNg==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
|
||||
slash@2.0.0:
|
||||
resolution: {integrity: sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==}
|
||||
engines: {node: '>=6'}
|
||||
|
||||
slash@3.0.0:
|
||||
resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
|
||||
engines: {node: '>=8'}
|
||||
@@ -10623,13 +10559,13 @@ snapshots:
|
||||
|
||||
'@eslint/js@8.57.0': {}
|
||||
|
||||
'@fleetbase/billing-engine@0.1.0(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)':
|
||||
'@fleetbase/billing-engine@0.1.1(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)':
|
||||
dependencies:
|
||||
'@adopted-ember-addons/ember-stripe-elements': 2.0.5
|
||||
'@babel/core': 7.25.2
|
||||
'@fleetbase/ember-core': 0.2.17(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
'@fleetbase/ember-ui': 0.2.24(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
'@fortawesome/ember-fontawesome': 0.4.3(rollup@2.79.1)
|
||||
'@fleetbase/ember-core': 0.2.19(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
'@fleetbase/ember-ui': 0.2.32(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
'@fortawesome/ember-fontawesome': 2.0.0(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(rollup@2.79.1)(webpack@5.94.0)
|
||||
'@fortawesome/fontawesome-svg-core': 6.4.0
|
||||
'@fortawesome/free-solid-svg-icons': 6.4.0
|
||||
ember-cli-babel: 8.2.0(@babel/core@7.25.2)
|
||||
@@ -10664,15 +10600,16 @@ snapshots:
|
||||
- webpack-cli
|
||||
- webpack-command
|
||||
|
||||
'@fleetbase/dev-engine@0.2.6(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)':
|
||||
'@fleetbase/dev-engine@0.2.7(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)':
|
||||
dependencies:
|
||||
'@babel/core': 7.25.2
|
||||
'@fleetbase/ember-core': 0.2.17(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
'@fleetbase/ember-ui': 0.2.24(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
'@fleetbase/ember-core': 0.2.19(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
'@fleetbase/ember-ui': 0.2.32(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
'@fortawesome/ember-fontawesome': 2.0.0(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(rollup@2.79.1)(webpack@5.94.0)
|
||||
'@fortawesome/fontawesome-svg-core': 6.4.0
|
||||
'@fortawesome/free-brands-svg-icons': 6.4.0
|
||||
'@fortawesome/free-solid-svg-icons': 6.4.0
|
||||
ember-auto-import: 2.7.4(webpack@5.94.0)
|
||||
ember-cli-babel: 8.2.0(@babel/core@7.25.2)
|
||||
ember-cli-htmlbars: 6.3.0
|
||||
ember-engines: 0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))
|
||||
@@ -10712,7 +10649,7 @@ snapshots:
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
'@fleetbase/ember-core@0.2.17(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)':
|
||||
'@fleetbase/ember-core@0.2.19(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)':
|
||||
dependencies:
|
||||
'@babel/core': 7.25.2
|
||||
compress-json: 3.1.0
|
||||
@@ -10745,7 +10682,7 @@ snapshots:
|
||||
- utf-8-validate
|
||||
- webpack
|
||||
|
||||
'@fleetbase/ember-ui@0.2.24(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)':
|
||||
'@fleetbase/ember-ui@0.2.32(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)':
|
||||
dependencies:
|
||||
'@babel/core': 7.25.2
|
||||
'@ember/render-modifiers': 2.1.0(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))
|
||||
@@ -10802,7 +10739,9 @@ snapshots:
|
||||
ember-file-upload: 8.4.0(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-modifier@4.2.0(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
ember-focus-trap: 1.1.0(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))
|
||||
ember-get-config: 2.1.1
|
||||
ember-gridstack: 4.0.0(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
ember-inflector: 4.0.3(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))
|
||||
ember-leaflet: 5.1.3(patch_hash=2hdi7ajimhpivctwjmqkqnthem)(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(leaflet@1.9.4)(webpack@5.94.0)
|
||||
ember-loading: 2.0.0(@babel/core@7.25.2)
|
||||
ember-math-helpers: 4.0.0(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))
|
||||
ember-modifier: 4.2.0(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))
|
||||
@@ -10815,8 +10754,10 @@ snapshots:
|
||||
ember-truth-helpers: 4.0.3(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))
|
||||
ember-window-mock: 0.9.0(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))
|
||||
ember-wormhole: 0.6.0
|
||||
gridstack: 7.3.0
|
||||
imask: 6.6.3
|
||||
intl-tel-input: 22.0.2
|
||||
leaflet: 1.9.4
|
||||
postcss-at-rules-variables: 0.3.0(postcss@8.4.41)
|
||||
postcss-conditionals-renewed: 1.0.0(postcss@8.4.41)
|
||||
postcss-each: 1.1.0(postcss@8.4.41)
|
||||
@@ -10843,10 +10784,10 @@ snapshots:
|
||||
- webpack-cli
|
||||
- webpack-command
|
||||
|
||||
'@fleetbase/fleetops-data@0.1.17(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)':
|
||||
'@fleetbase/fleetops-data@0.1.18(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)':
|
||||
dependencies:
|
||||
'@babel/core': 7.25.2
|
||||
'@fleetbase/ember-core': 0.2.17(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
'@fleetbase/ember-core': 0.2.19(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
date-fns: 2.30.0
|
||||
ember-cli-babel: 8.2.0(@babel/core@7.25.2)
|
||||
ember-cli-htmlbars: 6.3.0
|
||||
@@ -10862,12 +10803,12 @@ snapshots:
|
||||
- utf-8-validate
|
||||
- webpack
|
||||
|
||||
'@fleetbase/fleetops-engine@0.5.7(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)':
|
||||
'@fleetbase/fleetops-engine@0.5.8(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)':
|
||||
dependencies:
|
||||
'@babel/core': 7.25.2
|
||||
'@fleetbase/ember-core': 0.2.17(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
'@fleetbase/ember-ui': 0.2.24(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
'@fleetbase/fleetops-data': 0.1.17(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
'@fleetbase/ember-core': 0.2.19(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
'@fleetbase/ember-ui': 0.2.32(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
'@fleetbase/fleetops-data': 0.1.18(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
'@fleetbase/leaflet-routing-machine': 3.2.16
|
||||
'@fortawesome/ember-fontawesome': 2.0.0(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(rollup@2.79.1)(webpack@5.94.0)
|
||||
'@fortawesome/fontawesome-svg-core': 6.4.0
|
||||
@@ -10875,24 +10816,22 @@ snapshots:
|
||||
'@fortawesome/free-solid-svg-icons': 6.4.0
|
||||
'@joint/core': 4.0.4
|
||||
'@joint/layout-directed-graph': 4.0.3
|
||||
'@stripe/connect-js': 3.3.10
|
||||
'@terraformer/spatial': 2.2.1
|
||||
'@zestia/ember-dragula': 12.1.0(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
broccoli-funnel: 3.0.8
|
||||
broccoli-merge-trees: 4.2.0
|
||||
ember-auto-import: 2.7.4(webpack@5.94.0)
|
||||
ember-cli-babel: 8.2.0(@babel/core@7.25.2)
|
||||
ember-cli-htmlbars: 6.3.0
|
||||
ember-drag-sort: 3.0.1
|
||||
ember-engines: 0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))
|
||||
ember-intl: 6.3.2(@babel/core@7.25.2)(webpack@5.94.0)
|
||||
ember-leaflet: 5.1.3(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(leaflet@1.9.4)(webpack@5.94.0)
|
||||
ember-radio-button: 3.0.0-beta.1
|
||||
ember-tag-input: 3.1.0
|
||||
ember-wormhole: 0.6.0
|
||||
leaflet: 1.9.4
|
||||
leaflet-contextmenu: 1.4.0
|
||||
leaflet-draw: 1.0.4
|
||||
leaflet-drift-marker: 2.0.0(leaflet@1.9.4)
|
||||
leaflet-rotatedmarker: 0.2.0
|
||||
transitivePeerDependencies:
|
||||
- '@ember/string'
|
||||
- '@ember/test-helpers'
|
||||
@@ -10919,14 +10858,16 @@ snapshots:
|
||||
- webpack-cli
|
||||
- webpack-command
|
||||
|
||||
'@fleetbase/flespi-engine@0.1.12(@babel/core@7.25.2)(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)':
|
||||
'@fleetbase/flespi-engine@0.1.13(@babel/core@7.25.2)(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)':
|
||||
dependencies:
|
||||
'@fleetbase/ember-core': 0.2.17(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
'@fleetbase/ember-ui': 0.2.24(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
'@fleetbase/fleetops-data': 0.1.17(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
'@fleetbase/ember-core': 0.2.19(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
'@fleetbase/ember-ui': 0.2.32(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
'@fleetbase/fleetops-data': 0.1.18(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
'@fortawesome/ember-fontawesome': 2.0.0(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(rollup@2.79.1)(webpack@5.94.0)
|
||||
'@fortawesome/fontawesome-svg-core': 6.4.0
|
||||
'@fortawesome/free-brands-svg-icons': 6.4.0
|
||||
'@fortawesome/free-solid-svg-icons': 6.4.0
|
||||
ember-auto-import: 2.7.4(webpack@5.94.0)
|
||||
ember-cli-babel: 8.2.0(@babel/core@7.25.2)
|
||||
ember-cli-htmlbars: 6.3.0
|
||||
ember-engines: 0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))
|
||||
@@ -10960,15 +10901,16 @@ snapshots:
|
||||
- webpack-cli
|
||||
- webpack-command
|
||||
|
||||
'@fleetbase/iam-engine@0.1.0(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)':
|
||||
'@fleetbase/iam-engine@0.1.1(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)':
|
||||
dependencies:
|
||||
'@babel/core': 7.25.2
|
||||
'@fleetbase/ember-core': 0.2.17(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
'@fleetbase/ember-ui': 0.2.24(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
'@fleetbase/ember-core': 0.2.19(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
'@fleetbase/ember-ui': 0.2.32(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
'@fortawesome/ember-fontawesome': 2.0.0(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(rollup@2.79.1)(webpack@5.94.0)
|
||||
'@fortawesome/fontawesome-svg-core': 6.4.0
|
||||
'@fortawesome/free-brands-svg-icons': 6.4.0
|
||||
'@fortawesome/free-solid-svg-icons': 6.4.0
|
||||
ember-auto-import: 2.7.4(webpack@5.94.0)
|
||||
ember-cli-babel: 8.2.0(@babel/core@7.25.2)
|
||||
ember-cli-htmlbars: 6.3.0
|
||||
ember-engines: 0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))
|
||||
@@ -11012,11 +10954,11 @@ snapshots:
|
||||
'@mapbox/polyline': 0.2.0
|
||||
osrm-text-instructions: 0.13.4
|
||||
|
||||
'@fleetbase/registry-bridge-engine@0.0.13(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)':
|
||||
'@fleetbase/registry-bridge-engine@0.0.14(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)':
|
||||
dependencies:
|
||||
'@babel/core': 7.25.2
|
||||
'@fleetbase/ember-core': 0.2.17(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
'@fleetbase/ember-ui': 0.2.24(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
'@fleetbase/ember-core': 0.2.19(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
'@fleetbase/ember-ui': 0.2.32(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
'@fortawesome/ember-fontawesome': 2.0.0(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(rollup@2.79.1)(webpack@5.94.0)
|
||||
'@fortawesome/fontawesome-svg-core': 6.4.0
|
||||
'@fortawesome/free-brands-svg-icons': 6.4.0
|
||||
@@ -11056,16 +10998,17 @@ snapshots:
|
||||
- webpack-cli
|
||||
- webpack-command
|
||||
|
||||
'@fleetbase/storefront-engine@0.3.14(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)':
|
||||
'@fleetbase/storefront-engine@0.3.15(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-engines@0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)':
|
||||
dependencies:
|
||||
'@babel/core': 7.25.2
|
||||
'@fleetbase/ember-core': 0.2.17(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
'@fleetbase/ember-ui': 0.2.24(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
'@fleetbase/fleetops-data': 0.1.17(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
'@fleetbase/ember-core': 0.2.19(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
'@fleetbase/ember-ui': 0.2.32(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(@glimmer/component@1.1.2(@babel/core@7.25.2))(@glimmer/tracking@1.1.2)(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(postcss@8.4.41)(rollup@2.79.1)(tracked-built-ins@3.3.0)(webpack@5.94.0)
|
||||
'@fleetbase/fleetops-data': 0.1.18(@ember/string@3.1.1)(@ember/test-helpers@3.3.1(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0))(ember-resolver@11.0.1(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)
|
||||
'@fortawesome/ember-fontawesome': 2.0.0(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(rollup@2.79.1)(webpack@5.94.0)
|
||||
'@fortawesome/fontawesome-svg-core': 6.4.0
|
||||
'@fortawesome/free-brands-svg-icons': 6.4.0
|
||||
'@fortawesome/free-solid-svg-icons': 6.4.0
|
||||
ember-auto-import: 2.7.4(webpack@5.94.0)
|
||||
ember-cli-babel: 8.2.0(@babel/core@7.25.2)
|
||||
ember-cli-htmlbars: 6.3.0
|
||||
ember-engines: 0.9.0(@ember/legacy-built-in-components@0.4.2(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0)))(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))
|
||||
@@ -11152,27 +11095,6 @@ snapshots:
|
||||
intl-messageformat: 10.5.14
|
||||
tslib: 2.6.3
|
||||
|
||||
'@fortawesome/ember-fontawesome@0.4.3(rollup@2.79.1)':
|
||||
dependencies:
|
||||
'@fortawesome/fontawesome-svg-core': 6.4.0
|
||||
'@rollup/plugin-node-resolve': 15.2.3(rollup@2.79.1)
|
||||
broccoli-file-creator: 2.1.1
|
||||
broccoli-merge-trees: 4.2.0
|
||||
broccoli-plugin: 4.0.7
|
||||
broccoli-rollup: 5.0.0
|
||||
broccoli-source: 3.0.1
|
||||
camel-case: 4.1.2
|
||||
ember-ast-helpers: 0.3.5
|
||||
ember-cli-babel: 7.26.11
|
||||
ember-cli-htmlbars: 5.7.2
|
||||
ember-get-config: 2.1.1
|
||||
find-yarn-workspace-root: 2.0.0
|
||||
glob: 7.2.3
|
||||
transitivePeerDependencies:
|
||||
- '@glint/template'
|
||||
- rollup
|
||||
- supports-color
|
||||
|
||||
'@fortawesome/ember-fontawesome@2.0.0(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(rollup@2.79.1)(webpack@5.94.0)':
|
||||
dependencies:
|
||||
'@fortawesome/fontawesome-svg-core': 6.4.0
|
||||
@@ -11224,14 +11146,6 @@ snapshots:
|
||||
dependencies:
|
||||
'@fullcalendar/core': 6.1.15
|
||||
|
||||
'@glimmer/compiler@0.27.0':
|
||||
dependencies:
|
||||
'@glimmer/interfaces': 0.27.0
|
||||
'@glimmer/syntax': 0.27.0
|
||||
'@glimmer/util': 0.27.0
|
||||
'@glimmer/wire-format': 0.27.0
|
||||
simple-html-tokenizer: 0.3.0
|
||||
|
||||
'@glimmer/compiler@0.84.3':
|
||||
dependencies:
|
||||
'@glimmer/interfaces': 0.84.3
|
||||
@@ -11281,10 +11195,6 @@ snapshots:
|
||||
dependencies:
|
||||
'@glimmer/env': 0.1.7
|
||||
|
||||
'@glimmer/interfaces@0.27.0':
|
||||
dependencies:
|
||||
'@glimmer/wire-format': 0.27.0
|
||||
|
||||
'@glimmer/interfaces@0.84.3':
|
||||
dependencies:
|
||||
'@simple-dom/interface': 1.4.0
|
||||
@@ -11356,13 +11266,6 @@ snapshots:
|
||||
'@glimmer/wire-format': 0.84.3
|
||||
'@simple-dom/interface': 1.4.0
|
||||
|
||||
'@glimmer/syntax@0.27.0':
|
||||
dependencies:
|
||||
'@glimmer/interfaces': 0.27.0
|
||||
'@glimmer/util': 0.27.0
|
||||
handlebars: 4.7.8
|
||||
simple-html-tokenizer: 0.3.0
|
||||
|
||||
'@glimmer/syntax@0.84.3':
|
||||
dependencies:
|
||||
'@glimmer/interfaces': 0.84.3
|
||||
@@ -11375,8 +11278,6 @@ snapshots:
|
||||
'@glimmer/env': 0.1.7
|
||||
'@glimmer/validator': 0.44.0
|
||||
|
||||
'@glimmer/util@0.27.0': {}
|
||||
|
||||
'@glimmer/util@0.44.0': {}
|
||||
|
||||
'@glimmer/util@0.84.3':
|
||||
@@ -11403,10 +11304,6 @@ snapshots:
|
||||
'@glimmer/interfaces': 0.84.3
|
||||
'@glimmer/util': 0.84.3
|
||||
|
||||
'@glimmer/wire-format@0.27.0':
|
||||
dependencies:
|
||||
'@glimmer/util': 0.27.0
|
||||
|
||||
'@glimmer/wire-format@0.84.3':
|
||||
dependencies:
|
||||
'@glimmer/interfaces': 0.84.3
|
||||
@@ -12066,8 +11963,6 @@ snapshots:
|
||||
|
||||
'@xtuc/long@4.2.2': {}
|
||||
|
||||
'@yarnpkg/lockfile@1.1.0': {}
|
||||
|
||||
'@zestia/ember-dragula@12.1.0(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(webpack@5.94.0)':
|
||||
dependencies:
|
||||
'@ember/render-modifiers': 2.1.0(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))
|
||||
@@ -14136,19 +14031,14 @@ snapshots:
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
ember-ast-helpers@0.3.5:
|
||||
dependencies:
|
||||
'@glimmer/compiler': 0.27.0
|
||||
'@glimmer/syntax': 0.27.0
|
||||
|
||||
ember-ast-helpers@0.4.0: {}
|
||||
|
||||
ember-auto-import@1.12.2:
|
||||
dependencies:
|
||||
'@babel/core': 7.25.2
|
||||
'@babel/preset-env': 7.24.8(@babel/core@7.25.2)
|
||||
'@babel/traverse': 7.24.8
|
||||
'@babel/types': 7.24.9
|
||||
'@babel/traverse': 7.25.6
|
||||
'@babel/types': 7.25.6
|
||||
'@embroider/shared-internals': 1.8.3
|
||||
babel-core: 6.26.3
|
||||
babel-loader: 8.3.0(@babel/core@7.25.2)(webpack@4.47.0)
|
||||
@@ -14876,7 +14766,7 @@ snapshots:
|
||||
ember-concurrency-async@1.0.0(ember-concurrency@2.3.7(@babel/core@7.25.2)):
|
||||
dependencies:
|
||||
'@babel/helper-plugin-utils': 7.24.8
|
||||
'@babel/types': 7.24.9
|
||||
'@babel/types': 7.25.6
|
||||
ember-cli-babel: 7.26.11
|
||||
ember-cli-babel-plugin-helpers: 1.1.1
|
||||
ember-cli-htmlbars: 4.5.0
|
||||
@@ -14912,7 +14802,7 @@ snapshots:
|
||||
ember-concurrency@2.3.7(@babel/core@7.25.2):
|
||||
dependencies:
|
||||
'@babel/helper-plugin-utils': 7.24.8
|
||||
'@babel/types': 7.24.9
|
||||
'@babel/types': 7.25.6
|
||||
'@glimmer/tracking': 1.1.2
|
||||
ember-cli-babel: 7.26.11
|
||||
ember-cli-babel-plugin-helpers: 1.1.1
|
||||
@@ -15169,7 +15059,7 @@ snapshots:
|
||||
- supports-color
|
||||
- webpack
|
||||
|
||||
ember-leaflet@5.1.3(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(leaflet@1.9.4)(webpack@5.94.0):
|
||||
ember-leaflet@5.1.3(patch_hash=2hdi7ajimhpivctwjmqkqnthem)(@babel/core@7.25.2)(ember-source@5.4.1(@babel/core@7.25.2)(@glimmer/component@1.1.2(@babel/core@7.25.2))(rsvp@4.8.5)(webpack@5.94.0))(leaflet@1.9.4)(webpack@5.94.0):
|
||||
dependencies:
|
||||
'@glimmer/component': 1.1.2(@babel/core@7.25.2)
|
||||
'@glimmer/tracking': 1.1.2
|
||||
@@ -17290,10 +17180,6 @@ snapshots:
|
||||
|
||||
kind-of@6.0.3: {}
|
||||
|
||||
klaw-sync@6.0.0:
|
||||
dependencies:
|
||||
graceful-fs: 4.2.11
|
||||
|
||||
known-css-properties@0.29.0: {}
|
||||
|
||||
language-subtag-registry@0.3.23: {}
|
||||
@@ -17310,12 +17196,6 @@ snapshots:
|
||||
|
||||
leaflet-draw@1.0.4: {}
|
||||
|
||||
leaflet-drift-marker@2.0.0(leaflet@1.9.4):
|
||||
dependencies:
|
||||
leaflet: 1.9.4
|
||||
|
||||
leaflet-rotatedmarker@0.2.0: {}
|
||||
|
||||
leaflet@1.9.4: {}
|
||||
|
||||
levn@0.4.1:
|
||||
@@ -17985,11 +17865,6 @@ snapshots:
|
||||
dependencies:
|
||||
mimic-fn: 2.1.0
|
||||
|
||||
open@7.4.2:
|
||||
dependencies:
|
||||
is-docker: 2.2.1
|
||||
is-wsl: 2.2.0
|
||||
|
||||
optionator@0.9.4:
|
||||
dependencies:
|
||||
deep-is: 0.1.4
|
||||
@@ -18141,24 +18016,6 @@ snapshots:
|
||||
|
||||
pascalcase@0.1.1: {}
|
||||
|
||||
patch-package@8.0.0:
|
||||
dependencies:
|
||||
'@yarnpkg/lockfile': 1.1.0
|
||||
chalk: 4.1.2
|
||||
ci-info: 3.9.0
|
||||
cross-spawn: 7.0.3
|
||||
find-yarn-workspace-root: 2.0.0
|
||||
fs-extra: 9.1.0
|
||||
json-stable-stringify: 1.1.1
|
||||
klaw-sync: 6.0.0
|
||||
minimist: 1.2.8
|
||||
open: 7.4.2
|
||||
rimraf: 2.7.1
|
||||
semver: 7.6.3
|
||||
slash: 2.0.0
|
||||
tmp: 0.0.33
|
||||
yaml: 2.4.5
|
||||
|
||||
path-browserify@0.0.1: {}
|
||||
|
||||
path-dirname@1.0.2: {}
|
||||
@@ -18650,7 +18507,7 @@ snapshots:
|
||||
'@csstools/postcss-trigonometric-functions': 3.0.10(postcss@8.4.41)
|
||||
'@csstools/postcss-unset-value': 3.0.1(postcss@8.4.41)
|
||||
autoprefixer: 10.4.20(postcss@8.4.41)
|
||||
browserslist: 4.23.2
|
||||
browserslist: 4.23.3
|
||||
css-blank-pseudo: 6.0.2(postcss@8.4.41)
|
||||
css-has-pseudo: 6.0.5(postcss@8.4.41)
|
||||
css-prefers-color-scheme: 9.0.1(postcss@8.4.41)
|
||||
@@ -19479,14 +19336,10 @@ snapshots:
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
simple-html-tokenizer@0.3.0: {}
|
||||
|
||||
simple-html-tokenizer@0.5.11: {}
|
||||
|
||||
slash@1.0.0: {}
|
||||
|
||||
slash@2.0.0: {}
|
||||
|
||||
slash@3.0.0: {}
|
||||
|
||||
slash@4.0.0: {}
|
||||
|
||||
@@ -5,7 +5,7 @@ const recast = require('recast');
|
||||
const babelParser = require('recast/parsers/babel');
|
||||
const builders = recast.types.builders;
|
||||
|
||||
function getExtensionMountPath(extensionName) {
|
||||
function getExtensionMountPath (extensionName) {
|
||||
let extensionNameSegments = extensionName.split('/');
|
||||
let mountName = extensionNameSegments[1];
|
||||
|
||||
@@ -16,7 +16,7 @@ function getExtensionMountPath(extensionName) {
|
||||
return mountName.replace('-engine', '');
|
||||
}
|
||||
|
||||
function only(subject, props = []) {
|
||||
function only (subject, props = []) {
|
||||
const keys = Object.keys(subject);
|
||||
const result = {};
|
||||
|
||||
@@ -31,13 +31,13 @@ function only(subject, props = []) {
|
||||
return result;
|
||||
}
|
||||
|
||||
function getExtensions() {
|
||||
function getExtensions () {
|
||||
return new Promise((resolve, reject) => {
|
||||
const extensions = [];
|
||||
const seenPackages = new Set();
|
||||
|
||||
return fg(['node_modules/*/package.json', 'node_modules/*/*/package.json'])
|
||||
.then((results) => {
|
||||
.then(results => {
|
||||
for (let i = 0; i < results.length; i++) {
|
||||
const packagePath = results[i];
|
||||
const packageJson = fs.readFileSync(packagePath);
|
||||
@@ -69,7 +69,7 @@ function getExtensions() {
|
||||
});
|
||||
}
|
||||
|
||||
function getRouterFileContents() {
|
||||
function getRouterFileContents () {
|
||||
const routerFilePath = path.join(__dirname, 'router.map.js');
|
||||
const routerFileContents = fs.readFileSync(routerFilePath, 'utf-8');
|
||||
|
||||
@@ -78,24 +78,25 @@ function getRouterFileContents() {
|
||||
|
||||
(async () => {
|
||||
const extensions = await getExtensions();
|
||||
const consoleExtensions = extensions.filter(extension => !extension.fleetbase || extension.fleetbase.mount !== 'root');
|
||||
const rootExtensions = extensions.filter(extension => extension.fleetbase && extension.fleetbase.mount === 'root');
|
||||
const routerFileContents = getRouterFileContents();
|
||||
const ast = recast.parse(routerFileContents, { parser: babelParser });
|
||||
|
||||
recast.visit(ast, {
|
||||
visitCallExpression(path) {
|
||||
visitCallExpression (path) {
|
||||
if (path.value.type === 'CallExpression' && path.value.callee.property.name === 'route' && path.value.arguments[0].value === 'console') {
|
||||
let functionExpression;
|
||||
|
||||
// Find the function expression
|
||||
path.value.arguments.forEach((arg) => {
|
||||
path.value.arguments.forEach(arg => {
|
||||
if (arg.type === 'FunctionExpression') {
|
||||
functionExpression = arg;
|
||||
}
|
||||
});
|
||||
|
||||
if (functionExpression) {
|
||||
// Check and add the new engine mounts
|
||||
extensions.forEach((extension) => {
|
||||
consoleExtensions.forEach(extension => {
|
||||
const mountPath = getExtensionMountPath(extension.name);
|
||||
let route = mountPath;
|
||||
|
||||
@@ -104,7 +105,7 @@ function getRouterFileContents() {
|
||||
}
|
||||
|
||||
// Check if engine is already mounted
|
||||
const isMounted = functionExpression.body.body.some((expressionStatement) => {
|
||||
const isMounted = functionExpression.body.body.some(expressionStatement => {
|
||||
return expressionStatement.expression.arguments[0].value === extension.name;
|
||||
});
|
||||
|
||||
@@ -123,8 +124,46 @@ function getRouterFileContents() {
|
||||
);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
// console.log(path.value.callee.property.name);
|
||||
if (path.value.type === 'CallExpression' && path.value.callee.property.name === 'map') {
|
||||
let functionExpression;
|
||||
|
||||
path.value.arguments.forEach(arg => {
|
||||
if (arg.type === 'FunctionExpression') {
|
||||
functionExpression = arg;
|
||||
}
|
||||
});
|
||||
|
||||
if (functionExpression) {
|
||||
rootExtensions.forEach(extension => {
|
||||
const mountPath = getExtensionMountPath(extension.name);
|
||||
let route = mountPath;
|
||||
|
||||
if (extension.fleetbase && extension.fleetbase.route) {
|
||||
route = extension.fleetbase.route;
|
||||
}
|
||||
|
||||
const isMounted = functionExpression.body.body.some(expressionStatement => {
|
||||
return expressionStatement.expression.arguments[0].value === extension.name;
|
||||
});
|
||||
|
||||
if (!isMounted) {
|
||||
functionExpression.body.body.push(
|
||||
builders.expressionStatement(
|
||||
builders.callExpression(builders.memberExpression(builders.thisExpression(), builders.identifier('mount')), [
|
||||
builders.literal(extension.name),
|
||||
builders.objectExpression([
|
||||
builders.property('init', builders.identifier('as'), builders.literal(route)),
|
||||
builders.property('init', builders.identifier('path'), builders.literal(route)),
|
||||
]),
|
||||
])
|
||||
)
|
||||
);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -7,15 +7,18 @@ export default class Router extends EmberRouter {
|
||||
}
|
||||
|
||||
Router.map(function () {
|
||||
this.route('virtual', { path: '/:slug' });
|
||||
this.route('install');
|
||||
this.route('onboard', function () {
|
||||
this.route('verify-email');
|
||||
});
|
||||
this.route('auth', function () {
|
||||
this.route('login', { path: '/' });
|
||||
this.route('forgot-password');
|
||||
this.route('reset-password', { path: '/reset-password/:id' });
|
||||
this.route('two-fa');
|
||||
this.route('verification');
|
||||
});
|
||||
this.route('onboard', function () {
|
||||
this.route('verify-email');
|
||||
this.route('portal-login', { path: '/portal' });
|
||||
});
|
||||
this.route('invite', { path: 'join' }, function () {
|
||||
this.route('for-driver', { path: '/fleet/:public_id' });
|
||||
@@ -25,14 +28,14 @@ Router.map(function () {
|
||||
this.route('home', { path: '/' });
|
||||
this.route('notifications');
|
||||
this.route('account', function () {
|
||||
this.route('virtual', { path: '/:slug/:view' });
|
||||
this.route('virtual', { path: '/:slug' });
|
||||
this.route('auth');
|
||||
});
|
||||
this.route('settings', function () {
|
||||
this.route('virtual', { path: '/:slug/:view' });
|
||||
this.route('virtual', { path: '/:slug' });
|
||||
this.route('two-fa');
|
||||
});
|
||||
this.route('virtual', { path: '/:slug/:view' });
|
||||
this.route('virtual', { path: '/:slug' });
|
||||
this.route('admin', function () {
|
||||
this.route('config', function () {
|
||||
this.route('database');
|
||||
@@ -47,7 +50,7 @@ Router.map(function () {
|
||||
this.route('branding');
|
||||
this.route('notifications');
|
||||
this.route('two-fa-settings');
|
||||
this.route('virtual', { path: '/:slug/:view' });
|
||||
this.route('virtual', { path: '/:slug' });
|
||||
this.route('organizations', function () {
|
||||
this.route('index', { path: '/' }, function () {
|
||||
this.route('users', { path: '/:public_id/users' });
|
||||
@@ -58,5 +61,4 @@ Router.map(function () {
|
||||
});
|
||||
});
|
||||
});
|
||||
this.route('install');
|
||||
});
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
import { module, test } from 'qunit';
|
||||
import { setupRenderingTest } from '@fleetbase/console/tests/helpers';
|
||||
import { render } from '@ember/test-helpers';
|
||||
import { hbs } from 'ember-cli-htmlbars';
|
||||
|
||||
module('Integration | Component | dashboard', function (hooks) {
|
||||
setupRenderingTest(hooks);
|
||||
|
||||
test('it renders', async function (assert) {
|
||||
// Set any properties with this.set('myProperty', 'value');
|
||||
// Handle any actions with this.set('myAction', function(val) { ... });
|
||||
|
||||
await render(hbs`<Dashboard />`);
|
||||
|
||||
assert.dom(this.element).hasText('');
|
||||
|
||||
// Template block usage:
|
||||
await render(hbs`
|
||||
<Dashboard>
|
||||
template block text
|
||||
</Dashboard>
|
||||
`);
|
||||
|
||||
assert.dom(this.element).hasText('template block text');
|
||||
});
|
||||
});
|
||||
@@ -1,26 +0,0 @@
|
||||
import { module, test } from 'qunit';
|
||||
import { setupRenderingTest } from '@fleetbase/console/tests/helpers';
|
||||
import { render } from '@ember/test-helpers';
|
||||
import { hbs } from 'ember-cli-htmlbars';
|
||||
|
||||
module('Integration | Component | dashboard/create', function (hooks) {
|
||||
setupRenderingTest(hooks);
|
||||
|
||||
test('it renders', async function (assert) {
|
||||
// Set any properties with this.set('myProperty', 'value');
|
||||
// Handle any actions with this.set('myAction', function(val) { ... });
|
||||
|
||||
await render(hbs`<Dashboard::Create />`);
|
||||
|
||||
assert.dom(this.element).hasText('');
|
||||
|
||||
// Template block usage:
|
||||
await render(hbs`
|
||||
<Dashboard::Create>
|
||||
template block text
|
||||
</Dashboard::Create>
|
||||
`);
|
||||
|
||||
assert.dom(this.element).hasText('template block text');
|
||||
});
|
||||
});
|
||||
@@ -1,17 +0,0 @@
|
||||
import { module, test } from 'qunit';
|
||||
import { setupRenderingTest } from '@fleetbase/console/tests/helpers';
|
||||
import { render } from '@ember/test-helpers';
|
||||
import { hbs } from 'ember-cli-htmlbars';
|
||||
|
||||
module('Integration | Helper | spread-widget-options', function (hooks) {
|
||||
setupRenderingTest(hooks);
|
||||
|
||||
// TODO: Replace this with your real tests.
|
||||
test('it renders', async function (assert) {
|
||||
this.set('inputValue', '1234');
|
||||
|
||||
await render(hbs`{{spread-widget-options this.inputValue}}`);
|
||||
|
||||
assert.dom().hasText('1234');
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,12 @@
|
||||
import { module, test } from 'qunit';
|
||||
import { setupTest } from '@fleetbase/console/tests/helpers';
|
||||
|
||||
module('Unit | Controller | console/account/virtual', function (hooks) {
|
||||
setupTest(hooks);
|
||||
|
||||
// TODO: Replace this with your real tests.
|
||||
test('it exists', function (assert) {
|
||||
let controller = this.owner.lookup('controller:console/account/virtual');
|
||||
assert.ok(controller);
|
||||
});
|
||||
});
|
||||
12
console/tests/unit/controllers/console/admin/virtual-test.js
Normal file
12
console/tests/unit/controllers/console/admin/virtual-test.js
Normal file
@@ -0,0 +1,12 @@
|
||||
import { module, test } from 'qunit';
|
||||
import { setupTest } from '@fleetbase/console/tests/helpers';
|
||||
|
||||
module('Unit | Controller | console/admin/virtual', function (hooks) {
|
||||
setupTest(hooks);
|
||||
|
||||
// TODO: Replace this with your real tests.
|
||||
test('it exists', function (assert) {
|
||||
let controller = this.owner.lookup('controller:console/admin/virtual');
|
||||
assert.ok(controller);
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,12 @@
|
||||
import { module, test } from 'qunit';
|
||||
import { setupTest } from '@fleetbase/console/tests/helpers';
|
||||
|
||||
module('Unit | Controller | console/settings/virtual', function (hooks) {
|
||||
setupTest(hooks);
|
||||
|
||||
// TODO: Replace this with your real tests.
|
||||
test('it exists', function (assert) {
|
||||
let controller = this.owner.lookup('controller:console/settings/virtual');
|
||||
assert.ok(controller);
|
||||
});
|
||||
});
|
||||
@@ -1,12 +1,12 @@
|
||||
import { module, test } from 'qunit';
|
||||
import { setupTest } from '@fleetbase/console/tests/helpers';
|
||||
|
||||
module('Unit | Service | dashboard', function (hooks) {
|
||||
module('Unit | Controller | console/virtual', function (hooks) {
|
||||
setupTest(hooks);
|
||||
|
||||
// TODO: Replace this with your real tests.
|
||||
test('it exists', function (assert) {
|
||||
let service = this.owner.lookup('service:dashboard');
|
||||
assert.ok(service);
|
||||
let controller = this.owner.lookup('controller:console/virtual');
|
||||
assert.ok(controller);
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,39 @@
|
||||
import Application from '@ember/application';
|
||||
|
||||
import config from '@fleetbase/console/config/environment';
|
||||
import { initialize } from '@fleetbase/console/instance-initializers/load-leaflet';
|
||||
import { module, test } from 'qunit';
|
||||
import Resolver from 'ember-resolver';
|
||||
import { run } from '@ember/runloop';
|
||||
|
||||
module('Unit | Instance Initializer | load-leaflet', function (hooks) {
|
||||
hooks.beforeEach(function () {
|
||||
this.TestApplication = class TestApplication extends Application {
|
||||
modulePrefix = config.modulePrefix;
|
||||
podModulePrefix = config.podModulePrefix;
|
||||
Resolver = Resolver;
|
||||
};
|
||||
|
||||
this.TestApplication.instanceInitializer({
|
||||
name: 'initializer under test',
|
||||
initialize,
|
||||
});
|
||||
|
||||
this.application = this.TestApplication.create({
|
||||
autoboot: false,
|
||||
});
|
||||
|
||||
this.instance = this.application.buildInstance();
|
||||
});
|
||||
hooks.afterEach(function () {
|
||||
run(this.instance, 'destroy');
|
||||
run(this.application, 'destroy');
|
||||
});
|
||||
|
||||
// TODO: Replace this with your real tests.
|
||||
test('it works', async function (assert) {
|
||||
await this.instance.boot();
|
||||
|
||||
assert.ok(true);
|
||||
});
|
||||
});
|
||||
11
console/tests/unit/routes/virtual-test.js
Normal file
11
console/tests/unit/routes/virtual-test.js
Normal file
@@ -0,0 +1,11 @@
|
||||
import { module, test } from 'qunit';
|
||||
import { setupTest } from '@fleetbase/console/tests/helpers';
|
||||
|
||||
module('Unit | Route | virtual', function (hooks) {
|
||||
setupTest(hooks);
|
||||
|
||||
test('it exists', function (assert) {
|
||||
let route = this.owner.lookup('route:virtual');
|
||||
assert.ok(route);
|
||||
});
|
||||
});
|
||||
364
console/translations/ar-ae.yml
Normal file
364
console/translations/ar-ae.yml
Normal file
@@ -0,0 +1,364 @@
|
||||
app:
|
||||
name: Fleetbase
|
||||
terms:
|
||||
new: جديد
|
||||
sort: ترتيب
|
||||
filter: تصفية
|
||||
columns: أعمدة
|
||||
settings: إعدادات
|
||||
home: الصفحة الرئيسية
|
||||
admin: مشرف
|
||||
logout: تسجيل الخروج
|
||||
dashboard: لوحة القيادة
|
||||
search: بحث
|
||||
search-input: إدخال البحث
|
||||
common:
|
||||
confirm: تأكيد
|
||||
edit: تحرير
|
||||
save: حفظ
|
||||
save-changes: حفظ التغييرات
|
||||
cancel: إلغاء
|
||||
2fa-config: تكوين المصادقة الثنائية
|
||||
account: حساب
|
||||
admin: مشرف
|
||||
branding: العلامة التجارية
|
||||
columns: أعمدة
|
||||
dashboard: لوحة القيادة
|
||||
date-of-birth: تاريخ الميلاد
|
||||
delete: حذف
|
||||
email: البريد الإلكتروني
|
||||
filesystem: نظام الملفات
|
||||
filter: تصفية
|
||||
home: الصفحة الرئيسية
|
||||
logout: تسجيل الخروج
|
||||
mail: بريد
|
||||
name: اسم
|
||||
new: جديد
|
||||
notification-channels: قنوات الإشعارات
|
||||
notifications: إشعارات
|
||||
organization: منظمة
|
||||
organizations: منظمات
|
||||
overview: نظرة عامة
|
||||
phone: رقم هاتفك
|
||||
profile: الملف الشخصي
|
||||
queue: قائمة الانتظار
|
||||
save-button-text: حفظ التغييرات
|
||||
search-input: إدخال البحث
|
||||
search: بحث
|
||||
services: خدمات
|
||||
settings: إعدادات
|
||||
socket: مقبس
|
||||
sort: ترتيب
|
||||
two-factor: المصادقة الثنائية
|
||||
uploading: جارٍ التحميل...
|
||||
your-profile: ملفك الشخصي
|
||||
created-at: تم الإنشاء في
|
||||
country: البلد
|
||||
phone-number: الهاتف
|
||||
status: الحالة
|
||||
close-and-save: إغلاق وحفظ
|
||||
users: المستخدمون
|
||||
changelog: سجل التغييرات
|
||||
ok: موافق
|
||||
select-file: اختر ملف
|
||||
back: رجوع
|
||||
next: التالي
|
||||
continue: متابعة
|
||||
done: تم
|
||||
export: تصدير
|
||||
reload: إعادة تحميل
|
||||
reload-data: إعادة تحميل البيانات
|
||||
unauthorized: غير مصرح
|
||||
unauthorized-to: غير مصرح لـ
|
||||
unauthorized-access: وصول غير مصرح
|
||||
unauthorized-access-message: وصول غير مصرح، يجب عليك طلب الأذونات للوصول.
|
||||
permissions-required-for-changes: ليس لديك الأذونات المطلوبة لإجراء التغييرات.
|
||||
push-notifications: إشعارات الدفع
|
||||
component:
|
||||
file:
|
||||
dropdown-label: إجراءات الملف
|
||||
import-modal:
|
||||
loading-message: جارٍ معالجة الاستيراد...
|
||||
drop-upload: إسقاط للتحميل
|
||||
invalid: غير صالح
|
||||
ready-upload: جاهز للتحميل.
|
||||
upload-spreadsheets: تحميل جداول البيانات
|
||||
drag-drop: اسحب وأفلت ملفات جداول البيانات في منطقة الإسقاط هذه
|
||||
button-text: أو اختر جداول البيانات للتحميل
|
||||
spreadsheets: جداول البيانات
|
||||
upload-queue: قائمة انتظار التحميل
|
||||
dropzone:
|
||||
file: ملف
|
||||
drop-to-upload: إسقاط للتحميل
|
||||
invalid: غير صالح
|
||||
files-ready-for-upload: >-
|
||||
{numOfFiles} جاهز للتحميل.
|
||||
upload-images-videos: تحميل الصور ومقاطع الفيديو
|
||||
upload-documents: تحميل المستندات
|
||||
upload-documents-files: تحميل المستندات والملفات
|
||||
upload-avatar-files: تحميل الصور الرمزية المخصصة
|
||||
dropzone-supported-images-videos: اسحب وأفلت ملفات الصور والفيديو في منطقة الإسقاط هذه
|
||||
dropzone-supported-avatars: اسحب وأفلت ملفات SVG أو PNG
|
||||
dropzone-supported-files: اسحب وأفلت الملفات في منطقة الإسقاط هذه
|
||||
or-select-button-text: أو اختر الملفات للتحميل.
|
||||
upload-queue: قائمة انتظار التحميل
|
||||
uploading: جارٍ التحميل...
|
||||
two-fa-enforcement-alert:
|
||||
message: لتعزيز أمان حسابك، تتطلب مؤسستك المصادقة الثنائية (2FA). قم بتمكين المصادقة الثنائية في إعدادات حسابك للحصول على طبقة إضافية من الحماية.
|
||||
button-text: إعداد المصادقة الثنائية
|
||||
comment-thread:
|
||||
publish-comment-button-text: نشر التعليق
|
||||
publish-reply-button-text: نشر الرد
|
||||
reply-comment-button-text: رد
|
||||
edit-comment-button-text: تحرير
|
||||
delete-comment-button-text: حذف
|
||||
comment-published-ago: >-
|
||||
{createdAgo} منذ
|
||||
comment-input-placeholder: أدخل تعليقًا جديدًا...
|
||||
comment-reply-placeholder: أدخل ردك...
|
||||
comment-input-empty-notification: لا يمكنك نشر تعليقات فارغة...
|
||||
comment-min-length-notification: يجب أن يكون التعليق على الأقل 2 حرف
|
||||
dashboard:
|
||||
select-dashboard: اختر لوحة القيادة
|
||||
create-new-dashboard: إنشاء لوحة قيادة جديدة
|
||||
create-a-new-dashboard: إنشاء لوحة قيادة جديدة
|
||||
confirm-create-dashboard: إنشاء لوحة القيادة!
|
||||
edit-layout: تحرير التخطيط
|
||||
add-widgets: إضافة عناصر واجهة
|
||||
delete-dashboard: حذف لوحة القيادة
|
||||
save-dashboard: حفظ لوحة القيادة
|
||||
you-cannot-delete-this-dashboard: لا يمكنك حذف هذه اللوحة.
|
||||
are-you-sure-you-want-delete-dashboard: هل أنت متأكد من حذف {dashboardName}؟
|
||||
dashboard-widget-panel:
|
||||
widget-name: >-
|
||||
عنصر واجهة {widgetName}
|
||||
select-widgets: اختر عناصر الواجهة
|
||||
close-and-save: إغلاق وحفظ
|
||||
services:
|
||||
dashboard-service:
|
||||
create-dashboard-success-notification: تم إنشاء لوحة القيادة الجديدة `{dashboardName}` بنجاح.
|
||||
delete-dashboard-success-notification: تم حذف لوحة القيادة `{dashboardName}`.
|
||||
auth:
|
||||
verification:
|
||||
header-title: التحقق من الحساب
|
||||
title: تحقق من عنوان بريدك الإلكتروني
|
||||
message-text: <strong>اقتربت من الانتهاء!</strong><br> تحقق من بريدك الإلكتروني للحصول على رمز التحقق.
|
||||
verification-code-text: أدخل رمز التحقق الذي تلقيته عبر البريد الإلكتروني.
|
||||
verification-input-label: رمز التحقق
|
||||
verify-button-text: تحقق واستمر
|
||||
didnt-receive-a-code: لم تتلق رمزًا بعد؟
|
||||
not-sent:
|
||||
message: لم تتلق رمزًا بعد؟
|
||||
alternative-choice: استخدم الخيارات البديلة أدناه للتحقق من حسابك.
|
||||
resend-email: إعادة إرسال البريد الإلكتروني
|
||||
send-by-sms: إرسال عبر الرسائل القصيرة
|
||||
two-fa:
|
||||
verify-code:
|
||||
verification-code: رمز التحقق
|
||||
check-title: تحقق من بريدك الإلكتروني أو هاتفك
|
||||
check-subtitle: لقد أرسلنا لك رمز تحقق. أدخل الرمز أدناه لإكمال عملية تسجيل الدخول.
|
||||
expired-help-text: انتهت صلاحية رمز المصادقة الثنائية الخاص بك. يمكنك طلب رمز آخر إذا كنت بحاجة إلى مزيد من الوقت.
|
||||
resend-code: إعادة إرسال الرمز
|
||||
verify-code: تحقق من الرمز
|
||||
cancel-two-factor: إلغاء المصادقة الثنائية
|
||||
invalid-session-error-notification: جلسة غير صالحة. حاول مرة أخرى.
|
||||
verification-successful-notification: تم التحقق بنجاح!
|
||||
verification-code-expired-notification: انتهت صلاحية رمز التحقق. يرجى طلب رمز جديد.
|
||||
verification-code-failed-notification: فشل التحقق. حاول مرة أخرى.
|
||||
resend-code:
|
||||
verification-code-resent-notification: تم إرسال رمز التحقق الجديد.
|
||||
verification-code-resent-error-notification: خطأ في إعادة إرسال رمز التحقق. حاول مرة أخرى.
|
||||
forgot-password:
|
||||
success-message: تحقق من بريدك الإلكتروني للمتابعة!
|
||||
is-sent:
|
||||
title: اقتربت من الانتهاء!
|
||||
message: <strong>تحقق من بريدك الإلكتروني!</strong><br> لقد أرسلنا لك رابطًا سحريًا إلى بريدك الإلكتروني سيسمح لك بإعادة تعيين كلمة المرور الخاصة بك. ينتهي صلاحية الرابط في 15 دقيقة.
|
||||
not-sent:
|
||||
title: هل نسيت كلمة المرور؟
|
||||
message: <strong>لا تقلق، نحن هنا لمساعدتك.</strong><br> أدخل البريد الإلكتروني الذي تستخدمه لتسجيل الدخول إلى {appName} وسنرسل لك رابطًا آمنًا لإعادة تعيين كلمة المرور الخاصة بك.
|
||||
form:
|
||||
email-label: عنوان بريدك الإلكتروني
|
||||
submit-button: حسنًا، أرسل لي رابطًا سحريًا!
|
||||
nevermind-button: لا تهتم
|
||||
login:
|
||||
title: تسجيل الدخول إلى حسابك
|
||||
no-identity-notification: هل نسيت إدخال بريدك الإلكتروني؟
|
||||
no-password-notification: هل نسيت إدخال كلمة المرور الخاصة بك؟
|
||||
unverified-notification: يجب التحقق من حسابك للمتابعة.
|
||||
password-reset-required: مطلوب إعادة تعيين كلمة المرور للمتابعة.
|
||||
failed-attempt:
|
||||
message: <strong>هل نسيت كلمة المرور الخاصة بك؟</strong><br> انقر على الزر أدناه لإعادة تعيين كلمة المرور الخاصة بك.
|
||||
button-text: حسنًا، ساعدني في إعادة التعيين!
|
||||
form:
|
||||
email-label: عنوان البريد الإلكتروني
|
||||
password-label: كلمة المرور
|
||||
remember-me-label: تذكرني
|
||||
forgot-password-label: هل نسيت كلمة المرور الخاصة بك؟
|
||||
sign-in-button: تسجيل الدخول
|
||||
create-account-button: إنشاء حساب جديد
|
||||
slow-connection-message: تواجه مشكلات في الاتصال.
|
||||
reset-password:
|
||||
success-message: تم إعادة تعيين كلمة المرور الخاصة بك! تسجيل الدخول للمتابعة.
|
||||
invalid-verification-code: هذا الرابط لإعادة تعيين كلمة المرور غير صالح أو منتهي الصلاحية.
|
||||
title: إعادة تعيين كلمة المرور الخاصة بك
|
||||
form:
|
||||
code:
|
||||
label: رمز إعادة التعيين الخاص بك
|
||||
help-text: رمز التحقق الذي تلقيته في بريدك الإلكتروني.
|
||||
password:
|
||||
label: كلمة مرور جديدة
|
||||
help-text: أدخل كلمة مرور لا تقل عن 6 أحرف للمتابعة.
|
||||
confirm-password:
|
||||
label: تأكيد كلمة المرور الجديدة
|
||||
help-text: أدخل كلمة مرور لا تقل عن 6 أحرف للمتابعة.
|
||||
submit-button: إعادة تعيين كلمة المرور
|
||||
back-button: رجوع
|
||||
console:
|
||||
create-or-join-organization:
|
||||
modal-title: إنشاء أو الانضمام إلى منظمة
|
||||
join-success-notification: لقد انضممت إلى منظمة جديدة!
|
||||
create-success-notification: لقد أنشأت منظمة جديدة!
|
||||
switch-organization:
|
||||
modal-title: هل أنت متأكد أنك تريد التبديل إلى المنظمة {organizationName}؟
|
||||
modal-body: من خلال التأكيد، سيظل حسابك مسجلاً الدخول، ولكن سيتم تبديل المنظمة الأساسية الخاصة بك.
|
||||
modal-accept-button-text: نعم، أريد التبديل إلى المنظمة
|
||||
success-notification: لقد قمت بتبديل المنظمات
|
||||
account:
|
||||
index:
|
||||
upload-new: تحميل جديد
|
||||
phone: رقم هاتفك.
|
||||
photos: الصور
|
||||
admin:
|
||||
schedule-monitor:
|
||||
schedule-monitor: مراقب الجدول
|
||||
task-logs-for: >-
|
||||
سجلات المهام لـ:
|
||||
showing-last-count: عرض آخر {count} سجلات
|
||||
name: الاسم
|
||||
type: النوع
|
||||
timezone: المنطقة الزمنية
|
||||
last-started: آخر بدء
|
||||
last-finished: آخر انتهاء
|
||||
last-failure: آخر فشل
|
||||
date: التاريخ
|
||||
memory: الذاكرة
|
||||
runtime: وقت التشغيل
|
||||
output: المخرجات
|
||||
no-output: لا توجد مخرجات
|
||||
config:
|
||||
database:
|
||||
title: تكوين قاعدة البيانات
|
||||
filesystem:
|
||||
title: تكوين نظام الملفات
|
||||
mail:
|
||||
title: تكوين البريد
|
||||
notification-channels:
|
||||
title: تكوين إشعارات الدفع
|
||||
queue:
|
||||
title: تكوين قائمة الانتظار
|
||||
services:
|
||||
title: تكوين الخدمات
|
||||
socket:
|
||||
title: تكوين المقبس
|
||||
branding:
|
||||
title: العلامة التجارية
|
||||
icon-text: أيقونة
|
||||
upload-new: تحميل جديد
|
||||
reset-default: إعادة التعيين إلى الافتراضي
|
||||
logo-text: شعار
|
||||
theme: السمة الافتراضية
|
||||
index:
|
||||
total-users: إجمالي المستخدمين
|
||||
total-organizations: إجمالي المنظمات
|
||||
total-transactions: إجمالي المعاملات
|
||||
notifications:
|
||||
title: الإشعارات
|
||||
notification-settings: إعدادات الإشعارات
|
||||
organizations:
|
||||
index:
|
||||
title: المنظمات
|
||||
owner-name-column: المالك
|
||||
owner-phone-column: هاتف المالك
|
||||
owner-email-column: بريد المالك
|
||||
users-count-column: المستخدمون
|
||||
phone-column: الهاتف
|
||||
email-column: البريد الإلكتروني
|
||||
users:
|
||||
title: المستخدمون
|
||||
settings:
|
||||
index:
|
||||
title: إعدادات المنظمة
|
||||
organization-name: اسم المنظمة
|
||||
organization-description: وصف المنظمة
|
||||
organization-phone: رقم هاتف المنظمة
|
||||
organization-currency: عملة المنظمة
|
||||
organization-id: معرف المنظمة
|
||||
organization-branding: العلامة التجارية للمنظمة
|
||||
logo: الشعار
|
||||
logo-help-text: شعار منظمتك.
|
||||
upload-new-logo: تحميل شعار جديد
|
||||
backdrop: الخلفية
|
||||
backdrop-help-text: لافتة اختيارية أو صورة خلفية لمنظمتك.
|
||||
upload-new-backdrop: تحميل خلفية جديدة
|
||||
extensions:
|
||||
title: الإضافات قادمة قريبًا!
|
||||
message: يرجى التحقق مرة أخرى في الإصدارات القادمة حيث نستعد لإطلاق مستودع الإضافات والسوق.
|
||||
notifications:
|
||||
select-all: تحديد الكل
|
||||
mark-as-read: تعليم كمقروء
|
||||
received: >-
|
||||
تم الاستلام:
|
||||
message: لا توجد إشعارات لعرضها.
|
||||
invite:
|
||||
for-users:
|
||||
invitation-message: لقد تمت دعوتك للانضمام إلى {companyName}
|
||||
invitation-sent-message: لقد تمت دعوتك للانضمام إلى منظمة {companyName} على {appName}. لقبول هذه الدعوة، أدخل رمز الدعوة الذي تلقيته عبر البريد الإلكتروني وانقر على متابعة.
|
||||
invitation-code-sent-text: رمز الدعوة الخاص بك
|
||||
accept-invitation-text: قبول الدعوة
|
||||
onboard:
|
||||
index:
|
||||
title: أنشئ حسابك
|
||||
welcome-title: <strong>مرحبًا بك في {companyName}!</strong><br />
|
||||
welcome-text: أكمل التفاصيل المطلوبة أدناه للبدء.
|
||||
full-name: الاسم الكامل
|
||||
full-name-help-text: اسمك الكامل
|
||||
your-email: عنوان البريد الإلكتروني
|
||||
your-email-help-text: عنوان بريدك الإلكتروني
|
||||
phone: رقم الهاتف
|
||||
phone-help-text: رقم هاتفك
|
||||
organization-name: اسم المنظمة
|
||||
organization-help-text: اسم منظمتك، سيتم إدارة جميع خدماتك ومواردك تحت هذه المنظمة، لاحقًا يمكنك إنشاء العديد من المنظمات كما تريد أو تحتاج.
|
||||
password: أدخل كلمة مرور
|
||||
password-help-text: كلمة مرورك، تأكد من أنها جيدة.
|
||||
confirm-password: تأكيد كلمة المرور
|
||||
confirm-password-help-text: فقط لتأكيد كلمة المرور التي أدخلتها أعلاه.
|
||||
continue-button-text: متابعة
|
||||
verify-email:
|
||||
header-title: التحقق من الحساب
|
||||
title: تحقق من عنوان بريدك الإلكتروني
|
||||
message-text: <strong>اقتربت من الانتهاء!</strong><br> تحقق من بريدك الإلكتروني للحصول على رمز التحقق.
|
||||
verification-code-text: أدخل رمز التحقق الذي تلقيته عبر البريد الإلكتروني.
|
||||
verification-input-label: رمز التحقق
|
||||
verify-button-text: تحقق واستمر
|
||||
didnt-receive-a-code: لم تتلق رمزًا بعد؟
|
||||
not-sent:
|
||||
message: لم تتلق رمزًا بعد؟
|
||||
alternative-choice: استخدم الخيارات البديلة أدناه للتحقق من حسابك.
|
||||
resend-email: إعادة إرسال البريد الإلكتروني
|
||||
send-by-sms: إرسال عبر الرسائل القصيرة
|
||||
install:
|
||||
installer-header: المثبت
|
||||
failed-message-sent: فشل التثبيت! انقر على الزر أدناه لإعادة محاولة التثبيت.
|
||||
retry-install: إعادة محاولة التثبيت
|
||||
start-install: بدء التثبيت
|
||||
layout:
|
||||
header:
|
||||
menus:
|
||||
organization:
|
||||
settings: إعدادات المنظمة
|
||||
create-or-join: إنشاء أو الانضمام إلى المنظمات
|
||||
explore-extensions: استكشاف الإضافات
|
||||
user:
|
||||
view-profile: عرض الملف الشخصي
|
||||
keyboard-shortcuts: عرض اختصارات لوحة المفاتيح
|
||||
changelog: سجل التغييرات
|
||||
357
console/translations/pt-br.yaml
Normal file
357
console/translations/pt-br.yaml
Normal file
@@ -0,0 +1,357 @@
|
||||
app:
|
||||
name: Fleetbase
|
||||
terms:
|
||||
new: Novo
|
||||
sort: Classificar
|
||||
filter: Filtrar
|
||||
columns: Colunas
|
||||
settings: Configurações
|
||||
home: Início
|
||||
admin: Admin
|
||||
logout: Desconectar
|
||||
dashboard: Painel
|
||||
search: Pesquisar
|
||||
search-input: Termo de Pesquisa
|
||||
common:
|
||||
confirm: Confirmar
|
||||
edit: Editar
|
||||
save: Salvar
|
||||
save-changes: Salvar Alterações
|
||||
cancel: Cancelar
|
||||
2fa-config: Configurações 2FA
|
||||
account: Conta
|
||||
admin: Admin
|
||||
branding: Marca
|
||||
columns: Colunas
|
||||
dashboard: Painel
|
||||
date-of-birth: Data de Nascimento
|
||||
delete: Deletar
|
||||
email: Email
|
||||
filesystem: Sistema de Arquivos
|
||||
filter: Filtrar
|
||||
home: Início
|
||||
logout: Desconectar
|
||||
mail: Mail (TRADUZIR)
|
||||
name: Nome
|
||||
new: Novo
|
||||
notification-channels: Canais de Notificações
|
||||
notifications: Notificações
|
||||
organization: Organização
|
||||
organizations: Organizações
|
||||
overview: Visão geral
|
||||
phone: Número de Telefone
|
||||
profile: Perfil
|
||||
queue: Fila
|
||||
save-button-text: Salvar Alterações
|
||||
search-input: Termo de Pesquisa
|
||||
search: Pesquisar
|
||||
services: Serviços
|
||||
settings: Configurações
|
||||
socket: Socket
|
||||
sort: Classificar
|
||||
two-factor: Dois Fatores
|
||||
uploading: Carregando...
|
||||
your-profile: Seu Perfil
|
||||
created-at: Criado em
|
||||
country: País
|
||||
phone-number: Telefone
|
||||
status: Status
|
||||
close-and-save: Fechar e Salvar
|
||||
users: Usuários
|
||||
changelog: Registro de Alterações
|
||||
ok: OK
|
||||
select-file: Selecionar Arquivo
|
||||
back: Voltar
|
||||
next: Próximo
|
||||
continue: Continuar
|
||||
done: Concluído
|
||||
export: Exportar
|
||||
reload: Recarregar
|
||||
reload-data: Recarregar dados
|
||||
component:
|
||||
file:
|
||||
dropdown-label: Ações do Arquivo
|
||||
import-modal:
|
||||
loading-message: Processando dados...
|
||||
drop-upload: Arraste para Carregar
|
||||
invalid: Invalido
|
||||
ready-upload: Pronto para Carregar.
|
||||
upload-spreadsheets: Carregar Planilhas
|
||||
drag-drop: Arraste e solte os arquivos das planilhas nesta área
|
||||
button-text: ou selecione planilhas para carregar
|
||||
spreadsheets: Planilhas
|
||||
upload-queue: Carregar Fila
|
||||
dropzone:
|
||||
file: Arquivo
|
||||
drop-to-upload: Solte para Carregar
|
||||
invalid: Invalido
|
||||
files-ready-for-upload: >-
|
||||
{numOfFiles} pronto fara carregar.
|
||||
upload-images-videos: Carregar Imagens & Videos
|
||||
upload-documents: Carregar Documentos
|
||||
upload-documents-files: Carregar Documentos & Arquivos
|
||||
upload-avatar-files: Carregar Avatares Customizados
|
||||
dropzone-supported-images-videos: Arraste e solte arquivos de imagens e videos nesta área
|
||||
dropzone-supported-avatars: Arraste e solte arquivos SVG ou PNG.
|
||||
dropzone-supported-files: Arraste e solte arquivos nesta área.
|
||||
or-select-button-text: or select files to upload.
|
||||
upload-queue: Carregar Fila
|
||||
uploading: Carregando...
|
||||
two-fa-enforcement-alert:
|
||||
message: Para aumentar a segurança da sua conta, sua organização requer Autenticação de Dois Fatores (2FA). Ative 2FA na configurações da conta para uma camada adicional de proteção.
|
||||
button-text: Ativar 2FA
|
||||
comment-thread:
|
||||
publish-comment-button-text: Publicar comentário
|
||||
publish-reply-button-text: Publicar resposta
|
||||
reply-comment-button-text: Reponder
|
||||
edit-comment-button-text: Editar
|
||||
delete-comment-button-text: Deletar
|
||||
comment-published-ago: >-
|
||||
{createdAgo} atrás
|
||||
comment-input-placeholder: Digite um novo comentário...
|
||||
comment-reply-placeholder: Digite sua resposta...
|
||||
comment-input-empty-notification: Você não pode publicar comentários em branco...
|
||||
comment-min-length-notification: Comentarários devem ter pelo menos 2 caracteres
|
||||
dashboard:
|
||||
select-dashboard: Selecionar Painel
|
||||
create-new-dashboard: Criar novo Painel
|
||||
create-a-new-dashboard: Create um novo Painel
|
||||
confirm-create-dashboard: Criar Painel!
|
||||
edit-layout: Editar layout
|
||||
add-widgets: Adicionar widgets (elementos)
|
||||
delete-dashboard: Deletar Painel
|
||||
save-dashboard: Salvar Painel
|
||||
you-cannot-delete-this-dashboard: Você não pode deletar esse painel.
|
||||
are-you-sure-you-want-delete-dashboard: Você tem certeza que deseja deletar {dashboardName}?
|
||||
dashboard-widget-panel:
|
||||
widget-name: >-
|
||||
{widgetName} Elemento
|
||||
select-widgets: Selecionar Elementos
|
||||
close-and-save: Fechar e Salvar
|
||||
services:
|
||||
dashboard-service:
|
||||
create-dashboard-success-notification: Novo painel `{dashboardName}` criado com sucesso.
|
||||
delete-dashboard-success-notification: Painel `{dashboardName}` foi deletado.
|
||||
auth:
|
||||
verification:
|
||||
header-title: Verificação de Conta
|
||||
title: Verifique seu endereço de Email.
|
||||
message-text: <strong>Quase Pronto!</strong><br> Verifique seu email para obter um código de verificação.
|
||||
verification-code-text: Digite o código de verificação recebido em seu email.
|
||||
verification-input-label: Código de Verificação
|
||||
verify-button-text: Verificar & Continuar
|
||||
didnt-receive-a-code: Ainda não recebeu o código?
|
||||
not-sent:
|
||||
message: Ainda não recebeu o código?
|
||||
alternative-choice: Use opções alternativas abaixo para verificar sua conta.
|
||||
resend-email: Reenviar Email
|
||||
send-by-sms: Enviar via SMS
|
||||
two-fa:
|
||||
verify-code:
|
||||
verification-code: Código de Verificação
|
||||
check-title: Verifique seu Email ou Telefone.
|
||||
check-subtitle: Nós enviamos um código de verificação. Digite o código abaixo para completar o processo de login.
|
||||
expired-help-text: Seu código de verificação 2FA expirou. Você pode pedir outro código se precisar de mais tempo.
|
||||
resend-code: Reenviar Código
|
||||
verify-code: Verificar Código
|
||||
cancel-two-factor: Cancelar Dois-Fatores
|
||||
invalid-session-error-notification: Sessão Inválida. Por favor tente novamente.
|
||||
verification-successful-notification: Verificação concluída!
|
||||
verification-code-expired-notification: Código de vericação expirado. Por favor peça um novo.
|
||||
verification-code-failed-notification: Verificação falhou. Por favor tente novamente.
|
||||
resend-code:
|
||||
verification-code-resent-notification: Novo código de verificação enviado.
|
||||
verification-code-resent-error-notification: Erro ao reenviar o código de verificação. Por favor tente novamente.
|
||||
forgot-password:
|
||||
success-message: Verifique seu email para continuar!
|
||||
is-sent:
|
||||
title: Quase Pronto!
|
||||
message: <strong>Verifique seu Email!</strong><br> Nós te enviamos um link mágico para o seu email que vai permitir você redefinir sua senha. O link expira em 15 minutos.
|
||||
not-sent:
|
||||
title: Esqueceu sua senha?
|
||||
message: <strong>Não se preocupe, nós damos um jeito.</strong><br> Digite o email que voce usa para fazer login no {appName} e nós te enviaremos um link seguro para redefinir sua senha.
|
||||
form:
|
||||
email-label: Seu endereço de Email
|
||||
submit-button: OK, me envie o link!
|
||||
nevermind-button: Deixa para lá.
|
||||
login:
|
||||
title: Entre na sua conta!
|
||||
no-identity-notification: Você se esqueceu de digitar seu email?
|
||||
no-password-notification: Você se esqueceu de digirar sua senha?
|
||||
unverified-notification: Sua conta precisa ser verificada para continuar.
|
||||
failed-attempt:
|
||||
message: <strong>Esqueceu a senha?</strong><br> Clique no botão abaixo para redefini-la.
|
||||
button-text: Ok, ajude-me a redefinir!
|
||||
form:
|
||||
email-label: Endereço de Email
|
||||
password-label: Senha
|
||||
remember-me-label: Lembre de mim
|
||||
forgot-password-label: Esqueceu sua Senha?
|
||||
sign-in-button: Entrar
|
||||
create-account-button: Criar uma Nova Conta
|
||||
slow-connection-message: Enfrentando problemas de conectividade.
|
||||
reset-password:
|
||||
success-message: Sua senha foi redefinida! Faça Login para continuar.
|
||||
invalid-verification-code: Esse link de redefinição de senha é inválido ou está expirado.
|
||||
title: Redefina sua senha
|
||||
form:
|
||||
code:
|
||||
label: Seu código de redefinição
|
||||
help-text: O código que você recebeu em seu email.
|
||||
password:
|
||||
label: Nova Senha
|
||||
help-text: Digite uma senha de pelo menos 6 caracteres para continuar.
|
||||
confirm-password:
|
||||
label: Confirme a nova Senha
|
||||
help-text: Digite uma senha de pelo menos 6 caracteres para continuar.
|
||||
submit-button: Redefinir Senha.
|
||||
back-button: Voltar
|
||||
console:
|
||||
create-or-join-organization:
|
||||
modal-title: Criar ou juntar-se a uma Organização
|
||||
join-success-notification: Você se juntou a uma organização!
|
||||
create-success-notification: Você criou uma nova organização!
|
||||
switch-organization:
|
||||
modal-title: Você tem certeza que deseja trocar de organização para {organizationName}?
|
||||
modal-body: Ao confirmar, sua conta permanecerá conectada, mas sua organização principal será alterada.
|
||||
modal-accept-button-text: Sim, quero mudar de organização
|
||||
success-notification: Você trocou de organização
|
||||
account:
|
||||
index:
|
||||
upload-new: Carregar novo
|
||||
phone: Seu telefone.
|
||||
photos: Fotos
|
||||
admin:
|
||||
schedule-monitor:
|
||||
schedule-monitor: Monitor de Cronograma
|
||||
task-logs-for: >-
|
||||
Registros de tarefas para:
|
||||
showing-last-count: Mostrando últimos {count} registros
|
||||
name: Nome
|
||||
type: Tipo
|
||||
timezone: Fuso horário
|
||||
last-started: Último Iniciado
|
||||
last-finished: Último Finalizado
|
||||
last-failure: Última Falha
|
||||
date: Data
|
||||
memory: Memoria
|
||||
runtime: Tempo de execução
|
||||
output: Saída
|
||||
no-output: Sem Saída
|
||||
config:
|
||||
database:
|
||||
title: Configuração do Banco de Dados
|
||||
filesystem:
|
||||
title: Configuração do Sistema de Arquivos
|
||||
mail:
|
||||
title: Configuração do Email
|
||||
notification-channels:
|
||||
title: Configuração de Canais de Notificação
|
||||
queue:
|
||||
title: Configuração da Fila
|
||||
services:
|
||||
title: Configuração de Serviços
|
||||
socket:
|
||||
title: Configuração de Soquete
|
||||
branding:
|
||||
title: Marca
|
||||
icon-text: Ícone
|
||||
upload-new: Carregar novo
|
||||
reset-default: Restaurar Padrão
|
||||
logo-text: Logo
|
||||
theme: Tema Padrão
|
||||
index:
|
||||
total-users: Total de Usuários
|
||||
total-organizations: Total de Organizações
|
||||
total-transactions: Total de Transações
|
||||
notifications:
|
||||
title: Notificações
|
||||
notification-settings: Configuração de Notificações
|
||||
organizations:
|
||||
index:
|
||||
title: Organizações
|
||||
owner-name-column: Proprietário
|
||||
owner-phone-column: Telefone do Proprietário
|
||||
owner-email-column: Email do Proprietário
|
||||
users-count-column: Usuários
|
||||
phone-column: Telefone
|
||||
email-column: Email
|
||||
users:
|
||||
title: Usuários
|
||||
settings:
|
||||
index:
|
||||
title: Configuração da Organização
|
||||
organization-name: Nome da Organização
|
||||
organization-description: Descrição da Organização
|
||||
organization-phone: Número de telefone da Organização
|
||||
organization-currency: Moeda da Organização
|
||||
organization-id: ID da Organização
|
||||
organization-branding: Marca da Organização
|
||||
logo: Logo
|
||||
logo-help-text: Logo da sua Organização.
|
||||
upload-new-logo: Carregar novo logo
|
||||
backdrop: Imagem de Fundo
|
||||
backdrop-help-text: Banner opcional ou imagem de fundo para sua organização.
|
||||
upload-new-backdrop: Carregar nova Imagem de Fundo
|
||||
extensions:
|
||||
title: As extensões chegarão em breve!
|
||||
message: Volte nas próximas versões enquanto nos preparamos para lançar o repositório e o mercado de extensões.
|
||||
notifications:
|
||||
select-all: Selecionar todas
|
||||
mark-as-read: Marcar como lido
|
||||
received: >-
|
||||
Recebido:
|
||||
message: Nenhuma notificação para exibir.
|
||||
invite:
|
||||
for-users:
|
||||
invitation-message: Você foi convidado para entrar em {companyName}
|
||||
invitation-sent-message: Você foi convidado para participar da organização {companyName} no {appName}. Para aceitar este convite, insira seu código de convite recebido por e-mail e clique em continuar.
|
||||
invitation-code-sent-text: Seu código de convite
|
||||
accept-invitation-text: Aceitar convite
|
||||
onboard:
|
||||
index:
|
||||
title: Criar sua conta
|
||||
welcome-title: <strong>Bem vindo a {companyName}!</strong><br />
|
||||
welcome-text: Preencha os detalhes necessários abaixo para começar.
|
||||
full-name: Nome Completo
|
||||
full-name-help-text: Seu nome completo
|
||||
your-email: Endereço de Email
|
||||
your-email-help-text: Seu endereço de email
|
||||
phone: Telefone
|
||||
phone-help-text: Seu número de telefone
|
||||
organization-name: Nome da Organização
|
||||
organization-help-text: O nome da sua organização, todos os seus serviços e recursos serão gerenciados por esta organização. Mais tarde, você poderá criar quantas organizações quiser ou precisar.
|
||||
password: Digite a senha
|
||||
password-help-text: Sua senha, certifique-se de que seja uma boa senha.
|
||||
confirm-password: Confirme sua Senha
|
||||
confirm-password-help-text: Apenas para confirmar a senha que você digitou acima.
|
||||
continue-button-text: Continuar
|
||||
verify-email:
|
||||
header-title: Verificação de Conta
|
||||
title: Verifique seu endereço de Email
|
||||
message-text: <strong>Quase pronto!</strong><br> Verifique seu e-mail para obter o código de verificação.
|
||||
verification-code-text: Insira o código de verificação que você recebeu por e-mail.
|
||||
verification-input-label: Código de Verificação
|
||||
verify-button-text: Verificar & Continuar
|
||||
didnt-receive-a-code: Ainda não recebeu o código?
|
||||
not-sent:
|
||||
message: Ainda não recebeu o código?
|
||||
alternative-choice: Use as opções alternativas abaixo para verificar sua conta.
|
||||
resend-email: Reenviar E-mail
|
||||
send-by-sms: Enviar por SMS
|
||||
install:
|
||||
installer-header: Instalador
|
||||
failed-message-sent: A instalação falhou! Clique no botão abaixo para tentar instalar novamente.
|
||||
retry-install: Tentar instalar novamente
|
||||
start-install: Iniciar instalação
|
||||
layout:
|
||||
header:
|
||||
menus:
|
||||
organization:
|
||||
settings: Configurações da Organização
|
||||
create-or-join: Criar ou entrar em organizações
|
||||
explore-extensions: Explorar extensões
|
||||
user:
|
||||
view-profile: Ver Perfil
|
||||
keyboard-shortcuts: Mostrar atalhos de teclado
|
||||
changelog: Registro de alterações
|
||||
363
console/translations/vi-vn.yaml
Normal file
363
console/translations/vi-vn.yaml
Normal file
@@ -0,0 +1,363 @@
|
||||
app:
|
||||
name: Fleetbase
|
||||
terms:
|
||||
new: Mới
|
||||
sort: Sắp xếp
|
||||
filter: Lọc
|
||||
columns: Cột
|
||||
settings: Cài đặt
|
||||
home: Trang chủ
|
||||
admin: Admin
|
||||
logout: Đăng xuất
|
||||
dashboard: Bảng điều khiển
|
||||
search: Tìm kiếm
|
||||
search-input: Đầu vào tìm kiếm
|
||||
common:
|
||||
confirm: Xác nhận
|
||||
edit: Chỉnh sửa
|
||||
save: Lưu
|
||||
save-changes: Lưu thay đổi
|
||||
cancel: Hủy
|
||||
2fa-config: Cấu hình 2FA
|
||||
account: Tài khoản
|
||||
admin: Admin
|
||||
branding: Thương hiệu
|
||||
columns: Cột
|
||||
dashboard: Bảng điều khiển
|
||||
date-of-birth: Ngày sinh
|
||||
delete: Xóa
|
||||
email: Email
|
||||
filesystem: Hệ thống tệp
|
||||
filter: Lọc
|
||||
home: Trang chủ
|
||||
logout: Đăng xuất
|
||||
mail: Mail
|
||||
name: Tên
|
||||
new: Mới
|
||||
notification-channels: Kênh thông báo
|
||||
notifications: Thông báo
|
||||
organization: Tổ chức
|
||||
organizations: Các tổ chức
|
||||
overview: Tổng quan
|
||||
phone: Số điện thoại của bạn
|
||||
profile: Hồ sơ
|
||||
queue: Hàng đợi
|
||||
save-button-text: Lưu thay đổi
|
||||
search-input: Đầu vào tìm kiếm
|
||||
search: Tìm kiếm
|
||||
services: Dịch vụ
|
||||
settings: Cài đặt
|
||||
socket: Socket
|
||||
sort: Sắp xếp
|
||||
two-factor: Hai yếu tố
|
||||
uploading: Đang tải lên...
|
||||
your-profile: Hồ sơ của bạn
|
||||
created-at: Được tạo vào
|
||||
country: Quốc qua
|
||||
phone-number: Số điện thoại
|
||||
status: Trạng thái
|
||||
close-and-save: Đóng và Lưu
|
||||
users: Người dùng
|
||||
changelog: Nhật ký thay đổi
|
||||
ok: OK
|
||||
select-file: Chọn tệp
|
||||
back: Quay lại
|
||||
next: Tiếp theo
|
||||
continue: Tiếp tục
|
||||
done: Đã xong
|
||||
export: Xuất
|
||||
reload: Tải lại
|
||||
reload-data: Tải lại dữ liệu
|
||||
unauthorized: Không có quyền
|
||||
unauthorized-to: Không có quyền để
|
||||
unauthorized-access: Không có quyền truy cập
|
||||
unauthorized-access-message: Không có quyền truy cập, bạn phải yêu cầu quyền để truy cập.
|
||||
permissions-required-for-changes: Bạn không có quyền cần thiết để thực hiện thay đổi.
|
||||
push-notifications: Đẩy thông báo
|
||||
component:
|
||||
file:
|
||||
dropdown-label: Hành động với tệp
|
||||
import-modal:
|
||||
loading-message: Đang tiến hành nhập...
|
||||
drop-upload: Thả để tải lên
|
||||
invalid: Không hợp lệ
|
||||
ready-upload: sẵn sàng tải lên.
|
||||
upload-spreadsheets: Tải lên Bảng tính
|
||||
drag-drop: Kéo và thả các tệp bảng tính vào vùng thả này
|
||||
button-text: hoặc chọn bảng tính để tải lên
|
||||
spreadsheets: bảng tính
|
||||
upload-queue: Tải lên hàng đợi
|
||||
dropzone:
|
||||
file: file
|
||||
drop-to-upload: Thả để tải lên
|
||||
invalid: Không hợp lệ
|
||||
files-ready-for-upload: >-
|
||||
{numOfFiles} sẵn sàng tải lên.
|
||||
upload-images-videos: Tải lên hình ảnh và video
|
||||
upload-documents: Tải lên tài liệu
|
||||
upload-documents-files: Tải lên tài liệu và tập tin
|
||||
upload-avatar-files: Tải lên ảnh đại diện tùy chỉnh
|
||||
dropzone-supported-images-videos: Kéo và thả ảnh hoặc video vào vùng thả này
|
||||
dropzone-supported-avatars: Kéo và thả tệp SVG hoặc PNG
|
||||
dropzone-supported-files: Kéo và thả tệp vào vùng thả này
|
||||
or-select-button-text: hoặc chọn file để tải lên.
|
||||
upload-queue: Tải lên hàng đợi
|
||||
uploading: Đang tải lên...
|
||||
two-fa-enforcement-alert:
|
||||
message: Để tăng cường bảo mật cho tài khoản của bạn, tổ chức của bạn yêu cầu Xác thực hai yếu tố (2FA). Bật 2FA trong cài đặt tài khoản của bạn để có thêm một lớp bảo vệ.
|
||||
button-text: Cấu hình 2FA
|
||||
comment-thread:
|
||||
publish-comment-button-text: Đăng bình luận
|
||||
publish-reply-button-text: Đăng phản hồi
|
||||
reply-comment-button-text: Phản hồi
|
||||
edit-comment-button-text: Chỉnh sửa
|
||||
delete-comment-button-text: Xóa
|
||||
comment-published-ago: >-
|
||||
{createdAgo} trước
|
||||
comment-input-placeholder: Nhập một bình luận mới...
|
||||
comment-reply-placeholder: Nhập phản hồi của bạn...
|
||||
comment-input-empty-notification: Bạn không thể đăng bình luận trống...
|
||||
comment-min-length-notification: Bình luận phải chứa ít nhất 2 ký tự
|
||||
dashboard:
|
||||
select-dashboard: Chọn Bảng điều khiển
|
||||
create-new-dashboard: Tạo mới Bảng điều khiển
|
||||
create-a-new-dashboard: Tạo mới một Bảng điều khiển
|
||||
confirm-create-dashboard: Tạo Bảng điều khiển!
|
||||
edit-layout: Chỉnh sửa bố cục
|
||||
add-widgets: Thêm tiện ích
|
||||
delete-dashboard: Xóa bảng điều khiển
|
||||
save-dashboard: Lưu bảng điều khiển
|
||||
you-cannot-delete-this-dashboard: Bạn không thể xóa bảng điều khiển này.
|
||||
are-you-sure-you-want-delete-dashboard: Bạn có chắc chắn xóa {dashboardName}?
|
||||
dashboard-widget-panel:
|
||||
widget-name: >-
|
||||
{widgetName} Tiện ích
|
||||
select-widgets: Chọn tiện ích
|
||||
close-and-save: Đóng và Lưu
|
||||
services:
|
||||
dashboard-service:
|
||||
create-dashboard-success-notification: Bảng điều khiển `{dashboardName}` đã được tạo thành công.
|
||||
delete-dashboard-success-notification: Bảng điều khiển `{dashboardName}` đã được xóa.
|
||||
auth:
|
||||
verification:
|
||||
header-title: Xác thực tài khoản
|
||||
title: Xác thực email của bạn
|
||||
message-text: <strong>Gần xong rồi!</strong><br> Kiểm tả email của bạn để lấy mã xác thực.
|
||||
verification-code-text: Nhập mã xác thực bạn vừa nhận qua email.
|
||||
verification-input-label: Mã xác thực
|
||||
verify-button-text: Xác thực & Tiếp tục
|
||||
didnt-receive-a-code: Chưa nhận được mã?
|
||||
not-sent:
|
||||
message: Chưa nhận được mã?
|
||||
alternative-choice: Sử dụng các tùy chọn thay thế bên dưới để xác thực tài khoản của bạn.
|
||||
resend-email: Gửi lại email
|
||||
send-by-sms: Gửi qua SMS
|
||||
two-fa:
|
||||
verify-code:
|
||||
verification-code: Mã xác thực
|
||||
check-title: Kiểm tra email hoặc điện thoại của bạn.
|
||||
check-subtitle: Chúng tôi đã gửi cho bạn mã xác thực. Nhập mã bên dưới để hoàn tất quá trình đăng nhập.
|
||||
expired-help-text: Mã xác thực 2FA của bạn đã hết hạn. Bạn có thể yêu cầu mã khác nếu cần thêm thời gian.
|
||||
resend-code: Gửi lại mã
|
||||
verify-code: Xác thực mã
|
||||
cancel-two-factor: Hủy 2 yếu tố
|
||||
invalid-session-error-notification: Phiên không hợp lệ. Vui lòng thử lại.
|
||||
verification-successful-notification: Xác thực thành công!
|
||||
verification-code-expired-notification: Mã xác thực đã hết hạn. Vui lòng yêu cầu một mã mới.
|
||||
verification-code-failed-notification: Xác thực thất bại. Vui lòng thử lại.
|
||||
resend-code:
|
||||
verification-code-resent-notification: Mã xác thực mới đã được gửi.
|
||||
verification-code-resent-error-notification: Xảy ra lỗi khi gửi lại mã xác thực. Vui lòng thử lại.
|
||||
forgot-password:
|
||||
success-message: Kiểm tra email của bạn để tiếp tục!
|
||||
is-sent:
|
||||
title: Gần xong rồi!
|
||||
message: <strong>Kiểm tra email của bạn!</strong><br> Chúng tôi đã gửi cho bạn một liên kết đến email của bạn, cho phép bạn đặt lại mật khẩu. Liên kết sẽ hết hạn sau 15 phút.
|
||||
not-sent:
|
||||
title: Quên mật khẩu?
|
||||
message: <strong>Đừng lo lắng, chúng tôi luôn hỗ trợ bạn.</strong><br> Nhập email bạn sử dụng để đăng nhập {appName} và chúng tôi sẽ gửi cho bạn một liên kết an toàn để đặt lại mật khẩu.
|
||||
form:
|
||||
email-label: Địa chỉ email của bạn
|
||||
submit-button: OK, Gửi cho tôi một liên kết!
|
||||
nevermind-button: Ok
|
||||
login:
|
||||
title: Đăng nhập vào tài khoản của bạn
|
||||
no-identity-notification: Bạn quên nhập email của bạn?
|
||||
no-password-notification: Bạn quên nhập mật khẩu của bạn?
|
||||
unverified-notification: Tài khoản của bạn cần được xác minh để tiếp tục.
|
||||
failed-attempt:
|
||||
message: <strong>Quên mật khẩu?</strong><br> Nhấp vào nút bên dưới để đặt lại mật khẩu của bạn.
|
||||
button-text: Được, giúp tôi thiết lập lại nhé!
|
||||
form:
|
||||
email-label: Địa chỉ email
|
||||
password-label: Mật khẩu
|
||||
remember-me-label: Ghi nhớ đăng nhập
|
||||
forgot-password-label: Quên mật khẩu?
|
||||
sign-in-button: Đăng nhập
|
||||
create-account-button: Tạo mới tài khoản
|
||||
slow-connection-message: Đang gặp sự cố kết nối.
|
||||
reset-password:
|
||||
success-message: Mật khẩu của bạn đã được đặt lại! Đăng nhập để tiếp tục.
|
||||
invalid-verification-code: Liên kết đặt lại mật khẩu này không hợp lệ hoặc đã hết hạn.
|
||||
title: Đặt lại mật khẩu của bạn
|
||||
form:
|
||||
code:
|
||||
label: Mã đặt lại của bạn
|
||||
help-text: Mã xác thực bạn đã nhận qua email.
|
||||
password:
|
||||
label: Mật khẩu mới
|
||||
help-text: Nhập mật khẩu ít nhất 6 ký tự để tiếp tục.
|
||||
confirm-password:
|
||||
label: Xác nhận mật khẩu mới
|
||||
help-text: Nhập mật khẩu ít nhất 6 ký tự để tiếp tục.
|
||||
submit-button: Đặt lại mật khẩu
|
||||
back-button: Quay lại
|
||||
console:
|
||||
create-or-join-organization:
|
||||
modal-title: Tạo mới hoặc tham gia một tổ chức
|
||||
join-success-notification: Bạn đã tham gia một tổ chức mới!
|
||||
create-success-notification: Bạn vừa tạo ra một tổ chức mới!
|
||||
switch-organization:
|
||||
modal-title: Bạn có chắc chắn muốn chuyển đổi sang tổ chức {organizationName}?
|
||||
modal-body: Bằng cách xác nhận, tài khoản của bạn sẽ vẫn được đăng nhập, nhưng tổ chức chính của bạn sẽ được chuyển đổi.
|
||||
modal-accept-button-text: Vâng, tôi muốn chuyển đổi tổ chức
|
||||
success-notification: Bạn đã chuyển đổi tổ chức
|
||||
account:
|
||||
index:
|
||||
upload-new: Tải lên mới
|
||||
phone: Số điện thoại của bạn.
|
||||
photos: ảnh
|
||||
admin:
|
||||
schedule-monitor:
|
||||
schedule-monitor: Lịch trình giám sát
|
||||
task-logs-for: >-
|
||||
Nhật ký tác vụ cho:
|
||||
showing-last-count: Đang hiển thị {count} nhật ký cuối
|
||||
name: Tên
|
||||
type: Loại
|
||||
timezone: Múi giờ
|
||||
last-started: Lần bắt đầu cuối
|
||||
last-finished: Lần kết thúc cuối
|
||||
last-failure: Lần thất bại cuối
|
||||
date: Ngày
|
||||
memory: Memory
|
||||
runtime: Runtime
|
||||
output: Đầu ra
|
||||
no-output: Không có đầu ra
|
||||
config:
|
||||
database:
|
||||
title: Cấu hình cơ sở dữ liệu
|
||||
filesystem:
|
||||
title: Cấu hình hệ thống tập tin
|
||||
mail:
|
||||
title: Cấu hình Mail
|
||||
notification-channels:
|
||||
title: Cấu hình kênh thông báo
|
||||
queue:
|
||||
title: Cấu hình hàng đợi
|
||||
services:
|
||||
title: Cấu hình dịch vụ
|
||||
socket:
|
||||
title: Cấu hình Socket
|
||||
branding:
|
||||
title: Thương hiệu
|
||||
icon-text: Icon
|
||||
upload-new: Tải lên
|
||||
reset-default: Đặt về mặc định
|
||||
logo-text: Logo
|
||||
theme: Chủ đề mặc định
|
||||
index:
|
||||
total-users: Tổng số người dùng
|
||||
total-organizations: Tổng số tổ chức
|
||||
total-transactions: Tổng số giao dịch
|
||||
notifications:
|
||||
title: Thông báo
|
||||
notification-settings: Cài đặt thông báo
|
||||
organizations:
|
||||
index:
|
||||
title: Tổ chức
|
||||
owner-name-column: Người sở hữu
|
||||
owner-phone-column: Điện thoại chủ sở hữu
|
||||
owner-email-column: Email chủ sở hữu
|
||||
users-count-column: Người dùng
|
||||
phone-column: Số điện thoại
|
||||
email-column: Email
|
||||
users:
|
||||
title: Người dùng
|
||||
settings:
|
||||
index:
|
||||
title: Cài đặt tổ chức
|
||||
organization-name: Tên tổ chức
|
||||
organization-description: Mô tả
|
||||
organization-phone: Số điện thoại
|
||||
organization-currency: Tiền tệ
|
||||
organization-id: ID
|
||||
organization-branding: Thương hiệu
|
||||
logo: Logo
|
||||
logo-help-text: Logo cho tổ chức của bạn..
|
||||
upload-new-logo: Tải lên logo mới
|
||||
backdrop: Phông nền
|
||||
backdrop-help-text: Biểu ngữ hoặc hình ảnh nền tùy chọn cho tổ chức của bạn.
|
||||
upload-new-backdrop: Tải lên phông nền mới
|
||||
extensions:
|
||||
title: Các tiện ích mở rộng sẽ sớm ra mắt!
|
||||
message: Vui lòng kiểm tra lại trong các phiên bản sắp tới khi chúng tôi chuẩn bị ra mắt kho lưu trữ và thị trường Tiện ích mở rộng.
|
||||
notifications:
|
||||
select-all: Chọn tất cả
|
||||
mark-as-read: Đánh dấu là đã đọc
|
||||
received: >-
|
||||
Đã nhận:
|
||||
message: Không có thông báo nào để hiển thị.
|
||||
invite:
|
||||
for-users:
|
||||
invitation-message: Bạn đã được mời tham gia {companyName}
|
||||
invitation-sent-message: Bạn đã được mời tham gia tổ chức {companyName} trên {appName}. Để chấp nhận lời mời này, hãy nhập mã mời nhận được qua email và nhấp vào tiếp tục.
|
||||
invitation-code-sent-text: Mã mời của bạn
|
||||
accept-invitation-text: Chấp nhận lời mời
|
||||
onboard:
|
||||
index:
|
||||
title: Tạo tài khoản mới
|
||||
welcome-title: <strong>Chào mừng tới {companyName}!</strong><br />
|
||||
welcome-text: Hoàn tất các thông tin yêu cầu bên dưới để bắt đầu.
|
||||
full-name: Tên đầy đủ
|
||||
full-name-help-text: Tên đầy đủ của bạn
|
||||
your-email: Địa chỉ email
|
||||
your-email-help-text: Địa chỉ email của bạn
|
||||
phone: Số điện thoại
|
||||
phone-help-text: Số điện thoại của bạn
|
||||
organization-name: Tên tổ chức
|
||||
organization-help-text: Tên tổ chức của bạn, tất cả các dịch vụ và tài nguyên của bạn sẽ được quản lý theo tổ chức này, sau đó bạn có thể tạo nhiều tổ chức tùy ý hoặc theo nhu cầu.
|
||||
password: Nhập mật khẩu
|
||||
password-help-text: Mật khẩu của bạn phải an toàn.
|
||||
confirm-password: Xác nhận mật khẩu của bạn
|
||||
confirm-password-help-text: Chỉ để xác nhận mật khẩu bạn đã nhập ở trên.
|
||||
continue-button-text: Tiếp tục
|
||||
verify-email:
|
||||
header-title: Xác thực tài khoản
|
||||
title: Xác thực địa chỉ email của bạn
|
||||
message-text: <strong>Gần xong rồi!</strong><br> Kiêm tra mã xác thực trong email của bạn.
|
||||
verification-code-text: Nhập mã xác thực bạn vừa nhận qua email.
|
||||
verification-input-label: Mã xác thực
|
||||
verify-button-text: Xác thực & Tiếp tục
|
||||
didnt-receive-a-code: Bạn vẫn chưa nhận được mã?
|
||||
not-sent:
|
||||
message: Bạn vẫn chưa nhận được mã?
|
||||
alternative-choice: Sử dụng các tùy chọn thay thế bên dưới để xác thực tài khoản của bạn.
|
||||
resend-email: Gửi lại
|
||||
send-by-sms: Gửi qua SMS
|
||||
install:
|
||||
installer-header: Trình cài đặt
|
||||
failed-message-sent: Cài đặt thất bại! Nhấp vào nút bên dưới để thử cài đặt lại.
|
||||
retry-install: Thử lại cài đặt
|
||||
start-install: Bắt đầu cài đặt
|
||||
layout:
|
||||
header:
|
||||
menus:
|
||||
organization:
|
||||
settings: Cài đặt tổ chức
|
||||
create-or-join: Tạo mới hoặc tham gia một tổ chức
|
||||
explore-extensions: Khám phá phần mở rộng
|
||||
user:
|
||||
view-profile: Xem hồ sơ
|
||||
keyboard-shortcuts: Hiển thị phím tắt
|
||||
changelog: Nhật ký thay đổi
|
||||
Submodule packages/ledger updated: 1f6f27f501...53fd9a441c
Submodule packages/registry-bridge updated: e75b37fc6c...572c135222
Reference in New Issue
Block a user