Page Menu
Home
Sealhub
Search
Configure Global Search
Log In
Files
F10360635
app.ts
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
2 KB
Referenced Files
None
Subscribers
None
app.ts
View Options
import
_locreq
from
"locreq"
;
import
type
{
Context
}
from
"koa"
;
import
type
{
FlatTemplatable
}
from
"tempstream"
;
import
type
{
Context
as
SealiousContext
}
from
"sealious"
;
import
{
App
,
LoggerMailer
,
SMTPMailer
}
from
"sealious"
;
import
type
{
LoggerLevel
}
from
"sealious/@types/src/app/logger.js"
;
import
{
collections
}
from
"./collections/collections.js"
;
import
{
BASE_URL
,
MAILCATCHER_HOST
,
MAILCATCHER_SMTP_PORT
,
MAILER
,
MONGO_HOST
,
MONGO_PASSWORD
,
MONGO_PORT
,
MONGO_USERNAME
,
PORT
,
UPLOADS_FS_DIR
,
}
from
"./config.js"
;
import
ADMIN_CREDENTIALS
from
"./default-admin-credentials.js"
;
import
{
TheFileManager
}
from
"./file-manager.js"
;
const
locreq
=
_locreq
(
import
.
meta
.
dirname
);
declare
module
"koa"
{
interface
BaseContext
{
$context
:
SealiousContext
;
$app
:
TheApp
;
$body
:
Record
<
string
,
unknown
>
;
params
:
Record
<
string
,
string
|
undefined
>
;
}
}
declare
module
"@sealcode/sealgen"
{
interface
HTMLOptions
{
preserveScroll
?:
boolean
;
morphing
?:
boolean
;
navbar
?:
(
ctx
:
Context
)
=>
FlatTemplatable
;
autoRefreshCSS
?:
boolean
;
disableCopyEvent
?:
boolean
;
language
?:
string
;
showBanner
?:
boolean
;
canHaveStreams
?:
boolean
;
animateTitle
?:
boolean
;
bodyClasses
?:
string
[];
showFooter
:
boolean
;
showBottomNavbar
:
boolean
;
loadHamburgerMenu
:
boolean
;
loadSearchModal
:
boolean
;
}
}
export
default
class
TheApp
extends
App
{
FileManager
=
TheFileManager
;
config
=
{
upload_path
:
UPLOADS_FS_DIR
,
datastore_mongo
:
{
host
:
MONGO_HOST
,
port
:
MONGO_PORT
,
username
:
MONGO_USERNAME
,
password
:
MONGO_PASSWORD
,
db_name
:
"configurable-rewriter"
,
},
email
:
{
from_address
:
"sealious-app@example.com"
,
from_name
:
"sealious-app app"
,
},
logger
:
{
// eslint-disable-next-line @typescript-eslint/consistent-type-assertions
level
:
"info"
as
LoggerLevel
,
},
"www-server"
:
{
port
:
PORT
,
},
core
:
{
environment
:
<
const
>
"production"
,
// to send the full html emails
},
};
manifest
=
{
name
:
"Configurable HTML Rewriter"
,
logo
:
locreq
.
resolve
(
"assets/logo.png"
),
version
:
"0.0.1"
,
default_language
:
"en"
,
base_url
:
BASE_URL
,
admin_email
:
ADMIN_CREDENTIALS
.
email
,
colors
:
{
primary
:
"#5294a1"
,
},
};
collections
=
collections
;
mailer
=
MAILER
===
"mailcatcher"
?
new
SMTPMailer
({
host
:
MAILCATCHER_HOST
,
port
:
MAILCATCHER_SMTP_PORT
,
user
:
"any"
,
password
:
"any"
,
})
:
new
LoggerMailer
();
async
start
()
{
await
super
.
start
();
}
async
stop
()
{
await
super
.
stop
();
}
}
File Metadata
Details
Attached
Mime Type
text/x-java
Expires
Sat, Nov 8, 08:08 (1 d, 8 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
1034309
Default Alt Text
app.ts (2 KB)
Attached To
Mode
rAPROXY Assetproxy
Attached
Detach File
Event Timeline
Log In to Comment