# -*- coding: utf-8 -*- __author__ = 'gzp' from typing import Optional from jinja2 import Environment, PackageLoader from urllib.parse import urlunparse from rimuru.utils.jinja2 import filters from rimuru.core.doc_generator import (MarkdownGenerator) from .base import APIDocWorkshop template_env = Environment(loader=PackageLoader('rimuru', 'templates')) template_env.cache = None template_env.filters[ 'success_responses_filter'] = filters.success_responses_filter template_env.filters['error_responses_filter'] = filters.error_responses_filter class MarkdownWorkShop(APIDocWorkshop): generator_class = MarkdownGenerator template = 'zh_hans_doc.md' template_env = template_env def __init__(self, *args, template: Optional[str] = None, template_env: Optional[Environment] = None, **kwargs):
# -*- coding: utf-8 -*- __author__ = 'gzp' import os import inspect import re from jinja2 import Environment, PackageLoader from rimuru.definitions import (Header, Param, Response, type_mapper) from rimuru.utils.jinja2 import filters from rimuru.utils.handlers import (decode_utf8, json_body_handler) env = Environment(loader=PackageLoader('rimuru', 'templates')) env.cache = None env.filters['success_responses_filter'] = filters.success_responses_filter env.filters['error_responses_filter'] = filters.error_responses_filter class APIDocumentGenerator(object): template = 'zh_hans_doc.md' env = env header_class = Header param_class = Param response_class = Response type_mapper = type_mapper response_body_handlers = ( ('text/html', decode_utf8, 'html'),
return self.instance().iteritems(*args, **kwargs) def values(self, *args, **kwargs): return self.instance().values(*args, **kwargs) def itervalue(self, *args, **kwargs): return self.instance().itervalue(*args, **kwargs) def keys(self, *args, **kwargs): return self.instance().keys(*args, **kwargs) def iterkeys(self, *args, **kwargs): return self.instance().iterkeys(*args, **kwargs) def __reversed__(self, *args, **kwargs): return self.instance().__reversed__(*args, **kwargs) def __iter__(self, *args, **kwargs): return self.instance().__iter__(*args, **kwargs) def __copy__(self, *args, **kwargs): return self.instance().__copy__(*args, **kwargs) jinja_env.cache = LruCachePerCwd(250) def template(location: Union[str, Path]) -> Template: """A shorthand for loading a Jinja2 template from the current working directory.""" return jinja_env.get_template(str(location))