mirror of
https://github.com/outline/outline.git
synced 2026-02-06 02:38:53 -06:00
* fix: Store Linear workspace logo in Outline * use async task * Move task into plugin --------- Co-authored-by: Tom Moor <tom@getoutline.com>
33 lines
818 B
TypeScript
33 lines
818 B
TypeScript
import { Minute } from "@shared/utils/time";
|
|
import { Hook, PluginManager } from "@server/utils/PluginManager";
|
|
import config from "../plugin.json";
|
|
import router from "./api/linear";
|
|
import env from "./env";
|
|
import { Linear } from "./linear";
|
|
import UploadLinearWorkspaceLogoTask from "./tasks/UploadLinearWorkspaceLogoTask";
|
|
import { uninstall } from "./uninstall";
|
|
|
|
const enabled = !!env.LINEAR_CLIENT_ID && !!env.LINEAR_CLIENT_SECRET;
|
|
|
|
if (enabled) {
|
|
PluginManager.add([
|
|
{
|
|
...config,
|
|
type: Hook.API,
|
|
value: router,
|
|
},
|
|
{
|
|
type: Hook.Task,
|
|
value: UploadLinearWorkspaceLogoTask,
|
|
},
|
|
{
|
|
type: Hook.UnfurlProvider,
|
|
value: { unfurl: Linear.unfurl, cacheExpiry: Minute.seconds },
|
|
},
|
|
{
|
|
type: Hook.Uninstall,
|
|
value: uninstall,
|
|
},
|
|
]);
|
|
}
|