mirror of
https://github.com/flarum/core.git
synced 2025-08-08 17:36:38 +02:00
chore: rename package-manager
to extension-manager
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
name: Package Manager PHP
|
name: Extension Manager PHP
|
||||||
|
|
||||||
on: [workflow_dispatch, push, pull_request]
|
on: [workflow_dispatch, push, pull_request]
|
||||||
|
|
@@ -46,7 +46,7 @@
|
|||||||
"Flarum\\Lock\\": "extensions/lock/src",
|
"Flarum\\Lock\\": "extensions/lock/src",
|
||||||
"Flarum\\Mentions\\": "extensions/mentions/src",
|
"Flarum\\Mentions\\": "extensions/mentions/src",
|
||||||
"Flarum\\Nicknames\\": "extensions/nicknames/src",
|
"Flarum\\Nicknames\\": "extensions/nicknames/src",
|
||||||
"Flarum\\PackageManager\\": "extensions/package-manager/src",
|
"Flarum\\ExtensionManager\\": "extensions/extension-manager/src",
|
||||||
"Flarum\\Pusher\\": "extensions/pusher/src",
|
"Flarum\\Pusher\\": "extensions/pusher/src",
|
||||||
"Flarum\\Statistics\\": "extensions/statistics/src",
|
"Flarum\\Statistics\\": "extensions/statistics/src",
|
||||||
"Flarum\\Sticky\\": "extensions/sticky/src",
|
"Flarum\\Sticky\\": "extensions/sticky/src",
|
||||||
@@ -74,7 +74,7 @@
|
|||||||
"flarum/markdown": "self.version",
|
"flarum/markdown": "self.version",
|
||||||
"flarum/mentions": "self.version",
|
"flarum/mentions": "self.version",
|
||||||
"flarum/nicknames": "self.version",
|
"flarum/nicknames": "self.version",
|
||||||
"flarum/package-manager": "self.version",
|
"flarum/extension-manager": "self.version",
|
||||||
"flarum/pusher": "self.version",
|
"flarum/pusher": "self.version",
|
||||||
"flarum/statistics": "self.version",
|
"flarum/statistics": "self.version",
|
||||||
"flarum/sticky": "self.version",
|
"flarum/sticky": "self.version",
|
||||||
@@ -165,7 +165,7 @@
|
|||||||
"extensions/markdown",
|
"extensions/markdown",
|
||||||
"extensions/mentions",
|
"extensions/mentions",
|
||||||
"extensions/nicknames",
|
"extensions/nicknames",
|
||||||
"extensions/package-manager",
|
"extensions/extension-manager",
|
||||||
"extensions/pusher",
|
"extensions/pusher",
|
||||||
"extensions/statistics",
|
"extensions/statistics",
|
||||||
"extensions/sticky",
|
"extensions/sticky",
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
The MIT License (MIT)
|
The MIT License (MIT)
|
||||||
|
|
||||||
Copyright (c) Sami Mazouz
|
Copyright (c) 2024 Stichting Flarum (Flarum Foundation)
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
# Package Manager
|
# Extension Manager
|
||||||
|
|
||||||
The package manager is a tool that allows you to easily install and manage extensions. It runs [composer](https://getcomposer.org/) under the hood.
|
The extension manager is a tool that allows you to easily install and manage extensions. It runs [composer](https://getcomposer.org/) under the hood.
|
||||||
|
|
||||||
## Security
|
## Security
|
||||||
|
|
||||||
@@ -10,9 +10,9 @@ This extension is optional and can be removed for those who prefer to manually m
|
|||||||
|
|
||||||
## Troubleshooting
|
## Troubleshooting
|
||||||
|
|
||||||
If you have many extensions installed, you may run into memory issues when using the package manager. If this happens, you can use an asynchronous queue that will run the package manager in the background.
|
If you have many extensions installed, you may run into memory issues when using the extension manager. If this happens, you can use an asynchronous queue that will run the extension manager in the background.
|
||||||
|
|
||||||
* Simple database queue guide: https://discuss.flarum.org/d/28151-database-queue-the-simplest-queue-even-for-shared-hosting
|
* Simple database queue guide: https://discuss.flarum.org/d/28151-database-queue-the-simplest-queue-even-for-shared-hosting
|
||||||
* (Advanced) Redis queue: https://discuss.flarum.org/d/21873-redis-sessions-cache-queues
|
* (Advanced) Redis queue: https://discuss.flarum.org/d/21873-redis-sessions-cache-queues
|
||||||
|
|
||||||
You can find detailed logs on the package manager operations in the `storage/logs/composer` directory. Please include the latest log file when reporting issues in the [Flarum support forum](https://discuss.flarum.org/t/support).
|
You can find detailed logs on the extension manager operations in the `storage/logs/composer` directory. Please include the latest log file when reporting issues in the [Flarum support forum](https://discuss.flarum.org/t/support).
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "flarum/package-manager",
|
"name": "flarum/extension-manager",
|
||||||
"description": "A Flarum Package Manager.",
|
"description": "An extension manager to install, update and remove extension packages from the interface (Wrapper around composer).",
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"extensions",
|
"extensions",
|
||||||
"composer",
|
"composer",
|
||||||
@@ -18,8 +18,8 @@
|
|||||||
}
|
}
|
||||||
],
|
],
|
||||||
"support": {
|
"support": {
|
||||||
"issues": "https://github.com/flarum/package-manager/issues",
|
"issues": "https://github.com/flarum/framework/issues",
|
||||||
"source": "https://github.com/flarum/package-manager"
|
"source": "https://github.com/flarum/extension-manager"
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
"flarum/core": "^1.8",
|
"flarum/core": "^1.8",
|
||||||
@@ -31,7 +31,7 @@
|
|||||||
},
|
},
|
||||||
"extra": {
|
"extra": {
|
||||||
"flarum-extension": {
|
"flarum-extension": {
|
||||||
"title": "Package Manager",
|
"title": "Extension Manager",
|
||||||
"icon": {
|
"icon": {
|
||||||
"name": "fas fa-box-open",
|
"name": "fas fa-box-open",
|
||||||
"backgroundColor": "#117187",
|
"backgroundColor": "#117187",
|
||||||
@@ -69,12 +69,12 @@
|
|||||||
},
|
},
|
||||||
"autoload": {
|
"autoload": {
|
||||||
"psr-4": {
|
"psr-4": {
|
||||||
"Flarum\\PackageManager\\": "src/"
|
"Flarum\\ExtensionManager\\": "src/"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"autoload-dev": {
|
"autoload-dev": {
|
||||||
"psr-4": {
|
"psr-4": {
|
||||||
"Flarum\\PackageManager\\Tests\\": "tests/"
|
"Flarum\\ExtensionManager\\Tests\\": "tests/"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager;
|
namespace Flarum\ExtensionManager;
|
||||||
|
|
||||||
use Flarum\Extend;
|
use Flarum\Extend;
|
||||||
use Flarum\Foundation\Paths;
|
use Flarum\Foundation\Paths;
|
||||||
@@ -17,16 +17,16 @@ use Illuminate\Queue\SyncQueue;
|
|||||||
|
|
||||||
return [
|
return [
|
||||||
(new Extend\Routes('api'))
|
(new Extend\Routes('api'))
|
||||||
->post('/package-manager/extensions', 'package-manager.extensions.require', Api\Controller\RequireExtensionController::class)
|
->post('/extension-manager/extensions', 'extension-manager.extensions.require', Api\Controller\RequireExtensionController::class)
|
||||||
->patch('/package-manager/extensions/{id}', 'package-manager.extensions.update', Api\Controller\UpdateExtensionController::class)
|
->patch('/extension-manager/extensions/{id}', 'extension-manager.extensions.update', Api\Controller\UpdateExtensionController::class)
|
||||||
->delete('/package-manager/extensions/{id}', 'package-manager.extensions.remove', Api\Controller\RemoveExtensionController::class)
|
->delete('/extension-manager/extensions/{id}', 'extension-manager.extensions.remove', Api\Controller\RemoveExtensionController::class)
|
||||||
->post('/package-manager/check-for-updates', 'package-manager.check-for-updates', Api\Controller\CheckForUpdatesController::class)
|
->post('/extension-manager/check-for-updates', 'extension-manager.check-for-updates', Api\Controller\CheckForUpdatesController::class)
|
||||||
->post('/package-manager/why-not', 'package-manager.why-not', Api\Controller\WhyNotController::class)
|
->post('/extension-manager/why-not', 'extension-manager.why-not', Api\Controller\WhyNotController::class)
|
||||||
->post('/package-manager/minor-update', 'package-manager.minor-update', Api\Controller\MinorUpdateController::class)
|
->post('/extension-manager/minor-update', 'extension-manager.minor-update', Api\Controller\MinorUpdateController::class)
|
||||||
->post('/package-manager/major-update', 'package-manager.major-update', Api\Controller\MajorUpdateController::class)
|
->post('/extension-manager/major-update', 'extension-manager.major-update', Api\Controller\MajorUpdateController::class)
|
||||||
->post('/package-manager/global-update', 'package-manager.global-update', Api\Controller\GlobalUpdateController::class)
|
->post('/extension-manager/global-update', 'extension-manager.global-update', Api\Controller\GlobalUpdateController::class)
|
||||||
->get('/package-manager-tasks', 'package-manager.tasks.index', Api\Controller\ListTasksController::class)
|
->get('/extension-manager-tasks', 'extension-manager.tasks.index', Api\Controller\ListTasksController::class)
|
||||||
->post('/package-manager/composer', 'package-manager.composer', Api\Controller\ConfigureComposerController::class),
|
->post('/extension-manager/composer', 'extension-manager.composer', Api\Controller\ConfigureComposerController::class),
|
||||||
|
|
||||||
(new Extend\Frontend('admin'))
|
(new Extend\Frontend('admin'))
|
||||||
->css(__DIR__.'/less/admin.less')
|
->css(__DIR__.'/less/admin.less')
|
||||||
@@ -34,13 +34,13 @@ return [
|
|||||||
->content(function (Document $document) {
|
->content(function (Document $document) {
|
||||||
$paths = resolve(Paths::class);
|
$paths = resolve(Paths::class);
|
||||||
|
|
||||||
$document->payload['flarum-package-manager.writable_dirs'] = is_writable($paths->vendor)
|
$document->payload['flarum-extension-manager.writable_dirs'] = is_writable($paths->vendor)
|
||||||
&& is_writable($paths->storage)
|
&& is_writable($paths->storage)
|
||||||
&& (! file_exists($paths->storage.'/.composer') || is_writable($paths->storage.'/.composer'))
|
&& (! file_exists($paths->storage.'/.composer') || is_writable($paths->storage.'/.composer'))
|
||||||
&& is_writable($paths->base.'/composer.json')
|
&& is_writable($paths->base.'/composer.json')
|
||||||
&& is_writable($paths->base.'/composer.lock');
|
&& is_writable($paths->base.'/composer.lock');
|
||||||
|
|
||||||
$document->payload['flarum-package-manager.using_sync_queue'] = resolve(Queue::class) instanceof SyncQueue;
|
$document->payload['flarum-extension-manager.using_sync_queue'] = resolve(Queue::class) instanceof SyncQueue;
|
||||||
}),
|
}),
|
||||||
|
|
||||||
new Extend\Locales(__DIR__.'/locale'),
|
new Extend\Locales(__DIR__.'/locale'),
|
||||||
@@ -48,12 +48,12 @@ return [
|
|||||||
(new Extend\Settings())
|
(new Extend\Settings())
|
||||||
->default(Settings\LastUpdateCheck::key(), json_encode(Settings\LastUpdateCheck::default()))
|
->default(Settings\LastUpdateCheck::key(), json_encode(Settings\LastUpdateCheck::default()))
|
||||||
->default(Settings\LastUpdateRun::key(), json_encode(Settings\LastUpdateRun::default()))
|
->default(Settings\LastUpdateRun::key(), json_encode(Settings\LastUpdateRun::default()))
|
||||||
->default('flarum-package-manager.queue_jobs', false)
|
->default('flarum-extension-manager.queue_jobs', '0')
|
||||||
->default('flarum-package-manager.minimum_stability', 'stable')
|
->default('flarum-extension-manager.minimum_stability', 'stable')
|
||||||
->default('flarum-package-manager.task_retention_days', 7),
|
->default('flarum-extension-manager.task_retention_days', 7),
|
||||||
|
|
||||||
(new Extend\ServiceProvider)
|
(new Extend\ServiceProvider)
|
||||||
->register(PackageManagerServiceProvider::class),
|
->register(ExtensionManagerServiceProvider::class),
|
||||||
|
|
||||||
(new Extend\ErrorHandling)
|
(new Extend\ErrorHandling)
|
||||||
->handler(Exception\ComposerCommandFailedException::class, Exception\ExceptionHandler::class)
|
->handler(Exception\ComposerCommandFailedException::class, Exception\ExceptionHandler::class)
|
||||||
|
1
extensions/package-manager/js/dist-typings/states/ControlSectionState.d.ts
generated
vendored
1
extensions/package-manager/js/dist-typings/states/ControlSectionState.d.ts
generated
vendored
@@ -47,6 +47,7 @@ export default class ControlSectionState {
|
|||||||
get lastUpdateRun(): LastUpdateRun;
|
get lastUpdateRun(): LastUpdateRun;
|
||||||
constructor();
|
constructor();
|
||||||
isLoading(name?: LoadingTypes): boolean;
|
isLoading(name?: LoadingTypes): boolean;
|
||||||
|
hasOperationRunning(): boolean;
|
||||||
setLoading(name: LoadingTypes): void;
|
setLoading(name: LoadingTypes): void;
|
||||||
requirePackage(data: any): void;
|
requirePackage(data: any): void;
|
||||||
checkForUpdates(): void;
|
checkForUpdates(): void;
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
import QueueState from './QueueState';
|
import QueueState from './QueueState';
|
||||||
import ControlSectionState from './ControlSectionState';
|
import ControlSectionState from './ControlSectionState';
|
||||||
export default class PackageManagerState {
|
export default class ExtensionManagerState {
|
||||||
queue: QueueState;
|
queue: QueueState;
|
||||||
control: ControlSectionState;
|
control: ControlSectionState;
|
||||||
}
|
}
|
1
extensions/package-manager/js/dist-typings/states/QueueState.d.ts
generated
vendored
1
extensions/package-manager/js/dist-typings/states/QueueState.d.ts
generated
vendored
@@ -15,4 +15,5 @@ export default class QueueState {
|
|||||||
prev(): void;
|
prev(): void;
|
||||||
next(): void;
|
next(): void;
|
||||||
pollQueue(actionTaken?: boolean): void;
|
pollQueue(actionTaken?: boolean): void;
|
||||||
|
hasPending(): boolean;
|
||||||
}
|
}
|
||||||
|
2
extensions/package-manager/js/dist/admin.js
generated
vendored
2
extensions/package-manager/js/dist/admin.js
generated
vendored
File diff suppressed because one or more lines are too long
2
extensions/package-manager/js/dist/admin.js.map
generated
vendored
2
extensions/package-manager/js/dist/admin.js.map
generated
vendored
File diff suppressed because one or more lines are too long
@@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"name": "@flarum/package-manager",
|
"name": "@flarum/extension-manager",
|
||||||
"version": "0.0.0",
|
"version": "0.0.0",
|
||||||
"private": true,
|
"private": true,
|
||||||
"prettier": "@flarum/prettier-config",
|
"prettier": "@flarum/prettier-config",
|
||||||
|
@@ -32,40 +32,40 @@ export default class AuthMethodModal<CustomAttrs extends IAuthMethodModalAttrs =
|
|||||||
|
|
||||||
title(): Mithril.Children {
|
title(): Mithril.Children {
|
||||||
const context = this.attrs.host ? 'edit' : 'add';
|
const context = this.attrs.host ? 'edit' : 'add';
|
||||||
return app.translator.trans(`flarum-package-manager.admin.auth_config.${context}_label`);
|
return app.translator.trans(`flarum-extension-manager.admin.auth_config.${context}_label`);
|
||||||
}
|
}
|
||||||
|
|
||||||
content(): Mithril.Children {
|
content(): Mithril.Children {
|
||||||
const types = {
|
const types = {
|
||||||
'github-oauth': app.translator.trans('flarum-package-manager.admin.auth_config.types.github-oauth'),
|
'github-oauth': app.translator.trans('flarum-extension-manager.admin.auth_config.types.github-oauth'),
|
||||||
'gitlab-oauth': app.translator.trans('flarum-package-manager.admin.auth_config.types.gitlab-oauth'),
|
'gitlab-oauth': app.translator.trans('flarum-extension-manager.admin.auth_config.types.gitlab-oauth'),
|
||||||
'gitlab-token': app.translator.trans('flarum-package-manager.admin.auth_config.types.gitlab-token'),
|
'gitlab-token': app.translator.trans('flarum-extension-manager.admin.auth_config.types.gitlab-token'),
|
||||||
bearer: app.translator.trans('flarum-package-manager.admin.auth_config.types.bearer'),
|
bearer: app.translator.trans('flarum-extension-manager.admin.auth_config.types.bearer'),
|
||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="Modal-body">
|
<div className="Modal-body">
|
||||||
<div className="Form-group">
|
<div className="Form-group">
|
||||||
<label>{app.translator.trans('flarum-package-manager.admin.auth_config.add_modal.type_label')}</label>
|
<label>{app.translator.trans('flarum-extension-manager.admin.auth_config.add_modal.type_label')}</label>
|
||||||
<Select options={types} value={this.type()} onchange={this.type} />
|
<Select options={types} value={this.type()} onchange={this.type} />
|
||||||
</div>
|
</div>
|
||||||
<div className="Form-group">
|
<div className="Form-group">
|
||||||
<label>{app.translator.trans('flarum-package-manager.admin.auth_config.add_modal.host_label')}</label>
|
<label>{app.translator.trans('flarum-extension-manager.admin.auth_config.add_modal.host_label')}</label>
|
||||||
<input
|
<input
|
||||||
className="FormControl"
|
className="FormControl"
|
||||||
bidi={this.host}
|
bidi={this.host}
|
||||||
placeholder={app.translator.trans('flarum-package-manager.admin.auth_config.add_modal.host_placeholder')}
|
placeholder={app.translator.trans('flarum-extension-manager.admin.auth_config.add_modal.host_placeholder')}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div className="Form-group">
|
<div className="Form-group">
|
||||||
<label>{app.translator.trans('flarum-package-manager.admin.auth_config.add_modal.token_label')}</label>
|
<label>{app.translator.trans('flarum-extension-manager.admin.auth_config.add_modal.token_label')}</label>
|
||||||
<textarea
|
<textarea
|
||||||
className="FormControl"
|
className="FormControl"
|
||||||
oninput={(e: InputEvent) => this.token((e.target as HTMLTextAreaElement).value)}
|
oninput={(e: InputEvent) => this.token((e.target as HTMLTextAreaElement).value)}
|
||||||
rows="6"
|
rows="6"
|
||||||
placeholder={
|
placeholder={
|
||||||
this.token().startsWith('unchanged:')
|
this.token().startsWith('unchanged:')
|
||||||
? extractText(app.translator.trans('flarum-package-manager.admin.auth_config.add_modal.unchanged_token_placeholder'))
|
? extractText(app.translator.trans('flarum-extension-manager.admin.auth_config.add_modal.unchanged_token_placeholder'))
|
||||||
: ''
|
: ''
|
||||||
}
|
}
|
||||||
>
|
>
|
||||||
@@ -74,7 +74,7 @@ export default class AuthMethodModal<CustomAttrs extends IAuthMethodModalAttrs =
|
|||||||
</div>
|
</div>
|
||||||
<div className="Form-group">
|
<div className="Form-group">
|
||||||
<Button className="Button Button--primary" onclick={this.submit.bind(this)}>
|
<Button className="Button Button--primary" onclick={this.submit.bind(this)}>
|
||||||
{app.translator.trans('flarum-package-manager.admin.auth_config.add_modal.submit_button')}
|
{app.translator.trans('flarum-extension-manager.admin.auth_config.add_modal.submit_button')}
|
||||||
</Button>
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@@ -9,7 +9,7 @@ export default class ConfigureAuth extends ConfigureJson<IConfigureJson> {
|
|||||||
protected type = 'auth';
|
protected type = 'auth';
|
||||||
|
|
||||||
title(): Mithril.Children {
|
title(): Mithril.Children {
|
||||||
return app.translator.trans('flarum-package-manager.admin.auth_config.title');
|
return app.translator.trans('flarum-extension-manager.admin.auth_config.title');
|
||||||
}
|
}
|
||||||
|
|
||||||
className(): string {
|
className(): string {
|
||||||
@@ -27,14 +27,14 @@ export default class ConfigureAuth extends ConfigureJson<IConfigureJson> {
|
|||||||
});
|
});
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="SettingsGroups-content">
|
<div className="ExtensionManager-SettingsGroups-content">
|
||||||
{hasAuthSettings ? (
|
{hasAuthSettings ? (
|
||||||
authSettings.map((type) => {
|
authSettings.map((type) => {
|
||||||
const hosts = this.settings[type]();
|
const hosts = this.settings[type]();
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="Form-group">
|
<div className="Form-group">
|
||||||
<label>{app.translator.trans(`flarum-package-manager.admin.auth_config.types.${type}`)}</label>
|
<label>{app.translator.trans(`flarum-extension-manager.admin.auth_config.types.${type}`)}</label>
|
||||||
<div className="ConfigureAuth-hosts">
|
<div className="ConfigureAuth-hosts">
|
||||||
{Object.keys(hosts).map((host) => {
|
{Object.keys(hosts).map((host) => {
|
||||||
const data = hosts[host] as string | Record<string, string>;
|
const data = hosts[host] as string | Record<string, string>;
|
||||||
@@ -58,9 +58,9 @@ export default class ConfigureAuth extends ConfigureJson<IConfigureJson> {
|
|||||||
<Button
|
<Button
|
||||||
className="Button Button--icon"
|
className="Button Button--icon"
|
||||||
icon="fas fa-trash"
|
icon="fas fa-trash"
|
||||||
aria-label={app.translator.trans('flarum-package-manager.admin.auth_config.delete_label')}
|
aria-label={app.translator.trans('flarum-extension-manager.admin.auth_config.delete_label')}
|
||||||
onclick={() => {
|
onclick={() => {
|
||||||
if (confirm(extractText(app.translator.trans('flarum-package-manager.admin.auth_config.delete_confirmation')))) {
|
if (confirm(extractText(app.translator.trans('flarum-extension-manager.admin.auth_config.delete_confirmation')))) {
|
||||||
const newType = { ...this.setting(type)() };
|
const newType = { ...this.setting(type)() };
|
||||||
delete newType[host];
|
delete newType[host];
|
||||||
|
|
||||||
@@ -80,7 +80,7 @@ export default class ConfigureAuth extends ConfigureJson<IConfigureJson> {
|
|||||||
);
|
);
|
||||||
})
|
})
|
||||||
) : (
|
) : (
|
||||||
<span className="helpText">{app.translator.trans('flarum-package-manager.admin.auth_config.no_auth_methods_configured')}</span>
|
<span className="helpText">{app.translator.trans('flarum-extension-manager.admin.auth_config.no_auth_methods_configured')}</span>
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
@@ -99,7 +99,7 @@ export default class ConfigureAuth extends ConfigureJson<IConfigureJson> {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
>
|
>
|
||||||
{app.translator.trans('flarum-package-manager.admin.auth_config.add_label')}
|
{app.translator.trans('flarum-extension-manager.admin.auth_config.add_label')}
|
||||||
</Button>
|
</Button>
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@@ -14,7 +14,7 @@ export default class ConfigureComposer extends ConfigureJson<IConfigureJson> {
|
|||||||
protected type = 'composer';
|
protected type = 'composer';
|
||||||
|
|
||||||
title(): Mithril.Children {
|
title(): Mithril.Children {
|
||||||
return app.translator.trans('flarum-package-manager.admin.composer.title');
|
return app.translator.trans('flarum-extension-manager.admin.composer.title');
|
||||||
}
|
}
|
||||||
|
|
||||||
className(): string {
|
className(): string {
|
||||||
@@ -23,23 +23,23 @@ export default class ConfigureComposer extends ConfigureJson<IConfigureJson> {
|
|||||||
|
|
||||||
content(): Mithril.Children {
|
content(): Mithril.Children {
|
||||||
return (
|
return (
|
||||||
<div className="SettingsGroups-content">
|
<div className="ExtensionManager-SettingsGroups-content">
|
||||||
{this.attrs.buildSettingComponent.call(this, {
|
{this.attrs.buildSettingComponent.call(this, {
|
||||||
setting: 'minimum-stability',
|
setting: 'minimum-stability',
|
||||||
label: app.translator.trans('flarum-package-manager.admin.composer.minimum_stability.label'),
|
label: app.translator.trans('flarum-extension-manager.admin.composer.minimum_stability.label'),
|
||||||
help: app.translator.trans('flarum-package-manager.admin.composer.minimum_stability.help'),
|
help: app.translator.trans('flarum-extension-manager.admin.composer.minimum_stability.help'),
|
||||||
type: 'select',
|
type: 'select',
|
||||||
options: {
|
options: {
|
||||||
stable: app.translator.trans('flarum-package-manager.admin.composer.minimum_stability.options.stable'),
|
stable: app.translator.trans('flarum-extension-manager.admin.composer.minimum_stability.options.stable'),
|
||||||
RC: app.translator.trans('flarum-package-manager.admin.composer.minimum_stability.options.rc'),
|
RC: app.translator.trans('flarum-extension-manager.admin.composer.minimum_stability.options.rc'),
|
||||||
beta: app.translator.trans('flarum-package-manager.admin.composer.minimum_stability.options.beta'),
|
beta: app.translator.trans('flarum-extension-manager.admin.composer.minimum_stability.options.beta'),
|
||||||
alpha: app.translator.trans('flarum-package-manager.admin.composer.minimum_stability.options.alpha'),
|
alpha: app.translator.trans('flarum-extension-manager.admin.composer.minimum_stability.options.alpha'),
|
||||||
dev: app.translator.trans('flarum-package-manager.admin.composer.minimum_stability.options.dev'),
|
dev: app.translator.trans('flarum-extension-manager.admin.composer.minimum_stability.options.dev'),
|
||||||
},
|
},
|
||||||
})}
|
})}
|
||||||
<div className="Form-group">
|
<div className="Form-group">
|
||||||
<label>{app.translator.trans('flarum-package-manager.admin.composer.repositories.label')}</label>
|
<label>{app.translator.trans('flarum-extension-manager.admin.composer.repositories.label')}</label>
|
||||||
<div className="helpText">{app.translator.trans('flarum-package-manager.admin.composer.repositories.help')}</div>
|
<div className="helpText">{app.translator.trans('flarum-extension-manager.admin.composer.repositories.help')}</div>
|
||||||
<div className="ConfigureComposer-repositories">
|
<div className="ConfigureComposer-repositories">
|
||||||
{Object.keys(this.setting('repositories')() || {}).map((name) => {
|
{Object.keys(this.setting('repositories')() || {}).map((name) => {
|
||||||
const repository = this.setting('repositories')()[name] as Repository;
|
const repository = this.setting('repositories')()[name] as Repository;
|
||||||
@@ -75,9 +75,9 @@ export default class ConfigureComposer extends ConfigureJson<IConfigureJson> {
|
|||||||
<Button
|
<Button
|
||||||
className="Button Button--icon"
|
className="Button Button--icon"
|
||||||
icon="fas fa-trash"
|
icon="fas fa-trash"
|
||||||
aria-label={app.translator.trans('flarum-package-manager.admin.composer.delete_repository_label')}
|
aria-label={app.translator.trans('flarum-extension-manager.admin.composer.delete_repository_label')}
|
||||||
onclick={() => {
|
onclick={() => {
|
||||||
if (confirm(extractText(app.translator.trans('flarum-package-manager.admin.composer.delete_repository_confirmation')))) {
|
if (confirm(extractText(app.translator.trans('flarum-extension-manager.admin.composer.delete_repository_confirmation')))) {
|
||||||
const repositories = { ...this.setting('repositories')() };
|
const repositories = { ...this.setting('repositories')() };
|
||||||
delete repositories[name];
|
delete repositories[name];
|
||||||
|
|
||||||
@@ -99,7 +99,7 @@ export default class ConfigureComposer extends ConfigureJson<IConfigureJson> {
|
|||||||
|
|
||||||
items.push(
|
items.push(
|
||||||
<Button className="Button" onclick={() => app.modal.show(RepositoryModal, { onsubmit: this.onchange.bind(this) })}>
|
<Button className="Button" onclick={() => app.modal.show(RepositoryModal, { onsubmit: this.onchange.bind(this) })}>
|
||||||
{app.translator.trans('flarum-package-manager.admin.composer.add_repository_label')}
|
{app.translator.trans('flarum-extension-manager.admin.composer.add_repository_label')}
|
||||||
</Button>
|
</Button>
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@@ -69,7 +69,7 @@ export default abstract class ConfigureJson<CustomAttrs extends IConfigureJson =
|
|||||||
app
|
app
|
||||||
.request({
|
.request({
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
url: app.forum.attribute('apiUrl') + '/package-manager/composer',
|
url: app.forum.attribute('apiUrl') + '/extension-manager/composer',
|
||||||
body: {
|
body: {
|
||||||
type: this.type,
|
type: this.type,
|
||||||
data: readOnly ? null : configuration,
|
data: readOnly ? null : configuration,
|
||||||
|
@@ -14,14 +14,14 @@ export default class ControlSection extends Component<ComponentAttrs> {
|
|||||||
|
|
||||||
view() {
|
view() {
|
||||||
return (
|
return (
|
||||||
<div className="ExtensionPage-permissions PackageManager-controlSection">
|
<div className="ExtensionPage-permissions ExtensionManager-controlSection">
|
||||||
<div className="ExtensionPage-permissions-header">
|
<div className="ExtensionPage-permissions-header">
|
||||||
<div className="container">
|
<div className="container">
|
||||||
<h2 className="ExtensionTitle">{app.translator.trans('flarum-package-manager.admin.sections.control.title')}</h2>
|
<h2 className="ExtensionTitle">{app.translator.trans('flarum-extension-manager.admin.sections.control.title')}</h2>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div className="container">
|
<div className="container">
|
||||||
{app.data['flarum-package-manager.writable_dirs'] ? (
|
{app.data['flarum-extension-manager.writable_dirs'] ? (
|
||||||
<>
|
<>
|
||||||
<Installer />
|
<Installer />
|
||||||
<Updater />
|
<Updater />
|
||||||
@@ -29,7 +29,7 @@ export default class ControlSection extends Component<ComponentAttrs> {
|
|||||||
) : (
|
) : (
|
||||||
<div className="Form-group">
|
<div className="Form-group">
|
||||||
<Alert type="warning" dismissible={false}>
|
<Alert type="warning" dismissible={false}>
|
||||||
{app.translator.trans('flarum-package-manager.admin.file_permissions')}
|
{app.translator.trans('flarum-extension-manager.admin.file_permissions')}
|
||||||
</Alert>
|
</Alert>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
|
@@ -35,56 +35,56 @@ export default class ExtensionItem<Attrs extends ExtensionItemAttrs = ExtensionI
|
|||||||
return (
|
return (
|
||||||
<div
|
<div
|
||||||
className={classList({
|
className={classList({
|
||||||
'PackageManager-extension': true,
|
'ExtensionManager-extension': true,
|
||||||
'PackageManager-extension--core': isCore,
|
'ExtensionManager-extension--core': isCore,
|
||||||
'PackageManager-extension--danger': isDanger,
|
'ExtensionManager-extension--danger': isDanger,
|
||||||
})}
|
})}
|
||||||
>
|
>
|
||||||
<div className="PackageManager-extension-icon ExtensionIcon" style={extension.icon}>
|
<div className="ExtensionManager-extension-icon ExtensionIcon" style={extension.icon}>
|
||||||
{extension.icon ? icon(extension.icon.name) : ''}
|
{extension.icon ? icon(extension.icon.name) : ''}
|
||||||
</div>
|
</div>
|
||||||
<div className="PackageManager-extension-info">
|
<div className="ExtensionManager-extension-info">
|
||||||
<div className="PackageManager-extension-name">{extension.extra['flarum-extension'].title}</div>
|
<div className="ExtensionManager-extension-name">{extension.extra['flarum-extension'].title}</div>
|
||||||
<div className="PackageManager-extension-version">
|
<div className="ExtensionManager-extension-version">
|
||||||
<span className="PackageManager-extension-version-current">{this.version(updates['version'])}</span>
|
<span className="ExtensionManager-extension-version-current">{this.version(updates['version'])}</span>
|
||||||
{latestVersion ? (
|
{latestVersion ? (
|
||||||
<Label className="PackageManager-extension-version-latest" type={updates['latest-minor'] ? 'success' : 'warning'}>
|
<Label className="ExtensionManager-extension-version-latest" type={updates['latest-minor'] ? 'success' : 'warning'}>
|
||||||
{this.version(latestVersion)}
|
{this.version(latestVersion)}
|
||||||
</Label>
|
</Label>
|
||||||
) : null}
|
) : null}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div className="PackageManager-extension-controls">
|
<div className="ExtensionManager-extension-controls">
|
||||||
{onClickUpdate && typeof onClickUpdate === 'function' ? (
|
{onClickUpdate && typeof onClickUpdate === 'function' ? (
|
||||||
<Tooltip text={app.translator.trans('flarum-package-manager.admin.extensions.update')}>
|
<Tooltip text={app.translator.trans('flarum-extension-manager.admin.extensions.update')}>
|
||||||
<Button
|
<Button
|
||||||
icon="fas fa-arrow-alt-circle-up"
|
icon="fas fa-arrow-alt-circle-up"
|
||||||
className="Button Button--icon Button--flat"
|
className="Button Button--icon Button--flat"
|
||||||
onclick={onClickUpdate}
|
onclick={onClickUpdate}
|
||||||
aria-label={app.translator.trans('flarum-package-manager.admin.extensions.update')}
|
aria-label={app.translator.trans('flarum-extension-manager.admin.extensions.update')}
|
||||||
/>
|
/>
|
||||||
</Tooltip>
|
</Tooltip>
|
||||||
) : onClickUpdate ? (
|
) : onClickUpdate ? (
|
||||||
<Dropdown
|
<Dropdown
|
||||||
buttonClassName="Button Button--icon Button--flat"
|
buttonClassName="Button Button--icon Button--flat"
|
||||||
icon="fas fa-arrow-alt-circle-up"
|
icon="fas fa-arrow-alt-circle-up"
|
||||||
label={app.translator.trans('flarum-package-manager.admin.extensions.update')}
|
label={app.translator.trans('flarum-extension-manager.admin.extensions.update')}
|
||||||
>
|
>
|
||||||
<Button icon="fas fa-arrow-alt-circle-up" className="Button" onclick={onClickUpdate.soft}>
|
<Button icon="fas fa-arrow-alt-circle-up" className="Button" onclick={onClickUpdate.soft}>
|
||||||
{app.translator.trans('flarum-package-manager.admin.extensions.update_soft_label')}
|
{app.translator.trans('flarum-extension-manager.admin.extensions.update_soft_label')}
|
||||||
</Button>
|
</Button>
|
||||||
<Button icon="fas fa-arrow-alt-circle-up" className="Button" onclick={onClickUpdate.hard} disabled={!updates['direct-dependency']}>
|
<Button icon="fas fa-arrow-alt-circle-up" className="Button" onclick={onClickUpdate.hard} disabled={!updates['direct-dependency']}>
|
||||||
{app.translator.trans('flarum-package-manager.admin.extensions.update_hard_label')}
|
{app.translator.trans('flarum-extension-manager.admin.extensions.update_hard_label')}
|
||||||
</Button>
|
</Button>
|
||||||
</Dropdown>
|
</Dropdown>
|
||||||
) : null}
|
) : null}
|
||||||
{whyNotWarning ? (
|
{whyNotWarning ? (
|
||||||
<Tooltip text={app.translator.trans('flarum-package-manager.admin.extensions.check_why_it_failed_updating')}>
|
<Tooltip text={app.translator.trans('flarum-extension-manager.admin.extensions.check_why_it_failed_updating')}>
|
||||||
<Button
|
<Button
|
||||||
icon="fas fa-exclamation-circle"
|
icon="fas fa-exclamation-circle"
|
||||||
className="Button Button--icon Button--flat Button--danger"
|
className="Button Button--icon Button--flat Button--danger"
|
||||||
onclick={() => app.modal.show(WhyNotModal, { package: extension.name })}
|
onclick={() => app.modal.show(WhyNotModal, { package: extension.name })}
|
||||||
aria-label={app.translator.trans('flarum-package-manager.admin.extensions.check_why_it_failed_updating')}
|
aria-label={app.translator.trans('flarum-extension-manager.admin.extensions.check_why_it_failed_updating')}
|
||||||
/>
|
/>
|
||||||
</Tooltip>
|
</Tooltip>
|
||||||
) : null}
|
) : null}
|
||||||
|
@@ -19,10 +19,10 @@ export default class Installer extends Component<InstallerAttrs> {
|
|||||||
|
|
||||||
view(): Mithril.Children {
|
view(): Mithril.Children {
|
||||||
return (
|
return (
|
||||||
<div className="Form-group PackageManager-installer">
|
<div className="Form-group ExtensionManager-installer">
|
||||||
<label htmlFor="install-extension">{app.translator.trans('flarum-package-manager.admin.extensions.install')}</label>
|
<label htmlFor="install-extension">{app.translator.trans('flarum-extension-manager.admin.extensions.install')}</label>
|
||||||
<p className="helpText">
|
<p className="helpText">
|
||||||
{app.translator.trans('flarum-package-manager.admin.extensions.install_help', {
|
{app.translator.trans('flarum-extension-manager.admin.extensions.install_help', {
|
||||||
extiverse: <a href="https://extiverse.com">extiverse.com</a>,
|
extiverse: <a href="https://extiverse.com">extiverse.com</a>,
|
||||||
semantic_link: <a href="https://devhints.io/semver" />,
|
semantic_link: <a href="https://devhints.io/semver" />,
|
||||||
code: <code />,
|
code: <code />,
|
||||||
@@ -34,10 +34,10 @@ export default class Installer extends Component<InstallerAttrs> {
|
|||||||
className="Button"
|
className="Button"
|
||||||
icon="fas fa-download"
|
icon="fas fa-download"
|
||||||
onclick={this.onsubmit.bind(this)}
|
onclick={this.onsubmit.bind(this)}
|
||||||
loading={app.packageManager.control.isLoading('extension-install')}
|
loading={app.extensionManager.control.isLoading('extension-install')}
|
||||||
disabled={app.packageManager.control.isLoading()}
|
disabled={app.extensionManager.control.hasOperationRunning()}
|
||||||
>
|
>
|
||||||
{app.translator.trans('flarum-package-manager.admin.extensions.proceed')}
|
{app.translator.trans('flarum-extension-manager.admin.extensions.proceed')}
|
||||||
</Button>
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -51,6 +51,6 @@ export default class Installer extends Component<InstallerAttrs> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
onsubmit(): void {
|
onsubmit(): void {
|
||||||
app.packageManager.control.requirePackage(this.data());
|
app.extensionManager.control.requirePackage(this.data());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -30,31 +30,38 @@ export default class MajorUpdater<T extends MajorUpdaterAttrs = MajorUpdaterAttr
|
|||||||
// @todo move Form-group--danger class to core for reuse
|
// @todo move Form-group--danger class to core for reuse
|
||||||
return (
|
return (
|
||||||
<div
|
<div
|
||||||
className={classList('Form-group Form-group--danger PackageManager-majorUpdate', {
|
className={classList('Form-group Form-group--danger ExtensionManager-majorUpdate', {
|
||||||
'PackageManager-majorUpdate--failed': this.updateState.status === 'failure',
|
'ExtensionManager-majorUpdate--failed': this.updateState.status === 'failure',
|
||||||
'PackageManager-majorUpdate--incompatibleExtensions': this.updateState.incompatibleExtensions.length,
|
'ExtensionManager-majorUpdate--incompatibleExtensions': this.updateState.incompatibleExtensions.length,
|
||||||
})}
|
})}
|
||||||
>
|
>
|
||||||
<img alt="flarum logo" src={app.forum.attribute('baseUrl') + '/assets/extensions/flarum-package-manager/flarum.svg'} />
|
<img alt="flarum logo" src={app.forum.attribute('baseUrl') + '/assets/extensions/flarum-extension-manager/flarum.svg'} />
|
||||||
<label>{app.translator.trans('flarum-package-manager.admin.major_updater.title', { version: this.attrs.coreUpdate['latest-major'] })}</label>
|
<label>
|
||||||
<p className="helpText">{app.translator.trans('flarum-package-manager.admin.major_updater.description')}</p>
|
{app.translator.trans('flarum-extension-manager.admin.major_updater.title', { version: this.attrs.coreUpdate['latest-major'] })}
|
||||||
<div className="PackageManager-updaterControls">
|
</label>
|
||||||
<Tooltip text={app.translator.trans('flarum-package-manager.admin.major_updater.dry_run_help')}>
|
<p className="helpText">{app.translator.trans('flarum-extension-manager.admin.major_updater.description')}</p>
|
||||||
<Button className="Button" icon="fas fa-vial" onclick={this.update.bind(this, true)} disabled={app.packageManager.control.isLoading()}>
|
<div className="ExtensionManager-updaterControls">
|
||||||
{app.translator.trans('flarum-package-manager.admin.major_updater.dry_run')}
|
<Tooltip text={app.translator.trans('flarum-extension-manager.admin.major_updater.dry_run_help')}>
|
||||||
|
<Button
|
||||||
|
className="Button"
|
||||||
|
icon="fas fa-vial"
|
||||||
|
onclick={this.update.bind(this, true)}
|
||||||
|
disabled={app.extensionManager.control.hasOperationRunning()}
|
||||||
|
>
|
||||||
|
{app.translator.trans('flarum-extension-manager.admin.major_updater.dry_run')}
|
||||||
</Button>
|
</Button>
|
||||||
</Tooltip>
|
</Tooltip>
|
||||||
<Button
|
<Button
|
||||||
className="Button Button--danger"
|
className="Button Button--danger"
|
||||||
icon="fas fa-play"
|
icon="fas fa-play"
|
||||||
onclick={this.update.bind(this, false)}
|
onclick={this.update.bind(this, false)}
|
||||||
disabled={app.packageManager.control.isLoading()}
|
disabled={app.extensionManager.control.hasOperationRunning()}
|
||||||
>
|
>
|
||||||
{app.translator.trans('flarum-package-manager.admin.major_updater.update')}
|
{app.translator.trans('flarum-extension-manager.admin.major_updater.update')}
|
||||||
</Button>
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
{this.updateState.incompatibleExtensions.length ? (
|
{this.updateState.incompatibleExtensions.length ? (
|
||||||
<div className="PackageManager-majorUpdate-incompatibleExtensions PackageManager-extensions-grid">
|
<div className="ExtensionManager-majorUpdate-incompatibleExtensions ExtensionManager-extensions-grid">
|
||||||
{this.updateState.incompatibleExtensions.map((extension: string) => (
|
{this.updateState.incompatibleExtensions.map((extension: string) => (
|
||||||
<ExtensionItem
|
<ExtensionItem
|
||||||
extension={app.data.extensions[extension.replace('flarum-', '').replace('flarum-ext-', '').replace('/', '-')]}
|
extension={app.data.extensions[extension.replace('flarum-', '').replace('flarum-ext-', '').replace('/', '-')]}
|
||||||
@@ -68,20 +75,20 @@ export default class MajorUpdater<T extends MajorUpdaterAttrs = MajorUpdaterAttr
|
|||||||
{this.updateState.status === 'failure' ? (
|
{this.updateState.status === 'failure' ? (
|
||||||
<Alert
|
<Alert
|
||||||
type="error"
|
type="error"
|
||||||
className="PackageManager-majorUpdate-failure"
|
className="ExtensionManager-majorUpdate-failure"
|
||||||
dismissible={false}
|
dismissible={false}
|
||||||
controls={[
|
controls={[
|
||||||
<Button
|
<Button
|
||||||
className="Button Button--text PackageManager-majorUpdate-failure-details"
|
className="Button Button--text ExtensionManager-majorUpdate-failure-details"
|
||||||
icon="fas fa-question-circle"
|
icon="fas fa-question-circle"
|
||||||
onclick={() => app.modal.show(WhyNotModal, { package: 'flarum/core' })}
|
onclick={() => app.modal.show(WhyNotModal, { package: 'flarum/core' })}
|
||||||
>
|
>
|
||||||
{app.translator.trans('flarum-package-manager.admin.major_updater.failure.why')}
|
{app.translator.trans('flarum-extension-manager.admin.major_updater.failure.why')}
|
||||||
</Button>,
|
</Button>,
|
||||||
]}
|
]}
|
||||||
>
|
>
|
||||||
<p className="PackageManager-majorUpdate-failure-desc">
|
<p className="ExtensionManager-majorUpdate-failure-desc">
|
||||||
{app.translator.trans('flarum-package-manager.admin.major_updater.failure.desc')}
|
{app.translator.trans('flarum-extension-manager.admin.major_updater.failure.desc')}
|
||||||
</p>
|
</p>
|
||||||
</Alert>
|
</Alert>
|
||||||
) : null}
|
) : null}
|
||||||
@@ -90,6 +97,6 @@ export default class MajorUpdater<T extends MajorUpdaterAttrs = MajorUpdaterAttr
|
|||||||
}
|
}
|
||||||
|
|
||||||
update(dryRun: boolean) {
|
update(dryRun: boolean) {
|
||||||
app.packageManager.control.majorUpdate({ dryRun });
|
app.extensionManager.control.majorUpdate({ dryRun });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -15,7 +15,7 @@ export default class Pagination extends Component<PaginationAttrs> {
|
|||||||
return (
|
return (
|
||||||
<nav className="Pagination UserListPage-gridPagination">
|
<nav className="Pagination UserListPage-gridPagination">
|
||||||
<Button
|
<Button
|
||||||
disabled={!this.attrs.list.hasPrev() || app.packageManager.control.isLoading()}
|
disabled={!this.attrs.list.hasPrev() || app.extensionManager.control.isLoading()}
|
||||||
title={app.translator.trans('core.admin.users.pagination.back_button')}
|
title={app.translator.trans('core.admin.users.pagination.back_button')}
|
||||||
onclick={() => this.attrs.list.prev()}
|
onclick={() => this.attrs.list.prev()}
|
||||||
icon="fas fa-chevron-left"
|
icon="fas fa-chevron-left"
|
||||||
@@ -28,7 +28,7 @@ export default class Pagination extends Component<PaginationAttrs> {
|
|||||||
})}
|
})}
|
||||||
</span>
|
</span>
|
||||||
<Button
|
<Button
|
||||||
disabled={!this.attrs.list.hasNext() || app.packageManager.control.isLoading()}
|
disabled={!this.attrs.list.hasNext() || app.extensionManager.control.isLoading()}
|
||||||
title={app.translator.trans('core.admin.users.pagination.next_button')}
|
title={app.translator.trans('core.admin.users.pagination.next_button')}
|
||||||
onclick={() => this.attrs.list.next()}
|
onclick={() => this.attrs.list.next()}
|
||||||
icon="fas fa-chevron-right"
|
icon="fas fa-chevron-right"
|
||||||
|
@@ -25,21 +25,21 @@ export default class QueueSection extends Component<{}> {
|
|||||||
oninit(vnode: Mithril.Vnode<{}, this>) {
|
oninit(vnode: Mithril.Vnode<{}, this>) {
|
||||||
super.oninit(vnode);
|
super.oninit(vnode);
|
||||||
|
|
||||||
app.packageManager.queue.load();
|
app.extensionManager.queue.load();
|
||||||
}
|
}
|
||||||
|
|
||||||
view() {
|
view() {
|
||||||
return (
|
return (
|
||||||
<section id="PackageManager-queueSection" className="ExtensionPage-permissions PackageManager-queueSection">
|
<section id="ExtensionManager-queueSection" className="ExtensionPage-permissions ExtensionManager-queueSection">
|
||||||
<div className="ExtensionPage-permissions-header PackageManager-queueSection-header">
|
<div className="ExtensionPage-permissions-header ExtensionManager-queueSection-header">
|
||||||
<div className="container">
|
<div className="container">
|
||||||
<h2 className="ExtensionTitle">{app.translator.trans('flarum-package-manager.admin.sections.queue.title')}</h2>
|
<h2 className="ExtensionTitle">{app.translator.trans('flarum-extension-manager.admin.sections.queue.title')}</h2>
|
||||||
<Button
|
<Button
|
||||||
className="Button Button--icon"
|
className="Button Button--icon"
|
||||||
icon="fas fa-sync-alt"
|
icon="fas fa-sync-alt"
|
||||||
onclick={() => app.packageManager.queue.load()}
|
onclick={() => app.extensionManager.queue.load()}
|
||||||
aria-label={app.translator.trans('flarum-package-manager.admin.sections.queue.refresh')}
|
aria-label={app.translator.trans('flarum-extension-manager.admin.sections.queue.refresh')}
|
||||||
disabled={app.packageManager.control.isLoading()}
|
disabled={app.extensionManager.control.isLoading()}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -54,12 +54,12 @@ export default class QueueSection extends Component<{}> {
|
|||||||
items.add(
|
items.add(
|
||||||
'operation',
|
'operation',
|
||||||
{
|
{
|
||||||
label: extractText(app.translator.trans('flarum-package-manager.admin.sections.queue.columns.operation')),
|
label: extractText(app.translator.trans('flarum-extension-manager.admin.sections.queue.columns.operation')),
|
||||||
content: (task) => (
|
content: (task) => (
|
||||||
<div className="PackageManager-queueTable-operation">
|
<div className="ExtensionManager-queueTable-operation">
|
||||||
<span className="PackageManager-queueTable-operation-icon">{this.operationIcon(task.operation())}</span>
|
<span className="ExtensionManager-queueTable-operation-icon">{this.operationIcon(task.operation())}</span>
|
||||||
<span className="PackageManager-queueTable-operation-name">
|
<span className="ExtensionManager-queueTable-operation-name">
|
||||||
{app.translator.trans(`flarum-package-manager.admin.sections.queue.operations.${task.operation()}`)}
|
{app.translator.trans(`flarum-extension-manager.admin.sections.queue.operations.${task.operation()}`)}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
),
|
),
|
||||||
@@ -70,18 +70,18 @@ export default class QueueSection extends Component<{}> {
|
|||||||
items.add(
|
items.add(
|
||||||
'package',
|
'package',
|
||||||
{
|
{
|
||||||
label: extractText(app.translator.trans('flarum-package-manager.admin.sections.queue.columns.package')),
|
label: extractText(app.translator.trans('flarum-extension-manager.admin.sections.queue.columns.package')),
|
||||||
content: (task) => {
|
content: (task) => {
|
||||||
const extension: Extension | null = app.data.extensions[task.package()?.replace(/(\/flarum-|\/flarum-ext-|\/)/g, '-')];
|
const extension: Extension | null = app.data.extensions[task.package()?.replace(/(\/flarum-|\/flarum-ext-|\/)/g, '-')];
|
||||||
|
|
||||||
return extension ? (
|
return extension ? (
|
||||||
<Link className="PackageManager-queueTable-package" href={app.route('extension', { id: extension.id })}>
|
<Link className="ExtensionManager-queueTable-package" href={app.route('extension', { id: extension.id })}>
|
||||||
<div className="PackageManager-queueTable-package-icon ExtensionIcon" style={extension.icon}>
|
<div className="ExtensionManager-queueTable-package-icon ExtensionIcon" style={extension.icon}>
|
||||||
{!!extension.icon && icon(extension.icon.name)}
|
{!!extension.icon && icon(extension.icon.name)}
|
||||||
</div>
|
</div>
|
||||||
<div className="PackageManager-queueTable-package-details">
|
<div className="ExtensionManager-queueTable-package-details">
|
||||||
<span className="PackageManager-queueTable-package-title">{extension.extra['flarum-extension'].title}</span>
|
<span className="ExtensionManager-queueTable-package-title">{extension.extra['flarum-extension'].title}</span>
|
||||||
<span className="PackageManager-queueTable-package-name">{task.package()}</span>
|
<span className="ExtensionManager-queueTable-package-name">{task.package()}</span>
|
||||||
</div>
|
</div>
|
||||||
</Link>
|
</Link>
|
||||||
) : (
|
) : (
|
||||||
@@ -95,14 +95,14 @@ export default class QueueSection extends Component<{}> {
|
|||||||
items.add(
|
items.add(
|
||||||
'status',
|
'status',
|
||||||
{
|
{
|
||||||
label: extractText(app.translator.trans('flarum-package-manager.admin.sections.queue.columns.status')),
|
label: extractText(app.translator.trans('flarum-extension-manager.admin.sections.queue.columns.status')),
|
||||||
content: (task) => (
|
content: (task) => (
|
||||||
<>
|
<>
|
||||||
<Label
|
<Label
|
||||||
className="PackageManager-queueTable-status"
|
className="ExtensionManager-queueTable-status"
|
||||||
type={{ running: 'neutral', failure: 'error', pending: 'warning', success: 'success' }[task.status()]}
|
type={{ running: 'neutral', failure: 'error', pending: 'warning', success: 'success' }[task.status()]}
|
||||||
>
|
>
|
||||||
{app.translator.trans(`flarum-package-manager.admin.sections.queue.statuses.${task.status()}`)}
|
{app.translator.trans(`flarum-extension-manager.admin.sections.queue.statuses.${task.status()}`)}
|
||||||
</Label>
|
</Label>
|
||||||
{['pending', 'running'].includes(task.status()) && <LoadingIndicator size="small" display="inline" />}
|
{['pending', 'running'].includes(task.status()) && <LoadingIndicator size="small" display="inline" />}
|
||||||
</>
|
</>
|
||||||
@@ -114,10 +114,10 @@ export default class QueueSection extends Component<{}> {
|
|||||||
items.add(
|
items.add(
|
||||||
'elapsedTime',
|
'elapsedTime',
|
||||||
{
|
{
|
||||||
label: extractText(app.translator.trans('flarum-package-manager.admin.sections.queue.columns.elapsed_time')),
|
label: extractText(app.translator.trans('flarum-extension-manager.admin.sections.queue.columns.elapsed_time')),
|
||||||
content: (task) =>
|
content: (task) =>
|
||||||
!task.startedAt() || !task.finishedAt() ? (
|
!task.startedAt() || !task.finishedAt() ? (
|
||||||
app.translator.trans('flarum-package-manager.admin.sections.queue.task_just_started')
|
app.translator.trans('flarum-extension-manager.admin.sections.queue.task_just_started')
|
||||||
) : (
|
) : (
|
||||||
<Tooltip text={`${dayjs(task.startedAt()).format('LL LTS')} ${dayjs(task.finishedAt()).format('LL LTS')}`}>
|
<Tooltip text={`${dayjs(task.startedAt()).format('LL LTS')} ${dayjs(task.finishedAt()).format('LL LTS')}`}>
|
||||||
<span>{humanDuration(task.startedAt(), task.finishedAt())}</span>
|
<span>{humanDuration(task.startedAt(), task.finishedAt())}</span>
|
||||||
@@ -130,7 +130,7 @@ export default class QueueSection extends Component<{}> {
|
|||||||
items.add(
|
items.add(
|
||||||
'memoryUsed',
|
'memoryUsed',
|
||||||
{
|
{
|
||||||
label: extractText(app.translator.trans('flarum-package-manager.admin.sections.queue.columns.peak_memory_used')),
|
label: extractText(app.translator.trans('flarum-extension-manager.admin.sections.queue.columns.peak_memory_used')),
|
||||||
content: (task) => <span>{task.peakMemoryUsed()}</span>,
|
content: (task) => <span>{task.peakMemoryUsed()}</span>,
|
||||||
},
|
},
|
||||||
60
|
60
|
||||||
@@ -139,12 +139,12 @@ export default class QueueSection extends Component<{}> {
|
|||||||
items.add(
|
items.add(
|
||||||
'details',
|
'details',
|
||||||
{
|
{
|
||||||
label: extractText(app.translator.trans('flarum-package-manager.admin.sections.queue.columns.details')),
|
label: extractText(app.translator.trans('flarum-extension-manager.admin.sections.queue.columns.details')),
|
||||||
content: (task) => (
|
content: (task) => (
|
||||||
<Button
|
<Button
|
||||||
className="Button Button--icon Table-controls-item"
|
className="Button Button--icon Table-controls-item"
|
||||||
icon="fas fa-file-alt"
|
icon="fas fa-file-alt"
|
||||||
aria-label={app.translator.trans('flarum-package-manager.admin.sections.queue.columns.details')}
|
aria-label={app.translator.trans('flarum-extension-manager.admin.sections.queue.columns.details')}
|
||||||
// @todo fix in core
|
// @todo fix in core
|
||||||
// @ts-ignore
|
// @ts-ignore
|
||||||
onclick={() => app.modal.show(TaskOutputModal, { task })}
|
onclick={() => app.modal.show(TaskOutputModal, { task })}
|
||||||
@@ -160,21 +160,21 @@ export default class QueueSection extends Component<{}> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
queueTable() {
|
queueTable() {
|
||||||
const tasks = app.packageManager.queue.getItems();
|
const tasks = app.extensionManager.queue.getItems();
|
||||||
|
|
||||||
if (!tasks) {
|
if (!tasks) {
|
||||||
return <LoadingIndicator />;
|
return <LoadingIndicator />;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (tasks && !tasks.length) {
|
if (tasks && !tasks.length) {
|
||||||
return <h3 className="ExtensionPage-subHeader">{app.translator.trans('flarum-package-manager.admin.sections.queue.none')}</h3>;
|
return <h3 className="ExtensionPage-subHeader">{app.translator.trans('flarum-extension-manager.admin.sections.queue.none')}</h3>;
|
||||||
}
|
}
|
||||||
|
|
||||||
const columns = this.columns();
|
const columns = this.columns();
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<table className="Table PackageManager-queueTable">
|
<table className="Table ExtensionManager-queueTable">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
{columns.toArray().map((item, index) => (
|
{columns.toArray().map((item, index) => (
|
||||||
@@ -199,7 +199,7 @@ export default class QueueSection extends Component<{}> {
|
|||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<Pagination list={app.packageManager.queue} />
|
<Pagination list={app.extensionManager.queue} />
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@@ -29,24 +29,24 @@ export default class RepositoryModal<CustomAttrs extends IRepositoryModalAttrs =
|
|||||||
|
|
||||||
title(): Mithril.Children {
|
title(): Mithril.Children {
|
||||||
const context = this.attrs.repository ? 'edit' : 'add';
|
const context = this.attrs.repository ? 'edit' : 'add';
|
||||||
return app.translator.trans(`flarum-package-manager.admin.composer.${context}_repository_label`);
|
return app.translator.trans(`flarum-extension-manager.admin.composer.${context}_repository_label`);
|
||||||
}
|
}
|
||||||
|
|
||||||
content(): Mithril.Children {
|
content(): Mithril.Children {
|
||||||
const types = {
|
const types = {
|
||||||
composer: app.translator.trans('flarum-package-manager.admin.composer.repositories.types.composer'),
|
composer: app.translator.trans('flarum-extension-manager.admin.composer.repositories.types.composer'),
|
||||||
vcs: app.translator.trans('flarum-package-manager.admin.composer.repositories.types.vcs'),
|
vcs: app.translator.trans('flarum-extension-manager.admin.composer.repositories.types.vcs'),
|
||||||
path: app.translator.trans('flarum-package-manager.admin.composer.repositories.types.path'),
|
path: app.translator.trans('flarum-extension-manager.admin.composer.repositories.types.path'),
|
||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="Modal-body">
|
<div className="Modal-body">
|
||||||
<div className="Form-group">
|
<div className="Form-group">
|
||||||
<label>{app.translator.trans('flarum-package-manager.admin.composer.repositories.add_modal.name_label')}</label>
|
<label>{app.translator.trans('flarum-extension-manager.admin.composer.repositories.add_modal.name_label')}</label>
|
||||||
<input className="FormControl" bidi={this.name} />
|
<input className="FormControl" bidi={this.name} />
|
||||||
</div>
|
</div>
|
||||||
<div className="Form-group">
|
<div className="Form-group">
|
||||||
<label>{app.translator.trans('flarum-package-manager.admin.composer.repositories.add_modal.type_label')}</label>
|
<label>{app.translator.trans('flarum-extension-manager.admin.composer.repositories.add_modal.type_label')}</label>
|
||||||
<Select
|
<Select
|
||||||
options={types}
|
options={types}
|
||||||
value={this.repository().type}
|
value={this.repository().type}
|
||||||
@@ -54,7 +54,7 @@ export default class RepositoryModal<CustomAttrs extends IRepositoryModalAttrs =
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div className="Form-group">
|
<div className="Form-group">
|
||||||
<label>{app.translator.trans('flarum-package-manager.admin.composer.repositories.add_modal.url')}</label>
|
<label>{app.translator.trans('flarum-extension-manager.admin.composer.repositories.add_modal.url')}</label>
|
||||||
<input
|
<input
|
||||||
className="FormControl"
|
className="FormControl"
|
||||||
onchange={(e: Event) => this.repository({ ...this.repository(), url: (e.target as HTMLInputElement).value })}
|
onchange={(e: Event) => this.repository({ ...this.repository(), url: (e.target as HTMLInputElement).value })}
|
||||||
@@ -63,7 +63,7 @@ export default class RepositoryModal<CustomAttrs extends IRepositoryModalAttrs =
|
|||||||
</div>
|
</div>
|
||||||
<div className="Form-group">
|
<div className="Form-group">
|
||||||
<Button className="Button Button--primary" onclick={this.submit.bind(this)}>
|
<Button className="Button Button--primary" onclick={this.submit.bind(this)}>
|
||||||
{app.translator.trans('flarum-package-manager.admin.composer.repositories.add_modal.submit_button')}
|
{app.translator.trans('flarum-extension-manager.admin.composer.repositories.add_modal.submit_button')}
|
||||||
</Button>
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@@ -14,22 +14,22 @@ export default class SettingsPage extends ExtensionPage {
|
|||||||
content() {
|
content() {
|
||||||
const settings = app.extensionData.getSettings(this.extension.id);
|
const settings = app.extensionData.getSettings(this.extension.id);
|
||||||
|
|
||||||
const warnings = [app.translator.trans('flarum-package-manager.admin.settings.access_warning')];
|
const warnings = [app.translator.trans('flarum-extension-manager.admin.settings.access_warning')];
|
||||||
|
|
||||||
if (app.data.debugEnabled) warnings.push(app.translator.trans('flarum-package-manager.admin.settings.debug_mode_warning'));
|
if (app.data.debugEnabled) warnings.push(app.translator.trans('flarum-extension-manager.admin.settings.debug_mode_warning'));
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="ExtensionPage-settings">
|
<div className="ExtensionPage-settings">
|
||||||
<div className="container">
|
<div className="container">
|
||||||
<div className="Form-group">
|
<div className="Form-group">
|
||||||
<Alert className="PackageManager-primaryWarning" type="warning" dismissible={false}>
|
<Alert className="ExtensionManager-primaryWarning" type="warning" dismissible={false}>
|
||||||
<ul>{listItems(warnings)}</ul>
|
<ul>{listItems(warnings)}</ul>
|
||||||
</Alert>
|
</Alert>
|
||||||
</div>
|
</div>
|
||||||
{settings ? (
|
{settings ? (
|
||||||
<div className="SettingsGroups">
|
<div className="ExtensionManager-SettingsGroups">
|
||||||
<div className="Form">
|
<div className="Form">
|
||||||
<label>{app.translator.trans('flarum-package-manager.admin.settings.title')}</label>
|
<label>{app.translator.trans('flarum-extension-manager.admin.settings.title')}</label>
|
||||||
<div className="SettingsGroups-content">{settings.map(this.buildSettingComponent.bind(this))}</div>
|
<div className="SettingsGroups-content">{settings.map(this.buildSettingComponent.bind(this))}</div>
|
||||||
<div className="Form-group Form--controls">{this.submitButton()}</div>
|
<div className="Form-group Form--controls">{this.submitButton()}</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -51,7 +51,7 @@ export default class SettingsPage extends ExtensionPage {
|
|||||||
|
|
||||||
items.add('control', <ControlSection />, 8);
|
items.add('control', <ControlSection />, 8);
|
||||||
|
|
||||||
if (app.data.settings['flarum-package-manager.queue_jobs'] !== '0' && app.data.settings['flarum-package-manager.queue_jobs']) {
|
if (app.data.settings['flarum-extension-manager.queue_jobs'] !== '0' && app.data.settings['flarum-extension-manager.queue_jobs']) {
|
||||||
items.add('queue', <QueueSection />, 5);
|
items.add('queue', <QueueSection />, 5);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -12,7 +12,7 @@ export default class TaskOutputModal<CustomAttrs extends TaskOutputModalAttrs =
|
|||||||
}
|
}
|
||||||
|
|
||||||
title() {
|
title() {
|
||||||
return app.translator.trans(`flarum-package-manager.admin.sections.queue.operations.${this.attrs.task.operation()}`);
|
return app.translator.trans(`flarum-extension-manager.admin.sections.queue.operations.${this.attrs.task.operation()}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
content() {
|
content() {
|
||||||
@@ -21,24 +21,24 @@ export default class TaskOutputModal<CustomAttrs extends TaskOutputModalAttrs =
|
|||||||
<div className="TaskOutputModal-data">
|
<div className="TaskOutputModal-data">
|
||||||
{this.attrs.task.status() === 'failure' && (
|
{this.attrs.task.status() === 'failure' && (
|
||||||
<div className="Form-group">
|
<div className="Form-group">
|
||||||
<label>{app.translator.trans('flarum-package-manager.admin.sections.queue.output_modal.guessed_cause')}</label>
|
<label>{app.translator.trans('flarum-extension-manager.admin.sections.queue.output_modal.guessed_cause')}</label>
|
||||||
<div className="FormControl TaskOutputModal-data-guessed-cause">
|
<div className="FormControl TaskOutputModal-data-guessed-cause">
|
||||||
{(this.attrs.task.guessedCause() &&
|
{(this.attrs.task.guessedCause() &&
|
||||||
app.translator.trans('flarum-package-manager.admin.exceptions.guessed_cause.' + this.attrs.task.guessedCause())) ||
|
app.translator.trans('flarum-extension-manager.admin.exceptions.guessed_cause.' + this.attrs.task.guessedCause())) ||
|
||||||
app.translator.trans('flarum-package-manager.admin.sections.queue.output_modal.cause_unknown')}
|
app.translator.trans('flarum-extension-manager.admin.sections.queue.output_modal.cause_unknown')}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
|
|
||||||
<div className="Form-group">
|
<div className="Form-group">
|
||||||
<label>{app.translator.trans('flarum-package-manager.admin.sections.queue.output_modal.command')}</label>
|
<label>{app.translator.trans('flarum-extension-manager.admin.sections.queue.output_modal.command')}</label>
|
||||||
<div className="FormControl TaskOutputModal-data-command">
|
<div className="FormControl TaskOutputModal-data-command">
|
||||||
<code>$ composer {this.attrs.task.command()}</code>
|
<code>$ composer {this.attrs.task.command()}</code>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="Form-group">
|
<div className="Form-group">
|
||||||
<label>{app.translator.trans('flarum-package-manager.admin.sections.queue.output_modal.output')}</label>
|
<label>{app.translator.trans('flarum-extension-manager.admin.sections.queue.output_modal.output')}</label>
|
||||||
<div className="FormControl TaskOutputModal-data-output">
|
<div className="FormControl TaskOutputModal-data-output">
|
||||||
<code>
|
<code>
|
||||||
<pre>{this.attrs.task.output()}</pre>
|
<pre>{this.attrs.task.output()}</pre>
|
||||||
|
@@ -14,30 +14,30 @@ export type UpdaterLoadingTypes = 'check' | 'minor-update' | 'global-update' | '
|
|||||||
|
|
||||||
export default class Updater extends Component<IUpdaterAttrs> {
|
export default class Updater extends Component<IUpdaterAttrs> {
|
||||||
view() {
|
view() {
|
||||||
const core = app.packageManager.control.coreUpdate;
|
const core = app.extensionManager.control.coreUpdate;
|
||||||
|
|
||||||
return [
|
return [
|
||||||
<div className="Form-group">
|
<div className="Form-group">
|
||||||
<label>{app.translator.trans('flarum-package-manager.admin.updater.updater_title')}</label>
|
<label>{app.translator.trans('flarum-extension-manager.admin.updater.updater_title')}</label>
|
||||||
<p className="helpText">{app.translator.trans('flarum-package-manager.admin.updater.updater_help')}</p>
|
<p className="helpText">{app.translator.trans('flarum-extension-manager.admin.updater.updater_help')}</p>
|
||||||
{this.lastUpdateCheckView()}
|
{this.lastUpdateCheckView()}
|
||||||
<div className="PackageManager-updaterControls">{this.controlItems().toArray()}</div>
|
<div className="ExtensionManager-updaterControls">{this.controlItems().toArray()}</div>
|
||||||
{this.availableUpdatesView()}
|
{this.availableUpdatesView()}
|
||||||
</div>,
|
</div>,
|
||||||
core && core.package['latest-major'] ? (
|
core && core.package['latest-major'] ? (
|
||||||
<MajorUpdater coreUpdate={core.package} updateState={app.packageManager.control.lastUpdateRun.major} />
|
<MajorUpdater coreUpdate={core.package} updateState={app.extensionManager.control.lastUpdateRun.major} />
|
||||||
) : null,
|
) : null,
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
lastUpdateCheckView() {
|
lastUpdateCheckView() {
|
||||||
return (
|
return (
|
||||||
(app.packageManager.control.lastUpdateCheck?.checkedAt && (
|
(app.extensionManager.control.lastUpdateCheck?.checkedAt && (
|
||||||
<p className="PackageManager-lastUpdatedAt">
|
<p className="ExtensionManager-lastUpdatedAt">
|
||||||
<span className="PackageManager-lastUpdatedAt-label">
|
<span className="ExtensionManager-lastUpdatedAt-label">
|
||||||
{app.translator.trans('flarum-package-manager.admin.updater.last_update_checked_at')}
|
{app.translator.trans('flarum-extension-manager.admin.updater.last_update_checked_at')}
|
||||||
</span>
|
</span>
|
||||||
<span className="PackageManager-lastUpdatedAt-value">{humanTime(app.packageManager.control.lastUpdateCheck.checkedAt)}</span>
|
<span className="ExtensionManager-lastUpdatedAt-value">{humanTime(app.extensionManager.control.lastUpdateCheck.checkedAt)}</span>
|
||||||
</p>
|
</p>
|
||||||
)) ||
|
)) ||
|
||||||
null
|
null
|
||||||
@@ -45,11 +45,11 @@ export default class Updater extends Component<IUpdaterAttrs> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
availableUpdatesView() {
|
availableUpdatesView() {
|
||||||
const state = app.packageManager.control;
|
const state = app.extensionManager.control;
|
||||||
|
|
||||||
if (app.packageManager.control.isLoading('check') || app.packageManager.control.isLoading('global-update')) {
|
if (app.extensionManager.control.isLoading('check') || app.extensionManager.control.isLoading('global-update')) {
|
||||||
return (
|
return (
|
||||||
<div className="PackageManager-extensions">
|
<div className="ExtensionManager-extensions">
|
||||||
<LoadingIndicator />
|
<LoadingIndicator />
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
@@ -59,15 +59,15 @@ export default class Updater extends Component<IUpdaterAttrs> {
|
|||||||
|
|
||||||
if (!(state.extensionUpdates.length || hasMinorCoreUpdate)) {
|
if (!(state.extensionUpdates.length || hasMinorCoreUpdate)) {
|
||||||
return (
|
return (
|
||||||
<div className="PackageManager-extensions">
|
<div className="ExtensionManager-extensions">
|
||||||
<span className="helpText">{app.translator.trans('flarum-package-manager.admin.updater.up_to_date')}</span>
|
<span className="helpText">{app.translator.trans('flarum-extension-manager.admin.updater.up_to_date')}</span>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="PackageManager-extensions">
|
<div className="ExtensionManager-extensions">
|
||||||
<div className="PackageManager-extensions-grid">
|
<div className="ExtensionManager-extensions-grid">
|
||||||
{hasMinorCoreUpdate ? (
|
{hasMinorCoreUpdate ? (
|
||||||
<ExtensionItem
|
<ExtensionItem
|
||||||
extension={state.coreUpdate!.extension}
|
extension={state.coreUpdate!.extension}
|
||||||
@@ -101,11 +101,11 @@ export default class Updater extends Component<IUpdaterAttrs> {
|
|||||||
<Button
|
<Button
|
||||||
className="Button"
|
className="Button"
|
||||||
icon="fas fa-sync-alt"
|
icon="fas fa-sync-alt"
|
||||||
onclick={() => app.packageManager.control.checkForUpdates()}
|
onclick={() => app.extensionManager.control.checkForUpdates()}
|
||||||
loading={app.packageManager.control.isLoading('check')}
|
loading={app.extensionManager.control.isLoading('check')}
|
||||||
disabled={app.packageManager.control.isLoading()}
|
disabled={app.extensionManager.control.hasOperationRunning()}
|
||||||
>
|
>
|
||||||
{app.translator.trans('flarum-package-manager.admin.updater.check_for_updates')}
|
{app.translator.trans('flarum-extension-manager.admin.updater.check_for_updates')}
|
||||||
</Button>,
|
</Button>,
|
||||||
100
|
100
|
||||||
);
|
);
|
||||||
@@ -115,11 +115,11 @@ export default class Updater extends Component<IUpdaterAttrs> {
|
|||||||
<Button
|
<Button
|
||||||
className="Button"
|
className="Button"
|
||||||
icon="fas fa-play"
|
icon="fas fa-play"
|
||||||
onclick={() => app.packageManager.control.updateGlobally()}
|
onclick={() => app.extensionManager.control.updateGlobally()}
|
||||||
loading={app.packageManager.control.isLoading('global-update')}
|
loading={app.extensionManager.control.isLoading('global-update')}
|
||||||
disabled={app.packageManager.control.isLoading()}
|
disabled={app.extensionManager.control.hasOperationRunning()}
|
||||||
>
|
>
|
||||||
{app.translator.trans('flarum-package-manager.admin.updater.run_global_update')}
|
{app.translator.trans('flarum-extension-manager.admin.updater.run_global_update')}
|
||||||
</Button>
|
</Button>
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@@ -24,7 +24,7 @@ export default class WhyNotModal<CustomAttrs extends WhyNotModalAttrs = WhyNotMo
|
|||||||
}
|
}
|
||||||
|
|
||||||
title() {
|
title() {
|
||||||
return app.translator.trans('flarum-package-manager.admin.why_not_modal.title');
|
return app.translator.trans('flarum-extension-manager.admin.why_not_modal.title');
|
||||||
}
|
}
|
||||||
|
|
||||||
oncreate(vnode: Mithril.VnodeDOM<CustomAttrs, this>) {
|
oncreate(vnode: Mithril.VnodeDOM<CustomAttrs, this>) {
|
||||||
@@ -41,7 +41,7 @@ export default class WhyNotModal<CustomAttrs extends WhyNotModalAttrs = WhyNotMo
|
|||||||
app
|
app
|
||||||
.request<WhyNotResponse>({
|
.request<WhyNotResponse>({
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
url: `${app.forum.attribute('apiUrl')}/package-manager/why-not`,
|
url: `${app.forum.attribute('apiUrl')}/extension-manager/why-not`,
|
||||||
body: {
|
body: {
|
||||||
data: {
|
data: {
|
||||||
package: this.attrs.package,
|
package: this.attrs.package,
|
||||||
|
@@ -4,32 +4,30 @@ import ExtensionPage from 'flarum/admin/components/ExtensionPage';
|
|||||||
import Button from 'flarum/common/components/Button';
|
import Button from 'flarum/common/components/Button';
|
||||||
import LoadingModal from 'flarum/admin/components/LoadingModal';
|
import LoadingModal from 'flarum/admin/components/LoadingModal';
|
||||||
import isExtensionEnabled from 'flarum/admin/utils/isExtensionEnabled';
|
import isExtensionEnabled from 'flarum/admin/utils/isExtensionEnabled';
|
||||||
import Alert from 'flarum/common/components/Alert';
|
|
||||||
|
|
||||||
import SettingsPage from './components/SettingsPage';
|
import SettingsPage from './components/SettingsPage';
|
||||||
import Task from './models/Task';
|
import Task from './models/Task';
|
||||||
import jumpToQueue from './utils/jumpToQueue';
|
import jumpToQueue from './utils/jumpToQueue';
|
||||||
import extractText from 'flarum/common/utils/extractText';
|
import extractText from 'flarum/common/utils/extractText';
|
||||||
import { AsyncBackendResponse } from './shims';
|
import { AsyncBackendResponse } from './shims';
|
||||||
import PackageManagerState from './states/PackageManagerState';
|
import ExtensionManagerState from './states/ExtensionManagerState';
|
||||||
|
|
||||||
app.initializers.add('flarum-package-manager', (app) => {
|
app.initializers.add('flarum-extension-manager', (app) => {
|
||||||
app.store.models['package-manager-tasks'] = Task;
|
app.store.models['extension-manager-tasks'] = Task;
|
||||||
|
|
||||||
app.packageManager = new PackageManagerState();
|
app.extensionManager = new ExtensionManagerState();
|
||||||
|
|
||||||
if (app.data['flarum-package-manager.using_sync_queue']) {
|
if (app.data['flarum-extension-manager.using_sync_queue']) {
|
||||||
app.data.settings['flarum-package-manager.queue_jobs'] = '0';
|
app.data.settings['flarum-extension-manager.queue_jobs'] = '0';
|
||||||
}
|
}
|
||||||
|
|
||||||
app.extensionData
|
app.extensionData
|
||||||
.for('flarum-package-manager')
|
.for('flarum-extension-manager')
|
||||||
.registerSetting({
|
.registerSetting({
|
||||||
setting: 'flarum-package-manager.queue_jobs',
|
setting: 'flarum-extension-manager.queue_jobs',
|
||||||
label: app.translator.trans('flarum-package-manager.admin.settings.queue_jobs'),
|
label: app.translator.trans('flarum-extension-manager.admin.settings.queue_jobs'),
|
||||||
help: m.trust(
|
help: m.trust(
|
||||||
extractText(
|
extractText(
|
||||||
app.translator.trans('flarum-package-manager.admin.settings.queue_jobs_help', {
|
app.translator.trans('flarum-extension-manager.admin.settings.queue_jobs_help', {
|
||||||
basic_impl_link: 'https://discuss.flarum.org/d/28151-database-queue-the-simplest-queue-even-for-shared-hosting',
|
basic_impl_link: 'https://discuss.flarum.org/d/28151-database-queue-the-simplest-queue-even-for-shared-hosting',
|
||||||
adv_impl_link: 'https://discuss.flarum.org/d/21873-redis-sessions-cache-queues',
|
adv_impl_link: 'https://discuss.flarum.org/d/21873-redis-sessions-cache-queues',
|
||||||
php_version: `<strong>${app.data.phpVersion}</strong>`,
|
php_version: `<strong>${app.data.phpVersion}</strong>`,
|
||||||
@@ -38,18 +36,18 @@ app.initializers.add('flarum-package-manager', (app) => {
|
|||||||
)
|
)
|
||||||
),
|
),
|
||||||
type: 'boolean',
|
type: 'boolean',
|
||||||
disabled: app.data['flarum-package-manager.using_sync_queue'],
|
disabled: app.data['flarum-extension-manager.using_sync_queue'],
|
||||||
})
|
})
|
||||||
.registerSetting({
|
.registerSetting({
|
||||||
setting: 'flarum-package-manager.task_retention_days',
|
setting: 'flarum-extension-manager.task_retention_days',
|
||||||
label: app.translator.trans('flarum-package-manager.admin.settings.task_retention_days'),
|
label: app.translator.trans('flarum-extension-manager.admin.settings.task_retention_days'),
|
||||||
help: app.translator.trans('flarum-package-manager.admin.settings.task_retention_days_help'),
|
help: app.translator.trans('flarum-extension-manager.admin.settings.task_retention_days_help'),
|
||||||
type: 'number',
|
type: 'number',
|
||||||
})
|
})
|
||||||
.registerPage(SettingsPage);
|
.registerPage(SettingsPage);
|
||||||
|
|
||||||
extend(ExtensionPage.prototype, 'topItems', function (items) {
|
extend(ExtensionPage.prototype, 'topItems', function (items) {
|
||||||
if (this.extension.id === 'flarum-package-manager' || isExtensionEnabled(this.extension.id)) {
|
if (this.extension.id === 'flarum-extension-manager' || isExtensionEnabled(this.extension.id)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -63,14 +61,14 @@ app.initializers.add('flarum-package-manager', (app) => {
|
|||||||
|
|
||||||
app
|
app
|
||||||
.request<AsyncBackendResponse | null>({
|
.request<AsyncBackendResponse | null>({
|
||||||
url: `${app.forum.attribute('apiUrl')}/package-manager/extensions/${this.extension.id}`,
|
url: `${app.forum.attribute('apiUrl')}/extension-manager/extensions/${this.extension.id}`,
|
||||||
method: 'DELETE',
|
method: 'DELETE',
|
||||||
})
|
})
|
||||||
.then((response) => {
|
.then((response) => {
|
||||||
if (response?.processing) {
|
if (response?.processing) {
|
||||||
jumpToQueue();
|
jumpToQueue();
|
||||||
} else {
|
} else {
|
||||||
app.alerts.show({ type: 'success' }, app.translator.trans('flarum-package-manager.admin.extensions.successful_remove'));
|
app.alerts.show({ type: 'success' }, app.translator.trans('flarum-extension-manager.admin.extensions.successful_remove'));
|
||||||
window.location = app.forum.attribute('adminUrl');
|
window.location = app.forum.attribute('adminUrl');
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@@ -79,7 +77,7 @@ app.initializers.add('flarum-package-manager', (app) => {
|
|||||||
});
|
});
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
{app.translator.trans('flarum-package-manager.admin.extensions.remove')}
|
{app.translator.trans('flarum-extension-manager.admin.extensions.remove')}
|
||||||
</Button>
|
</Button>
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
import 'dayjs/plugin/relativeTime';
|
import 'dayjs/plugin/relativeTime';
|
||||||
import PackageManagerState from './states/PackageManagerState';
|
import ExtensionManagerState from './states/ExtensionManagerState';
|
||||||
|
|
||||||
export interface AsyncBackendResponse {
|
export interface AsyncBackendResponse {
|
||||||
processing: boolean;
|
processing: boolean;
|
||||||
@@ -7,6 +7,6 @@ export interface AsyncBackendResponse {
|
|||||||
|
|
||||||
declare module 'flarum/admin/AdminApplication' {
|
declare module 'flarum/admin/AdminApplication' {
|
||||||
export default interface AdminApplication {
|
export default interface AdminApplication {
|
||||||
packageManager: PackageManagerState;
|
extensionManager: ExtensionManagerState;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -61,7 +61,7 @@ export default class ControlSectionState {
|
|||||||
public extensionUpdates!: Extension[];
|
public extensionUpdates!: Extension[];
|
||||||
public coreUpdate: CoreUpdate | null = null;
|
public coreUpdate: CoreUpdate | null = null;
|
||||||
get lastUpdateRun(): LastUpdateRun {
|
get lastUpdateRun(): LastUpdateRun {
|
||||||
const lastUpdateRun = JSON.parse(app.data.settings['flarum-package-manager.last_update_run']) as LastUpdateRun;
|
const lastUpdateRun = JSON.parse(app.data.settings['flarum-extension-manager.last_update_run']) as LastUpdateRun;
|
||||||
|
|
||||||
lastUpdateRun.limitedPackages = () => [
|
lastUpdateRun.limitedPackages = () => [
|
||||||
...lastUpdateRun.major.limitedPackages,
|
...lastUpdateRun.major.limitedPackages,
|
||||||
@@ -73,7 +73,7 @@ export default class ControlSectionState {
|
|||||||
}
|
}
|
||||||
|
|
||||||
constructor() {
|
constructor() {
|
||||||
this.lastUpdateCheck = JSON.parse(app.data.settings['flarum-package-manager.last_update_check']) as LastUpdateCheck;
|
this.lastUpdateCheck = JSON.parse(app.data.settings['flarum-extension-manager.last_update_check']) as LastUpdateCheck;
|
||||||
this.extensionUpdates = this.formatExtensionUpdates(this.lastUpdateCheck);
|
this.extensionUpdates = this.formatExtensionUpdates(this.lastUpdateCheck);
|
||||||
this.coreUpdate = this.formatCoreUpdate(this.lastUpdateCheck);
|
this.coreUpdate = this.formatCoreUpdate(this.lastUpdateCheck);
|
||||||
}
|
}
|
||||||
@@ -82,18 +82,22 @@ export default class ControlSectionState {
|
|||||||
return (name && this.loading === name) || (!name && this.loading !== null);
|
return (name && this.loading === name) || (!name && this.loading !== null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
hasOperationRunning(): boolean {
|
||||||
|
return this.isLoading() || app.extensionManager.queue.hasPending();
|
||||||
|
}
|
||||||
|
|
||||||
setLoading(name: LoadingTypes): void {
|
setLoading(name: LoadingTypes): void {
|
||||||
this.loading = name;
|
this.loading = name;
|
||||||
}
|
}
|
||||||
|
|
||||||
requirePackage(data: any) {
|
requirePackage(data: any) {
|
||||||
app.packageManager.control.setLoading('extension-install');
|
app.extensionManager.control.setLoading('extension-install');
|
||||||
app.modal.show(LoadingModal);
|
app.modal.show(LoadingModal);
|
||||||
|
|
||||||
app
|
app
|
||||||
.request<AsyncBackendResponse & { id: number }>({
|
.request<AsyncBackendResponse & { id: number }>({
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
url: `${app.forum.attribute('apiUrl')}/package-manager/extensions`,
|
url: `${app.forum.attribute('apiUrl')}/extension-manager/extensions`,
|
||||||
body: {
|
body: {
|
||||||
data,
|
data,
|
||||||
},
|
},
|
||||||
@@ -105,7 +109,7 @@ export default class ControlSectionState {
|
|||||||
const extensionId = response.id;
|
const extensionId = response.id;
|
||||||
app.alerts.show(
|
app.alerts.show(
|
||||||
{ type: 'success' },
|
{ type: 'success' },
|
||||||
app.translator.trans('flarum-package-manager.admin.extensions.successful_install', { extension: extensionId })
|
app.translator.trans('flarum-extension-manager.admin.extensions.successful_install', { extension: extensionId })
|
||||||
);
|
);
|
||||||
window.location.href = `${app.forum.attribute('adminUrl')}#/extension/${extensionId}`;
|
window.location.href = `${app.forum.attribute('adminUrl')}#/extension/${extensionId}`;
|
||||||
window.location.reload();
|
window.location.reload();
|
||||||
@@ -124,7 +128,7 @@ export default class ControlSectionState {
|
|||||||
app
|
app
|
||||||
.request<AsyncBackendResponse | LastUpdateCheck>({
|
.request<AsyncBackendResponse | LastUpdateCheck>({
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
url: `${app.forum.attribute('apiUrl')}/package-manager/check-for-updates`,
|
url: `${app.forum.attribute('apiUrl')}/extension-manager/check-for-updates`,
|
||||||
})
|
})
|
||||||
.then((response) => {
|
.then((response) => {
|
||||||
if ((response as AsyncBackendResponse).processing) {
|
if ((response as AsyncBackendResponse).processing) {
|
||||||
@@ -144,20 +148,20 @@ export default class ControlSectionState {
|
|||||||
}
|
}
|
||||||
|
|
||||||
updateCoreMinor() {
|
updateCoreMinor() {
|
||||||
if (confirm(extractText(app.translator.trans('flarum-package-manager.admin.minor_update_confirmation.content')))) {
|
if (confirm(extractText(app.translator.trans('flarum-extension-manager.admin.minor_update_confirmation.content')))) {
|
||||||
app.modal.show(LoadingModal);
|
app.modal.show(LoadingModal);
|
||||||
this.setLoading('minor-update');
|
this.setLoading('minor-update');
|
||||||
|
|
||||||
app
|
app
|
||||||
.request<AsyncBackendResponse | null>({
|
.request<AsyncBackendResponse | null>({
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
url: `${app.forum.attribute('apiUrl')}/package-manager/minor-update`,
|
url: `${app.forum.attribute('apiUrl')}/extension-manager/minor-update`,
|
||||||
})
|
})
|
||||||
.then((response) => {
|
.then((response) => {
|
||||||
if (response?.processing) {
|
if (response?.processing) {
|
||||||
jumpToQueue();
|
jumpToQueue();
|
||||||
} else {
|
} else {
|
||||||
app.alerts.show({ type: 'success' }, app.translator.trans('flarum-package-manager.admin.update_successful'));
|
app.alerts.show({ type: 'success' }, app.translator.trans('flarum-extension-manager.admin.update_successful'));
|
||||||
window.location.reload();
|
window.location.reload();
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@@ -176,7 +180,7 @@ export default class ControlSectionState {
|
|||||||
app
|
app
|
||||||
.request<AsyncBackendResponse | null>({
|
.request<AsyncBackendResponse | null>({
|
||||||
method: 'PATCH',
|
method: 'PATCH',
|
||||||
url: `${app.forum.attribute('apiUrl')}/package-manager/extensions/${extension.id}`,
|
url: `${app.forum.attribute('apiUrl')}/extension-manager/extensions/${extension.id}`,
|
||||||
body: {
|
body: {
|
||||||
data: {
|
data: {
|
||||||
updateMode,
|
updateMode,
|
||||||
@@ -189,7 +193,7 @@ export default class ControlSectionState {
|
|||||||
} else {
|
} else {
|
||||||
app.alerts.show(
|
app.alerts.show(
|
||||||
{ type: 'success' },
|
{ type: 'success' },
|
||||||
app.translator.trans('flarum-package-manager.admin.extensions.successful_update', {
|
app.translator.trans('flarum-extension-manager.admin.extensions.successful_update', {
|
||||||
extension: extension.extra['flarum-extension'].title,
|
extension: extension.extra['flarum-extension'].title,
|
||||||
})
|
})
|
||||||
);
|
);
|
||||||
@@ -210,13 +214,13 @@ export default class ControlSectionState {
|
|||||||
app
|
app
|
||||||
.request<AsyncBackendResponse | null>({
|
.request<AsyncBackendResponse | null>({
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
url: `${app.forum.attribute('apiUrl')}/package-manager/global-update`,
|
url: `${app.forum.attribute('apiUrl')}/extension-manager/global-update`,
|
||||||
})
|
})
|
||||||
.then((response) => {
|
.then((response) => {
|
||||||
if (response?.processing) {
|
if (response?.processing) {
|
||||||
jumpToQueue();
|
jumpToQueue();
|
||||||
} else {
|
} else {
|
||||||
app.alerts.show({ type: 'success' }, app.translator.trans('flarum-package-manager.admin.updater.global_update_successful'));
|
app.alerts.show({ type: 'success' }, app.translator.trans('flarum-extension-manager.admin.updater.global_update_successful'));
|
||||||
window.location.reload();
|
window.location.reload();
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@@ -259,11 +263,11 @@ export default class ControlSectionState {
|
|||||||
version: app.data.settings.version,
|
version: app.data.settings.version,
|
||||||
icon: {
|
icon: {
|
||||||
// @ts-ignore
|
// @ts-ignore
|
||||||
backgroundImage: `url(${app.data.resources[0]['attributes']['baseUrl']}/assets/extensions/flarum-package-manager/flarum.svg`,
|
backgroundImage: `url(${app.data.resources[0]['attributes']['baseUrl']}/assets/extensions/flarum-extension-manager/flarum.svg`,
|
||||||
},
|
},
|
||||||
extra: {
|
extra: {
|
||||||
'flarum-extension': {
|
'flarum-extension': {
|
||||||
title: extractText(app.translator.trans('flarum-package-manager.admin.updater.flarum')),
|
title: extractText(app.translator.trans('flarum-extension-manager.admin.updater.flarum')),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -271,14 +275,14 @@ export default class ControlSectionState {
|
|||||||
}
|
}
|
||||||
|
|
||||||
majorUpdate({ dryRun }: { dryRun: boolean }) {
|
majorUpdate({ dryRun }: { dryRun: boolean }) {
|
||||||
app.packageManager.control.setLoading(dryRun ? 'major-update-dry-run' : 'major-update');
|
app.extensionManager.control.setLoading(dryRun ? 'major-update-dry-run' : 'major-update');
|
||||||
app.modal.show(LoadingModal);
|
app.modal.show(LoadingModal);
|
||||||
const updateState = this.lastUpdateRun.major;
|
const updateState = this.lastUpdateRun.major;
|
||||||
|
|
||||||
app
|
app
|
||||||
.request<AsyncBackendResponse | null>({
|
.request<AsyncBackendResponse | null>({
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
url: `${app.forum.attribute('apiUrl')}/package-manager/major-update`,
|
url: `${app.forum.attribute('apiUrl')}/extension-manager/major-update`,
|
||||||
body: {
|
body: {
|
||||||
data: { dryRun },
|
data: { dryRun },
|
||||||
},
|
},
|
||||||
@@ -287,7 +291,7 @@ export default class ControlSectionState {
|
|||||||
if (response?.processing) {
|
if (response?.processing) {
|
||||||
jumpToQueue();
|
jumpToQueue();
|
||||||
} else {
|
} else {
|
||||||
app.alerts.show({ type: 'success' }, app.translator.trans('flarum-package-manager.admin.update_successful'));
|
app.alerts.show({ type: 'success' }, app.translator.trans('flarum-extension-manager.admin.update_successful'));
|
||||||
window.location.reload();
|
window.location.reload();
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
@@ -1,7 +1,7 @@
|
|||||||
import QueueState from './QueueState';
|
import QueueState from './QueueState';
|
||||||
import ControlSectionState from './ControlSectionState';
|
import ControlSectionState from './ControlSectionState';
|
||||||
|
|
||||||
export default class PackageManagerState {
|
export default class ExtensionManagerState {
|
||||||
public queue: QueueState = new QueueState();
|
public queue: QueueState = new QueueState();
|
||||||
public control: ControlSectionState = new ControlSectionState();
|
public control: ControlSectionState = new ControlSectionState();
|
||||||
}
|
}
|
@@ -20,7 +20,7 @@ export default class QueueState {
|
|||||||
...params,
|
...params,
|
||||||
};
|
};
|
||||||
|
|
||||||
return app.store.find<Task[]>('package-manager-tasks', params || {}).then((data) => {
|
return app.store.find<Task[]>('extension-manager-tasks', params || {}).then((data) => {
|
||||||
this.tasks = data;
|
this.tasks = data;
|
||||||
this.total = data.payload.meta?.total;
|
this.total = data.payload.meta?.total;
|
||||||
|
|
||||||
@@ -32,12 +32,12 @@ export default class QueueState {
|
|||||||
if (pendingTask) {
|
if (pendingTask) {
|
||||||
this.pollQueue(actionTaken);
|
this.pollQueue(actionTaken);
|
||||||
} else if (actionTaken) {
|
} else if (actionTaken) {
|
||||||
app.packageManager.control.setLoading(null);
|
app.extensionManager.control.setLoading(null);
|
||||||
|
|
||||||
// Refresh the page
|
// Refresh the page
|
||||||
window.location.reload();
|
window.location.reload();
|
||||||
} else if (app.packageManager.control.isLoading()) {
|
} else if (app.extensionManager.control.isLoading()) {
|
||||||
app.packageManager.control.setLoading(null);
|
app.extensionManager.control.setLoading(null);
|
||||||
}
|
}
|
||||||
|
|
||||||
return data;
|
return data;
|
||||||
@@ -87,4 +87,8 @@ export default class QueueState {
|
|||||||
this.load({}, actionTaken);
|
this.load({}, actionTaken);
|
||||||
}, 6000);
|
}, 6000);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
hasPending() {
|
||||||
|
return !!this.tasks?.find((task) => task.status() === 'pending' || task.status() === 'running');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -1,7 +1,7 @@
|
|||||||
import app from 'flarum/admin/app';
|
import app from 'flarum/admin/app';
|
||||||
|
|
||||||
export default function (e: any) {
|
export default function (e: any) {
|
||||||
app.packageManager.control.setLoading(null);
|
app.extensionManager.control.setLoading(null);
|
||||||
|
|
||||||
const error = e.response.errors[0];
|
const error = e.response.errors[0];
|
||||||
|
|
||||||
@@ -14,20 +14,20 @@ export default function (e: any) {
|
|||||||
switch (error.code) {
|
switch (error.code) {
|
||||||
case 'composer_command_failure':
|
case 'composer_command_failure':
|
||||||
if (error.guessed_cause) {
|
if (error.guessed_cause) {
|
||||||
app.alerts.show({ type: 'error' }, app.translator.trans(`flarum-package-manager.admin.exceptions.guessed_cause.${error.guessed_cause}`));
|
app.alerts.show({ type: 'error' }, app.translator.trans(`flarum-extension-manager.admin.exceptions.guessed_cause.${error.guessed_cause}`));
|
||||||
app.modal.close();
|
app.modal.close();
|
||||||
} else {
|
} else {
|
||||||
app.alerts.show({ type: 'error' }, app.translator.trans('flarum-package-manager.admin.exceptions.composer_command_failure'));
|
app.alerts.show({ type: 'error' }, app.translator.trans('flarum-extension-manager.admin.exceptions.composer_command_failure'));
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'extension_already_installed':
|
case 'extension_already_installed':
|
||||||
app.alerts.show({ type: 'error' }, app.translator.trans('flarum-package-manager.admin.exceptions.extension_already_installed'));
|
app.alerts.show({ type: 'error' }, app.translator.trans('flarum-extension-manager.admin.exceptions.extension_already_installed'));
|
||||||
app.modal.close();
|
app.modal.close();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'extension_not_installed':
|
case 'extension_not_installed':
|
||||||
app.alerts.show({ type: 'error' }, app.translator.trans('flarum-package-manager.admin.exceptions.extension_not_installed'));
|
app.alerts.show({ type: 'error' }, app.translator.trans('flarum-extension-manager.admin.exceptions.extension_not_installed'));
|
||||||
app.modal.close();
|
app.modal.close();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -6,11 +6,11 @@ window.jumpToQueue = jumpToQueue;
|
|||||||
export default function jumpToQueue(): void {
|
export default function jumpToQueue(): void {
|
||||||
app.modal.close();
|
app.modal.close();
|
||||||
|
|
||||||
m.route.set(app.route('extension', { id: 'flarum-package-manager' }));
|
m.route.set(app.route('extension', { id: 'flarum-extension-manager' }));
|
||||||
|
|
||||||
app.packageManager.queue.load({}, true);
|
app.extensionManager.queue.load({}, true);
|
||||||
|
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
document.getElementById('PackageManager-queueSection')?.scrollIntoView({ block: 'nearest' });
|
document.getElementById('ExtensionManager-queueSection')?.scrollIntoView({ block: 'nearest' });
|
||||||
}, 200);
|
}, 200);
|
||||||
}
|
}
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
@import "admin/QueueSection";
|
@import "admin/QueueSection";
|
||||||
@import "admin/ControlSection";
|
@import "admin/ControlSection";
|
||||||
|
|
||||||
.PackageManager-controlSection {
|
.ExtensionManager-controlSection {
|
||||||
> .container {
|
> .container {
|
||||||
padding-bottom: 0;
|
padding-bottom: 0;
|
||||||
}
|
}
|
||||||
@@ -53,6 +53,52 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.flarum-package-manager-Page .SettingsGroups .Form {
|
.flarum-extension-manager-Page .SettingsGroups .Form {
|
||||||
max-height: unset;
|
max-height: unset;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.ExtensionManager-SettingsGroups {
|
||||||
|
display: flex;
|
||||||
|
column-count: 3;
|
||||||
|
column-gap: 30px;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
|
||||||
|
.Form {
|
||||||
|
min-width: 300px;
|
||||||
|
max-height: 500px;
|
||||||
|
display: inline-grid;
|
||||||
|
padding: 10px 20px;
|
||||||
|
min-height: 20vh;
|
||||||
|
max-width: 400px;
|
||||||
|
grid-template-rows: min-content;
|
||||||
|
border: 1px solid var(--control-bg);
|
||||||
|
border-radius: var(--border-radius);
|
||||||
|
flex: 1 1 160px;
|
||||||
|
|
||||||
|
>label {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 1209px) {
|
||||||
|
margin-bottom: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
>ol {
|
||||||
|
>li {
|
||||||
|
margin-top: 8px;
|
||||||
|
|
||||||
|
.Button {
|
||||||
|
float: right;
|
||||||
|
visibility: hidden;
|
||||||
|
margin: -8px -16px -8px 16px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
>label {
|
||||||
|
float: left;
|
||||||
|
font-weight: bold;
|
||||||
|
color: var(--muted-color);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
.PackageManager-lastUpdatedAt {
|
.ExtensionManager-lastUpdatedAt {
|
||||||
color: var(--control-color);
|
color: var(--control-color);
|
||||||
|
|
||||||
&-label {
|
&-label {
|
||||||
@@ -6,7 +6,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.PackageManager-updaterControls {
|
.ExtensionManager-updaterControls {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-wrap: wrap;
|
flex-wrap: wrap;
|
||||||
gap: 8px;
|
gap: 8px;
|
||||||
@@ -14,7 +14,7 @@
|
|||||||
margin-bottom: 16px;
|
margin-bottom: 16px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.PackageManager-extensions {
|
.ExtensionManager-extensions {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
|
||||||
&-grid {
|
&-grid {
|
||||||
@@ -25,7 +25,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.PackageManager-extension {
|
.ExtensionManager-extension {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
gap: 8px;
|
gap: 8px;
|
||||||
@@ -81,7 +81,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.PackageManager-majorUpdate {
|
.ExtensionManager-majorUpdate {
|
||||||
--space: 16px;
|
--space: 16px;
|
||||||
padding: var(--space);
|
padding: var(--space);
|
||||||
display: grid;
|
display: grid;
|
||||||
@@ -142,7 +142,7 @@
|
|||||||
border-top: 1px solid var(--control-bg);
|
border-top: 1px solid var(--control-bg);
|
||||||
}
|
}
|
||||||
|
|
||||||
.PackageManager-updaterControls {
|
.ExtensionManager-updaterControls {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -153,7 +153,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.PackageManager-installer .FormControl-container {
|
.ExtensionManager-installer .FormControl-container {
|
||||||
max-width: 450px;
|
max-width: 450px;
|
||||||
|
|
||||||
.FormControl {
|
.FormControl {
|
||||||
@@ -161,11 +161,11 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.PackageManager-controlSection .container {
|
.ExtensionManager-controlSection .container {
|
||||||
max-width: 1030px;
|
max-width: 1030px;
|
||||||
overflow: visible;
|
overflow: visible;
|
||||||
}
|
}
|
||||||
|
|
||||||
.PackageManager-primaryWarning ul {
|
.ExtensionManager-primaryWarning ul {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
}
|
}
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
.PackageManager-queueSection {
|
.ExtensionManager-queueSection {
|
||||||
&-header > .container {
|
&-header > .container {
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
@@ -26,7 +26,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.PackageManager-queueTable {
|
.ExtensionManager-queueTable {
|
||||||
&-package {
|
&-package {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
flarum-package-manager:
|
flarum-extension-manager:
|
||||||
admin:
|
admin:
|
||||||
auth_config:
|
auth_config:
|
||||||
add_label: New authentication method
|
add_label: New authentication method
|
||||||
@@ -81,7 +81,7 @@ flarum-package-manager:
|
|||||||
update_hard_label: Hard update
|
update_hard_label: Hard update
|
||||||
|
|
||||||
file_permissions: >
|
file_permissions: >
|
||||||
The package manager requires read and write permissions on the following files and directories: composer.json, composer.lock, vendor, storage, storage/.composer
|
The extension manager requires read and write permissions on the following files and directories: composer.json, composer.lock, vendor, storage, storage/.composer
|
||||||
|
|
||||||
major_updater:
|
major_updater:
|
||||||
description: >
|
description: >
|
||||||
@@ -136,8 +136,8 @@ flarum-package-manager:
|
|||||||
|
|
||||||
settings:
|
settings:
|
||||||
title: => core.ref.settings
|
title: => core.ref.settings
|
||||||
access_warning: Please be careful to who you give access to the admin area, the package manager could be misused by bad actors to install packages that can lead to security breaches.
|
access_warning: Please be careful to who you give access to the admin area, the extension manager could be misused by bad actors to install packages that can lead to security breaches.
|
||||||
debug_mode_warning: You are running in debug mode, the package manager cannot properly install and update local development packages. Please use the command line interface instead for such purposes.
|
debug_mode_warning: You are running in debug mode, the extension manager cannot properly install and update local development packages. Please use the command line interface instead for such purposes.
|
||||||
queue_jobs: Run operations in the background queue
|
queue_jobs: Run operations in the background queue
|
||||||
queue_jobs_help: >
|
queue_jobs_help: >
|
||||||
You can read about a <a href='{basic_impl_link}'>basic queue</a> implementation or a <a href='{adv_impl_link}'>more advanced</a> one.
|
You can read about a <a href='{basic_impl_link}'>basic queue</a> implementation or a <a href='{adv_impl_link}'>more advanced</a> one.
|
||||||
|
@@ -10,7 +10,7 @@
|
|||||||
use Flarum\Database\Migration;
|
use Flarum\Database\Migration;
|
||||||
use Illuminate\Database\Schema\Blueprint;
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
|
||||||
return Migration::createTable(
|
return Migration::createTableIfNotExists(
|
||||||
'package_manager_tasks',
|
'package_manager_tasks',
|
||||||
function (Blueprint $table) {
|
function (Blueprint $table) {
|
||||||
$table->increments('id');
|
$table->increments('id');
|
||||||
|
@@ -7,8 +7,22 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use Flarum\Database\Migration;
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Database\Schema\Builder;
|
||||||
|
|
||||||
return Migration::addColumns('package_manager_tasks', [
|
return [
|
||||||
'guessed_cause' => ['type' => 'string', 'length' => 255, 'nullable' => true, 'after' => 'output'],
|
'up' => function (Builder $schema) {
|
||||||
]);
|
$schema->table('package_manager_tasks', function (Blueprint $table) use ($schema) {
|
||||||
|
if (! $schema->hasColumn('package_manager_tasks', 'guessed_cause')) {
|
||||||
|
$table->string('guessed_cause', 255)->nullable()->after('output');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
'down' => function (Builder $schema) {
|
||||||
|
$schema->table('package_manager_tasks', function (Blueprint $table) use ($schema) {
|
||||||
|
if ($schema->hasColumn('package_manager_tasks', 'guessed_cause')) {
|
||||||
|
$table->dropColumn('guessed_cause');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
];
|
||||||
|
@@ -0,0 +1,16 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
use Illuminate\Database\Schema\Builder;
|
||||||
|
|
||||||
|
return [
|
||||||
|
'up' => function (Builder $schema) {
|
||||||
|
$schema->rename('package_manager_tasks', 'extension_manager_tasks');
|
||||||
|
$schema->getConnection()->table('migrations')->where('extension', 'flarum-package-manager')->delete();
|
||||||
|
},
|
||||||
|
'down' => function (Builder $schema) {
|
||||||
|
$schema->rename('extension_manager_tasks', 'package_manager_tasks');
|
||||||
|
$schema->getConnection()->table('migrations')->where('extension', 'flarum-extension-manager')->update([
|
||||||
|
'extension' => 'flarum-package-manager',
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
];
|
@@ -7,11 +7,11 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Api\Controller;
|
namespace Flarum\ExtensionManager\Api\Controller;
|
||||||
|
|
||||||
use Flarum\Http\RequestUtil;
|
use Flarum\Http\RequestUtil;
|
||||||
use Flarum\PackageManager\Command\CheckForUpdates;
|
use Flarum\ExtensionManager\Command\CheckForUpdates;
|
||||||
use Flarum\PackageManager\Job\Dispatcher;
|
use Flarum\ExtensionManager\Job\Dispatcher;
|
||||||
use Laminas\Diactoros\Response\JsonResponse;
|
use Laminas\Diactoros\Response\JsonResponse;
|
||||||
use Psr\Http\Message\ResponseInterface;
|
use Psr\Http\Message\ResponseInterface;
|
||||||
use Psr\Http\Message\ServerRequestInterface;
|
use Psr\Http\Message\ServerRequestInterface;
|
||||||
|
@@ -7,12 +7,12 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Api\Controller;
|
namespace Flarum\ExtensionManager\Api\Controller;
|
||||||
|
|
||||||
use Flarum\Foundation\Paths;
|
use Flarum\Foundation\Paths;
|
||||||
use Flarum\Http\RequestUtil;
|
use Flarum\Http\RequestUtil;
|
||||||
use Flarum\PackageManager\Composer\ComposerJson;
|
use Flarum\ExtensionManager\Composer\ComposerJson;
|
||||||
use Flarum\PackageManager\ConfigureComposerValidator;
|
use Flarum\ExtensionManager\ConfigureComposerValidator;
|
||||||
use Illuminate\Contracts\Filesystem\FileNotFoundException;
|
use Illuminate\Contracts\Filesystem\FileNotFoundException;
|
||||||
use Illuminate\Filesystem\Filesystem;
|
use Illuminate\Filesystem\Filesystem;
|
||||||
use Illuminate\Support\Arr;
|
use Illuminate\Support\Arr;
|
||||||
@@ -111,6 +111,8 @@ class ConfigureComposerController implements RequestHandlerInterface
|
|||||||
$composerJson[$key] = Arr::get($composerJson, $key, Arr::get($default, $key));
|
$composerJson[$key] = Arr::get($composerJson, $key, Arr::get($default, $key));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$composerJson = Arr::sortRecursive($composerJson);
|
||||||
|
|
||||||
return Arr::only($composerJson, $this->configurable);
|
return Arr::only($composerJson, $this->configurable);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -7,11 +7,11 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Api\Controller;
|
namespace Flarum\ExtensionManager\Api\Controller;
|
||||||
|
|
||||||
use Flarum\Http\RequestUtil;
|
use Flarum\Http\RequestUtil;
|
||||||
use Flarum\PackageManager\Command\GlobalUpdate;
|
use Flarum\ExtensionManager\Command\GlobalUpdate;
|
||||||
use Flarum\PackageManager\Job\Dispatcher;
|
use Flarum\ExtensionManager\Job\Dispatcher;
|
||||||
use Laminas\Diactoros\Response\EmptyResponse;
|
use Laminas\Diactoros\Response\EmptyResponse;
|
||||||
use Laminas\Diactoros\Response\JsonResponse;
|
use Laminas\Diactoros\Response\JsonResponse;
|
||||||
use Psr\Http\Message\ResponseInterface;
|
use Psr\Http\Message\ResponseInterface;
|
||||||
|
@@ -7,13 +7,13 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Api\Controller;
|
namespace Flarum\ExtensionManager\Api\Controller;
|
||||||
|
|
||||||
use Flarum\Api\Controller\AbstractListController;
|
use Flarum\Api\Controller\AbstractListController;
|
||||||
use Flarum\Http\RequestUtil;
|
use Flarum\Http\RequestUtil;
|
||||||
use Flarum\Http\UrlGenerator;
|
use Flarum\Http\UrlGenerator;
|
||||||
use Flarum\PackageManager\Api\Serializer\TaskSerializer;
|
use Flarum\ExtensionManager\Api\Serializer\TaskSerializer;
|
||||||
use Flarum\PackageManager\Task\Task;
|
use Flarum\ExtensionManager\Task\Task;
|
||||||
use Psr\Http\Message\ServerRequestInterface;
|
use Psr\Http\Message\ServerRequestInterface;
|
||||||
use Tobscure\JsonApi\Document;
|
use Tobscure\JsonApi\Document;
|
||||||
|
|
||||||
@@ -54,7 +54,7 @@ class ListTasksController extends AbstractListController
|
|||||||
$document->addMeta('total', (string) $total);
|
$document->addMeta('total', (string) $total);
|
||||||
|
|
||||||
$document->addPaginationLinks(
|
$document->addPaginationLinks(
|
||||||
$this->url->to('api')->route('package-manager.tasks.index'),
|
$this->url->to('api')->route('extension-manager.tasks.index'),
|
||||||
$request->getQueryParams(),
|
$request->getQueryParams(),
|
||||||
$offset,
|
$offset,
|
||||||
$limit,
|
$limit,
|
||||||
|
@@ -7,11 +7,11 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Api\Controller;
|
namespace Flarum\ExtensionManager\Api\Controller;
|
||||||
|
|
||||||
use Flarum\Http\RequestUtil;
|
use Flarum\Http\RequestUtil;
|
||||||
use Flarum\PackageManager\Command\MajorUpdate;
|
use Flarum\ExtensionManager\Command\MajorUpdate;
|
||||||
use Flarum\PackageManager\Job\Dispatcher;
|
use Flarum\ExtensionManager\Job\Dispatcher;
|
||||||
use Illuminate\Support\Arr;
|
use Illuminate\Support\Arr;
|
||||||
use Laminas\Diactoros\Response\EmptyResponse;
|
use Laminas\Diactoros\Response\EmptyResponse;
|
||||||
use Laminas\Diactoros\Response\JsonResponse;
|
use Laminas\Diactoros\Response\JsonResponse;
|
||||||
|
@@ -7,11 +7,11 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Api\Controller;
|
namespace Flarum\ExtensionManager\Api\Controller;
|
||||||
|
|
||||||
use Flarum\Http\RequestUtil;
|
use Flarum\Http\RequestUtil;
|
||||||
use Flarum\PackageManager\Command\MinorUpdate;
|
use Flarum\ExtensionManager\Command\MinorUpdate;
|
||||||
use Flarum\PackageManager\Job\Dispatcher;
|
use Flarum\ExtensionManager\Job\Dispatcher;
|
||||||
use Laminas\Diactoros\Response\EmptyResponse;
|
use Laminas\Diactoros\Response\EmptyResponse;
|
||||||
use Laminas\Diactoros\Response\JsonResponse;
|
use Laminas\Diactoros\Response\JsonResponse;
|
||||||
use Psr\Http\Message\ResponseInterface;
|
use Psr\Http\Message\ResponseInterface;
|
||||||
|
@@ -7,11 +7,11 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Api\Controller;
|
namespace Flarum\ExtensionManager\Api\Controller;
|
||||||
|
|
||||||
use Flarum\Http\RequestUtil;
|
use Flarum\Http\RequestUtil;
|
||||||
use Flarum\PackageManager\Command\RemoveExtension;
|
use Flarum\ExtensionManager\Command\RemoveExtension;
|
||||||
use Flarum\PackageManager\Job\Dispatcher;
|
use Flarum\ExtensionManager\Job\Dispatcher;
|
||||||
use Illuminate\Support\Arr;
|
use Illuminate\Support\Arr;
|
||||||
use Laminas\Diactoros\Response\EmptyResponse;
|
use Laminas\Diactoros\Response\EmptyResponse;
|
||||||
use Laminas\Diactoros\Response\JsonResponse;
|
use Laminas\Diactoros\Response\JsonResponse;
|
||||||
|
@@ -7,11 +7,11 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Api\Controller;
|
namespace Flarum\ExtensionManager\Api\Controller;
|
||||||
|
|
||||||
use Flarum\Http\RequestUtil;
|
use Flarum\Http\RequestUtil;
|
||||||
use Flarum\PackageManager\Command\RequireExtension;
|
use Flarum\ExtensionManager\Command\RequireExtension;
|
||||||
use Flarum\PackageManager\Job\Dispatcher;
|
use Flarum\ExtensionManager\Job\Dispatcher;
|
||||||
use Illuminate\Support\Arr;
|
use Illuminate\Support\Arr;
|
||||||
use Laminas\Diactoros\Response\JsonResponse;
|
use Laminas\Diactoros\Response\JsonResponse;
|
||||||
use Psr\Http\Message\ResponseInterface;
|
use Psr\Http\Message\ResponseInterface;
|
||||||
|
@@ -7,11 +7,11 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Api\Controller;
|
namespace Flarum\ExtensionManager\Api\Controller;
|
||||||
|
|
||||||
use Flarum\Http\RequestUtil;
|
use Flarum\Http\RequestUtil;
|
||||||
use Flarum\PackageManager\Command\UpdateExtension;
|
use Flarum\ExtensionManager\Command\UpdateExtension;
|
||||||
use Flarum\PackageManager\Job\Dispatcher;
|
use Flarum\ExtensionManager\Job\Dispatcher;
|
||||||
use Illuminate\Support\Arr;
|
use Illuminate\Support\Arr;
|
||||||
use Laminas\Diactoros\Response\EmptyResponse;
|
use Laminas\Diactoros\Response\EmptyResponse;
|
||||||
use Laminas\Diactoros\Response\JsonResponse;
|
use Laminas\Diactoros\Response\JsonResponse;
|
||||||
|
@@ -7,11 +7,11 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Api\Controller;
|
namespace Flarum\ExtensionManager\Api\Controller;
|
||||||
|
|
||||||
use Flarum\Http\RequestUtil;
|
use Flarum\Http\RequestUtil;
|
||||||
use Flarum\PackageManager\Command\WhyNot;
|
use Flarum\ExtensionManager\Command\WhyNot;
|
||||||
use Flarum\PackageManager\Job\Dispatcher;
|
use Flarum\ExtensionManager\Job\Dispatcher;
|
||||||
use Illuminate\Support\Arr;
|
use Illuminate\Support\Arr;
|
||||||
use Laminas\Diactoros\Response\JsonResponse;
|
use Laminas\Diactoros\Response\JsonResponse;
|
||||||
use Psr\Http\Message\ResponseInterface;
|
use Psr\Http\Message\ResponseInterface;
|
||||||
|
@@ -7,10 +7,10 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Api\Serializer;
|
namespace Flarum\ExtensionManager\Api\Serializer;
|
||||||
|
|
||||||
use Flarum\Api\Serializer\AbstractSerializer;
|
use Flarum\Api\Serializer\AbstractSerializer;
|
||||||
use Flarum\PackageManager\Task\Task;
|
use Flarum\ExtensionManager\Task\Task;
|
||||||
use InvalidArgumentException;
|
use InvalidArgumentException;
|
||||||
|
|
||||||
class TaskSerializer extends AbstractSerializer
|
class TaskSerializer extends AbstractSerializer
|
||||||
@@ -18,7 +18,7 @@ class TaskSerializer extends AbstractSerializer
|
|||||||
/**
|
/**
|
||||||
* {@inheritdoc}
|
* {@inheritdoc}
|
||||||
*/
|
*/
|
||||||
protected $type = 'package-manager-tasks';
|
protected $type = 'extension-manager-tasks';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* {@inheritdoc}
|
* {@inheritdoc}
|
||||||
|
@@ -7,9 +7,9 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Command;
|
namespace Flarum\ExtensionManager\Command;
|
||||||
|
|
||||||
use Flarum\PackageManager\Task\Task;
|
use Flarum\ExtensionManager\Task\Task;
|
||||||
|
|
||||||
abstract class AbstractActionCommand
|
abstract class AbstractActionCommand
|
||||||
{
|
{
|
||||||
|
@@ -7,9 +7,9 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Command;
|
namespace Flarum\ExtensionManager\Command;
|
||||||
|
|
||||||
use Flarum\PackageManager\Task\Task;
|
use Flarum\ExtensionManager\Task\Task;
|
||||||
use Flarum\User\User;
|
use Flarum\User\User;
|
||||||
|
|
||||||
class CheckForUpdates extends AbstractActionCommand
|
class CheckForUpdates extends AbstractActionCommand
|
||||||
|
@@ -7,14 +7,14 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Command;
|
namespace Flarum\ExtensionManager\Command;
|
||||||
|
|
||||||
use Flarum\Extension\ExtensionManager;
|
use Flarum\Extension\ExtensionManager;
|
||||||
use Flarum\PackageManager\Composer\ComposerAdapter;
|
use Flarum\ExtensionManager\Composer\ComposerAdapter;
|
||||||
use Flarum\PackageManager\Composer\ComposerJson;
|
use Flarum\ExtensionManager\Composer\ComposerJson;
|
||||||
use Flarum\PackageManager\Exception\ComposerCommandFailedException;
|
use Flarum\ExtensionManager\Exception\ComposerCommandFailedException;
|
||||||
use Flarum\PackageManager\Settings\LastUpdateCheck;
|
use Flarum\ExtensionManager\Settings\LastUpdateCheck;
|
||||||
use Flarum\PackageManager\Support\Util;
|
use Flarum\ExtensionManager\Support\Util;
|
||||||
use Illuminate\Support\Collection;
|
use Illuminate\Support\Collection;
|
||||||
use Symfony\Component\Console\Input\ArrayInput;
|
use Symfony\Component\Console\Input\ArrayInput;
|
||||||
|
|
||||||
@@ -26,7 +26,7 @@ class CheckForUpdatesHandler
|
|||||||
protected $composer;
|
protected $composer;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @var \Flarum\PackageManager\Settings\LastUpdateCheck
|
* @var \Flarum\ExtensionManager\Settings\LastUpdateCheck
|
||||||
*/
|
*/
|
||||||
protected $lastUpdateCheck;
|
protected $lastUpdateCheck;
|
||||||
|
|
||||||
|
@@ -7,9 +7,9 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Command;
|
namespace Flarum\ExtensionManager\Command;
|
||||||
|
|
||||||
use Flarum\PackageManager\Task\Task;
|
use Flarum\ExtensionManager\Task\Task;
|
||||||
use Flarum\User\User;
|
use Flarum\User\User;
|
||||||
|
|
||||||
class GlobalUpdate extends AbstractActionCommand
|
class GlobalUpdate extends AbstractActionCommand
|
||||||
|
@@ -7,13 +7,13 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Command;
|
namespace Flarum\ExtensionManager\Command;
|
||||||
|
|
||||||
use Flarum\Bus\Dispatcher as FlarumDispatcher;
|
use Flarum\Bus\Dispatcher as FlarumDispatcher;
|
||||||
use Flarum\Foundation\Config;
|
use Flarum\Foundation\Config;
|
||||||
use Flarum\PackageManager\Composer\ComposerAdapter;
|
use Flarum\ExtensionManager\Composer\ComposerAdapter;
|
||||||
use Flarum\PackageManager\Event\FlarumUpdated;
|
use Flarum\ExtensionManager\Event\FlarumUpdated;
|
||||||
use Flarum\PackageManager\Exception\ComposerUpdateFailedException;
|
use Flarum\ExtensionManager\Exception\ComposerUpdateFailedException;
|
||||||
use Illuminate\Contracts\Events\Dispatcher;
|
use Illuminate\Contracts\Events\Dispatcher;
|
||||||
use Symfony\Component\Console\Input\ArrayInput;
|
use Symfony\Component\Console\Input\ArrayInput;
|
||||||
|
|
||||||
|
@@ -7,9 +7,9 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Command;
|
namespace Flarum\ExtensionManager\Command;
|
||||||
|
|
||||||
use Flarum\PackageManager\Task\Task;
|
use Flarum\ExtensionManager\Task\Task;
|
||||||
use Flarum\User\User;
|
use Flarum\User\User;
|
||||||
|
|
||||||
class MajorUpdate extends AbstractActionCommand
|
class MajorUpdate extends AbstractActionCommand
|
||||||
|
@@ -7,14 +7,14 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Command;
|
namespace Flarum\ExtensionManager\Command;
|
||||||
|
|
||||||
use Flarum\PackageManager\Composer\ComposerAdapter;
|
use Flarum\ExtensionManager\Composer\ComposerAdapter;
|
||||||
use Flarum\PackageManager\Composer\ComposerJson;
|
use Flarum\ExtensionManager\Composer\ComposerJson;
|
||||||
use Flarum\PackageManager\Event\FlarumUpdated;
|
use Flarum\ExtensionManager\Event\FlarumUpdated;
|
||||||
use Flarum\PackageManager\Exception\MajorUpdateFailedException;
|
use Flarum\ExtensionManager\Exception\MajorUpdateFailedException;
|
||||||
use Flarum\PackageManager\Exception\NoNewMajorVersionException;
|
use Flarum\ExtensionManager\Exception\NoNewMajorVersionException;
|
||||||
use Flarum\PackageManager\Settings\LastUpdateCheck;
|
use Flarum\ExtensionManager\Settings\LastUpdateCheck;
|
||||||
use Illuminate\Contracts\Events\Dispatcher;
|
use Illuminate\Contracts\Events\Dispatcher;
|
||||||
use Symfony\Component\Console\Input\ArrayInput;
|
use Symfony\Component\Console\Input\ArrayInput;
|
||||||
|
|
||||||
|
@@ -7,9 +7,9 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Command;
|
namespace Flarum\ExtensionManager\Command;
|
||||||
|
|
||||||
use Flarum\PackageManager\Task\Task;
|
use Flarum\ExtensionManager\Task\Task;
|
||||||
use Flarum\User\User;
|
use Flarum\User\User;
|
||||||
|
|
||||||
class MinorUpdate extends AbstractActionCommand
|
class MinorUpdate extends AbstractActionCommand
|
||||||
|
@@ -7,13 +7,13 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Command;
|
namespace Flarum\ExtensionManager\Command;
|
||||||
|
|
||||||
use Flarum\PackageManager\Composer\ComposerAdapter;
|
use Flarum\ExtensionManager\Composer\ComposerAdapter;
|
||||||
use Flarum\PackageManager\Composer\ComposerJson;
|
use Flarum\ExtensionManager\Composer\ComposerJson;
|
||||||
use Flarum\PackageManager\Event\FlarumUpdated;
|
use Flarum\ExtensionManager\Event\FlarumUpdated;
|
||||||
use Flarum\PackageManager\Exception\ComposerUpdateFailedException;
|
use Flarum\ExtensionManager\Exception\ComposerUpdateFailedException;
|
||||||
use Flarum\PackageManager\Settings\LastUpdateCheck;
|
use Flarum\ExtensionManager\Settings\LastUpdateCheck;
|
||||||
use Illuminate\Contracts\Events\Dispatcher;
|
use Illuminate\Contracts\Events\Dispatcher;
|
||||||
use Symfony\Component\Console\Input\StringInput;
|
use Symfony\Component\Console\Input\StringInput;
|
||||||
|
|
||||||
@@ -25,7 +25,7 @@ class MinorUpdateHandler
|
|||||||
protected $composer;
|
protected $composer;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @var \Flarum\PackageManager\Settings\LastUpdateCheck
|
* @var \Flarum\ExtensionManager\Settings\LastUpdateCheck
|
||||||
*/
|
*/
|
||||||
protected $lastUpdateCheck;
|
protected $lastUpdateCheck;
|
||||||
|
|
||||||
|
@@ -7,9 +7,9 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Command;
|
namespace Flarum\ExtensionManager\Command;
|
||||||
|
|
||||||
use Flarum\PackageManager\Task\Task;
|
use Flarum\ExtensionManager\Task\Task;
|
||||||
use Flarum\User\User;
|
use Flarum\User\User;
|
||||||
|
|
||||||
class RemoveExtension extends AbstractActionCommand
|
class RemoveExtension extends AbstractActionCommand
|
||||||
|
@@ -7,15 +7,15 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Command;
|
namespace Flarum\ExtensionManager\Command;
|
||||||
|
|
||||||
use Flarum\Extension\ExtensionManager;
|
use Flarum\Extension\ExtensionManager;
|
||||||
use Flarum\PackageManager\Composer\ComposerAdapter;
|
use Flarum\ExtensionManager\Composer\ComposerAdapter;
|
||||||
use Flarum\PackageManager\Composer\ComposerJson;
|
use Flarum\ExtensionManager\Composer\ComposerJson;
|
||||||
use Flarum\PackageManager\Exception\ComposerCommandFailedException;
|
use Flarum\ExtensionManager\Exception\ComposerCommandFailedException;
|
||||||
use Flarum\PackageManager\Exception\ExtensionNotInstalledException;
|
use Flarum\ExtensionManager\Exception\ExtensionNotInstalledException;
|
||||||
use Flarum\PackageManager\Exception\IndirectExtensionDependencyCannotBeRemovedException;
|
use Flarum\ExtensionManager\Exception\IndirectExtensionDependencyCannotBeRemovedException;
|
||||||
use Flarum\PackageManager\Extension\Event\Removed;
|
use Flarum\ExtensionManager\Extension\Event\Removed;
|
||||||
use Illuminate\Contracts\Events\Dispatcher;
|
use Illuminate\Contracts\Events\Dispatcher;
|
||||||
use Symfony\Component\Console\Input\StringInput;
|
use Symfony\Component\Console\Input\StringInput;
|
||||||
|
|
||||||
|
@@ -7,9 +7,9 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Command;
|
namespace Flarum\ExtensionManager\Command;
|
||||||
|
|
||||||
use Flarum\PackageManager\Task\Task;
|
use Flarum\ExtensionManager\Task\Task;
|
||||||
use Flarum\User\User;
|
use Flarum\User\User;
|
||||||
|
|
||||||
class RequireExtension extends AbstractActionCommand
|
class RequireExtension extends AbstractActionCommand
|
||||||
|
@@ -7,15 +7,15 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Command;
|
namespace Flarum\ExtensionManager\Command;
|
||||||
|
|
||||||
use Flarum\Extension\ExtensionManager;
|
use Flarum\Extension\ExtensionManager;
|
||||||
use Flarum\PackageManager\Composer\ComposerAdapter;
|
use Flarum\ExtensionManager\Composer\ComposerAdapter;
|
||||||
use Flarum\PackageManager\Exception\ComposerRequireFailedException;
|
use Flarum\ExtensionManager\Exception\ComposerRequireFailedException;
|
||||||
use Flarum\PackageManager\Exception\ExtensionAlreadyInstalledException;
|
use Flarum\ExtensionManager\Exception\ExtensionAlreadyInstalledException;
|
||||||
use Flarum\PackageManager\Extension\Event\Installed;
|
use Flarum\ExtensionManager\Extension\Event\Installed;
|
||||||
use Flarum\PackageManager\RequirePackageValidator;
|
use Flarum\ExtensionManager\RequirePackageValidator;
|
||||||
use Flarum\PackageManager\Support\Util;
|
use Flarum\ExtensionManager\Support\Util;
|
||||||
use Illuminate\Contracts\Events\Dispatcher;
|
use Illuminate\Contracts\Events\Dispatcher;
|
||||||
use Symfony\Component\Console\Input\StringInput;
|
use Symfony\Component\Console\Input\StringInput;
|
||||||
|
|
||||||
|
@@ -7,9 +7,9 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Command;
|
namespace Flarum\ExtensionManager\Command;
|
||||||
|
|
||||||
use Flarum\PackageManager\Task\Task;
|
use Flarum\ExtensionManager\Task\Task;
|
||||||
use Flarum\User\User;
|
use Flarum\User\User;
|
||||||
|
|
||||||
class UpdateExtension extends AbstractActionCommand
|
class UpdateExtension extends AbstractActionCommand
|
||||||
|
@@ -7,15 +7,15 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Command;
|
namespace Flarum\ExtensionManager\Command;
|
||||||
|
|
||||||
use Flarum\Extension\ExtensionManager;
|
use Flarum\Extension\ExtensionManager;
|
||||||
use Flarum\PackageManager\Composer\ComposerAdapter;
|
use Flarum\ExtensionManager\Composer\ComposerAdapter;
|
||||||
use Flarum\PackageManager\Exception\ComposerUpdateFailedException;
|
use Flarum\ExtensionManager\Exception\ComposerUpdateFailedException;
|
||||||
use Flarum\PackageManager\Exception\ExtensionNotInstalledException;
|
use Flarum\ExtensionManager\Exception\ExtensionNotInstalledException;
|
||||||
use Flarum\PackageManager\Extension\Event\Updated;
|
use Flarum\ExtensionManager\Extension\Event\Updated;
|
||||||
use Flarum\PackageManager\Settings\LastUpdateCheck;
|
use Flarum\ExtensionManager\Settings\LastUpdateCheck;
|
||||||
use Flarum\PackageManager\UpdateExtensionValidator;
|
use Flarum\ExtensionManager\UpdateExtensionValidator;
|
||||||
use Illuminate\Contracts\Events\Dispatcher;
|
use Illuminate\Contracts\Events\Dispatcher;
|
||||||
use Symfony\Component\Console\Input\StringInput;
|
use Symfony\Component\Console\Input\StringInput;
|
||||||
|
|
||||||
|
@@ -7,9 +7,9 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Command;
|
namespace Flarum\ExtensionManager\Command;
|
||||||
|
|
||||||
use Flarum\PackageManager\Task\Task;
|
use Flarum\ExtensionManager\Task\Task;
|
||||||
use Flarum\User\User;
|
use Flarum\User\User;
|
||||||
|
|
||||||
class WhyNot extends AbstractActionCommand
|
class WhyNot extends AbstractActionCommand
|
||||||
|
@@ -7,11 +7,11 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Command;
|
namespace Flarum\ExtensionManager\Command;
|
||||||
|
|
||||||
use Flarum\PackageManager\Composer\ComposerAdapter;
|
use Flarum\ExtensionManager\Composer\ComposerAdapter;
|
||||||
use Flarum\PackageManager\Exception\ComposerRequireFailedException;
|
use Flarum\ExtensionManager\Exception\ComposerRequireFailedException;
|
||||||
use Flarum\PackageManager\WhyNotValidator;
|
use Flarum\ExtensionManager\WhyNotValidator;
|
||||||
use Illuminate\Contracts\Events\Dispatcher;
|
use Illuminate\Contracts\Events\Dispatcher;
|
||||||
use Symfony\Component\Console\Input\StringInput;
|
use Symfony\Component\Console\Input\StringInput;
|
||||||
|
|
||||||
|
@@ -7,14 +7,14 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Composer;
|
namespace Flarum\ExtensionManager\Composer;
|
||||||
|
|
||||||
use Composer\Config;
|
use Composer\Config;
|
||||||
use Composer\Console\Application;
|
use Composer\Console\Application;
|
||||||
use Flarum\Foundation\Paths;
|
use Flarum\Foundation\Paths;
|
||||||
use Flarum\PackageManager\OutputLogger;
|
use Flarum\ExtensionManager\OutputLogger;
|
||||||
use Flarum\PackageManager\Support\Util;
|
use Flarum\ExtensionManager\Support\Util;
|
||||||
use Flarum\PackageManager\Task\Task;
|
use Flarum\ExtensionManager\Task\Task;
|
||||||
use Symfony\Component\Console\Input\InputInterface;
|
use Symfony\Component\Console\Input\InputInterface;
|
||||||
use Symfony\Component\Console\Output\BufferedOutput;
|
use Symfony\Component\Console\Output\BufferedOutput;
|
||||||
|
|
||||||
|
@@ -7,11 +7,11 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Composer;
|
namespace Flarum\ExtensionManager\Composer;
|
||||||
|
|
||||||
use Flarum\Extension\ExtensionManager;
|
use Flarum\Extension\ExtensionManager;
|
||||||
use Flarum\Foundation\Paths;
|
use Flarum\Foundation\Paths;
|
||||||
use Flarum\PackageManager\Support\Util;
|
use Flarum\ExtensionManager\Support\Util;
|
||||||
use Illuminate\Filesystem\Filesystem;
|
use Illuminate\Filesystem\Filesystem;
|
||||||
use Illuminate\Support\Str;
|
use Illuminate\Support\Str;
|
||||||
|
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Composer;
|
namespace Flarum\ExtensionManager\Composer;
|
||||||
|
|
||||||
class ComposerOutput
|
class ComposerOutput
|
||||||
{
|
{
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager;
|
namespace Flarum\ExtensionManager;
|
||||||
|
|
||||||
use Flarum\Foundation\AbstractValidator;
|
use Flarum\Foundation\AbstractValidator;
|
||||||
|
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Event;
|
namespace Flarum\ExtensionManager\Event;
|
||||||
|
|
||||||
use Flarum\User\User;
|
use Flarum\User\User;
|
||||||
|
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Exception;
|
namespace Flarum\ExtensionManager\Exception;
|
||||||
|
|
||||||
use Exception;
|
use Exception;
|
||||||
|
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Exception;
|
namespace Flarum\ExtensionManager\Exception;
|
||||||
|
|
||||||
class ComposerRequireFailedException extends ComposerCommandFailedException
|
class ComposerRequireFailedException extends ComposerCommandFailedException
|
||||||
{
|
{
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Exception;
|
namespace Flarum\ExtensionManager\Exception;
|
||||||
|
|
||||||
class ComposerUpdateFailedException extends ComposerCommandFailedException
|
class ComposerUpdateFailedException extends ComposerCommandFailedException
|
||||||
{
|
{
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Exception;
|
namespace Flarum\ExtensionManager\Exception;
|
||||||
|
|
||||||
use Flarum\Foundation\ErrorHandling\HandledError;
|
use Flarum\Foundation\ErrorHandling\HandledError;
|
||||||
|
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Exception;
|
namespace Flarum\ExtensionManager\Exception;
|
||||||
|
|
||||||
use Exception;
|
use Exception;
|
||||||
use Flarum\Extension\Extension;
|
use Flarum\Extension\Extension;
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Exception;
|
namespace Flarum\ExtensionManager\Exception;
|
||||||
|
|
||||||
use Exception;
|
use Exception;
|
||||||
use Flarum\Foundation\KnownError;
|
use Flarum\Foundation\KnownError;
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Exception;
|
namespace Flarum\ExtensionManager\Exception;
|
||||||
|
|
||||||
use Exception;
|
use Exception;
|
||||||
use Flarum\Foundation\KnownError;
|
use Flarum\Foundation\KnownError;
|
||||||
|
@@ -7,11 +7,11 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Exception;
|
namespace Flarum\ExtensionManager\Exception;
|
||||||
|
|
||||||
use Composer\Semver\Semver;
|
use Composer\Semver\Semver;
|
||||||
use Flarum\PackageManager\Event\FlarumUpdated;
|
use Flarum\ExtensionManager\Event\FlarumUpdated;
|
||||||
use Flarum\PackageManager\Settings\LastUpdateRun;
|
use Flarum\ExtensionManager\Settings\LastUpdateRun;
|
||||||
|
|
||||||
class MajorUpdateFailedException extends ComposerCommandFailedException
|
class MajorUpdateFailedException extends ComposerCommandFailedException
|
||||||
{
|
{
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Exception;
|
namespace Flarum\ExtensionManager\Exception;
|
||||||
|
|
||||||
use Exception;
|
use Exception;
|
||||||
use Flarum\Foundation\KnownError;
|
use Flarum\Foundation\KnownError;
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Extension\Event;
|
namespace Flarum\ExtensionManager\Extension\Event;
|
||||||
|
|
||||||
class Installed
|
class Installed
|
||||||
{
|
{
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Extension\Event;
|
namespace Flarum\ExtensionManager\Extension\Event;
|
||||||
|
|
||||||
use Flarum\Extension\Extension;
|
use Flarum\Extension\Extension;
|
||||||
|
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Extension\Event;
|
namespace Flarum\ExtensionManager\Extension\Event;
|
||||||
|
|
||||||
use Flarum\Extension\Extension;
|
use Flarum\Extension\Extension;
|
||||||
use Flarum\User\User;
|
use Flarum\User\User;
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager;
|
namespace Flarum\ExtensionManager;
|
||||||
|
|
||||||
use Composer\Config;
|
use Composer\Config;
|
||||||
use Composer\Console\Application;
|
use Composer\Console\Application;
|
||||||
@@ -17,18 +17,18 @@ use Flarum\Foundation\AbstractServiceProvider;
|
|||||||
use Flarum\Foundation\Paths;
|
use Flarum\Foundation\Paths;
|
||||||
use Flarum\Frontend\RecompileFrontendAssets;
|
use Flarum\Frontend\RecompileFrontendAssets;
|
||||||
use Flarum\Locale\LocaleManager;
|
use Flarum\Locale\LocaleManager;
|
||||||
use Flarum\PackageManager\Composer\ComposerAdapter;
|
use Flarum\ExtensionManager\Composer\ComposerAdapter;
|
||||||
use Flarum\PackageManager\Event\FlarumUpdated;
|
use Flarum\ExtensionManager\Event\FlarumUpdated;
|
||||||
use Flarum\PackageManager\Extension\Event\Updated;
|
use Flarum\ExtensionManager\Extension\Event\Updated;
|
||||||
use Flarum\PackageManager\Listener\ClearCacheAfterUpdate;
|
use Flarum\ExtensionManager\Listener\ClearCacheAfterUpdate;
|
||||||
use Flarum\PackageManager\Listener\ReCheckForUpdates;
|
use Flarum\ExtensionManager\Listener\ReCheckForUpdates;
|
||||||
use Illuminate\Contracts\Container\Container;
|
use Illuminate\Contracts\Container\Container;
|
||||||
use Illuminate\Contracts\Events\Dispatcher;
|
use Illuminate\Contracts\Events\Dispatcher;
|
||||||
use Monolog\Formatter\LineFormatter;
|
use Monolog\Formatter\LineFormatter;
|
||||||
use Monolog\Handler\RotatingFileHandler;
|
use Monolog\Handler\RotatingFileHandler;
|
||||||
use Monolog\Logger;
|
use Monolog\Logger;
|
||||||
|
|
||||||
class PackageManagerServiceProvider extends AbstractServiceProvider
|
class ExtensionManagerServiceProvider extends AbstractServiceProvider
|
||||||
{
|
{
|
||||||
public function register()
|
public function register()
|
||||||
{
|
{
|
@@ -7,12 +7,12 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Job;
|
namespace Flarum\ExtensionManager\Job;
|
||||||
|
|
||||||
use Flarum\Bus\Dispatcher;
|
use Flarum\Bus\Dispatcher;
|
||||||
use Flarum\PackageManager\Command\AbstractActionCommand;
|
use Flarum\ExtensionManager\Command\AbstractActionCommand;
|
||||||
use Flarum\PackageManager\Composer\ComposerAdapter;
|
use Flarum\ExtensionManager\Composer\ComposerAdapter;
|
||||||
use Flarum\PackageManager\Exception\ComposerCommandFailedException;
|
use Flarum\ExtensionManager\Exception\ComposerCommandFailedException;
|
||||||
use Flarum\Queue\AbstractJob;
|
use Flarum\Queue\AbstractJob;
|
||||||
use Illuminate\Contracts\Queue\ShouldBeUnique;
|
use Illuminate\Contracts\Queue\ShouldBeUnique;
|
||||||
use Illuminate\Queue\Middleware\WithoutOverlapping;
|
use Illuminate\Queue\Middleware\WithoutOverlapping;
|
||||||
|
@@ -7,13 +7,13 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Job;
|
namespace Flarum\ExtensionManager\Job;
|
||||||
|
|
||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
use Flarum\Bus\Dispatcher as Bus;
|
use Flarum\Bus\Dispatcher as Bus;
|
||||||
use Flarum\Extension\ExtensionManager;
|
use Flarum\Extension\ExtensionManager;
|
||||||
use Flarum\PackageManager\Command\AbstractActionCommand;
|
use Flarum\ExtensionManager\Command\AbstractActionCommand;
|
||||||
use Flarum\PackageManager\Task\Task;
|
use Flarum\ExtensionManager\Task\Task;
|
||||||
use Flarum\Settings\SettingsRepositoryInterface;
|
use Flarum\Settings\SettingsRepositoryInterface;
|
||||||
use Illuminate\Contracts\Queue\Queue;
|
use Illuminate\Contracts\Queue\Queue;
|
||||||
use Illuminate\Queue\SyncQueue;
|
use Illuminate\Queue\SyncQueue;
|
||||||
@@ -73,7 +73,7 @@ class Dispatcher
|
|||||||
|
|
||||||
public function dispatch(AbstractActionCommand $command): DispatcherResponse
|
public function dispatch(AbstractActionCommand $command): DispatcherResponse
|
||||||
{
|
{
|
||||||
$queueJobs = ($this->runSyncOverride === false) || ($this->runSyncOverride !== true && $this->settings->get('flarum-package-manager.queue_jobs'));
|
$queueJobs = ($this->runSyncOverride === false) || ($this->runSyncOverride !== true && $this->settings->get('flarum-extension-manager.queue_jobs'));
|
||||||
|
|
||||||
// Skip if there is already a pending or running task.
|
// Skip if there is already a pending or running task.
|
||||||
if ($queueJobs && Task::query()->whereIn('status', [Task::PENDING, Task::RUNNING])->exists()) {
|
if ($queueJobs && Task::query()->whereIn('status', [Task::PENDING, Task::RUNNING])->exists()) {
|
||||||
@@ -101,7 +101,7 @@ class Dispatcher
|
|||||||
|
|
||||||
protected function clearOldTasks(): void
|
protected function clearOldTasks(): void
|
||||||
{
|
{
|
||||||
$days = $this->settings->get('flarum-package-manager.task_retention_days');
|
$days = $this->settings->get('flarum-extension-manager.task_retention_days');
|
||||||
|
|
||||||
if ($days === null || ((int) $days) === 0) {
|
if ($days === null || ((int) $days) === 0) {
|
||||||
return;
|
return;
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Job;
|
namespace Flarum\ExtensionManager\Job;
|
||||||
|
|
||||||
class DispatcherResponse
|
class DispatcherResponse
|
||||||
{
|
{
|
||||||
|
@@ -7,12 +7,12 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Listener;
|
namespace Flarum\ExtensionManager\Listener;
|
||||||
|
|
||||||
use Composer\Command\ClearCacheCommand;
|
use Composer\Command\ClearCacheCommand;
|
||||||
use Flarum\Database\Console\MigrateCommand;
|
use Flarum\Database\Console\MigrateCommand;
|
||||||
use Flarum\Foundation\Console\AssetsPublishCommand;
|
use Flarum\Foundation\Console\AssetsPublishCommand;
|
||||||
use Flarum\PackageManager\Event\FlarumUpdated;
|
use Flarum\ExtensionManager\Event\FlarumUpdated;
|
||||||
use Symfony\Component\Console\Input\ArrayInput;
|
use Symfony\Component\Console\Input\ArrayInput;
|
||||||
use Symfony\Component\Console\Output\NullOutput;
|
use Symfony\Component\Console\Output\NullOutput;
|
||||||
|
|
||||||
|
@@ -7,14 +7,14 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Listener;
|
namespace Flarum\ExtensionManager\Listener;
|
||||||
|
|
||||||
use Flarum\Bus\Dispatcher;
|
use Flarum\Bus\Dispatcher;
|
||||||
use Flarum\PackageManager\Command\CheckForUpdates;
|
use Flarum\ExtensionManager\Command\CheckForUpdates;
|
||||||
use Flarum\PackageManager\Event\FlarumUpdated;
|
use Flarum\ExtensionManager\Event\FlarumUpdated;
|
||||||
use Flarum\PackageManager\Extension\Event\Updated;
|
use Flarum\ExtensionManager\Extension\Event\Updated;
|
||||||
use Flarum\PackageManager\Settings\LastUpdateCheck;
|
use Flarum\ExtensionManager\Settings\LastUpdateCheck;
|
||||||
use Flarum\PackageManager\Settings\LastUpdateRun;
|
use Flarum\ExtensionManager\Settings\LastUpdateRun;
|
||||||
|
|
||||||
class ReCheckForUpdates
|
class ReCheckForUpdates
|
||||||
{
|
{
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager;
|
namespace Flarum\ExtensionManager;
|
||||||
|
|
||||||
use Psr\Log\LoggerInterface;
|
use Psr\Log\LoggerInterface;
|
||||||
|
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager;
|
namespace Flarum\ExtensionManager;
|
||||||
|
|
||||||
use Flarum\Foundation\AbstractValidator;
|
use Flarum\Foundation\AbstractValidator;
|
||||||
|
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Settings;
|
namespace Flarum\ExtensionManager\Settings;
|
||||||
|
|
||||||
interface JsonSetting
|
interface JsonSetting
|
||||||
{
|
{
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Settings;
|
namespace Flarum\ExtensionManager\Settings;
|
||||||
|
|
||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
use Flarum\Settings\SettingsRepositoryInterface;
|
use Flarum\Settings\SettingsRepositoryInterface;
|
||||||
@@ -53,7 +53,7 @@ class LastUpdateCheck implements JsonSetting
|
|||||||
|
|
||||||
public static function key(): string
|
public static function key(): string
|
||||||
{
|
{
|
||||||
return 'flarum-package-manager.last_update_check';
|
return 'flarum-extension-manager.last_update_check';
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function default(): array
|
public static function default(): array
|
||||||
|
@@ -7,10 +7,10 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Settings;
|
namespace Flarum\ExtensionManager\Settings;
|
||||||
|
|
||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
use Flarum\PackageManager\Event\FlarumUpdated;
|
use Flarum\ExtensionManager\Event\FlarumUpdated;
|
||||||
use Flarum\Settings\SettingsRepositoryInterface;
|
use Flarum\Settings\SettingsRepositoryInterface;
|
||||||
|
|
||||||
class LastUpdateRun implements JsonSetting
|
class LastUpdateRun implements JsonSetting
|
||||||
@@ -76,7 +76,7 @@ class LastUpdateRun implements JsonSetting
|
|||||||
|
|
||||||
public static function key(): string
|
public static function key(): string
|
||||||
{
|
{
|
||||||
return 'flarum-package-manager.last_update_run';
|
return 'flarum-extension-manager.last_update_run';
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function default(): array
|
public static function default(): array
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Support;
|
namespace Flarum\ExtensionManager\Support;
|
||||||
|
|
||||||
use Illuminate\Support\Str;
|
use Illuminate\Support\Str;
|
||||||
use Symfony\Component\Console\Input\ArrayInput;
|
use Symfony\Component\Console\Input\ArrayInput;
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Task;
|
namespace Flarum\ExtensionManager\Task;
|
||||||
|
|
||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
use Flarum\Database\AbstractModel;
|
use Flarum\Database\AbstractModel;
|
||||||
@@ -49,7 +49,7 @@ class Task extends AbstractModel
|
|||||||
|
|
||||||
public const UPDATED_AT = null;
|
public const UPDATED_AT = null;
|
||||||
|
|
||||||
protected $table = 'package_manager_tasks';
|
protected $table = 'extension_manager_tasks';
|
||||||
|
|
||||||
protected $guarded = ['id'];
|
protected $guarded = ['id'];
|
||||||
|
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* LICENSE file that was distributed with this source code.
|
* LICENSE file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Flarum\PackageManager\Task;
|
namespace Flarum\ExtensionManager\Task;
|
||||||
|
|
||||||
use Flarum\User\User;
|
use Flarum\User\User;
|
||||||
use Illuminate\Database\Eloquent\Builder;
|
use Illuminate\Database\Eloquent\Builder;
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user