> Version 0.6 brings DashMachine one big step forward to being a finished product by adding a gui to edit the various settings in the config.ini. **Changelog** - improvements to /home including 'pinned' cards, multi-select tag filtering, 'action providers' allowing you to do web searches from the searchbar - rebuilt sidenav with list view, mirroring filter/search/collapse state of the homepage - /settings and /home now on same route - dynamic reloading of settings (no more page reloads) - dedicated config.ini editor slide-out - settings editor slide-out - card editor slide-out - better access group control - dedicated documentation pages - improved documentation - new system for automatically generating documentation for platforms - ability to load custom platforms - added an 'on_starup' method for platforms allowing for registering api routes. (example coming soon)
66 lines
2.0 KiB
Python
66 lines
2.0 KiB
Python
from dashmachine import db
|
|
|
|
rel_app_data_source = db.Table(
|
|
"rel_app_data_source",
|
|
db.Column("data_source_id", db.Integer, db.ForeignKey("data_sources.id")),
|
|
db.Column("app_id", db.Integer, db.ForeignKey("apps.id")),
|
|
)
|
|
|
|
rel_apps_tags = db.Table(
|
|
"rel_apps_tags",
|
|
db.Column("tag_id", db.Integer, db.ForeignKey("tags.id")),
|
|
db.Column("app_id", db.Integer, db.ForeignKey("apps.id")),
|
|
)
|
|
|
|
|
|
class Files(db.Model):
|
|
id = db.Column(db.Integer, primary_key=True)
|
|
name = db.Column(db.String())
|
|
path = db.Column(db.String())
|
|
external_path = db.Column(db.String())
|
|
cache = db.Column(db.String())
|
|
folder = db.Column(db.String())
|
|
|
|
|
|
class Apps(db.Model):
|
|
id = db.Column(db.Integer, primary_key=True)
|
|
name = db.Column(db.String())
|
|
prefix = db.Column(db.String())
|
|
url = db.Column(db.String())
|
|
icon = db.Column(db.String())
|
|
sidebar_icon = db.Column(db.String())
|
|
description = db.Column(db.String())
|
|
open_in = db.Column(db.String())
|
|
data_template = db.Column(db.String())
|
|
type = db.Column(db.String())
|
|
urls = db.Column(db.String())
|
|
|
|
|
|
class DataSources(db.Model):
|
|
id = db.Column(db.Integer, primary_key=True)
|
|
name = db.Column(db.String())
|
|
platform = db.Column(db.String())
|
|
args = db.relationship("DataSourcesArgs", backref="data_source")
|
|
apps = db.relationship(
|
|
"Apps",
|
|
secondary=rel_app_data_source,
|
|
backref=db.backref("data_sources", lazy="dynamic"),
|
|
)
|
|
|
|
|
|
class DataSourcesArgs(db.Model):
|
|
id = db.Column(db.Integer, primary_key=True)
|
|
key = db.Column(db.String())
|
|
value = db.Column(db.String())
|
|
data_source_id = db.Column(db.Integer, db.ForeignKey("data_sources.id"))
|
|
|
|
|
|
class Tags(db.Model):
|
|
id = db.Column(db.Integer, primary_key=True)
|
|
name = db.Column(db.String())
|
|
icon = db.Column(db.String())
|
|
sort_pos = db.Column(db.Integer)
|
|
apps = db.relationship(
|
|
"Apps", secondary=rel_apps_tags, backref=db.backref("tags", lazy="dynamic"),
|
|
)
|