mirror of
https://github.com/ArchiveBox/ArchiveBox
synced 2024-11-22 20:23:12 +00:00
50 lines
1.5 KiB
Python
50 lines
1.5 KiB
Python
__package__ = 'archivebox.plugantic'
|
|
|
|
|
|
# import uuid
|
|
# from django.db import models
|
|
# from typing_extensions import Self
|
|
|
|
# from django_pydantic_field import SchemaField
|
|
# from django.conf import settings
|
|
|
|
# from abid_utils.models import ABIDModel, ABIDField
|
|
|
|
# # from .plugins import Plugin as PluginSchema, CORE_PLUGIN
|
|
# from .binproviders import BinProvider
|
|
# from .binaries import Binary
|
|
# from .configs import WgetOptionsConfig
|
|
# from .extractors import Extractor
|
|
# from .replayers import Replayer
|
|
|
|
|
|
# PLUGINS_ROOT = settings.CONFIG['OUTPUT_DIR'] / 'plugins'
|
|
# PLUGINS_ROOT.mkdir(exist_ok=True)
|
|
|
|
|
|
# class CustomPlugin(ABIDModel):
|
|
# abid_prefix = 'plg_'
|
|
# abid_ts_src = 'self.added'
|
|
# abid_uri_src = 'self.name'
|
|
# abid_subtype_src = '"09"'
|
|
# abid_rand_src = 'self.id'
|
|
|
|
# id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False) # legacy pk
|
|
# uuid = models.UUIDField(blank=True, null=True, editable=True, unique=True)
|
|
# abid = ABIDField(prefix=abid_prefix)
|
|
|
|
# name = models.CharField(max_length=64, blank=False, unique=True)
|
|
|
|
# path = models.FilePathField(path=str(PLUGINS_ROOT), match='*', recursive=True, allow_folders=True, allow_files=False)
|
|
|
|
# # replayers: list[Replayer] = SchemaField()
|
|
# # binaries: list[Replayer] = SchemaField()
|
|
# # extractors: list[Replayer] = SchemaField()
|
|
|
|
|
|
# # @classmethod
|
|
# # def from_loaded_plugin(cls, plugin: PluginSchema) -> Self:
|
|
# # new_obj = cls(
|
|
# # schema=plugin,
|
|
# # )
|
|
# # return new_obj
|