4dZddlmZddlmZddlZdZdZdZdZd Z d Z d Z ej ej e e d Zd Zej ej eedZdZej ejeedS)zpylint_flask module)MANAGER)nodesNcdS)zpregister is expected by pylint for plugins, but we are creating a transform, not registering a checker. N)_s g/builddir/build/BUILD/cloudlinux-venv-1.0.10/venv/lib/python3.11/site-packages/pylint_flask/__init__.pyregisterr s  Dc ndD]1}t||rt||t||2dS)zCopy information from src to dest Every node in the AST has to have line number information. Get the information from the old stmt.)lineno fromlinenotolineno col_offsetparentN)hasattrsetattrgetattr)srcdestattrs rcopy_node_inforsL )44 3   4 D$T 2 2 3 3 344r cd|_dS)zAMark a node as transformed so we don't process it multiple times.TN)pylint_flask_was_transformednodes rmark_transformedrs(,D%%%r c$t|ddS)z.Return True if `node` was already transformed.rF)rrs ris_transformedrs 47 ? ??r ctjd|}|td|d}d|}|S)z+Convert a flask.ext.admin into flask_admin.flask\.ext\.(.*)Nz7Module name `{}` doesn't match`flask.ext` style import.flask_{})rematch LookupErrorgroupformat)flask_ext_namer$ from_nameactual_module_names rmake_non_magical_flask_importr+$sY H(. 9 9E }677 7 AI#**955 r cg}|jD]3\}}d|}|||p|f4tj}t ||||_t ||S)zTranslates a flask.ext from-style import into a non-magical import. Translates: from flask.ext import wtf, bcrypt as fcrypt Into: import flask_wtf as wtf, flask_bcrypt as fcrypt r")namesr'appendrImportrr)r new_namesnameas_namer*new_nodes rtransform_flask_from_importr4/sI :@@w'..t44,go>????|~~H4"""HNX Or c8t| o |jdkS)z3Predicate for checking if we have the flask module. flask.ext)rmodnamers ris_flask_from_importr8Js!d## # C (CCr ct|j}tj||j|j}t ||t||S)a"Translates a flask.ext.wtf from-style import into a non-magical import. Translates: from flask.ext.wtf import Form from flask.ext.admin.model import InlineFormAdmin Into: from flask_wtf import Form from flask_admin.model import InlineFormAdmin )r+r7r ImportFromr-levelrr)rr*r3s rtransform_flask_from_longr<TsP7t|DD 2DJ KKH4"""X Or cVt| o|jdS)zz(is_flask_bare_import..s!???DQ'???r )ranyr-rs ris_flask_bare_importrHs8t$$ $ A ??DJ??? @ @Br )__doc__astroidrrr#r rrrr+r4r8register_transformr:r<r?rArHr/rr rrLs^    444--- @@@ 6DDD 5+6/111 $NNN 5+44666 .BBB 5<6/11111r