with open(r'd:\deskwork\L-GraduationThesis\MediCompanions\public\Static\vant.min.js', 'r', encoding='utf-8') as f:
    c = f.read()

# Ie("tabbar") returns [Mp, Fp, ?]
# Mp is the component name string
# Let's find where Mp is defined
idx = c.find('Ie("tabbar")')
# The destructuring is [Mp,Fp]=Ie("tabbar")
# So Mp = "van-tabbar" (from Ie function: const t=`van-${e}`)
print('Context around Ie("tabbar"):')
print(repr(c[max(0,idx-30):idx+30]))

# Ie function creates: const t = `van-${e}`, so Mp = "van-tabbar"
# Then name:Mp means the component name is "van-tabbar"
# install registers: t.component("van-tabbar", component) and t.component(be("-van-tabbar"), component)
# be("-van-tabbar") = converts to PascalCase = "VanTabbar" ?

# Let's verify be function more carefully
idx2 = c.find('be=e=>e.replace(ge')
if idx2 > 0:
    print('\nbe function context:')
    print(repr(c[max(0,idx2-100):idx2+100]))

# Find ge (the regex)
idx3 = c.find('const ge=')
if idx3 < 0:
    idx3 = c.find('ge=')
if idx3 > 0:
    print('\nge definition:')
    # Be careful - ge might not be the right one due to minification
    print(repr(c[max(0,idx3-20):idx3+100]))
