# Autogenerated by nbdev

d = { 'settings': { 'branch': 'main',
                'doc_baseurl': '/fh-saas',
                'doc_host': 'https://abhisheksreesaila.github.io',
                'git_url': 'https://github.com/abhisheksreesaila/fh-saas',
                'lib_path': 'fh_saas'},
  'syms': { 'fh_saas.core': {'fh_saas.core.foo': ('core.html#foo', 'fh_saas/core.py')},
            'fh_saas.db_host': { 'fh_saas.db_host.GlobalUser': ('db_host.html#globaluser', 'fh_saas/db_host.py'),
                                 'fh_saas.db_host.HostAuditLog': ('db_host.html#hostauditlog', 'fh_saas/db_host.py'),
                                 'fh_saas.db_host.HostDatabase': ('db_host.html#hostdatabase', 'fh_saas/db_host.py'),
                                 'fh_saas.db_host.HostDatabase.__init__': ('db_host.html#hostdatabase.__init__', 'fh_saas/db_host.py'),
                                 'fh_saas.db_host.HostDatabase.__new__': ('db_host.html#hostdatabase.__new__', 'fh_saas/db_host.py'),
                                 'fh_saas.db_host.HostDatabase.commit': ('db_host.html#hostdatabase.commit', 'fh_saas/db_host.py'),
                                 'fh_saas.db_host.HostDatabase.from_env': ('db_host.html#hostdatabase.from_env', 'fh_saas/db_host.py'),
                                 'fh_saas.db_host.HostDatabase.reset_instance': ( 'db_host.html#hostdatabase.reset_instance',
                                                                                  'fh_saas/db_host.py'),
                                 'fh_saas.db_host.HostDatabase.rollback': ('db_host.html#hostdatabase.rollback', 'fh_saas/db_host.py'),
                                 'fh_saas.db_host.Membership': ('db_host.html#membership', 'fh_saas/db_host.py'),
                                 'fh_saas.db_host.Subscription': ('db_host.html#subscription', 'fh_saas/db_host.py'),
                                 'fh_saas.db_host.SystemJob': ('db_host.html#systemjob', 'fh_saas/db_host.py'),
                                 'fh_saas.db_host.TenantCatalog': ('db_host.html#tenantcatalog', 'fh_saas/db_host.py'),
                                 'fh_saas.db_host.gen_id': ('db_host.html#gen_id', 'fh_saas/db_host.py'),
                                 'fh_saas.db_host.timestamp': ('db_host.html#timestamp', 'fh_saas/db_host.py')},
            'fh_saas.db_tenant': { 'fh_saas.db_tenant.TenantPermission': ('db_tenant.html#tenantpermission', 'fh_saas/db_tenant.py'),
                                   'fh_saas.db_tenant.TenantSettings': ('db_tenant.html#tenantsettings', 'fh_saas/db_tenant.py'),
                                   'fh_saas.db_tenant.TenantUser': ('db_tenant.html#tenantuser', 'fh_saas/db_tenant.py'),
                                   'fh_saas.db_tenant.get_or_create_tenant_db': ( 'db_tenant.html#get_or_create_tenant_db',
                                                                                  'fh_saas/db_tenant.py'),
                                   'fh_saas.db_tenant.init_tenant_core_schema': ( 'db_tenant.html#init_tenant_core_schema',
                                                                                  'fh_saas/db_tenant.py')},
            'fh_saas.utils_api': { 'fh_saas.utils_api.AsyncAPIClient': ('utils_api.html#asyncapiclient', 'fh_saas/utils_api.py'),
                                   'fh_saas.utils_api.AsyncAPIClient.__aenter__': ( 'utils_api.html#asyncapiclient.__aenter__',
                                                                                    'fh_saas/utils_api.py'),
                                   'fh_saas.utils_api.AsyncAPIClient.__aexit__': ( 'utils_api.html#asyncapiclient.__aexit__',
                                                                                   'fh_saas/utils_api.py'),
                                   'fh_saas.utils_api.AsyncAPIClient.__init__': ( 'utils_api.html#asyncapiclient.__init__',
                                                                                  'fh_saas/utils_api.py'),
                                   'fh_saas.utils_api.AsyncAPIClient.get_json': ( 'utils_api.html#asyncapiclient.get_json',
                                                                                  'fh_saas/utils_api.py'),
                                   'fh_saas.utils_api.AsyncAPIClient.request': ( 'utils_api.html#asyncapiclient.request',
                                                                                 'fh_saas/utils_api.py'),
                                   'fh_saas.utils_api._should_retry_on_status': ( 'utils_api.html#_should_retry_on_status',
                                                                                  'fh_saas/utils_api.py'),
                                   'fh_saas.utils_api.api_key_auth': ('utils_api.html#api_key_auth', 'fh_saas/utils_api.py'),
                                   'fh_saas.utils_api.bearer_token_auth': ('utils_api.html#bearer_token_auth', 'fh_saas/utils_api.py'),
                                   'fh_saas.utils_api.oauth_token_auth': ('utils_api.html#oauth_token_auth', 'fh_saas/utils_api.py')},
            'fh_saas.utils_auth': { 'fh_saas.utils_auth.clear_session': ('utils_auth.html#clear_session', 'fh_saas/utils_auth.py'),
                                    'fh_saas.utils_auth.create_auth_beforeware': ( 'utils_auth.html#create_auth_beforeware',
                                                                                   'fh_saas/utils_auth.py'),
                                    'fh_saas.utils_auth.create_or_get_global_user': ( 'utils_auth.html#create_or_get_global_user',
                                                                                      'fh_saas/utils_auth.py'),
                                    'fh_saas.utils_auth.create_user_session': ( 'utils_auth.html#create_user_session',
                                                                                'fh_saas/utils_auth.py'),
                                    'fh_saas.utils_auth.generate_oauth_state': ( 'utils_auth.html#generate_oauth_state',
                                                                                 'fh_saas/utils_auth.py'),
                                    'fh_saas.utils_auth.get_current_user': ('utils_auth.html#get_current_user', 'fh_saas/utils_auth.py'),
                                    'fh_saas.utils_auth.get_google_oauth_client': ( 'utils_auth.html#get_google_oauth_client',
                                                                                    'fh_saas/utils_auth.py'),
                                    'fh_saas.utils_auth.get_user_membership': ( 'utils_auth.html#get_user_membership',
                                                                                'fh_saas/utils_auth.py'),
                                    'fh_saas.utils_auth.get_user_role': ('utils_auth.html#get_user_role', 'fh_saas/utils_auth.py'),
                                    'fh_saas.utils_auth.handle_login_request': ( 'utils_auth.html#handle_login_request',
                                                                                 'fh_saas/utils_auth.py'),
                                    'fh_saas.utils_auth.handle_logout': ('utils_auth.html#handle_logout', 'fh_saas/utils_auth.py'),
                                    'fh_saas.utils_auth.handle_oauth_callback': ( 'utils_auth.html#handle_oauth_callback',
                                                                                  'fh_saas/utils_auth.py'),
                                    'fh_saas.utils_auth.has_min_role': ('utils_auth.html#has_min_role', 'fh_saas/utils_auth.py'),
                                    'fh_saas.utils_auth.provision_new_user': ( 'utils_auth.html#provision_new_user',
                                                                               'fh_saas/utils_auth.py'),
                                    'fh_saas.utils_auth.require_role': ('utils_auth.html#require_role', 'fh_saas/utils_auth.py'),
                                    'fh_saas.utils_auth.require_tenant_access': ( 'utils_auth.html#require_tenant_access',
                                                                                  'fh_saas/utils_auth.py'),
                                    'fh_saas.utils_auth.route_user_after_login': ( 'utils_auth.html#route_user_after_login',
                                                                                   'fh_saas/utils_auth.py'),
                                    'fh_saas.utils_auth.verify_membership': ('utils_auth.html#verify_membership', 'fh_saas/utils_auth.py'),
                                    'fh_saas.utils_auth.verify_oauth_state': ( 'utils_auth.html#verify_oauth_state',
                                                                               'fh_saas/utils_auth.py')},
            'fh_saas.utils_bgtsk': { 'fh_saas.utils_bgtsk.BackgroundTaskManager': ( 'utils_bgtsk.html#backgroundtaskmanager',
                                                                                    'fh_saas/utils_bgtsk.py'),
                                     'fh_saas.utils_bgtsk.BackgroundTaskManager.__init__': ( 'utils_bgtsk.html#backgroundtaskmanager.__init__',
                                                                                             'fh_saas/utils_bgtsk.py'),
                                     'fh_saas.utils_bgtsk.BackgroundTaskManager._execute_with_retry': ( 'utils_bgtsk.html#backgroundtaskmanager._execute_with_retry',
                                                                                                        'fh_saas/utils_bgtsk.py'),
                                     'fh_saas.utils_bgtsk.BackgroundTaskManager._handle_failure': ( 'utils_bgtsk.html#backgroundtaskmanager._handle_failure',
                                                                                                    'fh_saas/utils_bgtsk.py'),
                                     'fh_saas.utils_bgtsk.BackgroundTaskManager.get_job': ( 'utils_bgtsk.html#backgroundtaskmanager.get_job',
                                                                                            'fh_saas/utils_bgtsk.py'),
                                     'fh_saas.utils_bgtsk.BackgroundTaskManager.list_jobs': ( 'utils_bgtsk.html#backgroundtaskmanager.list_jobs',
                                                                                              'fh_saas/utils_bgtsk.py'),
                                     'fh_saas.utils_bgtsk.BackgroundTaskManager.submit': ( 'utils_bgtsk.html#backgroundtaskmanager.submit',
                                                                                           'fh_saas/utils_bgtsk.py'),
                                     'fh_saas.utils_bgtsk.TenantJob': ('utils_bgtsk.html#tenantjob', 'fh_saas/utils_bgtsk.py')},
            'fh_saas.utils_blog': { 'fh_saas.utils_blog.MarkdownEngine': ('utils_blog.html#markdownengine', 'fh_saas/utils_blog.py'),
                                    'fh_saas.utils_blog.MarkdownEngine.__init__': ( 'utils_blog.html#markdownengine.__init__',
                                                                                    'fh_saas/utils_blog.py'),
                                    'fh_saas.utils_blog.MarkdownEngine.get_toc': ( 'utils_blog.html#markdownengine.get_toc',
                                                                                   'fh_saas/utils_blog.py'),
                                    'fh_saas.utils_blog.MarkdownEngine.render': ( 'utils_blog.html#markdownengine.render',
                                                                                  'fh_saas/utils_blog.py'),
                                    'fh_saas.utils_blog.PostLoader': ('utils_blog.html#postloader', 'fh_saas/utils_blog.py'),
                                    'fh_saas.utils_blog.PostLoader.__init__': ( 'utils_blog.html#postloader.__init__',
                                                                                'fh_saas/utils_blog.py'),
                                    'fh_saas.utils_blog.PostLoader.get_post': ( 'utils_blog.html#postloader.get_post',
                                                                                'fh_saas/utils_blog.py'),
                                    'fh_saas.utils_blog.PostLoader.load_posts': ( 'utils_blog.html#postloader.load_posts',
                                                                                  'fh_saas/utils_blog.py'),
                                    'fh_saas.utils_blog._generate_slug': ('utils_blog.html#_generate_slug', 'fh_saas/utils_blog.py'),
                                    'fh_saas.utils_blog._parse_date': ('utils_blog.html#_parse_date', 'fh_saas/utils_blog.py')},
            'fh_saas.utils_db': { 'fh_saas.utils_db.create_index': ('utils_db.html#create_index', 'fh_saas/utils_db.py'),
                                  'fh_saas.utils_db.create_indexes': ('utils_db.html#create_indexes', 'fh_saas/utils_db.py'),
                                  'fh_saas.utils_db.drop_index': ('utils_db.html#drop_index', 'fh_saas/utils_db.py'),
                                  'fh_saas.utils_db.drop_table': ('utils_db.html#drop_table', 'fh_saas/utils_db.py'),
                                  'fh_saas.utils_db.register_table': ('utils_db.html#register_table', 'fh_saas/utils_db.py'),
                                  'fh_saas.utils_db.register_tables': ('utils_db.html#register_tables', 'fh_saas/utils_db.py'),
                                  'fh_saas.utils_db.table_exists': ('utils_db.html#table_exists', 'fh_saas/utils_db.py')},
            'fh_saas.utils_email': { 'fh_saas.utils_email.get_smtp_config': ('utils_email.html#get_smtp_config', 'fh_saas/utils_email.py'),
                                     'fh_saas.utils_email.get_template_path': ( 'utils_email.html#get_template_path',
                                                                                'fh_saas/utils_email.py'),
                                     'fh_saas.utils_email.load_template': ('utils_email.html#load_template', 'fh_saas/utils_email.py'),
                                     'fh_saas.utils_email.send_batch_emails': ( 'utils_email.html#send_batch_emails',
                                                                                'fh_saas/utils_email.py'),
                                     'fh_saas.utils_email.send_email': ('utils_email.html#send_email', 'fh_saas/utils_email.py'),
                                     'fh_saas.utils_email.send_invitation_email': ( 'utils_email.html#send_invitation_email',
                                                                                    'fh_saas/utils_email.py'),
                                     'fh_saas.utils_email.send_password_reset_email': ( 'utils_email.html#send_password_reset_email',
                                                                                        'fh_saas/utils_email.py'),
                                     'fh_saas.utils_email.send_welcome_email': ( 'utils_email.html#send_welcome_email',
                                                                                 'fh_saas/utils_email.py')},
            'fh_saas.utils_graphql': { 'fh_saas.utils_graphql.GraphQLClient': ( 'utils_graphql.html#graphqlclient',
                                                                                'fh_saas/utils_graphql.py'),
                                       'fh_saas.utils_graphql.GraphQLClient.__init__': ( 'utils_graphql.html#graphqlclient.__init__',
                                                                                         'fh_saas/utils_graphql.py'),
                                       'fh_saas.utils_graphql.GraphQLClient._get_nested_value': ( 'utils_graphql.html#graphqlclient._get_nested_value',
                                                                                                  'fh_saas/utils_graphql.py'),
                                       'fh_saas.utils_graphql.GraphQLClient.execute_mutation': ( 'utils_graphql.html#graphqlclient.execute_mutation',
                                                                                                 'fh_saas/utils_graphql.py'),
                                       'fh_saas.utils_graphql.GraphQLClient.execute_query': ( 'utils_graphql.html#graphqlclient.execute_query',
                                                                                              'fh_saas/utils_graphql.py'),
                                       'fh_saas.utils_graphql.GraphQLClient.fetch_pages_generator': ( 'utils_graphql.html#graphqlclient.fetch_pages_generator',
                                                                                                      'fh_saas/utils_graphql.py')},
            'fh_saas.utils_log': {'fh_saas.utils_log.configure_logging': ('utils_log.html#configure_logging', 'fh_saas/utils_log.py')},
            'fh_saas.utils_polars_mapper': { 'fh_saas.utils_polars_mapper.apply_schema': ( 'utils_polars_mapper.html#apply_schema',
                                                                                           'fh_saas/utils_polars_mapper.py'),
                                             'fh_saas.utils_polars_mapper.map_and_upsert': ( 'utils_polars_mapper.html#map_and_upsert',
                                                                                             'fh_saas/utils_polars_mapper.py')},
            'fh_saas.utils_seo': { 'fh_saas.utils_seo.generate_head_tags': ('utils_seo.html#generate_head_tags', 'fh_saas/utils_seo.py'),
                                   'fh_saas.utils_seo.generate_rss_xml': ('utils_seo.html#generate_rss_xml', 'fh_saas/utils_seo.py'),
                                   'fh_saas.utils_seo.generate_sitemap_xml': ( 'utils_seo.html#generate_sitemap_xml',
                                                                               'fh_saas/utils_seo.py')},
            'fh_saas.utils_sql': { 'fh_saas.utils_sql._extract_params': ('utils_sql.html#_extract_params', 'fh_saas/utils_sql.py'),
                                   'fh_saas.utils_sql.batch_execute': ('utils_sql.html#batch_execute', 'fh_saas/utils_sql.py'),
                                   'fh_saas.utils_sql.bulk_delete': ('utils_sql.html#bulk_delete', 'fh_saas/utils_sql.py'),
                                   'fh_saas.utils_sql.bulk_insert_only': ('utils_sql.html#bulk_insert_only', 'fh_saas/utils_sql.py'),
                                   'fh_saas.utils_sql.bulk_upsert': ('utils_sql.html#bulk_upsert', 'fh_saas/utils_sql.py'),
                                   'fh_saas.utils_sql.delete_record': ('utils_sql.html#delete_record', 'fh_saas/utils_sql.py'),
                                   'fh_saas.utils_sql.from_cents': ('utils_sql.html#from_cents', 'fh_saas/utils_sql.py'),
                                   'fh_saas.utils_sql.get_by_id': ('utils_sql.html#get_by_id', 'fh_saas/utils_sql.py'),
                                   'fh_saas.utils_sql.get_db_type': ('utils_sql.html#get_db_type', 'fh_saas/utils_sql.py'),
                                   'fh_saas.utils_sql.insert_only': ('utils_sql.html#insert_only', 'fh_saas/utils_sql.py'),
                                   'fh_saas.utils_sql.paginate_sql': ('utils_sql.html#paginate_sql', 'fh_saas/utils_sql.py'),
                                   'fh_saas.utils_sql.run_id': ('utils_sql.html#run_id', 'fh_saas/utils_sql.py'),
                                   'fh_saas.utils_sql.to_cents': ('utils_sql.html#to_cents', 'fh_saas/utils_sql.py'),
                                   'fh_saas.utils_sql.update_record': ('utils_sql.html#update_record', 'fh_saas/utils_sql.py'),
                                   'fh_saas.utils_sql.upsert': ('utils_sql.html#upsert', 'fh_saas/utils_sql.py'),
                                   'fh_saas.utils_sql.validate_params': ('utils_sql.html#validate_params', 'fh_saas/utils_sql.py'),
                                   'fh_saas.utils_sql.with_transaction': ('utils_sql.html#with_transaction', 'fh_saas/utils_sql.py')},
            'fh_saas.utils_sync': { 'fh_saas.utils_sync.sync_external_data': ( 'utils_sync.html#sync_external_data',
                                                                               'fh_saas/utils_sync.py'),
                                    'fh_saas.utils_sync.sync_incremental': ('utils_sync.html#sync_incremental', 'fh_saas/utils_sync.py')},
            'fh_saas.utils_webhook': { 'fh_saas.utils_webhook.check_idempotency': ( 'utils_webhook.html#check_idempotency',
                                                                                    'fh_saas/utils_webhook.py'),
                                       'fh_saas.utils_webhook.handle_webhook_request': ( 'utils_webhook.html#handle_webhook_request',
                                                                                         'fh_saas/utils_webhook.py'),
                                       'fh_saas.utils_webhook.log_webhook_event': ( 'utils_webhook.html#log_webhook_event',
                                                                                    'fh_saas/utils_webhook.py'),
                                       'fh_saas.utils_webhook.process_webhook': ( 'utils_webhook.html#process_webhook',
                                                                                  'fh_saas/utils_webhook.py'),
                                       'fh_saas.utils_webhook.update_webhook_status': ( 'utils_webhook.html#update_webhook_status',
                                                                                        'fh_saas/utils_webhook.py'),
                                       'fh_saas.utils_webhook.verify_webhook_signature': ( 'utils_webhook.html#verify_webhook_signature',
                                                                                           'fh_saas/utils_webhook.py')},
            'fh_saas.utils_workflow': { 'fh_saas.utils_workflow.Workflow': ('utils_workflow.html#workflow', 'fh_saas/utils_workflow.py'),
                                        'fh_saas.utils_workflow.Workflow.__init__': ( 'utils_workflow.html#workflow.__init__',
                                                                                      'fh_saas/utils_workflow.py'),
                                        'fh_saas.utils_workflow.Workflow.execute': ( 'utils_workflow.html#workflow.execute',
                                                                                     'fh_saas/utils_workflow.py')}}}
