import typing from .secret import secret from .secret import secret_builder class secret_response: def __init__(self, target: secret | secret_builder) -> None: if isinstance(target, secret): self.__target = target return self.__target = target.result @property def response(self) -> dict: return { "name": self.target.name, "domain": self.target.domain, "coded" : self.target.coded } @property def target(self) -> secret: return self.__target @property def builder(self) -> secret_builder: return secret_builder(self.__target) class secret_collection_response: def __init__(self, target: typing.Iterable[secret] | None = None) -> None: self.__collection = [] if target is None: return if type(target) is list: self.__collection = target.copy() return for count in target: self.__collection.append(count) @property def response(self) -> dict: return [ secret_response(count).response for count in self.collection ] @property def collection(self) -> list: return self.__collection.copy() def append(self, target: secret | secret_builder) -> object: if isinstance(target, secret_builder): target = target.result self.__collection.append(target) return self