mirror of
https://github.com/flarum/core.git
synced 2025-08-06 08:27:42 +02:00
yarn format
This commit is contained in:
@@ -1,8 +1,8 @@
|
|||||||
import app from 'flarum/admin/app';
|
import app from 'flarum/admin/app';
|
||||||
import Modal from 'flarum/common/components/Modal';
|
import Modal from 'flarum/common/components/Modal';
|
||||||
import { ComponentAttrs } from "flarum/common/Component";
|
import { ComponentAttrs } from 'flarum/common/Component';
|
||||||
import Alert from "flarum/common/components/Alert";
|
import Alert from 'flarum/common/components/Alert';
|
||||||
import Mithril from "mithril";
|
import Mithril from 'mithril';
|
||||||
|
|
||||||
interface Attrs extends ComponentAttrs {
|
interface Attrs extends ComponentAttrs {
|
||||||
output: string;
|
output: string;
|
||||||
|
@@ -1,11 +1,11 @@
|
|||||||
import type Mithril from 'mithril';
|
import type Mithril from 'mithril';
|
||||||
import app from 'flarum/admin/app';
|
import app from 'flarum/admin/app';
|
||||||
import Component from 'flarum/common/Component';
|
import Component from 'flarum/common/Component';
|
||||||
import Button from "flarum/common/components/Button";
|
import Button from 'flarum/common/components/Button';
|
||||||
import Stream from "flarum/common/utils/Stream";
|
import Stream from 'flarum/common/utils/Stream';
|
||||||
import LoadingModal from "flarum/admin/components/LoadingModal";
|
import LoadingModal from 'flarum/admin/components/LoadingModal';
|
||||||
import ComposerFailureModal from "./ComposerFailureModal";
|
import ComposerFailureModal from './ComposerFailureModal';
|
||||||
import errorHandler from "../utils/errorHandler";
|
import errorHandler from '../utils/errorHandler';
|
||||||
|
|
||||||
export default class Installer extends Component {
|
export default class Installer extends Component {
|
||||||
packageName!: Stream<string>;
|
packageName!: Stream<string>;
|
||||||
@@ -21,9 +21,11 @@ export default class Installer extends Component {
|
|||||||
return (
|
return (
|
||||||
<div className="Form-group">
|
<div className="Form-group">
|
||||||
<label htmlFor="install-extension">{app.translator.trans('sycho-package-manager.admin.extensions.install')}</label>
|
<label htmlFor="install-extension">{app.translator.trans('sycho-package-manager.admin.extensions.install')}</label>
|
||||||
<p className="helpText">{app.translator.trans('sycho-package-manager.admin.extensions.install_help', {
|
<p className="helpText">
|
||||||
extiverse: <a href="https://extiverse.com">extiverse.com</a>
|
{app.translator.trans('sycho-package-manager.admin.extensions.install_help', {
|
||||||
})}</p>
|
extiverse: <a href="https://extiverse.com">extiverse.com</a>,
|
||||||
|
})}
|
||||||
|
</p>
|
||||||
<div className="FormControl-container">
|
<div className="FormControl-container">
|
||||||
<input className="FormControl" id="install-extension" placeholder="vendor/package-name" bidi={this.packageName} />
|
<input className="FormControl" id="install-extension" placeholder="vendor/package-name" bidi={this.packageName} />
|
||||||
<Button className="Button" icon="fas fa-download" onclick={this.onsubmit.bind(this)} loading={this.isLoading}>
|
<Button className="Button" icon="fas fa-download" onclick={this.onsubmit.bind(this)} loading={this.isLoading}>
|
||||||
@@ -44,19 +46,25 @@ export default class Installer extends Component {
|
|||||||
this.isLoading = true;
|
this.isLoading = true;
|
||||||
app.modal.show(LoadingModal);
|
app.modal.show(LoadingModal);
|
||||||
|
|
||||||
app.request({
|
app
|
||||||
|
.request({
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
url: `${app.forum.attribute('apiUrl')}/package-manager/extensions`,
|
url: `${app.forum.attribute('apiUrl')}/package-manager/extensions`,
|
||||||
body: {
|
body: {
|
||||||
data: this.data()
|
data: this.data(),
|
||||||
},
|
},
|
||||||
errorHandler,
|
errorHandler,
|
||||||
}).then((response) => {
|
})
|
||||||
|
.then((response) => {
|
||||||
const extensionId = response.id;
|
const extensionId = response.id;
|
||||||
app.alerts.show({ type: 'success' }, app.translator.trans('sycho-package-manager.admin.extensions.successful_install', { extension: extensionId }));
|
app.alerts.show(
|
||||||
|
{ type: 'success' },
|
||||||
|
app.translator.trans('sycho-package-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();
|
||||||
}).finally(() => {
|
})
|
||||||
|
.finally(() => {
|
||||||
this.isLoading = false;
|
this.isLoading = false;
|
||||||
m.redraw();
|
m.redraw();
|
||||||
});
|
});
|
||||||
|
@@ -1,19 +1,19 @@
|
|||||||
import app from 'flarum/admin/app';
|
import app from 'flarum/admin/app';
|
||||||
import Component from 'flarum/common/Component';
|
import Component from 'flarum/common/Component';
|
||||||
import icon from "flarum/common/helpers/icon";
|
import icon from 'flarum/common/helpers/icon';
|
||||||
import Button from "flarum/common/components/Button";
|
import Button from 'flarum/common/components/Button';
|
||||||
import humanTime from "flarum/common/helpers/humanTime";
|
import humanTime from 'flarum/common/helpers/humanTime';
|
||||||
import LoadingModal from "flarum/admin/components/LoadingModal";
|
import LoadingModal from 'flarum/admin/components/LoadingModal';
|
||||||
import Tooltip from "flarum/common/components/Tooltip";
|
import Tooltip from 'flarum/common/components/Tooltip';
|
||||||
import errorHandler from "../utils/errorHandler";
|
import errorHandler from '../utils/errorHandler';
|
||||||
import classList from "flarum/common/utils/classList";
|
import classList from 'flarum/common/utils/classList';
|
||||||
import LoadingIndicator from "flarum/common/components/LoadingIndicator";
|
import LoadingIndicator from 'flarum/common/components/LoadingIndicator';
|
||||||
|
|
||||||
type UpdatedPackage = {
|
type UpdatedPackage = {
|
||||||
name: string;
|
name: string;
|
||||||
version: string;
|
version: string;
|
||||||
latest: string;
|
latest: string;
|
||||||
"latest-status": string;
|
'latest-status': string;
|
||||||
description: string;
|
description: string;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -56,7 +56,9 @@ export default class Updater extends Component {
|
|||||||
<p className="helpText">{app.translator.trans('sycho-package-manager.admin.updater.updater_help')}</p>
|
<p className="helpText">{app.translator.trans('sycho-package-manager.admin.updater.updater_help')}</p>
|
||||||
{Object.keys(this.lastUpdateCheck).length ? (
|
{Object.keys(this.lastUpdateCheck).length ? (
|
||||||
<p className="PackageManager-lastUpdatedAt">
|
<p className="PackageManager-lastUpdatedAt">
|
||||||
<span className="PackageManager-lastUpdatedAt-label">{app.translator.trans('sycho-package-manager.admin.updater.last_update_checked_at')}</span>
|
<span className="PackageManager-lastUpdatedAt-label">
|
||||||
|
{app.translator.trans('sycho-package-manager.admin.updater.last_update_checked_at')}
|
||||||
|
</span>
|
||||||
<span className="PackageManager-lastUpdatedAt-value">{humanTime(this.lastUpdateCheck?.checkedAt)}</span>
|
<span className="PackageManager-lastUpdatedAt-value">{humanTime(this.lastUpdateCheck?.checkedAt)}</span>
|
||||||
</p>
|
</p>
|
||||||
) : null}
|
) : null}
|
||||||
@@ -66,7 +68,8 @@ export default class Updater extends Component {
|
|||||||
icon="fas fa-sync-alt"
|
icon="fas fa-sync-alt"
|
||||||
onclick={this.checkForUpdates.bind(this)}
|
onclick={this.checkForUpdates.bind(this)}
|
||||||
loading={this.isLoading === 'check'}
|
loading={this.isLoading === 'check'}
|
||||||
disabled={this.isLoading !== null && this.isLoading !== 'check'}>
|
disabled={this.isLoading !== null && this.isLoading !== 'check'}
|
||||||
|
>
|
||||||
{app.translator.trans('sycho-package-manager.admin.updater.check_for_updates')}
|
{app.translator.trans('sycho-package-manager.admin.updater.check_for_updates')}
|
||||||
</Button>
|
</Button>
|
||||||
<Button
|
<Button
|
||||||
@@ -74,7 +77,8 @@ export default class Updater extends Component {
|
|||||||
icon="fas fa-play"
|
icon="fas fa-play"
|
||||||
onclick={this.updateGlobally.bind(this)}
|
onclick={this.updateGlobally.bind(this)}
|
||||||
loading={this.isLoading === 'global-update'}
|
loading={this.isLoading === 'global-update'}
|
||||||
disabled={this.isLoading !== null && this.isLoading !== 'global-update'}>
|
disabled={this.isLoading !== null && this.isLoading !== 'global-update'}
|
||||||
|
>
|
||||||
{app.translator.trans('sycho-package-manager.admin.updater.run_global_update')}
|
{app.translator.trans('sycho-package-manager.admin.updater.run_global_update')}
|
||||||
</Button>
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
@@ -82,14 +86,14 @@ export default class Updater extends Component {
|
|||||||
<div className="PackageManager-extensions">
|
<div className="PackageManager-extensions">
|
||||||
<LoadingIndicator />
|
<LoadingIndicator />
|
||||||
</div>
|
</div>
|
||||||
) : (extensions.length || core ? (
|
) : extensions.length || core ? (
|
||||||
<div className="PackageManager-extensions">
|
<div className="PackageManager-extensions">
|
||||||
<div className="PackageManager-extensions-grid">
|
<div className="PackageManager-extensions-grid">
|
||||||
{core ? this.extensionItem(core, true) : null}
|
{core ? this.extensionItem(core, true) : null}
|
||||||
{extensions.map((extension: any) => this.extensionItem(extension))}
|
{extensions.map((extension: any) => this.extensionItem(extension))}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
) : null)}
|
) : null}
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@@ -113,7 +117,8 @@ export default class Updater extends Component {
|
|||||||
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={isCore ? this.updateCoreMinor.bind(this) : this.updateExtension.bind(this, extension)}
|
onclick={isCore ? this.updateCoreMinor.bind(this) : this.updateExtension.bind(this, extension)}
|
||||||
aria-label={app.translator.trans('sycho-package-manager.admin.extensions.update')} />
|
aria-label={app.translator.trans('sycho-package-manager.admin.extensions.update')}
|
||||||
|
/>
|
||||||
</Tooltip>
|
</Tooltip>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -142,13 +147,16 @@ export default class Updater extends Component {
|
|||||||
checkForUpdates() {
|
checkForUpdates() {
|
||||||
this.isLoading = 'check';
|
this.isLoading = 'check';
|
||||||
|
|
||||||
app.request({
|
app
|
||||||
|
.request({
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
url: `${app.forum.attribute('apiUrl')}/package-manager/check-for-updates`,
|
url: `${app.forum.attribute('apiUrl')}/package-manager/check-for-updates`,
|
||||||
errorHandler,
|
errorHandler,
|
||||||
}).then((response) => {
|
})
|
||||||
|
.then((response) => {
|
||||||
this.lastUpdateCheck = response as LastUpdateCheck;
|
this.lastUpdateCheck = response as LastUpdateCheck;
|
||||||
}).finally(() => {
|
})
|
||||||
|
.finally(() => {
|
||||||
this.isLoading = null;
|
this.isLoading = null;
|
||||||
m.redraw();
|
m.redraw();
|
||||||
});
|
});
|
||||||
@@ -158,14 +166,17 @@ export default class Updater extends Component {
|
|||||||
app.modal.show(LoadingModal);
|
app.modal.show(LoadingModal);
|
||||||
this.isLoading = 'minor-update';
|
this.isLoading = 'minor-update';
|
||||||
|
|
||||||
app.request({
|
app
|
||||||
|
.request({
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
url: `${app.forum.attribute('apiUrl')}/package-manager/minor-update`,
|
url: `${app.forum.attribute('apiUrl')}/package-manager/minor-update`,
|
||||||
errorHandler,
|
errorHandler,
|
||||||
}).then(() => {
|
})
|
||||||
|
.then(() => {
|
||||||
app.alerts.show({ type: 'success' }, app.translator.trans('sycho-package-manager.admin.updater.minor_update_successful'));
|
app.alerts.show({ type: 'success' }, app.translator.trans('sycho-package-manager.admin.updater.minor_update_successful'));
|
||||||
window.location.reload();
|
window.location.reload();
|
||||||
}).finally(() => {
|
})
|
||||||
|
.finally(() => {
|
||||||
this.isLoading = null;
|
this.isLoading = null;
|
||||||
m.redraw();
|
m.redraw();
|
||||||
});
|
});
|
||||||
@@ -175,14 +186,20 @@ export default class Updater extends Component {
|
|||||||
app.modal.show(LoadingModal);
|
app.modal.show(LoadingModal);
|
||||||
this.isLoading = 'extension-update';
|
this.isLoading = 'extension-update';
|
||||||
|
|
||||||
app.request({
|
app
|
||||||
|
.request({
|
||||||
method: 'PATCH',
|
method: 'PATCH',
|
||||||
url: `${app.forum.attribute('apiUrl')}/package-manager/extensions/${extension.id}`,
|
url: `${app.forum.attribute('apiUrl')}/package-manager/extensions/${extension.id}`,
|
||||||
errorHandler,
|
errorHandler,
|
||||||
}).then(() => {
|
})
|
||||||
app.alerts.show({ type: 'success' }, app.translator.trans('sycho-package-manager.admin.extensions.successful_update', { extension: extension.extra['flarum-extension'].title }));
|
.then(() => {
|
||||||
|
app.alerts.show(
|
||||||
|
{ type: 'success' },
|
||||||
|
app.translator.trans('sycho-package-manager.admin.extensions.successful_update', { extension: extension.extra['flarum-extension'].title })
|
||||||
|
);
|
||||||
window.location.reload();
|
window.location.reload();
|
||||||
}).finally(() => {
|
})
|
||||||
|
.finally(() => {
|
||||||
this.isLoading = null;
|
this.isLoading = null;
|
||||||
m.redraw();
|
m.redraw();
|
||||||
});
|
});
|
||||||
@@ -192,14 +209,17 @@ export default class Updater extends Component {
|
|||||||
app.modal.show(LoadingModal);
|
app.modal.show(LoadingModal);
|
||||||
this.isLoading = 'global-update';
|
this.isLoading = 'global-update';
|
||||||
|
|
||||||
app.request({
|
app
|
||||||
|
.request({
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
url: `${app.forum.attribute('apiUrl')}/package-manager/global-update`,
|
url: `${app.forum.attribute('apiUrl')}/package-manager/global-update`,
|
||||||
errorHandler,
|
errorHandler,
|
||||||
}).then(() => {
|
})
|
||||||
|
.then(() => {
|
||||||
app.alerts.show({ type: 'success' }, app.translator.trans('sycho-package-manager.admin.updater.global_update_successful'));
|
app.alerts.show({ type: 'success' }, app.translator.trans('sycho-package-manager.admin.updater.global_update_successful'));
|
||||||
window.location.reload();
|
window.location.reload();
|
||||||
}).finally(() => {
|
})
|
||||||
|
.finally(() => {
|
||||||
this.isLoading = null;
|
this.isLoading = null;
|
||||||
m.redraw();
|
m.redraw();
|
||||||
});
|
});
|
||||||
|
@@ -4,8 +4,8 @@ import Alert from 'flarum/common/components/Alert';
|
|||||||
import ExtensionPage from 'flarum/admin/components/ExtensionPage';
|
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 Installer from "./components/Installer";
|
import Installer from './components/Installer';
|
||||||
import Updater from "./components/Updater";
|
import Updater from './components/Updater';
|
||||||
import isExtensionEnabled from 'flarum/admin/utils/isExtensionEnabled';
|
import isExtensionEnabled from 'flarum/admin/utils/isExtensionEnabled';
|
||||||
|
|
||||||
app.initializers.add('sycho-package-manager', (app) => {
|
app.initializers.add('sycho-package-manager', (app) => {
|
||||||
@@ -15,23 +15,21 @@ app.initializers.add('sycho-package-manager', (app) => {
|
|||||||
if (!app.data.isRequiredDirectoriesWritable) {
|
if (!app.data.isRequiredDirectoriesWritable) {
|
||||||
return (
|
return (
|
||||||
<div className="Form-group">
|
<div className="Form-group">
|
||||||
<Alert type="warning" dismissible={false}>{app.translator.trans('sycho-package-manager.admin.file_permissions')}</Alert>
|
<Alert type="warning" dismissible={false}>
|
||||||
|
{app.translator.trans('sycho-package-manager.admin.file_permissions')}
|
||||||
|
</Alert>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.registerSetting(() => {
|
.registerSetting(() => {
|
||||||
if (app.data.isRequiredDirectoriesWritable) {
|
if (app.data.isRequiredDirectoriesWritable) {
|
||||||
return (
|
return <Installer />;
|
||||||
<Installer />
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.registerSetting(() => {
|
.registerSetting(() => {
|
||||||
if (app.data.isRequiredDirectoriesWritable) {
|
if (app.data.isRequiredDirectoriesWritable) {
|
||||||
return (
|
return <Updater />;
|
||||||
<Updater />
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -48,16 +46,20 @@ app.initializers.add('sycho-package-manager', (app) => {
|
|||||||
onclick={() => {
|
onclick={() => {
|
||||||
app.modal.show(LoadingModal);
|
app.modal.show(LoadingModal);
|
||||||
|
|
||||||
app.request({
|
app
|
||||||
|
.request({
|
||||||
url: `${app.forum.attribute('apiUrl')}/package-manager/extensions/${this.extension.id}`,
|
url: `${app.forum.attribute('apiUrl')}/package-manager/extensions/${this.extension.id}`,
|
||||||
method: 'DELETE',
|
method: 'DELETE',
|
||||||
}).then(() => {
|
})
|
||||||
|
.then(() => {
|
||||||
app.alerts.show({ type: 'success' }, app.translator.trans('sycho-package-manager.admin.extensions.successful_remove'));
|
app.alerts.show({ type: 'success' }, app.translator.trans('sycho-package-manager.admin.extensions.successful_remove'));
|
||||||
window.location = app.forum.attribute('adminUrl');
|
window.location = app.forum.attribute('adminUrl');
|
||||||
}).finally(() => {
|
})
|
||||||
|
.finally(() => {
|
||||||
app.modal.close();
|
app.modal.close();
|
||||||
});
|
});
|
||||||
}}>
|
}}
|
||||||
|
>
|
||||||
Remove
|
Remove
|
||||||
</Button>
|
</Button>
|
||||||
);
|
);
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
import app from "flarum/admin/app";
|
import app from 'flarum/admin/app';
|
||||||
import ComposerFailureModal from "../components/ComposerFailureModal";
|
import ComposerFailureModal from '../components/ComposerFailureModal';
|
||||||
|
|
||||||
export default function (e: any) {
|
export default function (e: any) {
|
||||||
const error = e.response.errors[0];
|
const error = e.response.errors[0];
|
||||||
|
Reference in New Issue
Block a user