bgNdZddlmZddlZddlmZer0ddlmZddlm Z ddlm Z ddlm Z dd lm Z dd lm Z dd lmZdd lmZ dd lmZn#e$r dd lmZYnwxYwdZGddeZeZdS)zZ Copied from raven-python. Used for `DjangoIntegration(transaction_fron="raven_legacy")`. )absolute_importN) TYPE_CHECKING) URLResolver)Dict)List)Optional) URLPattern)Tuple)Union)Pattern) get_resolvercP |j}n#t$r|jj}YnwxYw|S)z5Utility method for django's deprecated resolver.regex)regexAttributeErrorpattern)resolver_or_patternrs |/builddir/build/BUILD/cloudlinux-venv-1.0.7/venv/lib/python3.11/site-packages/sentry_sdk/integrations/django/transactions.py get_regexrs@2#) 222#+12 Ls  ##ceZdZejdZejdZejdZejdZejdZ iZ dZ d dZ d d Z dS) RavenResolverz\(\?\:([^\)]+)\)z\(\?P<(\w+)>.*\)z \([^\)]+\)z\[([^\]]+)\|([^\]]+)\]z([A-Z]+)([a-z])c|jd|}|jd|}|jd|}|jd|}|ddddddd dd dd d d d}|S)z Clean up urlpattern regexes into something readable by humans: From: > "^(?P\w+)/athletes/(?P\w+)/$" To: > "{sport_slug}/athletes/{athlete_slug}/" c2d|dzS)Nz%sgroupms rz)RavenResolver._simplify..?sD1771::.Bs!''!**9Lrz{var}c,|dS)Nrrrs rrz)RavenResolver._simplify..Hs1771::r^$?z\Az\Zz///\)_optional_group_matchersub_named_group_matcher_non_named_group_matcher_either_option_matcherreplace)selfrresults r _simplifyzRavenResolver._simplify0s-112M2MwWW*../L/LfUU.227FCC,001E1EvNN NN3 # # WS"   WS"   WUB   WUB   WT3   WT2    rNctt||}|sdS||g}n ||vr||gz}||d}|jD]}|js|||}|r|cS't||sJ j|cS#t$rYnwxYwdfd|D}| t|j z} | dsd| z} | j|<| cSdS)Nr#c3fK|]+}t|jV,dSN)r0rr).0pr.s r z)RavenResolver._resolve..ts8SSaT^^IaLL,@AASSSSSSrr&) rsearchend url_patternscallback_resolve_cacheKeyErrorjoinr0r startswith) r.resolverpathparentsmatchnew_pathrmatch_prefixr/s ` rr;zRavenResolver._resolveWs(##**400 4 ?jGG W $ $ *G &,  G# w'BB"!MMMw''..x88  {7++++    WWSSSS7SSSSSFdnnYw-?-?-GHHHF$$S)) &v#)DK MMMts& B55 CCcPt|}|||}|Sr3)r r;)r.rAurlconfr@rCs rresolvezRavenResolver.resolve}s)  (( h-- rr3)__name__ __module__ __qualname__recompiler(r*r+r, _camel_rer<r0r;rIrrrr&s(bj)<==%2:&9::)rz-88'RZ(ABB -..I F%%%N$$$$Rrr)__doc__ __future__rrMsentry_sdk._typesrdjango.urls.resolversrtypingrrrr r r r django.urlsr ImportErrordjango.core.urlresolversrobjectrLEGACY_RESOLVERrPrrr[sv '&&&&& ++++++1111110000006(((((((666555555556_____F___D -//sA AA