bg `dZddlZddlmZmZddlmZddlmZGddej Z dS)z/ Various suggestions about JSON http responses N)checkers interfaces)utils)BASE_IDceZdZdZejfZdZdedddedddedd iZ e j d d d d Z dS)JsonResponseCheckerz` Looks for some common patterns when returning http responses containing JSON data! zjson-response-checkerR01)z@Instead of HttpResponse(json.dumps(data)) use JsonResponse(data)http-response-with-json-dumpsz@Used when json.dumps() is used as an argument to HttpResponse().02)zKInstead of HttpResponse(content_type='application/json') use JsonResponse()$http-response-with-content-type-jsonz7Used when HttpResponse() is returning application/json.03)z3Redundant content_type parameter for JsonResponse()(redundant-content-type-for-json-responsezUsed when JsonResponse() contains content_type parameter. This is either redundant or the content_type is not JSON which is probably an error.r r rcF|jdrk|jrdt |jdt jr?|jdjdkr|d||jdrw|jrp|jD]h}|j dkr[|j  ddkr|d |ni|jd r6|jr1|jD]+}|j dkr|d |dS(dSdSdS) N HttpResponserz json.dumpsr )node content_typezapplication/jsonr JsonResponser) func as_stringendswithargs isinstanceastroidCall add_messagekeywordsargvaluelowerfind)selfrkeywords u/builddir/build/BUILD/cloudlinux-venv-1.0.7/venv/lib/python3.11/site-packages/pylint_django/checkers/json_response.py visit_callzJsonResponseChecker.visit_call.s I   ! ! * *> : : I  I49Q<66 I ! !++--==   <4  H H H 9   ) ). 9 9 dm =  ;.00W]5L5L5N5N5T5T5V5V5[5[\n5o5ort5t5t$$%KRV$WWWE 9   ) ). 9 9 dm =  ;.00$$%OVZ$[[[EE1      N) __name__ __module__ __qualname____doc__rIAstroidChecker__implements__namermsgsrcheck_messagesr&r'r%rrs !02N #DG G G  D(U'.2   r'r) r+rpylintrrpylint.checkersrpylint_django.__pkginfo__r BaseCheckerrr1r'r%r6s ''''''''!!!!!!------66666(.66666r'