@arcgis/core 4.26.0-next.20221219 → 4.26.0-next.20221221
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/components/assets/action/t9n/index.d.ts +4 -0
- package/assets/components/assets/action/t9n/messages.json +4 -0
- package/assets/components/assets/action/t9n/messages_ar.json +3 -0
- package/assets/components/assets/action/t9n/messages_bg.json +3 -0
- package/assets/components/assets/action/t9n/messages_bs.json +3 -0
- package/assets/components/assets/action/t9n/messages_ca.json +3 -0
- package/assets/components/assets/action/t9n/messages_cs.json +3 -0
- package/assets/components/assets/action/t9n/messages_da.json +3 -0
- package/assets/components/assets/action/t9n/messages_de.json +3 -0
- package/assets/components/assets/action/t9n/messages_el.json +3 -0
- package/assets/components/assets/action/t9n/messages_en.json +4 -0
- package/assets/components/assets/action/t9n/messages_es.json +3 -0
- package/assets/components/assets/action/t9n/messages_et.json +3 -0
- package/assets/components/assets/action/t9n/messages_fi.json +3 -0
- package/assets/components/assets/action/t9n/messages_fr.json +3 -0
- package/assets/components/assets/action/t9n/messages_he.json +3 -0
- package/assets/components/assets/action/t9n/messages_hr.json +3 -0
- package/assets/components/assets/action/t9n/messages_hu.json +3 -0
- package/assets/components/assets/action/t9n/messages_id.json +3 -0
- package/assets/components/assets/action/t9n/messages_it.json +3 -0
- package/assets/components/assets/action/t9n/messages_ja.json +3 -0
- package/assets/components/assets/action/t9n/messages_ko.json +3 -0
- package/assets/components/assets/action/t9n/messages_lt.json +3 -0
- package/assets/components/assets/action/t9n/messages_lv.json +3 -0
- package/assets/components/assets/action/t9n/messages_nl.json +3 -0
- package/assets/components/assets/action/t9n/messages_no.json +3 -0
- package/assets/components/assets/action/t9n/messages_pl.json +3 -0
- package/assets/components/assets/action/t9n/messages_pt-BR.json +3 -0
- package/assets/components/assets/action/t9n/messages_pt-PT.json +3 -0
- package/assets/components/assets/action/t9n/messages_ro.json +3 -0
- package/assets/components/assets/action/t9n/messages_ru.json +3 -0
- package/assets/components/assets/action/t9n/messages_sk.json +3 -0
- package/assets/components/assets/action/t9n/messages_sl.json +3 -0
- package/assets/components/assets/action/t9n/messages_sr.json +3 -0
- package/assets/components/assets/action/t9n/messages_sv.json +3 -0
- package/assets/components/assets/action/t9n/messages_th.json +3 -0
- package/assets/components/assets/action/t9n/messages_tr.json +3 -0
- package/assets/components/assets/action/t9n/messages_uk.json +3 -0
- package/assets/components/assets/action/t9n/messages_vi.json +3 -0
- package/assets/components/assets/action/t9n/messages_zh-CN.json +3 -0
- package/assets/components/assets/action/t9n/messages_zh-HK.json +3 -0
- package/assets/components/assets/action/t9n/messages_zh-TW.json +3 -0
- package/assets/components/assets/action-bar/t9n/index.d.ts +4 -0
- package/assets/components/assets/action-bar/t9n/messages.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_ar.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_bg.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_bs.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_ca.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_cs.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_da.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_de.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_el.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_en.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_es.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_et.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_fi.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_fr.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_he.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_hr.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_hu.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_id.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_it.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_ja.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_ko.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_lt.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_lv.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_nl.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_no.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_pl.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_pt-BR.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_pt-PT.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_ro.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_ru.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_sk.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_sl.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_sr.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_sv.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_th.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_tr.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_uk.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_vi.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_zh-CN.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_zh-HK.json +4 -0
- package/assets/components/assets/action-bar/t9n/messages_zh-TW.json +4 -0
- package/assets/components/assets/action-group/t9n/index.d.ts +3 -0
- package/assets/components/assets/action-group/t9n/messages.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_ar.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_bg.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_bs.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_ca.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_cs.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_da.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_de.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_el.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_en.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_es.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_et.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_fi.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_fr.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_he.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_hr.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_hu.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_id.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_it.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_ja.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_ko.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_lt.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_lv.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_nl.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_no.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_pl.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_pt-BR.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_pt-PT.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_ro.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_ru.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_sk.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_sl.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_sr.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_sv.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_th.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_tr.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_uk.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_vi.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_zh-CN.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_zh-HK.json +3 -0
- package/assets/components/assets/action-group/t9n/messages_zh-TW.json +3 -0
- package/assets/components/assets/action-pad/t9n/index.d.ts +4 -0
- package/assets/components/assets/action-pad/t9n/messages.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_ar.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_bg.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_bs.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_ca.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_cs.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_da.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_de.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_el.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_en.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_es.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_et.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_fi.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_fr.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_he.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_hr.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_hu.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_id.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_it.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_ja.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_ko.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_lt.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_lv.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_nl.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_no.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_pl.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_pt-BR.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_pt-PT.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_ro.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_ru.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_sk.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_sl.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_sr.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_sv.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_th.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_tr.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_uk.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_vi.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_zh-CN.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_zh-HK.json +4 -0
- package/assets/components/assets/action-pad/t9n/messages_zh-TW.json +4 -0
- package/assets/components/assets/alert/t9n/index.d.ts +3 -0
- package/assets/components/assets/alert/t9n/messages.json +3 -0
- package/assets/components/assets/alert/t9n/messages_ar.json +3 -0
- package/assets/components/assets/alert/t9n/messages_bg.json +3 -0
- package/assets/components/assets/alert/t9n/messages_bs.json +3 -0
- package/assets/components/assets/alert/t9n/messages_ca.json +3 -0
- package/assets/components/assets/alert/t9n/messages_cs.json +3 -0
- package/assets/components/assets/alert/t9n/messages_da.json +3 -0
- package/assets/components/assets/alert/t9n/messages_de.json +3 -0
- package/assets/components/assets/alert/t9n/messages_el.json +3 -0
- package/assets/components/assets/alert/t9n/messages_en.json +3 -0
- package/assets/components/assets/alert/t9n/messages_es.json +3 -0
- package/assets/components/assets/alert/t9n/messages_et.json +3 -0
- package/assets/components/assets/alert/t9n/messages_fi.json +3 -0
- package/assets/components/assets/alert/t9n/messages_fr.json +3 -0
- package/assets/components/assets/alert/t9n/messages_he.json +3 -0
- package/assets/components/assets/alert/t9n/messages_hr.json +3 -0
- package/assets/components/assets/alert/t9n/messages_hu.json +3 -0
- package/assets/components/assets/alert/t9n/messages_id.json +3 -0
- package/assets/components/assets/alert/t9n/messages_it.json +3 -0
- package/assets/components/assets/alert/t9n/messages_ja.json +3 -0
- package/assets/components/assets/alert/t9n/messages_ko.json +3 -0
- package/assets/components/assets/alert/t9n/messages_lt.json +3 -0
- package/assets/components/assets/alert/t9n/messages_lv.json +3 -0
- package/assets/components/assets/alert/t9n/messages_nl.json +3 -0
- package/assets/components/assets/alert/t9n/messages_no.json +3 -0
- package/assets/components/assets/alert/t9n/messages_pl.json +3 -0
- package/assets/components/assets/alert/t9n/messages_pt-BR.json +3 -0
- package/assets/components/assets/alert/t9n/messages_pt-PT.json +3 -0
- package/assets/components/assets/alert/t9n/messages_ro.json +3 -0
- package/assets/components/assets/alert/t9n/messages_ru.json +3 -0
- package/assets/components/assets/alert/t9n/messages_sk.json +3 -0
- package/assets/components/assets/alert/t9n/messages_sl.json +3 -0
- package/assets/components/assets/alert/t9n/messages_sr.json +3 -0
- package/assets/components/assets/alert/t9n/messages_sv.json +3 -0
- package/assets/components/assets/alert/t9n/messages_th.json +3 -0
- package/assets/components/assets/alert/t9n/messages_tr.json +3 -0
- package/assets/components/assets/alert/t9n/messages_uk.json +3 -0
- package/assets/components/assets/alert/t9n/messages_vi.json +3 -0
- package/assets/components/assets/alert/t9n/messages_zh-CN.json +3 -0
- package/assets/components/assets/alert/t9n/messages_zh-HK.json +3 -0
- package/assets/components/assets/alert/t9n/messages_zh-TW.json +3 -0
- package/assets/components/assets/block/t9n/index.d.ts +6 -0
- package/assets/components/assets/block/t9n/messages.json +6 -0
- package/assets/components/assets/block/t9n/messages_ar.json +6 -0
- package/assets/components/assets/block/t9n/messages_bg.json +6 -0
- package/assets/components/assets/block/t9n/messages_bs.json +6 -0
- package/assets/components/assets/block/t9n/messages_ca.json +6 -0
- package/assets/components/assets/block/t9n/messages_cs.json +6 -0
- package/assets/components/assets/block/t9n/messages_da.json +6 -0
- package/assets/components/assets/block/t9n/messages_de.json +6 -0
- package/assets/components/assets/block/t9n/messages_el.json +6 -0
- package/assets/components/assets/block/t9n/messages_en.json +6 -0
- package/assets/components/assets/block/t9n/messages_es.json +6 -0
- package/assets/components/assets/block/t9n/messages_et.json +6 -0
- package/assets/components/assets/block/t9n/messages_fi.json +6 -0
- package/assets/components/assets/block/t9n/messages_fr.json +6 -0
- package/assets/components/assets/block/t9n/messages_he.json +6 -0
- package/assets/components/assets/block/t9n/messages_hr.json +6 -0
- package/assets/components/assets/block/t9n/messages_hu.json +6 -0
- package/assets/components/assets/block/t9n/messages_id.json +6 -0
- package/assets/components/assets/block/t9n/messages_it.json +6 -0
- package/assets/components/assets/block/t9n/messages_ja.json +6 -0
- package/assets/components/assets/block/t9n/messages_ko.json +6 -0
- package/assets/components/assets/block/t9n/messages_lt.json +6 -0
- package/assets/components/assets/block/t9n/messages_lv.json +6 -0
- package/assets/components/assets/block/t9n/messages_nl.json +6 -0
- package/assets/components/assets/block/t9n/messages_no.json +6 -0
- package/assets/components/assets/block/t9n/messages_pl.json +6 -0
- package/assets/components/assets/block/t9n/messages_pt-BR.json +6 -0
- package/assets/components/assets/block/t9n/messages_pt-PT.json +6 -0
- package/assets/components/assets/block/t9n/messages_ro.json +6 -0
- package/assets/components/assets/block/t9n/messages_ru.json +6 -0
- package/assets/components/assets/block/t9n/messages_sk.json +6 -0
- package/assets/components/assets/block/t9n/messages_sl.json +6 -0
- package/assets/components/assets/block/t9n/messages_sr.json +6 -0
- package/assets/components/assets/block/t9n/messages_sv.json +6 -0
- package/assets/components/assets/block/t9n/messages_th.json +6 -0
- package/assets/components/assets/block/t9n/messages_tr.json +6 -0
- package/assets/components/assets/block/t9n/messages_uk.json +6 -0
- package/assets/components/assets/block/t9n/messages_vi.json +6 -0
- package/assets/components/assets/block/t9n/messages_zh-CN.json +6 -0
- package/assets/components/assets/block/t9n/messages_zh-HK.json +6 -0
- package/assets/components/assets/block/t9n/messages_zh-TW.json +6 -0
- package/assets/components/assets/block-section/t9n/index.d.ts +4 -0
- package/assets/components/assets/block-section/t9n/messages.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_ar.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_bg.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_bs.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_ca.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_cs.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_da.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_de.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_el.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_en.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_es.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_et.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_fi.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_fr.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_he.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_hr.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_hu.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_id.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_it.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_ja.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_ko.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_lt.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_lv.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_nl.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_no.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_pl.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_pt-BR.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_pt-PT.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_ro.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_ru.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_sk.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_sl.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_sr.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_sv.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_th.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_tr.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_uk.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_vi.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_zh-CN.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_zh-HK.json +4 -0
- package/assets/components/assets/block-section/t9n/messages_zh-TW.json +4 -0
- package/assets/components/assets/button/t9n/index.d.ts +3 -0
- package/assets/components/assets/button/t9n/messages.json +3 -0
- package/assets/components/assets/button/t9n/messages_ar.json +3 -0
- package/assets/components/assets/button/t9n/messages_bg.json +3 -0
- package/assets/components/assets/button/t9n/messages_bs.json +3 -0
- package/assets/components/assets/button/t9n/messages_ca.json +3 -0
- package/assets/components/assets/button/t9n/messages_cs.json +3 -0
- package/assets/components/assets/button/t9n/messages_da.json +3 -0
- package/assets/components/assets/button/t9n/messages_de.json +3 -0
- package/assets/components/assets/button/t9n/messages_el.json +3 -0
- package/assets/components/assets/button/t9n/messages_en.json +3 -0
- package/assets/components/assets/button/t9n/messages_es.json +3 -0
- package/assets/components/assets/button/t9n/messages_et.json +3 -0
- package/assets/components/assets/button/t9n/messages_fi.json +3 -0
- package/assets/components/assets/button/t9n/messages_fr.json +3 -0
- package/assets/components/assets/button/t9n/messages_he.json +3 -0
- package/assets/components/assets/button/t9n/messages_hr.json +3 -0
- package/assets/components/assets/button/t9n/messages_hu.json +3 -0
- package/assets/components/assets/button/t9n/messages_id.json +3 -0
- package/assets/components/assets/button/t9n/messages_it.json +3 -0
- package/assets/components/assets/button/t9n/messages_ja.json +3 -0
- package/assets/components/assets/button/t9n/messages_ko.json +3 -0
- package/assets/components/assets/button/t9n/messages_lt.json +3 -0
- package/assets/components/assets/button/t9n/messages_lv.json +3 -0
- package/assets/components/assets/button/t9n/messages_nl.json +3 -0
- package/assets/components/assets/button/t9n/messages_no.json +3 -0
- package/assets/components/assets/button/t9n/messages_pl.json +3 -0
- package/assets/components/assets/button/t9n/messages_pt-BR.json +3 -0
- package/assets/components/assets/button/t9n/messages_pt-PT.json +3 -0
- package/assets/components/assets/button/t9n/messages_ro.json +3 -0
- package/assets/components/assets/button/t9n/messages_ru.json +3 -0
- package/assets/components/assets/button/t9n/messages_sk.json +3 -0
- package/assets/components/assets/button/t9n/messages_sl.json +3 -0
- package/assets/components/assets/button/t9n/messages_sr.json +3 -0
- package/assets/components/assets/button/t9n/messages_sv.json +3 -0
- package/assets/components/assets/button/t9n/messages_th.json +3 -0
- package/assets/components/assets/button/t9n/messages_tr.json +3 -0
- package/assets/components/assets/button/t9n/messages_uk.json +3 -0
- package/assets/components/assets/button/t9n/messages_vi.json +3 -0
- package/assets/components/assets/button/t9n/messages_zh-CN.json +3 -0
- package/assets/components/assets/button/t9n/messages_zh-HK.json +3 -0
- package/assets/components/assets/button/t9n/messages_zh-TW.json +3 -0
- package/assets/components/assets/card/t9n/index.d.ts +5 -0
- package/assets/components/assets/card/t9n/messages.json +5 -0
- package/assets/components/assets/card/t9n/messages_ar.json +5 -0
- package/assets/components/assets/card/t9n/messages_bg.json +5 -0
- package/assets/components/assets/card/t9n/messages_bs.json +5 -0
- package/assets/components/assets/card/t9n/messages_ca.json +5 -0
- package/assets/components/assets/card/t9n/messages_cs.json +5 -0
- package/assets/components/assets/card/t9n/messages_da.json +5 -0
- package/assets/components/assets/card/t9n/messages_de.json +5 -0
- package/assets/components/assets/card/t9n/messages_el.json +5 -0
- package/assets/components/assets/card/t9n/messages_en.json +5 -0
- package/assets/components/assets/card/t9n/messages_es.json +5 -0
- package/assets/components/assets/card/t9n/messages_et.json +5 -0
- package/assets/components/assets/card/t9n/messages_fi.json +5 -0
- package/assets/components/assets/card/t9n/messages_fr.json +5 -0
- package/assets/components/assets/card/t9n/messages_he.json +5 -0
- package/assets/components/assets/card/t9n/messages_hr.json +5 -0
- package/assets/components/assets/card/t9n/messages_hu.json +5 -0
- package/assets/components/assets/card/t9n/messages_id.json +5 -0
- package/assets/components/assets/card/t9n/messages_it.json +5 -0
- package/assets/components/assets/card/t9n/messages_ja.json +5 -0
- package/assets/components/assets/card/t9n/messages_ko.json +5 -0
- package/assets/components/assets/card/t9n/messages_lt.json +5 -0
- package/assets/components/assets/card/t9n/messages_lv.json +5 -0
- package/assets/components/assets/card/t9n/messages_nl.json +5 -0
- package/assets/components/assets/card/t9n/messages_no.json +5 -0
- package/assets/components/assets/card/t9n/messages_pl.json +5 -0
- package/assets/components/assets/card/t9n/messages_pt-BR.json +5 -0
- package/assets/components/assets/card/t9n/messages_pt-PT.json +5 -0
- package/assets/components/assets/card/t9n/messages_ro.json +5 -0
- package/assets/components/assets/card/t9n/messages_ru.json +5 -0
- package/assets/components/assets/card/t9n/messages_sk.json +5 -0
- package/assets/components/assets/card/t9n/messages_sl.json +5 -0
- package/assets/components/assets/card/t9n/messages_sr.json +5 -0
- package/assets/components/assets/card/t9n/messages_sv.json +5 -0
- package/assets/components/assets/card/t9n/messages_th.json +5 -0
- package/assets/components/assets/card/t9n/messages_tr.json +5 -0
- package/assets/components/assets/card/t9n/messages_uk.json +5 -0
- package/assets/components/assets/card/t9n/messages_vi.json +5 -0
- package/assets/components/assets/card/t9n/messages_zh-CN.json +5 -0
- package/assets/components/assets/card/t9n/messages_zh-HK.json +5 -0
- package/assets/components/assets/card/t9n/messages_zh-TW.json +5 -0
- package/assets/components/assets/chip/t9n/index.d.ts +3 -0
- package/assets/components/assets/chip/t9n/messages.json +3 -0
- package/assets/components/assets/chip/t9n/messages_ar.json +3 -0
- package/assets/components/assets/chip/t9n/messages_bg.json +3 -0
- package/assets/components/assets/chip/t9n/messages_bs.json +3 -0
- package/assets/components/assets/chip/t9n/messages_ca.json +3 -0
- package/assets/components/assets/chip/t9n/messages_cs.json +3 -0
- package/assets/components/assets/chip/t9n/messages_da.json +3 -0
- package/assets/components/assets/chip/t9n/messages_de.json +3 -0
- package/assets/components/assets/chip/t9n/messages_el.json +3 -0
- package/assets/components/assets/chip/t9n/messages_en.json +3 -0
- package/assets/components/assets/chip/t9n/messages_es.json +3 -0
- package/assets/components/assets/chip/t9n/messages_et.json +3 -0
- package/assets/components/assets/chip/t9n/messages_fi.json +3 -0
- package/assets/components/assets/chip/t9n/messages_fr.json +3 -0
- package/assets/components/assets/chip/t9n/messages_he.json +3 -0
- package/assets/components/assets/chip/t9n/messages_hr.json +3 -0
- package/assets/components/assets/chip/t9n/messages_hu.json +3 -0
- package/assets/components/assets/chip/t9n/messages_id.json +3 -0
- package/assets/components/assets/chip/t9n/messages_it.json +3 -0
- package/assets/components/assets/chip/t9n/messages_ja.json +3 -0
- package/assets/components/assets/chip/t9n/messages_ko.json +3 -0
- package/assets/components/assets/chip/t9n/messages_lt.json +3 -0
- package/assets/components/assets/chip/t9n/messages_lv.json +3 -0
- package/assets/components/assets/chip/t9n/messages_nl.json +3 -0
- package/assets/components/assets/chip/t9n/messages_no.json +3 -0
- package/assets/components/assets/chip/t9n/messages_pl.json +3 -0
- package/assets/components/assets/chip/t9n/messages_pt-BR.json +3 -0
- package/assets/components/assets/chip/t9n/messages_pt-PT.json +3 -0
- package/assets/components/assets/chip/t9n/messages_ro.json +3 -0
- package/assets/components/assets/chip/t9n/messages_ru.json +3 -0
- package/assets/components/assets/chip/t9n/messages_sk.json +3 -0
- package/assets/components/assets/chip/t9n/messages_sl.json +3 -0
- package/assets/components/assets/chip/t9n/messages_sr.json +3 -0
- package/assets/components/assets/chip/t9n/messages_sv.json +3 -0
- package/assets/components/assets/chip/t9n/messages_th.json +3 -0
- package/assets/components/assets/chip/t9n/messages_tr.json +3 -0
- package/assets/components/assets/chip/t9n/messages_uk.json +3 -0
- package/assets/components/assets/chip/t9n/messages_vi.json +3 -0
- package/assets/components/assets/chip/t9n/messages_zh-CN.json +3 -0
- package/assets/components/assets/chip/t9n/messages_zh-HK.json +3 -0
- package/assets/components/assets/chip/t9n/messages_zh-TW.json +3 -0
- package/assets/components/assets/color-picker/t9n/index.d.ts +22 -0
- package/assets/components/assets/color-picker/t9n/messages.json +22 -0
- package/assets/components/assets/color-picker/t9n/messages_ar.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_bg.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_bs.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_ca.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_cs.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_da.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_de.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_el.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_en.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_es.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_et.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_fi.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_fr.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_he.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_hr.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_hu.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_id.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_it.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_ja.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_ko.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_lt.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_lv.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_nl.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_no.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_pl.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_pt-BR.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_pt-PT.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_ro.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_ru.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_sk.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_sl.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_sr.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_sv.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_th.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_tr.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_uk.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_vi.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_zh-CN.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_zh-HK.json +21 -0
- package/assets/components/assets/color-picker/t9n/messages_zh-TW.json +21 -0
- package/assets/components/assets/combobox/t9n/index.d.ts +3 -0
- package/assets/components/assets/combobox/t9n/messages.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_ar.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_bg.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_bs.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_ca.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_cs.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_da.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_de.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_el.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_en.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_es.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_et.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_fi.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_fr.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_he.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_hr.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_hu.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_id.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_it.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_ja.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_ko.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_lt.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_lv.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_nl.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_no.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_pl.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_pt-BR.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_pt-PT.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_ro.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_ru.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_sk.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_sl.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_sr.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_sv.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_th.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_tr.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_uk.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_vi.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_zh-CN.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_zh-HK.json +3 -0
- package/assets/components/assets/combobox/t9n/messages_zh-TW.json +3 -0
- package/assets/components/assets/date-picker/nls/{nb.json → no.json} +0 -0
- package/assets/components/assets/date-picker/t9n/index.d.ts +1 -1
- package/assets/components/assets/filter/t9n/index.d.ts +4 -0
- package/assets/components/assets/filter/t9n/messages.json +4 -0
- package/assets/components/assets/filter/t9n/messages_ar.json +4 -0
- package/assets/components/assets/filter/t9n/messages_bg.json +4 -0
- package/assets/components/assets/filter/t9n/messages_bs.json +4 -0
- package/assets/components/assets/filter/t9n/messages_ca.json +4 -0
- package/assets/components/assets/filter/t9n/messages_cs.json +4 -0
- package/assets/components/assets/filter/t9n/messages_da.json +4 -0
- package/assets/components/assets/filter/t9n/messages_de.json +4 -0
- package/assets/components/assets/filter/t9n/messages_el.json +4 -0
- package/assets/components/assets/filter/t9n/messages_en.json +4 -0
- package/assets/components/assets/filter/t9n/messages_es.json +4 -0
- package/assets/components/assets/filter/t9n/messages_et.json +4 -0
- package/assets/components/assets/filter/t9n/messages_fi.json +4 -0
- package/assets/components/assets/filter/t9n/messages_fr.json +4 -0
- package/assets/components/assets/filter/t9n/messages_he.json +4 -0
- package/assets/components/assets/filter/t9n/messages_hr.json +4 -0
- package/assets/components/assets/filter/t9n/messages_hu.json +4 -0
- package/assets/components/assets/filter/t9n/messages_id.json +4 -0
- package/assets/components/assets/filter/t9n/messages_it.json +4 -0
- package/assets/components/assets/filter/t9n/messages_ja.json +4 -0
- package/assets/components/assets/filter/t9n/messages_ko.json +4 -0
- package/assets/components/assets/filter/t9n/messages_lt.json +4 -0
- package/assets/components/assets/filter/t9n/messages_lv.json +4 -0
- package/assets/components/assets/filter/t9n/messages_nl.json +4 -0
- package/assets/components/assets/filter/t9n/messages_no.json +4 -0
- package/assets/components/assets/filter/t9n/messages_pl.json +4 -0
- package/assets/components/assets/filter/t9n/messages_pt-BR.json +4 -0
- package/assets/components/assets/filter/t9n/messages_pt-PT.json +4 -0
- package/assets/components/assets/filter/t9n/messages_ro.json +4 -0
- package/assets/components/assets/filter/t9n/messages_ru.json +4 -0
- package/assets/components/assets/filter/t9n/messages_sk.json +4 -0
- package/assets/components/assets/filter/t9n/messages_sl.json +4 -0
- package/assets/components/assets/filter/t9n/messages_sr.json +4 -0
- package/assets/components/assets/filter/t9n/messages_sv.json +4 -0
- package/assets/components/assets/filter/t9n/messages_th.json +4 -0
- package/assets/components/assets/filter/t9n/messages_tr.json +4 -0
- package/assets/components/assets/filter/t9n/messages_uk.json +4 -0
- package/assets/components/assets/filter/t9n/messages_vi.json +4 -0
- package/assets/components/assets/filter/t9n/messages_zh-CN.json +4 -0
- package/assets/components/assets/filter/t9n/messages_zh-HK.json +4 -0
- package/assets/components/assets/filter/t9n/messages_zh-TW.json +4 -0
- package/assets/components/assets/flow-item/t9n/index.d.ts +5 -0
- package/assets/components/assets/flow-item/t9n/messages.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_ar.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_bg.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_bs.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_ca.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_cs.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_da.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_de.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_el.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_en.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_es.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_et.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_fi.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_fr.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_he.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_hr.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_hu.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_id.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_it.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_ja.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_ko.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_lt.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_lv.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_nl.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_no.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_pl.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_pt-BR.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_pt-PT.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_ro.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_ru.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_sk.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_sl.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_sr.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_sv.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_th.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_tr.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_uk.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_vi.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_zh-CN.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_zh-HK.json +5 -0
- package/assets/components/assets/flow-item/t9n/messages_zh-TW.json +5 -0
- package/assets/components/assets/inline-editable/t9n/index.d.ts +5 -0
- package/assets/components/assets/inline-editable/t9n/messages.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_ar.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_bg.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_bs.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_ca.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_cs.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_da.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_de.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_el.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_en.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_es.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_et.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_fi.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_fr.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_he.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_hr.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_hu.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_id.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_it.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_ja.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_ko.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_lt.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_lv.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_nl.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_no.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_pl.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_pt-BR.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_pt-PT.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_ro.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_ru.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_sk.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_sl.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_sr.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_sv.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_th.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_tr.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_uk.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_vi.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_zh-CN.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_zh-HK.json +5 -0
- package/assets/components/assets/inline-editable/t9n/messages_zh-TW.json +5 -0
- package/assets/components/assets/input/t9n/index.d.ts +4 -0
- package/assets/components/assets/input/t9n/messages.json +4 -0
- package/assets/components/assets/input/t9n/messages_ar.json +4 -0
- package/assets/components/assets/input/t9n/messages_bg.json +4 -0
- package/assets/components/assets/input/t9n/messages_bs.json +4 -0
- package/assets/components/assets/input/t9n/messages_ca.json +4 -0
- package/assets/components/assets/input/t9n/messages_cs.json +4 -0
- package/assets/components/assets/input/t9n/messages_da.json +4 -0
- package/assets/components/assets/input/t9n/messages_de.json +4 -0
- package/assets/components/assets/input/t9n/messages_el.json +4 -0
- package/assets/components/assets/input/t9n/messages_en.json +4 -0
- package/assets/components/assets/input/t9n/messages_es.json +4 -0
- package/assets/components/assets/input/t9n/messages_et.json +4 -0
- package/assets/components/assets/input/t9n/messages_fi.json +4 -0
- package/assets/components/assets/input/t9n/messages_fr.json +4 -0
- package/assets/components/assets/input/t9n/messages_he.json +4 -0
- package/assets/components/assets/input/t9n/messages_hr.json +4 -0
- package/assets/components/assets/input/t9n/messages_hu.json +4 -0
- package/assets/components/assets/input/t9n/messages_id.json +4 -0
- package/assets/components/assets/input/t9n/messages_it.json +4 -0
- package/assets/components/assets/input/t9n/messages_ja.json +4 -0
- package/assets/components/assets/input/t9n/messages_ko.json +4 -0
- package/assets/components/assets/input/t9n/messages_lt.json +4 -0
- package/assets/components/assets/input/t9n/messages_lv.json +4 -0
- package/assets/components/assets/input/t9n/messages_nl.json +4 -0
- package/assets/components/assets/input/t9n/messages_no.json +4 -0
- package/assets/components/assets/input/t9n/messages_pl.json +4 -0
- package/assets/components/assets/input/t9n/messages_pt-BR.json +4 -0
- package/assets/components/assets/input/t9n/messages_pt-PT.json +4 -0
- package/assets/components/assets/input/t9n/messages_ro.json +4 -0
- package/assets/components/assets/input/t9n/messages_ru.json +4 -0
- package/assets/components/assets/input/t9n/messages_sk.json +4 -0
- package/assets/components/assets/input/t9n/messages_sl.json +4 -0
- package/assets/components/assets/input/t9n/messages_sr.json +4 -0
- package/assets/components/assets/input/t9n/messages_sv.json +4 -0
- package/assets/components/assets/input/t9n/messages_th.json +4 -0
- package/assets/components/assets/input/t9n/messages_tr.json +4 -0
- package/assets/components/assets/input/t9n/messages_uk.json +4 -0
- package/assets/components/assets/input/t9n/messages_vi.json +4 -0
- package/assets/components/assets/input/t9n/messages_zh-CN.json +4 -0
- package/assets/components/assets/input/t9n/messages_zh-HK.json +4 -0
- package/assets/components/assets/input/t9n/messages_zh-TW.json +4 -0
- package/assets/components/assets/input-number/t9n/index.d.ts +4 -0
- package/assets/components/assets/input-number/t9n/messages.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_ar.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_bg.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_bs.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_ca.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_cs.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_da.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_de.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_el.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_en.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_es.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_et.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_fi.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_fr.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_he.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_hr.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_hu.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_id.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_it.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_ja.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_ko.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_lt.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_lv.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_nl.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_no.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_pl.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_pt-BR.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_pt-PT.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_ro.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_ru.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_sk.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_sl.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_sr.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_sv.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_th.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_tr.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_uk.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_vi.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_zh-CN.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_zh-HK.json +4 -0
- package/assets/components/assets/input-number/t9n/messages_zh-TW.json +4 -0
- package/assets/components/assets/input-text/t9n/index.d.ts +4 -0
- package/assets/components/assets/input-text/t9n/messages.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_ar.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_bg.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_bs.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_ca.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_cs.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_da.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_de.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_el.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_en.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_es.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_et.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_fi.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_fr.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_he.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_hr.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_hu.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_id.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_it.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_ja.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_ko.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_lt.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_lv.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_nl.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_no.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_pl.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_pt-BR.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_pt-PT.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_ro.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_ru.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_sk.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_sl.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_sr.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_sv.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_th.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_tr.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_uk.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_vi.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_zh-CN.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_zh-HK.json +4 -0
- package/assets/components/assets/input-text/t9n/messages_zh-TW.json +4 -0
- package/assets/components/assets/modal/t9n/index.d.ts +3 -0
- package/assets/components/assets/modal/t9n/messages.json +3 -0
- package/assets/components/assets/modal/t9n/messages_ar.json +3 -0
- package/assets/components/assets/modal/t9n/messages_bg.json +3 -0
- package/assets/components/assets/modal/t9n/messages_bs.json +3 -0
- package/assets/components/assets/modal/t9n/messages_ca.json +3 -0
- package/assets/components/assets/modal/t9n/messages_cs.json +3 -0
- package/assets/components/assets/modal/t9n/messages_da.json +3 -0
- package/assets/components/assets/modal/t9n/messages_de.json +3 -0
- package/assets/components/assets/modal/t9n/messages_el.json +3 -0
- package/assets/components/assets/modal/t9n/messages_en.json +3 -0
- package/assets/components/assets/modal/t9n/messages_es.json +3 -0
- package/assets/components/assets/modal/t9n/messages_et.json +3 -0
- package/assets/components/assets/modal/t9n/messages_fi.json +3 -0
- package/assets/components/assets/modal/t9n/messages_fr.json +3 -0
- package/assets/components/assets/modal/t9n/messages_he.json +3 -0
- package/assets/components/assets/modal/t9n/messages_hr.json +3 -0
- package/assets/components/assets/modal/t9n/messages_hu.json +3 -0
- package/assets/components/assets/modal/t9n/messages_id.json +3 -0
- package/assets/components/assets/modal/t9n/messages_it.json +3 -0
- package/assets/components/assets/modal/t9n/messages_ja.json +3 -0
- package/assets/components/assets/modal/t9n/messages_ko.json +3 -0
- package/assets/components/assets/modal/t9n/messages_lt.json +3 -0
- package/assets/components/assets/modal/t9n/messages_lv.json +3 -0
- package/assets/components/assets/modal/t9n/messages_nl.json +3 -0
- package/assets/components/assets/modal/t9n/messages_no.json +3 -0
- package/assets/components/assets/modal/t9n/messages_pl.json +3 -0
- package/assets/components/assets/modal/t9n/messages_pt-BR.json +3 -0
- package/assets/components/assets/modal/t9n/messages_pt-PT.json +3 -0
- package/assets/components/assets/modal/t9n/messages_ro.json +3 -0
- package/assets/components/assets/modal/t9n/messages_ru.json +3 -0
- package/assets/components/assets/modal/t9n/messages_sk.json +3 -0
- package/assets/components/assets/modal/t9n/messages_sl.json +3 -0
- package/assets/components/assets/modal/t9n/messages_sr.json +3 -0
- package/assets/components/assets/modal/t9n/messages_sv.json +3 -0
- package/assets/components/assets/modal/t9n/messages_th.json +3 -0
- package/assets/components/assets/modal/t9n/messages_tr.json +3 -0
- package/assets/components/assets/modal/t9n/messages_uk.json +3 -0
- package/assets/components/assets/modal/t9n/messages_vi.json +3 -0
- package/assets/components/assets/modal/t9n/messages_zh-CN.json +3 -0
- package/assets/components/assets/modal/t9n/messages_zh-HK.json +3 -0
- package/assets/components/assets/modal/t9n/messages_zh-TW.json +3 -0
- package/assets/components/assets/notice/t9n/index.d.ts +3 -0
- package/assets/components/assets/notice/t9n/messages.json +3 -0
- package/assets/components/assets/notice/t9n/messages_ar.json +3 -0
- package/assets/components/assets/notice/t9n/messages_bg.json +3 -0
- package/assets/components/assets/notice/t9n/messages_bs.json +3 -0
- package/assets/components/assets/notice/t9n/messages_ca.json +3 -0
- package/assets/components/assets/notice/t9n/messages_cs.json +3 -0
- package/assets/components/assets/notice/t9n/messages_da.json +3 -0
- package/assets/components/assets/notice/t9n/messages_de.json +3 -0
- package/assets/components/assets/notice/t9n/messages_el.json +3 -0
- package/assets/components/assets/notice/t9n/messages_en.json +3 -0
- package/assets/components/assets/notice/t9n/messages_es.json +3 -0
- package/assets/components/assets/notice/t9n/messages_et.json +3 -0
- package/assets/components/assets/notice/t9n/messages_fi.json +3 -0
- package/assets/components/assets/notice/t9n/messages_fr.json +3 -0
- package/assets/components/assets/notice/t9n/messages_he.json +3 -0
- package/assets/components/assets/notice/t9n/messages_hr.json +3 -0
- package/assets/components/assets/notice/t9n/messages_hu.json +3 -0
- package/assets/components/assets/notice/t9n/messages_id.json +3 -0
- package/assets/components/assets/notice/t9n/messages_it.json +3 -0
- package/assets/components/assets/notice/t9n/messages_ja.json +3 -0
- package/assets/components/assets/notice/t9n/messages_ko.json +3 -0
- package/assets/components/assets/notice/t9n/messages_lt.json +3 -0
- package/assets/components/assets/notice/t9n/messages_lv.json +3 -0
- package/assets/components/assets/notice/t9n/messages_nl.json +3 -0
- package/assets/components/assets/notice/t9n/messages_no.json +3 -0
- package/assets/components/assets/notice/t9n/messages_pl.json +3 -0
- package/assets/components/assets/notice/t9n/messages_pt-BR.json +3 -0
- package/assets/components/assets/notice/t9n/messages_pt-PT.json +3 -0
- package/assets/components/assets/notice/t9n/messages_ro.json +3 -0
- package/assets/components/assets/notice/t9n/messages_ru.json +3 -0
- package/assets/components/assets/notice/t9n/messages_sk.json +3 -0
- package/assets/components/assets/notice/t9n/messages_sl.json +3 -0
- package/assets/components/assets/notice/t9n/messages_sr.json +3 -0
- package/assets/components/assets/notice/t9n/messages_sv.json +3 -0
- package/assets/components/assets/notice/t9n/messages_th.json +3 -0
- package/assets/components/assets/notice/t9n/messages_tr.json +3 -0
- package/assets/components/assets/notice/t9n/messages_uk.json +3 -0
- package/assets/components/assets/notice/t9n/messages_vi.json +3 -0
- package/assets/components/assets/notice/t9n/messages_zh-CN.json +3 -0
- package/assets/components/assets/notice/t9n/messages_zh-HK.json +3 -0
- package/assets/components/assets/notice/t9n/messages_zh-TW.json +3 -0
- package/assets/components/assets/pagination/t9n/index.d.ts +4 -0
- package/assets/components/assets/pagination/t9n/messages.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_ar.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_bg.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_bs.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_ca.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_cs.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_da.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_de.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_el.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_en.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_es.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_et.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_fi.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_fr.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_he.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_hr.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_hu.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_id.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_it.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_ja.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_ko.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_lt.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_lv.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_nl.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_no.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_pl.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_pt-BR.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_pt-PT.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_ro.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_ru.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_sk.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_sl.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_sr.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_sv.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_th.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_tr.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_uk.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_vi.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_zh-CN.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_zh-HK.json +4 -0
- package/assets/components/assets/pagination/t9n/messages_zh-TW.json +4 -0
- package/assets/components/assets/panel/t9n/index.d.ts +4 -0
- package/assets/components/assets/panel/t9n/messages.json +4 -0
- package/assets/components/assets/panel/t9n/messages_ar.json +4 -0
- package/assets/components/assets/panel/t9n/messages_bg.json +4 -0
- package/assets/components/assets/panel/t9n/messages_bs.json +4 -0
- package/assets/components/assets/panel/t9n/messages_ca.json +4 -0
- package/assets/components/assets/panel/t9n/messages_cs.json +4 -0
- package/assets/components/assets/panel/t9n/messages_da.json +4 -0
- package/assets/components/assets/panel/t9n/messages_de.json +4 -0
- package/assets/components/assets/panel/t9n/messages_el.json +4 -0
- package/assets/components/assets/panel/t9n/messages_en.json +4 -0
- package/assets/components/assets/panel/t9n/messages_es.json +4 -0
- package/assets/components/assets/panel/t9n/messages_et.json +4 -0
- package/assets/components/assets/panel/t9n/messages_fi.json +4 -0
- package/assets/components/assets/panel/t9n/messages_fr.json +4 -0
- package/assets/components/assets/panel/t9n/messages_he.json +4 -0
- package/assets/components/assets/panel/t9n/messages_hr.json +4 -0
- package/assets/components/assets/panel/t9n/messages_hu.json +4 -0
- package/assets/components/assets/panel/t9n/messages_id.json +4 -0
- package/assets/components/assets/panel/t9n/messages_it.json +4 -0
- package/assets/components/assets/panel/t9n/messages_ja.json +4 -0
- package/assets/components/assets/panel/t9n/messages_ko.json +4 -0
- package/assets/components/assets/panel/t9n/messages_lt.json +4 -0
- package/assets/components/assets/panel/t9n/messages_lv.json +4 -0
- package/assets/components/assets/panel/t9n/messages_nl.json +4 -0
- package/assets/components/assets/panel/t9n/messages_no.json +4 -0
- package/assets/components/assets/panel/t9n/messages_pl.json +4 -0
- package/assets/components/assets/panel/t9n/messages_pt-BR.json +4 -0
- package/assets/components/assets/panel/t9n/messages_pt-PT.json +4 -0
- package/assets/components/assets/panel/t9n/messages_ro.json +4 -0
- package/assets/components/assets/panel/t9n/messages_ru.json +4 -0
- package/assets/components/assets/panel/t9n/messages_sk.json +4 -0
- package/assets/components/assets/panel/t9n/messages_sl.json +4 -0
- package/assets/components/assets/panel/t9n/messages_sr.json +4 -0
- package/assets/components/assets/panel/t9n/messages_sv.json +4 -0
- package/assets/components/assets/panel/t9n/messages_th.json +4 -0
- package/assets/components/assets/panel/t9n/messages_tr.json +4 -0
- package/assets/components/assets/panel/t9n/messages_uk.json +4 -0
- package/assets/components/assets/panel/t9n/messages_vi.json +4 -0
- package/assets/components/assets/panel/t9n/messages_zh-CN.json +4 -0
- package/assets/components/assets/panel/t9n/messages_zh-HK.json +4 -0
- package/assets/components/assets/panel/t9n/messages_zh-TW.json +4 -0
- package/assets/components/assets/pick-list-item/t9n/index.d.ts +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_ar.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_bg.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_bs.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_ca.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_cs.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_da.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_de.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_el.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_en.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_es.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_et.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_fi.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_fr.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_he.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_hr.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_hu.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_id.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_it.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_ja.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_ko.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_lt.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_lv.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_nl.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_no.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_pl.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_pt-BR.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_pt-PT.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_ro.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_ru.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_sk.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_sl.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_sr.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_sv.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_th.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_tr.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_uk.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_vi.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_zh-CN.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_zh-HK.json +3 -0
- package/assets/components/assets/pick-list-item/t9n/messages_zh-TW.json +3 -0
- package/assets/components/assets/popover/t9n/index.d.ts +3 -0
- package/assets/components/assets/popover/t9n/messages.json +3 -0
- package/assets/components/assets/popover/t9n/messages_ar.json +3 -0
- package/assets/components/assets/popover/t9n/messages_bg.json +3 -0
- package/assets/components/assets/popover/t9n/messages_bs.json +3 -0
- package/assets/components/assets/popover/t9n/messages_ca.json +3 -0
- package/assets/components/assets/popover/t9n/messages_cs.json +3 -0
- package/assets/components/assets/popover/t9n/messages_da.json +3 -0
- package/assets/components/assets/popover/t9n/messages_de.json +3 -0
- package/assets/components/assets/popover/t9n/messages_el.json +3 -0
- package/assets/components/assets/popover/t9n/messages_en.json +3 -0
- package/assets/components/assets/popover/t9n/messages_es.json +3 -0
- package/assets/components/assets/popover/t9n/messages_et.json +3 -0
- package/assets/components/assets/popover/t9n/messages_fi.json +3 -0
- package/assets/components/assets/popover/t9n/messages_fr.json +3 -0
- package/assets/components/assets/popover/t9n/messages_he.json +3 -0
- package/assets/components/assets/popover/t9n/messages_hr.json +3 -0
- package/assets/components/assets/popover/t9n/messages_hu.json +3 -0
- package/assets/components/assets/popover/t9n/messages_id.json +3 -0
- package/assets/components/assets/popover/t9n/messages_it.json +3 -0
- package/assets/components/assets/popover/t9n/messages_ja.json +3 -0
- package/assets/components/assets/popover/t9n/messages_ko.json +3 -0
- package/assets/components/assets/popover/t9n/messages_lt.json +3 -0
- package/assets/components/assets/popover/t9n/messages_lv.json +3 -0
- package/assets/components/assets/popover/t9n/messages_nl.json +3 -0
- package/assets/components/assets/popover/t9n/messages_no.json +3 -0
- package/assets/components/assets/popover/t9n/messages_pl.json +3 -0
- package/assets/components/assets/popover/t9n/messages_pt-BR.json +3 -0
- package/assets/components/assets/popover/t9n/messages_pt-PT.json +3 -0
- package/assets/components/assets/popover/t9n/messages_ro.json +3 -0
- package/assets/components/assets/popover/t9n/messages_ru.json +3 -0
- package/assets/components/assets/popover/t9n/messages_sk.json +3 -0
- package/assets/components/assets/popover/t9n/messages_sl.json +3 -0
- package/assets/components/assets/popover/t9n/messages_sr.json +3 -0
- package/assets/components/assets/popover/t9n/messages_sv.json +3 -0
- package/assets/components/assets/popover/t9n/messages_th.json +3 -0
- package/assets/components/assets/popover/t9n/messages_tr.json +3 -0
- package/assets/components/assets/popover/t9n/messages_uk.json +3 -0
- package/assets/components/assets/popover/t9n/messages_vi.json +3 -0
- package/assets/components/assets/popover/t9n/messages_zh-CN.json +3 -0
- package/assets/components/assets/popover/t9n/messages_zh-HK.json +3 -0
- package/assets/components/assets/popover/t9n/messages_zh-TW.json +3 -0
- package/assets/components/assets/rating/t9n/index.d.ts +4 -0
- package/assets/components/assets/rating/t9n/messages.json +4 -0
- package/assets/components/assets/rating/t9n/messages_ar.json +4 -0
- package/assets/components/assets/rating/t9n/messages_bg.json +4 -0
- package/assets/components/assets/rating/t9n/messages_bs.json +4 -0
- package/assets/components/assets/rating/t9n/messages_ca.json +4 -0
- package/assets/components/assets/rating/t9n/messages_cs.json +4 -0
- package/assets/components/assets/rating/t9n/messages_da.json +4 -0
- package/assets/components/assets/rating/t9n/messages_de.json +4 -0
- package/assets/components/assets/rating/t9n/messages_el.json +4 -0
- package/assets/components/assets/rating/t9n/messages_en.json +4 -0
- package/assets/components/assets/rating/t9n/messages_es.json +4 -0
- package/assets/components/assets/rating/t9n/messages_et.json +4 -0
- package/assets/components/assets/rating/t9n/messages_fi.json +4 -0
- package/assets/components/assets/rating/t9n/messages_fr.json +4 -0
- package/assets/components/assets/rating/t9n/messages_he.json +4 -0
- package/assets/components/assets/rating/t9n/messages_hr.json +4 -0
- package/assets/components/assets/rating/t9n/messages_hu.json +4 -0
- package/assets/components/assets/rating/t9n/messages_id.json +4 -0
- package/assets/components/assets/rating/t9n/messages_it.json +4 -0
- package/assets/components/assets/rating/t9n/messages_ja.json +4 -0
- package/assets/components/assets/rating/t9n/messages_ko.json +4 -0
- package/assets/components/assets/rating/t9n/messages_lt.json +4 -0
- package/assets/components/assets/rating/t9n/messages_lv.json +4 -0
- package/assets/components/assets/rating/t9n/messages_nl.json +4 -0
- package/assets/components/assets/rating/t9n/messages_no.json +4 -0
- package/assets/components/assets/rating/t9n/messages_pl.json +4 -0
- package/assets/components/assets/rating/t9n/messages_pt-BR.json +4 -0
- package/assets/components/assets/rating/t9n/messages_pt-PT.json +4 -0
- package/assets/components/assets/rating/t9n/messages_ro.json +4 -0
- package/assets/components/assets/rating/t9n/messages_ru.json +4 -0
- package/assets/components/assets/rating/t9n/messages_sk.json +4 -0
- package/assets/components/assets/rating/t9n/messages_sl.json +4 -0
- package/assets/components/assets/rating/t9n/messages_sr.json +4 -0
- package/assets/components/assets/rating/t9n/messages_sv.json +4 -0
- package/assets/components/assets/rating/t9n/messages_th.json +4 -0
- package/assets/components/assets/rating/t9n/messages_tr.json +4 -0
- package/assets/components/assets/rating/t9n/messages_uk.json +4 -0
- package/assets/components/assets/rating/t9n/messages_vi.json +4 -0
- package/assets/components/assets/rating/t9n/messages_zh-CN.json +4 -0
- package/assets/components/assets/rating/t9n/messages_zh-HK.json +4 -0
- package/assets/components/assets/rating/t9n/messages_zh-TW.json +4 -0
- package/assets/components/assets/scrim/t9n/index.d.ts +3 -0
- package/assets/components/assets/scrim/t9n/messages.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_ar.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_bg.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_bs.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_ca.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_cs.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_da.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_de.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_el.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_en.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_es.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_et.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_fi.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_fr.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_he.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_hr.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_hu.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_id.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_it.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_ja.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_ko.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_lt.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_lv.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_nl.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_no.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_pl.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_pt-BR.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_pt-PT.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_ro.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_ru.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_sk.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_sl.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_sr.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_sv.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_th.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_tr.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_uk.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_vi.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_zh-CN.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_zh-HK.json +3 -0
- package/assets/components/assets/scrim/t9n/messages_zh-TW.json +3 -0
- package/assets/components/assets/shell-panel/t9n/index.d.ts +3 -0
- package/assets/components/assets/shell-panel/t9n/messages.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_ar.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_bg.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_bs.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_ca.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_cs.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_da.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_de.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_el.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_en.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_es.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_et.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_fi.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_fr.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_he.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_hr.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_hu.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_id.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_it.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_ja.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_ko.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_lt.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_lv.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_nl.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_no.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_pl.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_pt-BR.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_pt-PT.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_ro.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_ru.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_sk.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_sl.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_sr.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_sv.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_th.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_tr.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_uk.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_vi.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_zh-CN.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_zh-HK.json +3 -0
- package/assets/components/assets/shell-panel/t9n/messages_zh-TW.json +3 -0
- package/assets/components/assets/time-picker/t9n/index.d.ts +14 -0
- package/assets/components/assets/time-picker/t9n/messages.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_ar.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_bg.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_bs.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_ca.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_cs.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_da.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_de.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_el.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_en.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_es.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_et.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_fi.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_fr.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_he.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_hr.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_hu.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_id.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_it.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_ja.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_ko.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_lt.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_lv.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_nl.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_no.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_pl.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_pt-BR.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_pt-PT.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_ro.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_ru.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_sk.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_sl.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_sr.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_sv.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_th.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_tr.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_uk.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_vi.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_zh-CN.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_zh-HK.json +14 -0
- package/assets/components/assets/time-picker/t9n/messages_zh-TW.json +14 -0
- package/assets/components/assets/tip/t9n/index.d.ts +3 -0
- package/assets/components/assets/tip/t9n/messages.json +3 -0
- package/assets/components/assets/tip/t9n/messages_ar.json +3 -0
- package/assets/components/assets/tip/t9n/messages_bg.json +3 -0
- package/assets/components/assets/tip/t9n/messages_bs.json +3 -0
- package/assets/components/assets/tip/t9n/messages_ca.json +3 -0
- package/assets/components/assets/tip/t9n/messages_cs.json +3 -0
- package/assets/components/assets/tip/t9n/messages_da.json +3 -0
- package/assets/components/assets/tip/t9n/messages_de.json +3 -0
- package/assets/components/assets/tip/t9n/messages_el.json +3 -0
- package/assets/components/assets/tip/t9n/messages_en.json +3 -0
- package/assets/components/assets/tip/t9n/messages_es.json +3 -0
- package/assets/components/assets/tip/t9n/messages_et.json +3 -0
- package/assets/components/assets/tip/t9n/messages_fi.json +3 -0
- package/assets/components/assets/tip/t9n/messages_fr.json +3 -0
- package/assets/components/assets/tip/t9n/messages_he.json +3 -0
- package/assets/components/assets/tip/t9n/messages_hr.json +3 -0
- package/assets/components/assets/tip/t9n/messages_hu.json +3 -0
- package/assets/components/assets/tip/t9n/messages_id.json +3 -0
- package/assets/components/assets/tip/t9n/messages_it.json +3 -0
- package/assets/components/assets/tip/t9n/messages_ja.json +3 -0
- package/assets/components/assets/tip/t9n/messages_ko.json +3 -0
- package/assets/components/assets/tip/t9n/messages_lt.json +3 -0
- package/assets/components/assets/tip/t9n/messages_lv.json +3 -0
- package/assets/components/assets/tip/t9n/messages_nl.json +3 -0
- package/assets/components/assets/tip/t9n/messages_no.json +3 -0
- package/assets/components/assets/tip/t9n/messages_pl.json +3 -0
- package/assets/components/assets/tip/t9n/messages_pt-BR.json +3 -0
- package/assets/components/assets/tip/t9n/messages_pt-PT.json +3 -0
- package/assets/components/assets/tip/t9n/messages_ro.json +3 -0
- package/assets/components/assets/tip/t9n/messages_ru.json +3 -0
- package/assets/components/assets/tip/t9n/messages_sk.json +3 -0
- package/assets/components/assets/tip/t9n/messages_sl.json +3 -0
- package/assets/components/assets/tip/t9n/messages_sr.json +3 -0
- package/assets/components/assets/tip/t9n/messages_sv.json +3 -0
- package/assets/components/assets/tip/t9n/messages_th.json +3 -0
- package/assets/components/assets/tip/t9n/messages_tr.json +3 -0
- package/assets/components/assets/tip/t9n/messages_uk.json +3 -0
- package/assets/components/assets/tip/t9n/messages_vi.json +3 -0
- package/assets/components/assets/tip/t9n/messages_zh-CN.json +3 -0
- package/assets/components/assets/tip/t9n/messages_zh-HK.json +3 -0
- package/assets/components/assets/tip/t9n/messages_zh-TW.json +3 -0
- package/assets/components/assets/tip-manager/t9n/index.d.ts +7 -0
- package/assets/components/assets/tip-manager/t9n/messages.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_ar.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_bg.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_bs.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_ca.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_cs.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_da.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_de.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_el.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_en.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_es.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_et.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_fi.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_fr.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_he.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_hr.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_hu.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_id.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_it.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_ja.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_ko.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_lt.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_lv.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_nl.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_no.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_pl.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_pt-BR.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_pt-PT.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_ro.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_ru.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_sk.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_sl.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_sr.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_sv.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_th.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_tr.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_uk.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_vi.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_zh-CN.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_zh-HK.json +7 -0
- package/assets/components/assets/tip-manager/t9n/messages_zh-TW.json +7 -0
- package/assets/components/assets/value-list/t9n/index.d.ts +6 -0
- package/assets/components/assets/value-list/t9n/messages.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_ar.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_bg.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_bs.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_ca.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_cs.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_da.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_de.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_el.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_en.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_es.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_et.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_fi.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_fr.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_he.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_hr.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_hu.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_id.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_it.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_ja.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_ko.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_lt.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_lv.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_nl.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_no.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_pl.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_pt-BR.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_pt-PT.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_ro.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_ru.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_sk.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_sl.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_sr.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_sv.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_th.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_tr.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_uk.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_vi.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_zh-CN.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_zh-HK.json +6 -0
- package/assets/components/assets/value-list/t9n/messages_zh-TW.json +6 -0
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/036384bab7511be0d209.js +1 -0
- package/assets/esri/core/workers/chunks/106329846470141953ad.js +1 -0
- package/assets/esri/core/workers/chunks/{13a6431055eaae030cc8.js → 1b0a306176cc184e6926.js} +1 -1
- package/assets/esri/core/workers/chunks/1cf86638f8e097d8e6e2.js +1 -0
- package/assets/esri/core/workers/chunks/1ec2964714528de56607.js +1 -0
- package/assets/esri/core/workers/chunks/21cc98b592871d141f97.js +1 -0
- package/assets/esri/core/workers/chunks/22677d246a80195507e6.js +1 -0
- package/assets/esri/core/workers/chunks/3c570c5936252956d795.js +1 -0
- package/assets/esri/core/workers/chunks/42f2ba5a86c10e50e94e.js +1 -0
- package/assets/esri/core/workers/chunks/43b2e17ffd5ffcbcf269.js.LICENSE.txt +1 -1
- package/assets/esri/core/workers/chunks/43f6aa5c6f6a2bf316ef.js +1 -0
- package/assets/esri/core/workers/chunks/{39ba00c44253a590a717.js → 51b298a6f0550feb44e7.js} +1 -1
- package/assets/esri/core/workers/chunks/692f73ba846b8afa6b67.js +1 -0
- package/assets/esri/core/workers/chunks/697787ffcb6a2b2125c2.js +1 -0
- package/assets/esri/core/workers/chunks/6be5edf3c8e21c3ec360.js +1 -0
- package/assets/esri/core/workers/chunks/{8273f5059682a0ed5541.js → 6dbd3aabfe4d5d593205.js} +1 -1
- package/assets/esri/core/workers/chunks/6f7500c4f2b5776cc665.js +1 -0
- package/assets/esri/core/workers/chunks/7142779efc4ddba0fb82.js +1 -0
- package/assets/esri/core/workers/chunks/74ff8c8f40d2e9c3868b.js +1 -0
- package/assets/esri/core/workers/chunks/7e4a136131693bd4f77b.js +1 -0
- package/assets/esri/core/workers/chunks/7ebc4be4ffe1b37f2792.js +1 -0
- package/assets/esri/core/workers/chunks/{cc5f2321c2d4ada25f00.js → 80c7726743baf9f54079.js} +1 -1
- package/assets/esri/core/workers/chunks/8335123c048fcca54808.js +1 -0
- package/assets/esri/core/workers/chunks/8f5ff4eb9d71b36a0036.js +1 -0
- package/assets/esri/core/workers/chunks/{3c412bbbf65225d1b5a9.js → 9b1034ae5cd818ed279c.js} +1 -1
- package/assets/esri/core/workers/chunks/a80a9c725c06154ba415.js +1 -0
- package/assets/esri/core/workers/chunks/acfde5a4cce3a4589f15.js +1 -0
- package/assets/esri/core/workers/chunks/b1bc79cc01b572f05ca1.js +1 -0
- package/assets/esri/core/workers/chunks/b61ce04af4e57b1856cb.js +1 -0
- package/assets/esri/core/workers/chunks/b78e50c03cd33623eb62.js +1 -0
- package/assets/esri/core/workers/chunks/c419a26e2b7d20d99cef.js +1 -0
- package/assets/esri/core/workers/chunks/{f05b5b66d4d59b0c3636.js → c6adbf6c29594d4ade80.js} +1 -1
- package/assets/esri/core/workers/chunks/c860891552d6d886394b.js +1 -0
- package/assets/esri/core/workers/chunks/cd14babd690c96985b05.js +1 -0
- package/assets/esri/core/workers/chunks/ceb1770ed82fcbf72531.js +1 -0
- package/assets/esri/core/workers/chunks/d0807ae56d1e9d187af3.js +1 -0
- package/assets/esri/core/workers/chunks/d4338bc4a99b71c44dc2.js +1 -0
- package/assets/esri/core/workers/chunks/d75f1c8f8dcabdf32021.js +1 -0
- package/assets/esri/core/workers/chunks/e9e64936f01505bb1c1e.js +1 -0
- package/assets/esri/core/workers/chunks/eab47a18717478014e03.js +1 -0
- package/assets/esri/core/workers/chunks/{d58d6c656066e44b9d55.js → eee3fb92c649ef45c900.js} +1 -1
- package/assets/esri/core/workers/chunks/f19e2fa3af43966cdc3b.js +1 -0
- package/assets/esri/core/workers/chunks/fa07f9d9abff17559117.js +1 -0
- package/assets/esri/libs/vxl/vxlLayer.wasm +0 -0
- package/assets/esri/themes/dark/main.css +1 -1
- package/assets/esri/themes/light/main.css +1 -1
- package/assets/esri/themes/light/view.css +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_en.json +1 -1
- package/chunks/ChapmanAtmosphere.glsl.js +1 -1
- package/chunks/CloudsComposition.glsl.js +1 -1
- package/chunks/FogHaze.glsl.js +1 -1
- package/chunks/Jpg.js +1 -1
- package/chunks/SunCalc.js +1 -1
- package/chunks/Zlib.js +1 -1
- package/chunks/ajv.bundle.js +1 -1
- package/chunks/ar.js +1 -1
- package/chunks/arcgis-knowledge-client-core-simd.js +1 -1
- package/chunks/arcgis-knowledge-client-core.js +1 -1
- package/chunks/basis_transcoder.js +1 -1
- package/chunks/bg_BG.js +1 -1
- package/chunks/bs_BA.js +1 -1
- package/chunks/builtins.js +1 -1
- package/chunks/ca_ES.js +1 -1
- package/chunks/cs_CZ.js +1 -1
- package/chunks/da_DK.js +1 -1
- package/chunks/de_CH.js +1 -1
- package/chunks/de_DE.js +1 -1
- package/chunks/earcut.js +1 -1
- package/chunks/el_GR.js +1 -1
- package/chunks/en_CA.js +1 -1
- package/chunks/en_US.js +1 -1
- package/chunks/es_ES.js +1 -1
- package/chunks/et_EE.js +1 -1
- package/chunks/fi_FI.js +1 -1
- package/chunks/fr_FR.js +1 -1
- package/chunks/geometryEngineBase.js +1 -1
- package/chunks/he_IL.js +1 -1
- package/chunks/hr_HR.js +1 -1
- package/chunks/hu_HU.js +1 -1
- package/chunks/i3s.js +1 -1
- package/chunks/id_ID.js +1 -1
- package/chunks/index.js +1 -1
- package/chunks/it_IT.js +1 -1
- package/chunks/ja_JP.js +1 -1
- package/chunks/ko_KR.js +1 -1
- package/chunks/lclayout.js +1 -1
- package/chunks/lerc-wasm.js +1 -1
- package/chunks/libtess-asm.js +1 -1
- package/chunks/libtess.js +1 -1
- package/chunks/lt_LT.js +1 -1
- package/chunks/lv_LV.js +1 -1
- package/chunks/mat4.js +1 -1
- package/chunks/nb_NO.js +1 -1
- package/chunks/nl_NL.js +1 -1
- package/chunks/pe-wasm.js +1 -1
- package/chunks/pl_PL.js +1 -1
- package/chunks/pt_BR.js +1 -1
- package/chunks/pt_PT.js +1 -1
- package/chunks/quat2.js +1 -1
- package/chunks/quickselect.js +1 -1
- package/chunks/ro_RO.js +1 -1
- package/chunks/ru_RU.js +1 -1
- package/chunks/sk_SK.js +1 -1
- package/chunks/sl_SL.js +1 -1
- package/chunks/sr_RS.js +1 -1
- package/chunks/sv_SE.js +1 -1
- package/chunks/th_TH.js +1 -1
- package/chunks/tr_TR.js +1 -1
- package/chunks/uk_UA.js +1 -1
- package/chunks/vi_VN.js +1 -1
- package/chunks/vxlLayer.js +1 -1
- package/chunks/zh_Hans.js +1 -1
- package/chunks/zh_Hant.js +1 -1
- package/core/libs/gl-matrix-2/mat4.js +1 -1
- package/core/libs/gl-matrix-2/math/mat4.js +1 -1
- package/core/sql/WhereGrammar.js +1 -1
- package/layers/FeatureLayer.js +1 -1
- package/layers/SubtypeGroupLayer.js +1 -1
- package/layers/VoxelLayer.js +1 -1
- package/layers/VoxelWasmPerSceneView.js +1 -1
- package/layers/effects/parser.js +1 -1
- package/layers/support/featureLayerUtils.js +1 -1
- package/layers/support/layerUtils.js +1 -1
- package/layers/voxel/VoxelIsosurface.js +1 -1
- package/libs/vxl/enums.js +1 -1
- package/package.json +2 -2
- package/support/revision.js +1 -1
- package/versionManagementService/GDBVersion.js +1 -1
- package/views/2d/engine/webgl/animatedFormats/apng.js +1 -1
- package/views/2d/interactive/editingTools/TransformTool.js +1 -1
- package/views/2d/interactive/editingTools/manipulations/ScaleManipulation.js +1 -1
- package/views/2d/layers/graphics/BaseGraphicContainer.js +1 -1
- package/views/3d/analysis/Slice/SliceTool.js +1 -1
- package/views/3d/analysis/Slice/SliceVisualization.js +1 -1
- package/views/3d/analysis/Slice/sliceToolUtils.js +1 -1
- package/views/3d/environment/CloudsGenerator.js +1 -1
- package/views/3d/environment/EnvironmentRenderer.js +1 -1
- package/views/3d/environment/PanoramicAtmosphere.js +1 -1
- package/views/3d/environment/Precipitation.js +1 -1
- package/views/3d/environment/SceneViewEnvironment.js +1 -1
- package/views/3d/environment/SimpleAtmosphere.js +1 -1
- package/views/3d/glTF/internal/Resource.js +1 -1
- package/views/3d/interactive/editingTools/manipulations/MoveXYAxisManipulation.js +1 -1
- package/views/3d/interactive/editingTools/manipulations/MoveXYDiscManipulation.js +1 -1
- package/views/3d/interactive/editingTools/transformGraphic/GraphicScaleRotateTransform.js +1 -1
- package/views/3d/interactive/visualElements/MeasurementAreaVisualElement.js +1 -1
- package/views/3d/layers/I3SMeshView3D.js +1 -1
- package/views/3d/layers/VoxelLayerView3D.js +1 -1
- package/views/3d/layers/i3s/I3SElevationProvider.js +1 -1
- package/views/3d/layers/i3s/Intersector.js +1 -1
- package/views/3d/layers/support/I3STreeDebugger.js +1 -1
- package/views/3d/state/helpers/SceneIntersectionHelper.js +1 -1
- package/views/3d/terrain/ExtentHelper.js +1 -1
- package/views/3d/terrain/Overlay.js +1 -1
- package/views/3d/terrain/OverlayManager.js +1 -1
- package/views/3d/terrain/OverlayRenderer.js +1 -1
- package/views/3d/terrain/PatchGeometryFactory.js +1 -1
- package/views/3d/terrain/PatchRenderData.js +1 -1
- package/views/3d/terrain/RasterTile.js +1 -1
- package/views/3d/terrain/TerrainSurface.js +1 -1
- package/views/3d/terrain/Tile.js +1 -1
- package/views/3d/terrain/TileCompositor.js +1 -1
- package/views/3d/terrain/TileRenderer.js +1 -1
- package/views/3d/terrain/terrainUtils.js +1 -1
- package/views/3d/terrain/tileUtils.js +1 -1
- package/views/3d/webgl-engine/lib/GeometryUtil.js +1 -1
- package/views/3d/webgl-engine/lib/IntersectorInterfaces.js +1 -1
- package/views/3d/webgl-engine/lib/Object3D.js +1 -1
- package/views/3d/webgl-engine/lib/RenderStateFeature.js +1 -1
- package/views/3d/webgl-engine/lib/intersectorUtilsConversions.js +1 -1
- package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/internal/bufferWriterUtils.js +1 -1
- package/views/SceneView.js +1 -1
- package/views/webgl/testFloatBufferBlend.js +1 -1
- package/widgets/Directions.js +1 -1
- package/widgets/Editor/EditorViewModel.js +1 -1
- package/widgets/Editor/workflowUtils.js +1 -1
- package/widgets/Editor.js +1 -1
- package/widgets/Feature/FeatureRelationship/FeatureRelationshipViewModel.js +1 -1
- package/widgets/Feature/FeatureRelationship.js +1 -1
- package/widgets/Feature.js +1 -1
- package/widgets/FeatureTable.js +1 -1
- package/widgets/Popup.js +1 -1
- package/widgets/Slice.js +1 -1
- package/widgets/UtilityNetworkTrace.js +1 -1
- package/widgets/Weather.js +1 -1
- package/widgets/support/ColorPicker.js +1 -1
- package/widgets/support/SnappingControls.js +1 -1
- package/assets/components/assets/date-picker/nls/messages.json +0 -31
- package/assets/esri/core/workers/chunks/129700cbb943494c18fb.js +0 -1
- package/assets/esri/core/workers/chunks/1a78eefaa1bd6431f977.js +0 -1
- package/assets/esri/core/workers/chunks/1d9f7e62d1ef9471c045.js +0 -1
- package/assets/esri/core/workers/chunks/2247b07f59959c5e0767.js +0 -1
- package/assets/esri/core/workers/chunks/34f7836121679aa03358.js +0 -1
- package/assets/esri/core/workers/chunks/3abaa21e87938a93d483.js +0 -1
- package/assets/esri/core/workers/chunks/3ebb0a2247cc3e33b764.js +0 -1
- package/assets/esri/core/workers/chunks/4cb64ccb5fba126f9a66.js +0 -1
- package/assets/esri/core/workers/chunks/54266eadd3abaf20c808.js +0 -1
- package/assets/esri/core/workers/chunks/5ef9489ce7e0425148db.js +0 -1
- package/assets/esri/core/workers/chunks/6196cfdeb91ceba52af3.js +0 -1
- package/assets/esri/core/workers/chunks/6ad6dcb4961d4854852a.js +0 -1
- package/assets/esri/core/workers/chunks/700373e83c24e24f7772.js +0 -1
- package/assets/esri/core/workers/chunks/78355fac58191d886786.js +0 -1
- package/assets/esri/core/workers/chunks/8412644b1ae7c03ddf84.js +0 -1
- package/assets/esri/core/workers/chunks/8fbb25f0c9fa3f023853.js +0 -1
- package/assets/esri/core/workers/chunks/933f9b62a3a20e768927.js +0 -1
- package/assets/esri/core/workers/chunks/9b4bbf3dd916f36bc1c7.js +0 -1
- package/assets/esri/core/workers/chunks/9bbcf17003f5650c4d96.js +0 -1
- package/assets/esri/core/workers/chunks/a5b2db394447aac6d970.js +0 -1
- package/assets/esri/core/workers/chunks/ae2c7dcdf458043f4fdf.js +0 -1
- package/assets/esri/core/workers/chunks/ae725a187df8ce45adb2.js +0 -1
- package/assets/esri/core/workers/chunks/b14fd92aa29a1f554e59.js +0 -1
- package/assets/esri/core/workers/chunks/b71a0a8a2f446c671161.js +0 -1
- package/assets/esri/core/workers/chunks/b7922573eda9a43136e3.js +0 -1
- package/assets/esri/core/workers/chunks/d3299b1e1502d8d20eef.js +0 -1
- package/assets/esri/core/workers/chunks/d828a0656e7351a74fc4.js +0 -1
- package/assets/esri/core/workers/chunks/d9a4af329531d6921f8b.js +0 -1
- package/assets/esri/core/workers/chunks/e08dae3eab225eb83e4e.js +0 -1
- package/assets/esri/core/workers/chunks/e192b7e75931b218fe24.js +0 -1
- package/assets/esri/core/workers/chunks/ed59ec7a8688437ebdbc.js +0 -1
- package/assets/esri/core/workers/chunks/f27d1065876097390d7e.js +0 -1
- package/assets/esri/core/workers/chunks/fb35df950949fa4200c9.js +0 -1
- package/assets/esri/core/workers/chunks/ff0e678218bbc01bc39f.js +0 -1
- package/assets/esri/core/workers/chunks/ff7c1f6450c50422c086.js +0 -1
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.26/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as e}from"../../../chunks/tslib.es6.js";import r from"../../../core/Accessor.js";import t from"../../../core/Evented.js";import s from"../../../core/Handles.js";import{someMap as i}from"../../../core/MapUtils.js";import{releaseMaybe as o,disposeMaybe as a,destroyMaybe as n,isSome as h,isNone as d,unwrapOr as l}from"../../../core/maybe.js";import c from"../../../core/PooledArray.js";import{watch as p,syncAndInitial as u,on as _}from"../../../core/reactiveUtils.js";import{someSet as m}from"../../../core/SetUtils.js";import{property as g}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/accessorSupport/ensureType.js";import"../../../core/arrayUtils.js";import{subclass as y}from"../../../core/accessorSupport/decorators/subclass.js";import{w as R,f}from"../../../chunks/mat4.js";import{s as T}from"../../../chunks/vec3.js";import{f as w}from"../../../chunks/vec3f64.js";import{ViewingMode as b}from"../../ViewingMode.js";import{DrapeTargetType as v,DrapeSourceType as x}from"../layers/interfaces.js";import O from"../support/debugFlags.js";import{OverlayIndex as S,RenderTargetType as D}from"./interfaces.js";import{Overlay as j}from"./Overlay.js";import{OverlayFramebufferObject as E}from"./OverlayFramebufferObject.js";import{OverlayRenderTarget as P}from"./OverlayRenderTarget.js";import{ShaderOutput as A}from"../webgl-engine/core/shaderLibrary/ShaderOutput.js";import{T as C}from"../../../chunks/TextureOnly.glsl.js";import{ShaderTechniqueRepository as F}from"../webgl-engine/core/shaderTechnique/ShaderTechniqueRepository.js";import{UpdatePolicy as q}from"../webgl-engine/lib/basicInterfaces.js";import{Camera as M}from"../webgl-engine/lib/Camera.js";import{GLMaterialRepository as U}from"../webgl-engine/lib/GLMaterialRepository.js";import{createEmptyDepthTexture as V,createQuadVAO as W}from"../webgl-engine/lib/glUtil3D.js";import{GridLocalOriginFactory as I}from"../webgl-engine/lib/GridLocalOriginFactory.js";import{RenderOccludedFlag as B}from"../webgl-engine/lib/Material.js";import{OverlayRenderContext as H}from"../webgl-engine/lib/RenderContext.js";import{RenderSlot as L}from"../webgl-engine/lib/RenderSlot.js";import{ShadowMap as N}from"../webgl-engine/lib/ShadowMap.js";import{SortedRenderGeometryRenderer as G}from"../webgl-engine/lib/SortedRenderGeometryRenderer.js";import{SSAOHelper as k}from"../webgl-engine/lib/SSAOHelper.js";import{TextureTechnique as z}from"../webgl-engine/lib/TextureTechnique.js";import{TextureTechniqueConfiguration as Y}from"../webgl-engine/lib/TextureTechniqueConfiguration.js";import{TransparencyPassType as X}from"../webgl-engine/lib/TransparencyPassType.js";import{AmbientLight as J}from"../webgl-engine/lighting/Lightsources.js";import{StippleTextureRepository as K}from"../webgl-engine/materials/StippleTextureRepository.js";import{TaskPriority as Q,noBudget as Z}from"../../support/Scheduler.js";import{ClearBufferBit as $,PrimitiveType as ee,TextureType as re,PixelFormat as te,PixelType as se,TextureSamplingMode as ie}from"../../webgl/enums.js";import{Texture as oe}from"../../webgl/Texture.js";import{vertexCount as ae}from"../../webgl/Util.js";let ne=class extends r{get _bindParameters(){return this._renderContext.bindParameters}get rctx(){return this._rctx}get materialRepository(){return this._materialRepository}get screenToWorldRatio(){return this._screenToWorldRatio}get localOriginFactory(){return this._localOriginFactory}constructor(e){super(e),this._overlays=null,this._overlayRenderTarget=null,this._hasHighlights=!1,this._rendersOccluded=!1,this._hasWater=!1,this._handles=new s,this._renderers=new Map,this._sortedDrapeSourceRenderersDirty=!1,this._sortedRenderers=new c,this._passParameters=new C,this._rctx=null,this._materialRepository=null,this._screenToWorldRatio=1,this._localOriginFactory=null,this.worldToPCSRatio=1,this.events=new t,this.longitudeCyclical=null}initialize(){const e=this.view._stage.renderView;this._rctx=e.renderingContext;const r=e.waterTextureRepository;this._stippleTextureRepository=new K(e.renderingContext),this._shaderTechniqueRepository=new F({rctx:this._rctx,viewingMode:b.Local,stippleTextureRepository:this._stippleTextureRepository,waterTextureRepository:r}),this._renderContext=new H(this._rctx,new N(this._rctx,this.view.state.viewingMode),new k(this._shaderTechniqueRepository,this._rctx,(()=>{}))),this._handles.add([p((()=>r.updating),(()=>this.events.emit("content-changed")),u),p((()=>this.spatialReference),(e=>this._localOriginFactory=new I(e)),u),_((()=>this.view.allLayerViews),"after-changes",(()=>this._sortedDrapeSourceRenderersDirty=!0))]),this._materialRepository=new U(e.textureRepository,this._shaderTechniqueRepository,(e=>{(e.renderOccluded&ue)>0!==this._rendersOccluded&&this._updateRendersOccluded(),this.events.emit("content-changed"),this.notifyChange("updating"),this.notifyChange("isEmpty")}),(()=>this.events.emit("content-changed"))),this._bindParameters.slot=L.DRAPED_MATERIAL,this._bindParameters.highlightDepthTexture=V(this._rctx),this._bindParameters.camera=ce,this._bindParameters.transparencyPassType=X.NONE,this._bindParameters.newLighting.noonFactor=0,this._bindParameters.newLighting.globalFactor=0,this._bindParameters.newLighting.set([new J(w(1,1,1))]),this._handles.add(this.view.resourceController.scheduler.registerTask(Q.STAGE,this))}destroy(){this._handles.destroy(),this._renderers.forEach((e=>e.destroy())),this._renderers.clear(),this._debugTextureTechnique=o(this._debugTextureTechnique),this._passParameters.texture=a(this._passParameters.texture),this._bindParameters.highlightDepthTexture=a(this._bindParameters.highlightDepthTexture),this._shaderTechniqueRepository=n(this._shaderTechniqueRepository),this._temporaryFBO=a(this._temporaryFBO),this._quadVAO=a(this._quadVAO),this.disposeOverlays()}get updating(){return this._sortedDrapeSourceRenderersDirty||i(this._renderers,(e=>e.updating))}get hasOverlays(){return h(this._overlays)&&h(this._overlayRenderTarget)}get gpuMemoryUsage(){return h(this._overlayRenderTarget)?this._overlayRenderTarget.gpuMemoryUsage:0}createGeometryDrapeSourceRenderer(e){return this.createDrapeSourceRenderer(e,G)}createDrapeSourceRenderer(e,r,t){const s=this._renderers.get(e);h(s)&&s.destroy();const i=new r({...t,rendererContext:this,drapeSource:e});return this._renderers.set(e,i),this._sortedDrapeSourceRenderersDirty=!0,"fullOpacity"in e&&this._handles.add(p((()=>e.fullOpacity),(()=>this.events.emit("content-changed"))),e),i}removeDrapeSourceRenderer(e){if(d(e))return;const r=this._renderers.get(e);d(r)||(this._sortedDrapeSourceRenderersDirty=!0,this._renderers.delete(e),this._handles.remove(e),r.destroy())}collectUnusedRenderTargetMemory(e){let r=!1;if(h(this._overlayRenderTarget))for(const t of this._overlayRenderTarget.renderTargets){const s=this.overlays[0].validTargets[t.type]||!this.overlays[1].validTargets[t.type];r=this._overlayRenderTarget.validateUsageForTarget(s,t,e)||r}return r}get overlays(){return l(this._overlays,[])}ensureDrapeTargets(e){h(this._overlays)&&this._overlays.forEach((r=>r.hasTargetWithoutRasterImage=m(e,(e=>e.drapeTargetType===v.WithoutRasterImage))))}ensureDrapeSources(e){h(this._overlays)&&this._overlays.forEach((r=>{r.hasDrapedFeatureSource=m(e,(e=>e.drapeSourceType===x.Features)),r.hasDrapedRasterSource=m(e,(e=>e.drapeSourceType===x.RasterImage))}))}ensureOverlays(e,r){d(this._overlays)&&(this._overlayRenderTarget=new P(this._rctx),this._overlays=[new j(S.INNER,this._overlayRenderTarget),new j(S.OUTER,this._overlayRenderTarget)]),this.ensureDrapeTargets(e),this.ensureDrapeSources(r)}disposeOverlays(){this._overlays=null,this._overlayRenderTarget=a(this._overlayRenderTarget),this.events.emit("textures-disposed")}get running(){return this.updating}runTask(e){this._processDrapeSources(e,(()=>!0))}_processDrapeSources(e,r){let t=!1;for(const[s,i]of this._renderers){if(e.done)break;(s.destroyed||r(s))&&(i.commitChanges()&&(t=!0,e.madeProgress()))}this._sortedDrapeSourceRenderersDirty&&(this._sortedDrapeSourceRenderersDirty=!1,t=!0,this._updateSortedDrapeSourceRenderers()),t&&(h(this._overlays)&&0===this._renderers.size&&this.disposeOverlays(),this.notifyChange("updating"),this.notifyChange("isEmpty"),this.events.emit("content-changed"),this._updateHasHighlights(),this._updateRendersOccluded(),this._updateHasWater())}processSyncDrapeSources(){this._processDrapeSources(Z,(e=>e.updatePolicy===q.SYNC))}get isEmpty(){return!O.OVERLAY_DRAW_DEBUG_TEXTURE&&!i(this._renderers,(e=>!e.isEmpty))}get hasHighlights(){return this._hasHighlights}get hasWater(){return this._hasWater}get rendersOccluded(){return this._rendersOccluded}updateAnimation(e){let r=!1;return this._renderers.forEach((t=>r=t.updateAnimation(e)||r)),r}updateDrapeSourceOrder(){this._sortedDrapeSourceRenderersDirty=!0}drawTarget(e,r,t){const s=e.canvasGeometries;if(0===s.numViews)return!1;this._screenToWorldRatio=t*e.mapUnitsPerPixel;const i=r.output;if(this.isEmpty||i===A.Highlight&&!this.hasHighlights||i===A.Normal&&!this.hasWater||!e.hasSomeSizedView())return!1;const o=r.fbo;if(!o.isValid())return!1;const a=2*e.resolution,n=e.resolution;o.resize(a,n);const d=this._rctx;ce.pixelRatio=e.pixelRatio*t,this._renderContext.output=i,this._bindParameters.screenToWorldRatio=this._screenToWorldRatio,this._bindParameters.screenToPCSRatio=this._screenToWorldRatio*this.worldToPCSRatio,this._bindParameters.slot=i===A.Normal?L.DRAPED_WATER:L.DRAPED_MATERIAL,e.applyViewport(this._rctx),o.bind(d),e.index===S.INNER&&(d.setClearColor(0,0,0,0),d.clearSafe($.COLOR_BUFFER_BIT));const l=r.type===D.ColorNoRasterImage?he.ExcludeRasterImage:r.type===D.Occluded?he.OccludedOnly:he.Normal;if(l===he.OccludedOnly&&(this._renderContext.renderOccludedMask=ue),O.OVERLAY_DRAW_DEBUG_TEXTURE&&l!==he.OccludedOnly)for(let h=0;h<s.numViews;h++)this._setViewParameters(s.extents[h],e,ce),this._drawDebugTexture(e.resolution,le[e.index]);return this._renderers.size>0&&this._sortedRenderers.forAll((({drapeSource:r,renderer:t})=>{if(l===he.ExcludeRasterImage&&r.drapeSourceType===x.RasterImage)return;const{fullOpacity:c}=r,p=h(c)&&c<1&&i===A.Color;p&&(this.bindTemporaryFramebuffer(this._rctx,a,n),d.clearSafe($.COLOR_BUFFER_BIT));for(let i=0;i<s.numViews;i++)this._setViewParameters(s.extents[i],e,ce),t.render(this._renderContext,this._bindParameters);p&&h(this._temporaryFBO)&&(o.bind(d),this.view._stage.renderView.compositingHelper.compositeOverlay(this._renderContext.bindParameters,this._temporaryFBO.getTexture(),c,e.index))})),d.bindFramebuffer(null),o.generateMipMap(),this._renderContext.resetRenderOccludedMask(),!0}bindTemporaryFramebuffer(e,r,t){d(this._temporaryFBO)&&(this._temporaryFBO=new E(e,!1)),this._temporaryFBO.resize(r,t),this._temporaryFBO.bind(e)}async reloadShaders(){await this._shaderTechniqueRepository.reloadAll()}notifyContentChanged(){this.events.emit("content-changed")}intersect(e,r,t,s){let i=0;for(const o of this._renderers.values())i=o.intersect?.(e,r,t,s,i)??i}_updateSortedDrapeSourceRenderers(){if(this._sortedRenderers.clear(),0===this._renderers.size)return;const e=this.view.map.allLayers;this._renderers.forEach(((r,t)=>{const s=e.indexOf(t.layer);this._sortedRenderers.push(new de(t,r,s<0?1/0:s))})),this._sortedRenderers.sort(((e,r)=>e.index-r.index))}_setViewParameters(e,r,t){t.viewport[0]=t.viewport[1]=0,t.viewport[2]=t.viewport[3]=r.resolution,R(t.projectionMatrix,0,e[2]-e[0],0,e[3]-e[1],t.near,t.far),f(t.viewMatrix,[-e[0],-e[1],0]),this._bindParameters.camera=t}_updateHasWater(){const e=i(this._renderers,(e=>e.hasWater));e!==this._hasWater&&(this._hasWater=e,this.events.emit("has-water",e))}_updateHasHighlights(){const e=i(this._renderers,(e=>e.hasHighlights));e!==this._hasHighlights&&(this._hasHighlights=e,this.events.emit("has-highlights",e))}_updateRendersOccluded(){const e=i(this._renderers,(e=>e.rendersOccluded));e!==this._rendersOccluded&&(this._rendersOccluded=e,this.events.emit("renders-occluded",e))}_drawDebugTexture(e,r){this._ensureDebugPatternResources(e,e,r);const t=this._rctx;t.bindTechnique(this._debugTextureTechnique,this._passParameters,null),t.bindVAO(this._quadVAO),t.drawArrays(ee.TRIANGLE_STRIP,0,ae(this._quadVAO,"geometry"))}_ensureDebugPatternResources(e,r,t){if(T(this._passParameters.color,t[0],t[1],t[2]),this._passParameters.texture)return;const s=new Uint8Array(e*r*4);let i=0;for(let a=0;a<r;a++)for(let t=0;t<e;t++){const o=Math.floor(t/10),n=Math.floor(a/10);o<2||n<2||10*o>e-20||10*n>r-20?(s[i++]=255,s[i++]=255,s[i++]=255,s[i++]=255):(s[i++]=255,s[i++]=255,s[i++]=255,s[i++]=1&o&&1&n?1&t^1&a?0:255:1&o^1&n?0:128)}this._passParameters.texture=new oe(this._rctx,{target:re.TEXTURE_2D,pixelFormat:te.RGBA,dataType:se.UNSIGNED_BYTE,samplingMode:ie.NEAREST,width:e,height:r},s);const o=new Y;o.hasAlpha=!0,this._debugTextureTechnique=this._shaderTechniqueRepository.acquire(z,o),this._quadVAO=W(this._rctx)}get test(){return{drapeSourceRenderers:this._renderers,getDrapeSourceRenderer:e=>this._renderers.get(e)}}};var he;e([g()],ne.prototype,"_sortedDrapeSourceRenderersDirty",void 0),e([g({autoDestroy:!0})],ne.prototype,"_shaderTechniqueRepository",void 0),e([g({autoDestroy:!0})],ne.prototype,"_stippleTextureRepository",void 0),e([g({constructOnly:!0})],ne.prototype,"view",void 0),e([g()],ne.prototype,"worldToPCSRatio",void 0),e([g()],ne.prototype,"spatialReference",void 0),e([g({type:Boolean,readOnly:!0})],ne.prototype,"updating",null),e([g()],ne.prototype,"isEmpty",null),ne=e([y("esri.views.3d.terrain.OverlayRenderer")],ne),function(e){e[e.Normal=0]="Normal",e[e.OccludedOnly=1]="OccludedOnly",e[e.ExcludeRasterImage=2]="ExcludeRasterImage"}(he||(he={}));class de{constructor(e,r,t){this.drapeSource=e,this.renderer=r,this.index=t}}const le=[[1,.5,.5],[.5,.5,1]],ce=new M;ce.near=1,ce.far=1e4,ce.relativeElevation=null;const pe=-2,ue=B.OccludeAndTransparent;export{pe as DRAPED_Z,he as DrawPassOption,ne as OverlayRenderer,ue as overlayRenderOccludedFlag};
|
|
5
|
+
import{_ as e}from"../../../chunks/tslib.es6.js";import r from"../../../core/Accessor.js";import t from"../../../core/Evented.js";import s from"../../../core/Handles.js";import{someMap as i}from"../../../core/MapUtils.js";import{releaseMaybe as o,disposeMaybe as a,destroyMaybe as n,isSome as h,isNone as d,unwrapOr as l}from"../../../core/maybe.js";import c from"../../../core/PooledArray.js";import{watch as p,syncAndInitial as u,on as _}from"../../../core/reactiveUtils.js";import{someSet as m}from"../../../core/SetUtils.js";import{property as g}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/accessorSupport/ensureType.js";import"../../../core/arrayUtils.js";import{subclass as y}from"../../../core/accessorSupport/decorators/subclass.js";import{w as R,f}from"../../../chunks/mat4.js";import{s as T}from"../../../chunks/vec3.js";import{f as w}from"../../../chunks/vec3f64.js";import{ViewingMode as b}from"../../ViewingMode.js";import{DrapeTargetType as v,DrapeSourceType as x}from"../layers/interfaces.js";import O from"../support/debugFlags.js";import{OverlayIndex as S,RenderTargetType as D}from"./interfaces.js";import{Overlay as j}from"./Overlay.js";import{OverlayFramebufferObject as E}from"./OverlayFramebufferObject.js";import{OverlayRenderTarget as P}from"./OverlayRenderTarget.js";import{ShaderOutput as A}from"../webgl-engine/core/shaderLibrary/ShaderOutput.js";import{T as C}from"../../../chunks/TextureOnly.glsl.js";import{ShaderTechniqueRepository as F}from"../webgl-engine/core/shaderTechnique/ShaderTechniqueRepository.js";import{UpdatePolicy as q}from"../webgl-engine/lib/basicInterfaces.js";import{Camera as M}from"../webgl-engine/lib/Camera.js";import{GLMaterialRepository as U}from"../webgl-engine/lib/GLMaterialRepository.js";import{createEmptyDepthTexture as V,createQuadVAO as W}from"../webgl-engine/lib/glUtil3D.js";import{GridLocalOriginFactory as I}from"../webgl-engine/lib/GridLocalOriginFactory.js";import{RenderOccludedFlag as B}from"../webgl-engine/lib/Material.js";import{OverlayRenderContext as H}from"../webgl-engine/lib/RenderContext.js";import{RenderSlot as L}from"../webgl-engine/lib/RenderSlot.js";import{ShadowMap as N}from"../webgl-engine/lib/ShadowMap.js";import{SortedRenderGeometryRenderer as G}from"../webgl-engine/lib/SortedRenderGeometryRenderer.js";import{SSAOHelper as k}from"../webgl-engine/lib/SSAOHelper.js";import{TextureTechnique as z}from"../webgl-engine/lib/TextureTechnique.js";import{TextureTechniqueConfiguration as Y}from"../webgl-engine/lib/TextureTechniqueConfiguration.js";import{TransparencyPassType as X}from"../webgl-engine/lib/TransparencyPassType.js";import{AmbientLight as J}from"../webgl-engine/lighting/Lightsources.js";import{StippleTextureRepository as K}from"../webgl-engine/materials/StippleTextureRepository.js";import{TaskPriority as Q,noBudget as Z}from"../../support/Scheduler.js";import{ClearBufferBit as $,PrimitiveType as ee,TextureType as re,PixelFormat as te,PixelType as se,TextureSamplingMode as ie}from"../../webgl/enums.js";import{Texture as oe}from"../../webgl/Texture.js";import{vertexCount as ae}from"../../webgl/Util.js";let ne=class extends r{get _bindParameters(){return this._renderContext.bindParameters}get rctx(){return this._rctx}get materialRepository(){return this._materialRepository}get screenToWorldRatio(){return this._screenToWorldRatio}get localOriginFactory(){return this._localOriginFactory}constructor(e){super(e),this._overlays=null,this._overlayRenderTarget=null,this._hasHighlights=!1,this._rendersOccluded=!1,this._hasWater=!1,this._handles=new s,this._renderers=new Map,this._sortedDrapeSourceRenderersDirty=!1,this._sortedRenderers=new c,this._passParameters=new C,this._rctx=null,this._materialRepository=null,this._screenToWorldRatio=1,this._localOriginFactory=null,this.worldToPCSRatio=1,this.events=new t,this.longitudeCyclical=null}initialize(){const e=this.view._stage.renderView;this._rctx=e.renderingContext;const r=e.waterTextureRepository;this._stippleTextureRepository=new K(e.renderingContext),this._shaderTechniqueRepository=new F({rctx:this._rctx,viewingMode:b.Local,stippleTextureRepository:this._stippleTextureRepository,waterTextureRepository:r}),this._renderContext=new H(this._rctx,new N(this._rctx,this.view.state.viewingMode),new k(this._shaderTechniqueRepository,this._rctx,(()=>{}))),this._handles.add([p((()=>r.updating),(()=>this.events.emit("content-changed")),u),p((()=>this.spatialReference),(e=>this._localOriginFactory=new I(e)),u),_((()=>this.view.allLayerViews),"after-changes",(()=>this._sortedDrapeSourceRenderersDirty=!0))]),this._materialRepository=new U(e.textureRepository,this._shaderTechniqueRepository,(e=>{(e.renderOccluded&ue)>0!==this._rendersOccluded&&this._updateRendersOccluded(),this.events.emit("content-changed"),this.notifyChange("updating"),this.notifyChange("isEmpty")}),(()=>this.events.emit("content-changed"))),this._bindParameters.slot=L.DRAPED_MATERIAL,this._bindParameters.highlightDepthTexture=V(this._rctx),this._bindParameters.camera=ce,this._bindParameters.transparencyPassType=X.NONE,this._bindParameters.newLighting.noonFactor=0,this._bindParameters.newLighting.globalFactor=0,this._bindParameters.newLighting.set([new J(w(1,1,1))]),this._handles.add(this.view.resourceController.scheduler.registerTask(Q.STAGE,this))}destroy(){this._handles.destroy(),this._renderers.forEach((e=>e.destroy())),this._renderers.clear(),this._debugTextureTechnique=o(this._debugTextureTechnique),this._passParameters.texture=a(this._passParameters.texture),this._bindParameters.highlightDepthTexture=a(this._bindParameters.highlightDepthTexture),this._shaderTechniqueRepository=n(this._shaderTechniqueRepository),this._temporaryFBO=a(this._temporaryFBO),this._quadVAO=a(this._quadVAO),this.disposeOverlays()}get updating(){return this._sortedDrapeSourceRenderersDirty||i(this._renderers,(e=>e.updating))}get hasOverlays(){return h(this._overlays)&&h(this._overlayRenderTarget)}get gpuMemoryUsage(){return h(this._overlayRenderTarget)?this._overlayRenderTarget.gpuMemoryUsage:0}createGeometryDrapeSourceRenderer(e){return this.createDrapeSourceRenderer(e,G)}createDrapeSourceRenderer(e,r,t){const s=this._renderers.get(e);h(s)&&s.destroy();const i=new r({...t,rendererContext:this,drapeSource:e});return this._renderers.set(e,i),this._sortedDrapeSourceRenderersDirty=!0,"fullOpacity"in e&&this._handles.add(p((()=>e.fullOpacity),(()=>this.events.emit("content-changed"))),e),i}removeDrapeSourceRenderer(e){if(d(e))return;const r=this._renderers.get(e);d(r)||(this._sortedDrapeSourceRenderersDirty=!0,this._renderers.delete(e),this._handles.remove(e),r.destroy())}collectUnusedRenderTargetMemory(e){let r=!1;if(h(this._overlayRenderTarget))for(const t of this._overlayRenderTarget.renderTargets){const[s,i]=this.overlays,o=s.validTargets[t.type]||!i.validTargets[t.type];r=this._overlayRenderTarget.validateUsageForTarget(o,t,e)||r}return r}get overlays(){return l(this._overlays,[])}ensureDrapeTargets(e){h(this._overlays)&&this._overlays.forEach((r=>r.hasTargetWithoutRasterImage=m(e,(e=>e.drapeTargetType===v.WithoutRasterImage))))}ensureDrapeSources(e){h(this._overlays)&&this._overlays.forEach((r=>{r.hasDrapedFeatureSource=m(e,(e=>e.drapeSourceType===x.Features)),r.hasDrapedRasterSource=m(e,(e=>e.drapeSourceType===x.RasterImage))}))}ensureOverlays(e,r){d(this._overlays)&&(this._overlayRenderTarget=new P(this._rctx),this._overlays=[new j(S.INNER,this._overlayRenderTarget),new j(S.OUTER,this._overlayRenderTarget)]),this.ensureDrapeTargets(e),this.ensureDrapeSources(r)}disposeOverlays(){this._overlays=null,this._overlayRenderTarget=a(this._overlayRenderTarget),this.events.emit("textures-disposed")}get running(){return this.updating}runTask(e){this._processDrapeSources(e,(()=>!0))}_processDrapeSources(e,r){let t=!1;for(const[s,i]of this._renderers){if(e.done)break;(s.destroyed||r(s))&&(i.commitChanges()&&(t=!0,e.madeProgress()))}this._sortedDrapeSourceRenderersDirty&&(this._sortedDrapeSourceRenderersDirty=!1,t=!0,this._updateSortedDrapeSourceRenderers()),t&&(h(this._overlays)&&0===this._renderers.size&&this.disposeOverlays(),this.notifyChange("updating"),this.notifyChange("isEmpty"),this.events.emit("content-changed"),this._updateHasHighlights(),this._updateRendersOccluded(),this._updateHasWater())}processSyncDrapeSources(){this._processDrapeSources(Z,(e=>e.updatePolicy===q.SYNC))}get isEmpty(){return!O.OVERLAY_DRAW_DEBUG_TEXTURE&&!i(this._renderers,(e=>!e.isEmpty))}get hasHighlights(){return this._hasHighlights}get hasWater(){return this._hasWater}get rendersOccluded(){return this._rendersOccluded}updateAnimation(e){let r=!1;return this._renderers.forEach((t=>r=t.updateAnimation(e)||r)),r}updateDrapeSourceOrder(){this._sortedDrapeSourceRenderersDirty=!0}drawTarget(e,r,t){const s=e.canvasGeometries;if(0===s.numViews)return!1;this._screenToWorldRatio=t*e.mapUnitsPerPixel;const i=r.output;if(this.isEmpty||i===A.Highlight&&!this.hasHighlights||i===A.Normal&&!this.hasWater||!e.hasSomeSizedView())return!1;const o=r.fbo;if(!o.isValid())return!1;const a=2*e.resolution,n=e.resolution;o.resize(a,n);const d=this._rctx;ce.pixelRatio=e.pixelRatio*t,this._renderContext.output=i,this._bindParameters.screenToWorldRatio=this._screenToWorldRatio,this._bindParameters.screenToPCSRatio=this._screenToWorldRatio*this.worldToPCSRatio,this._bindParameters.slot=i===A.Normal?L.DRAPED_WATER:L.DRAPED_MATERIAL,e.applyViewport(this._rctx),o.bind(d),e.index===S.INNER&&(d.setClearColor(0,0,0,0),d.clearSafe($.COLOR_BUFFER_BIT));const l=r.type===D.ColorNoRasterImage?he.ExcludeRasterImage:r.type===D.Occluded?he.OccludedOnly:he.Normal;if(l===he.OccludedOnly&&(this._renderContext.renderOccludedMask=ue),O.OVERLAY_DRAW_DEBUG_TEXTURE&&l!==he.OccludedOnly)for(let h=0;h<s.numViews;h++)this._setViewParameters(s.extents[h],e,ce),this._drawDebugTexture(e.resolution,le[e.index]);return this._renderers.size>0&&this._sortedRenderers.forAll((({drapeSource:r,renderer:t})=>{if(l===he.ExcludeRasterImage&&r.drapeSourceType===x.RasterImage)return;const{fullOpacity:c}=r,p=h(c)&&c<1&&i===A.Color;p&&(this.bindTemporaryFramebuffer(this._rctx,a,n),d.clearSafe($.COLOR_BUFFER_BIT));for(let i=0;i<s.numViews;i++)this._setViewParameters(s.extents[i],e,ce),t.render(this._renderContext,this._bindParameters);p&&h(this._temporaryFBO)&&(o.bind(d),this.view._stage.renderView.compositingHelper.compositeOverlay(this._renderContext.bindParameters,this._temporaryFBO.getTexture(),c,e.index))})),d.bindFramebuffer(null),o.generateMipMap(),this._renderContext.resetRenderOccludedMask(),!0}bindTemporaryFramebuffer(e,r,t){d(this._temporaryFBO)&&(this._temporaryFBO=new E(e,!1)),this._temporaryFBO.resize(r,t),this._temporaryFBO.bind(e)}async reloadShaders(){await this._shaderTechniqueRepository.reloadAll()}notifyContentChanged(){this.events.emit("content-changed")}intersect(e,r,t,s){let i=0;for(const o of this._renderers.values())i=o.intersect?.(e,r,t,s,i)??i}_updateSortedDrapeSourceRenderers(){if(this._sortedRenderers.clear(),0===this._renderers.size)return;const e=this.view.map.allLayers;this._renderers.forEach(((r,t)=>{const s=e.indexOf(t.layer);this._sortedRenderers.push(new de(t,r,s<0?1/0:s))})),this._sortedRenderers.sort(((e,r)=>e.index-r.index))}_setViewParameters(e,r,t){t.viewport[0]=t.viewport[1]=0,t.viewport[2]=t.viewport[3]=r.resolution,R(t.projectionMatrix,0,e[2]-e[0],0,e[3]-e[1],t.near,t.far),f(t.viewMatrix,[-e[0],-e[1],0]),this._bindParameters.camera=t}_updateHasWater(){const e=i(this._renderers,(e=>e.hasWater));e!==this._hasWater&&(this._hasWater=e,this.events.emit("has-water",e))}_updateHasHighlights(){const e=i(this._renderers,(e=>e.hasHighlights));e!==this._hasHighlights&&(this._hasHighlights=e,this.events.emit("has-highlights",e))}_updateRendersOccluded(){const e=i(this._renderers,(e=>e.rendersOccluded));e!==this._rendersOccluded&&(this._rendersOccluded=e,this.events.emit("renders-occluded",e))}_drawDebugTexture(e,r){this._ensureDebugPatternResources(e,e,r);const t=this._rctx;t.bindTechnique(this._debugTextureTechnique,this._passParameters,null),t.bindVAO(this._quadVAO),t.drawArrays(ee.TRIANGLE_STRIP,0,ae(this._quadVAO,"geometry"))}_ensureDebugPatternResources(e,r,t){if(T(this._passParameters.color,t[0],t[1],t[2]),this._passParameters.texture)return;const s=new Uint8Array(e*r*4);let i=0;for(let a=0;a<r;a++)for(let t=0;t<e;t++){const o=Math.floor(t/10),n=Math.floor(a/10);o<2||n<2||10*o>e-20||10*n>r-20?(s[i++]=255,s[i++]=255,s[i++]=255,s[i++]=255):(s[i++]=255,s[i++]=255,s[i++]=255,s[i++]=1&o&&1&n?1&t^1&a?0:255:1&o^1&n?0:128)}this._passParameters.texture=new oe(this._rctx,{target:re.TEXTURE_2D,pixelFormat:te.RGBA,dataType:se.UNSIGNED_BYTE,samplingMode:ie.NEAREST,width:e,height:r},s);const o=new Y;o.hasAlpha=!0,this._debugTextureTechnique=this._shaderTechniqueRepository.acquire(z,o),this._quadVAO=W(this._rctx)}get test(){return{drapeSourceRenderers:this._renderers,getDrapeSourceRenderer:e=>this._renderers.get(e)}}};var he;e([g()],ne.prototype,"_sortedDrapeSourceRenderersDirty",void 0),e([g({autoDestroy:!0})],ne.prototype,"_shaderTechniqueRepository",void 0),e([g({autoDestroy:!0})],ne.prototype,"_stippleTextureRepository",void 0),e([g({constructOnly:!0})],ne.prototype,"view",void 0),e([g()],ne.prototype,"worldToPCSRatio",void 0),e([g()],ne.prototype,"spatialReference",void 0),e([g({type:Boolean,readOnly:!0})],ne.prototype,"updating",null),e([g()],ne.prototype,"isEmpty",null),ne=e([y("esri.views.3d.terrain.OverlayRenderer")],ne),function(e){e[e.Normal=0]="Normal",e[e.OccludedOnly=1]="OccludedOnly",e[e.ExcludeRasterImage=2]="ExcludeRasterImage"}(he||(he={}));class de{constructor(e,r,t){this.drapeSource=e,this.renderer=r,this.index=t}}const le=[[1,.5,.5],[.5,.5,1]],ce=new M;ce.near=1,ce.far=1e4,ce.relativeElevation=null;const pe=-2,ue=B.OccludeAndTransparent;export{pe as DRAPED_Z,he as DrawPassOption,ne as OverlayRenderer,ue as overlayRenderOccludedFlag};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.26/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{isPowerOfTwo as t,clamp as e}from"../../../core/mathUtils.js";import{isNone as n,isSome as o}from"../../../core/maybe.js";import{s}from"../../../chunks/vec4.js";import{empty as i}from"../../../geometry/support/aaBoundingBox.js";import{fromValues as r}from"../../../geometry/support/aaBoundingRect.js";import{sampleElevation as a}from"./ElevationData.js";import{PatchType as c,NeighborIndex as l}from"./interfaces.js";import{acquireTerrainAttributes as u,minMaxBoundingBox as f,encodeUVInBuffer as d,encodeNormalToBufferFromValues as g,EdgeDescriptor as m}from"./PatchGeometry.js";import{PatchGeometryLUT as p}from"./PatchGeometryLUT.js";import{neighborTileIfLoadedOrSelf as h}from"./PatchRenderData.js";import{ENABLE_TERRAIN_INTERNAL_CHECKS as M,internalAssert as x,neighborEdgeIndices as y,almostEquals as S}from"./terrainUtils.js";import{isCornerNeighbor as b}from"./Tile.js";import{compareTilesByLij as v}from"./tileUtils.js";const L=65536;function R(t,e){const n=t.tile,{extent:o,extentInRadians:s,surface:r}=n,a=t.localOrigin,l=t.geometryState,m=r.isWebMercator,p=r.shading||rt,h=l.numVerticesPerSide,y=h-1,S=(h-2)**2,b=m&&(e===c.HAS_SOUTH_POLE||e===c.HAS_BOTH_POLES),v=m&&(e===c.HAS_NORTH_POLE||e===c.HAS_BOTH_POLES),L=6,R=((b?1:0)+(v?1:0))*L*(y+1),O=l.neighborData,T=O.edgeResolutions.reduce(((t,e)=>t+e+1),0),P=u(S+R+T),D=t.geometryInfo;D.numVerticesPerSide=l.numVerticesPerSide,D.vertexAttributes=P;const I=D.boundingBox;i(I);const U=j(t);nt.update(y,s,U),B(t),X(t,S),V(t);const E=[];if((()=>{let t=S+T;const e=a[0],s=a[1],i=a[2],r=n.ellipsoid.radius,c=o[1],l=o[3],u=(n,o)=>{const a=o*h;f(-e,-s,n*r-i,I),E.push({connectedRowOffset:a,connectedOuterEdgeOffset:1===n?0:2,rowOffset:t,latitudeResolution:L});const u=A(-1===n?c:l,r),m=n*Math.PI/2-u,M=.99*(1===n?1:-1),x=r+0,S=P.position,b=P.uv0,v=P.normalCompressed;for(let r=1;r<=L;++r){const n=u+m*(r/L),o=Math.cos(n),a=Math.sin(n);for(let r=0;r<=y;r++){const n=r/y,c=nt.sinLonLUT[r],l=nt.cosLonLUT[r]*o,u=c*o,m=a,h=l*x-e,L=u*x-s,R=m*x-i;f(h,L,R,I),S.setValues(t,h,L,R),d(b,t,n,M),p&&g(v,t,l,u,m),++t}}};b&&u(-1,0),v&&u(1,y)})(),Q(D,l.numVerticesPerSide,E,[0,h-1],[0,h-1],l.wireframe),t.intersectionData=null,M)for(let i=0;i<4;++i)x(D.outerEdges[i].count===O.edgeResolutions[i]+1)}function B(t){const e=t.tile;e.intersectsClippingArea&&(e.surface.shading||rt?T(t):O(t))}function O(t){const e=t.geometryState,n=e.numVerticesPerSide,o=n-2,s=n-1,i=t.geometryInfo,r=i.vertexAttributes,c=r.position,l=r.uv0,u=t.tile,g=u.extent,m=g[0],p=g[2],h=g[1],M=g[3],x=u.ellipsoid.radius,y=e.samplerData,S=t.localOrigin,b=S[0],v=S[1],L=S[2],R=i.boundingBox,B=c.typedBuffer,O=c.typedBufferStride;let T=0;for(let P=1;P<=o;P++){const t=P/s,e=h*(1-t)+M*t,n=nt.sinLatLUT[P],i=nt.cosLatLUT[P];for(let r=1;r<=o;r++){const o=r/s,c=m*(1-o)+p*o,u=nt.sinLonLUT[r],g=nt.cosLonLUT[r],h=x+a(c,e,y),M=g*i*h-b,S=u*i*h-v,P=n*h-L;f(M,S,P,R);const D=T*O;B[D]=M,B[D+1]=S,B[D+2]=P,d(l,T,o,t),++T}}}function T(t){const e=t.geometryState,n=e.numVerticesPerSide,o=n-2,s=n-1,i=t.geometryInfo,r=i.vertexAttributes,c=r.position,l=r.uv0,u=r.normalCompressed,m=t.tile,p=m.extent,h=p[0],M=p[2],x=p[1],y=p[3],S=m.ellipsoid.radius,b=e.samplerData,v=t.localOrigin,L=v[0],R=v[1],B=v[2],O=c.typedBuffer,T=c.typedBufferStride,P=1/s,D=i.boundingBox;let V=0;if(1<=o){const t=P,e=x*(1-t)+y*t,n=nt.sinLatLUT[1],s=nt.cosLatLUT[1];for(let i=1;i<=o;i++){const o=i*P,r=h*(1-o)+M*o,c=nt.sinLonLUT[i],u=nt.cosLonLUT[i],g=S+a(r,e,b),m=g*u*s-L,p=g*c*s-R,x=g*n-B;f(m,p,x,D);const y=(i-1)*T;O[y]=m,O[y+1]=p,O[y+2]=x,d(l,i-1,o,t)}}for(let I=1;I<=o;I++){const t=I*P,e=x*(1-t)+y*t,n=nt.sinLatLUT[I],i=nt.cosLatLUT[I],r=I+1,c=r*P,m=x*(1-c)+y*c,p=nt.sinLatLUT[r],v=nt.cosLatLUT[r],U=nt.sinLonLUT[0],A=nt.cosLonLUT[0],E=S+a(h,e,b);let C=A*i*E-L,j=U*i*E-R,w=n*E-B;const N=V*T;let H=O[N],_=O[N+1],W=O[N+2];for(let y=1;y<=o;y++){const t=y*P,r=h*(1-t)+M*t,U=nt.sinLonLUT[y],A=nt.cosLonLUT[y],E=A*i,N=U*i,q=n;let F=0,z=0,G=0;{let t=0,r=0,c=0;if(y<o){const e=(V+1)*T;t=O[e],r=O[e+1],c=O[e+2]}else{const o=nt.sinLonLUT[s],l=nt.cosLonLUT[s],u=S+a(M,e,b);t=l*i*u-L,r=o*i*u-R,c=n*u-B}const l=C,u=j,f=w;C=H,j=_,w=W,H=t,_=r,W=c;const d=t-l,g=r-u,m=c-f,p=g*q-m*N,h=m*E-d*q,x=d*N-g*E;F=h*m-x*g,z=x*d-p*m,G=p*g-h*d}{let e=0,n=0,s=0;if(I>1){const t=(V-o)*T;e=O[t],n=O[t+1],s=O[t+2]}else{const t=nt.sinLatLUT[0],o=nt.cosLatLUT[0],i=S+a(r,x,b);e=A*o*i-L,n=U*o*i-R,s=t*i-B}{const i=S+a(r,m,b),u=A*v*i-L,g=U*v*i-R,h=p*i-B;if(I<o){const e=V+o,n=e*T;O[n]=u,O[n+1]=g,O[n+2]=h,f(u,g,h,D),d(l,e,t,c)}const M=e-u,x=n-g,y=s-h,P=x*q-y*N,C=y*E-M*q,j=M*N-x*E;F+=C*y-j*x,z+=j*M-P*y,G+=P*x-C*M}}const k=1/Math.sqrt(F*F+z*z+G*G);g(u,V,F*k,z*k,G*k),++V}}}function P(t){t.tile.intersectsClippingArea&&(V(t),tt(t))}function D(t){t.tile.intersectsClippingArea&&(U(t),I(t,!0),tt(t))}function V(t){t.tile.intersectsClippingArea&&(U(t),I(t))}function I(e,s=!1){const i=e.geometryState,r=e.geometryInfo,c=i.neighborData,l=e.tile,u=l.level,g=l.extent,m=l.ellipsoid.radius,p=l.extentInRadians,b=p[0],L=p[2],R=p[1],B=p[3],O=i.samplerData,T=g[0],P=g[2],D=g[1],V=g[3],I=j(e),U=r.boundingBox,A=e.localOrigin,E=A[0],C=A[1],w=A[2],N=l.surface.shading||rt,H=r.vertexAttributes,_=H.position,W=_.typedBuffer,q=_.typedBufferStride,F=H.uv0;for(let j=0;j<4;++j){const i=1===j||3===j,p=c.edgeResolutions[j];x(t(p));const A=p+1,H=h(l,c.edgePeerNeighbors[j]);if(it(l,H,j)){Y(e,j);continue}const _=o(H);x(!_||H.level===l.level),x(!_||v(l,H)<=0);const z=H?.renderData,G=z?.geometryState;if(M){const t=l.surface;if(!H&&t&&!t.updatingRootTiles){const e=y[j],o=l.findNeighborTile(e,(t=>t.isLoaded||t.isLeaf||t.level===l.level));o?o.intersectsClippingArea&&(x(!o.isLoaded),x(!o.isLeaf),x(o.level===u)):x(n(t?.rootTiles)||!l.shouldHaveNeighbor(e))}}const k=1===j?g[2]:g[0],J=H?.extent,K=_&&i?1===j?J[0]:J[2]:k,Q=0===j?g[3]:g[1],X=1===j?1:0,Z=0===j?1:0,$=1===j?L:b,tt=0===j?B:R,et=Math.sin($),nt=Math.cos($),ot=Math.sin(tt),st=Math.cos(tt),rt=G?.samplerData,at=_?(t,e,n)=>.5*(a(t,e,O)+a(n,e,rt)):(t,e,n)=>a(t,e,O),ct=r.outerEdges[j],lt=s&&A>3?A-3:1,ut=o(O)&&O.some((t=>null!=t)),ft=o(rt)&&rt.some((t=>null!=t)),dt=ut||ft,gt=1/p,mt=ct.index0;if(N){x(!_||S(J[2]-J[0],g[2]-g[0]));(()=>{const t=1===j?-1:3===j?1:0,e=0===j?-1:2===j?1:0,n=(g[2]-g[0])*gt,o=t*n,s=e*n,r=i?t*((L-b)*gt):0,c=i?0:e*gt,l=Z,u=i?$+r:$,p=i?Math.sin(u):et,h=i?Math.cos(u):nt,M=i?$-r:$,x=i?Math.sin(M):et,y=i?Math.cos(M):nt,S=i?tt:I(l+c),v=i?ot:Math.sin(S),R=i?st:Math.cos(S),B=i?tt:I(l-c),N=i?ot:Math.sin(B),H=i?st:Math.cos(B),z=(mt+0)*q;let G=W[z]+E,J=W[z+1]+C,Y=W[z+2]+w,it=0,ut=0,ft=0;{const t=1*gt,e=i?k:T*(1-t)+P*t,n=i?K:e,o=i?D*(1-t)+V*t:Q,s=i?$:b*(1-t)+L*t,r=i?et:Math.sin(s),a=i?nt:Math.cos(s),c=i?I(t):tt,l=i?Math.sin(c):ot,u=i?Math.cos(c):st,f=m+at(e,o,n);it=a*u*f,ut=r*u*f,ft=l*f}for(let g=1;g<A-1;g+=lt){let t=0,e=0,n=0;{const o=(mt+g+1)*q;if(g<A-2){const o=(g+1)*gt,s=i?k:T*(1-o)+P*o,r=i?K:s,a=i?D*(1-o)+V*o:Q,c=i?$:b*(1-o)+L*o,l=i?et:Math.sin(c),u=i?nt:Math.cos(c),f=i?I(o):tt,d=i?Math.sin(f):ot,p=i?Math.cos(f):st,h=m+at(s,a,r);t=u*p*h,e=l*p*h,n=d*h}else t=W[o]+E,e=W[o+1]+C,n=W[o+2]+w}const r=t,c=e,l=n,u=it,M=ut,S=ft;it=r,ut=c,ft=l;{const t=mt+g,e=t*q,n=u-E,o=M-C,s=S-w;W[e]=n,W[e+1]=o,W[e+2]=s,f(n,o,s,U);const r=g*gt;d(F,t,i?X:r,i?r:Z)}const B=G,j=J,z=Y;G=u,J=M,Y=S;const lt=u,pt=M,ht=S;let Mt=0,xt=0,yt=0;if(dt){const t=1/Math.sqrt(lt*lt+pt*pt+ht*ht),e=lt*t,n=pt*t,u=ht*t;{const t=r-B,o=c-j,s=l-z,i=o*u-s*n,a=s*e-t*u,f=t*n-o*e;Mt+=a*s-f*o,xt+=f*t-i*s,yt+=i*o-a*t}{const t=g*gt,r=i?k:T*(1-t)+P*t,c=i?K:r,l=i?D*(1-t)+V*t:Q,f=i?$:b*(1-t)+L*t,d=i?et:Math.sin(f),M=i?nt:Math.cos(f),S=i?I(t):tt,B=i?Math.sin(S):ot,U=i?Math.cos(S):st;let A=lt,E=pt,C=ht;if(_){const t=m+a(c-o,l-s,rt),e=i?U:H;A=(i?y:M)*e*t,E=(i?x:d)*e*t,C=(i?B:N)*t}{const t=m+a(r+o,l+s,O),c=i?U:R,f=(i?h:M)*c*t,g=(i?p:d)*c*t,x=(i?B:v)*t;_||(A=2*lt-f,E=2*pt-g,C=2*ht-x);const y=A-f,S=E-g,b=C-x,L=S*u-b*n,T=b*e-y*u,P=y*n-S*e;Mt+=T*b-P*S,xt+=P*y-L*b,yt+=L*S-T*y}}}else Mt=lt,xt=pt,yt=ht;const St=1/Math.sqrt(Mt*Mt+xt*xt+yt*yt);ct.setNormalFromValues(g,Mt*St,xt*St,yt*St)}})()}else{(()=>{for(let t=1;t<A-1;t+=lt){const e=t*gt,n=i?X:e,o=i?e:Z,s=i?k:T*(1-e)+P*e,r=i?D*(1-e)+V*e:Q,a=i?K:s,c=i?$:b*(1-e)+L*e,l=i?et:Math.sin(c),u=i?nt:Math.cos(c),g=i?I(e):tt,p=i?Math.sin(g):ot,h=i?Math.cos(g):st,M=at(s,r,a),x=m+M,y=u*h*x-E,S=l*h*x-C,v=p*x-w;f(y,S,v,U);const R=mt+t,B=R*q;W[B]=y,W[B+1]=S,W[B+2]=v,d(F,R,n,o)}})()}}}function U(t){Z(t)}function A(t,e){return Math.PI/2-2*Math.atan(Math.exp(-t/e))}function E(t,e,n,o){return A(t*(1-o)+e*o,n)}function C(t,e,n){return t*(1-n)+e*n}function j(t){const e=t.tile;if(e.surface.isWebMercator){const t=e.extent,n=e.ellipsoid.radius;return e=>E(t[1],t[3],n,e)}const n=e.extentInRadians;return t=>C(n[1],n[3],t)}function w(t,e){const n=t.tile.extent,r=t.geometryState,a=n[0],c=n[1],l=n[2]-a,f=n[3]-c,d=r.clippingArea,g=o(d)?Math.max(0,(d[0]-a)/l):0,m=o(d)?Math.max(0,(d[1]-c)/f):0,p=o(d)?Math.min(1,(d[2]-a)/l):1,h=o(d)?Math.min(1,(d[3]-c)/f):1,M=r.numVerticesPerSide,x=(M-2)**2,y=r.neighborData.edgeResolutions.reduce(((t,e)=>t+e+1),0),S=u(x+y),b=t.geometryInfo,v=b.boundingBox;i(v),b.numVerticesPerSide=r.numVerticesPerSide,b.vertexAttributes=S,s(b.uvRange,g,m,p,h),N(t),X(t,x),F(t),Q(b,r.numVerticesPerSide,[],[0,M-1],[0,M-1],r.wireframe),t.intersectionData=null}function N(t){const e=t.tile;e.intersectsClippingArea&&(e.surface.shading?_(t):H(t))}function H(t){const n=t.geometryState,s=n.samplerData,i=t.tile,r=i.surface,c=t.localOrigin,l=r.isWebMercatorOnPlateeCarree,u=n.clippingArea,g=o(u)?u:ot,m=i.extent,p=m[0],h=m[1],M=m[2],x=m[3],y=Math.max(p,g[0]),S=Math.min(M,g[2]),b=Math.max(h,g[1]),v=Math.min(x,g[3]),L=c[0],R=c[1],B=c[2],O=i.ellipsoid.radius,T=i.horizontalScale,P=K(l,O,T),D=n.numVerticesPerSide,V=D-1,I=D-2,U=t.geometryInfo,A=U.uvRange,E=A[0],C=A[1],j=A[2],w=A[3],N=U.boundingBox,H=U.vertexAttributes,_=H.position,W=H.uv0;let q=0;for(let o=1;o<=I;o++){const t=o/V,n=e(h*(1-t)+x*t,b,v),i=e(t,C,w),r=P(n)-R;for(let o=1;o<=I;o++){const t=o/V,c=e(p*(1-t)+M*t,y,S),l=e(t,E,j),u=c*T-L,g=a(c,n,s)-B;f(u,r,g,N),_.setValues(q,u,r,g),d(W,q,l,i),++q}}}function _(t){const n=t.tile,s=n.surface;if(!(s.shading||rt))return;const i=t.geometryState,r=i.samplerData,c=t.localOrigin,l=s.isWebMercatorOnPlateeCarree,u=i.clippingArea,m=o(u)?u:ot,p=n.extent,h=p[0],M=p[1],x=p[2],y=p[3],S=Math.max(h,m[0]),b=Math.min(x,m[2]),v=Math.max(M,m[1]),L=Math.min(y,m[3]),R=n.ellipsoid.radius,B=n.horizontalScale,O=i.numVerticesPerSide,T=O-1,P=O-2,D=t.geometryInfo,V=D.vertexAttributes,I=V.position,U=V.uv0,A=V.normalCompressed,E=D.uvRange,C=E[0],j=E[1],w=E[2],N=E[3],H=D.boundingBox,_=c[0],W=c[1],q=c[2],F=I.typedBuffer,z=I.typedBufferStride;let G=0;const k=e(M,v,L),J=l?(Math.PI/2-2*Math.atan(Math.exp(-k/R)))*R:k*B,K=1/T,Q=e(M*(1-K)+y*K,v,L);let X=J,Y=l?(Math.PI/2-2*Math.atan(Math.exp(-Q/R)))*R:Q*B;for(let o=1;o<=P;o++){const t=o/T,n=e(M*(1-t)+y*t,v,L),s=e(t,j,N),i=Y,c=(o-1)/T,u=e(M*(1-c)+y*c,v,L),m=X,p=(o+1)/T,O=e(M*(1-p)+y*p,v,L),D=l?(Math.PI/2-2*Math.atan(Math.exp(-O/R)))*R:O*B,V=e(p,j,N);X=Y,Y=D;const I=e(h,S,b);let E=I*B,k=a(I,n,r);const J=1/T,K=e(J,C,w),Q=e(h*(1-K)+x*K,S,b);let Z=K,$=Q,tt=Q*B,et=a(Q,n,r);if(1===o){const t=tt-_,n=X-W,o=et-q,i=0*z;F[i]=t,F[i+1]=n,F[i+2]=o,f(t,n,o,H);const r=e(J,C,w);d(U,G,r,s)}for(let l=1;l<=P;l++){const t=tt,c=et,p=(l+1)/T,M=e(p,C,w),y=e(h*(1-p)+x*p,S,b),v=$;$=y;{const t=G+1,e=t*z;if(1===o||l===P){const c=y*B,u=a(y,n,r);if(1===o&&l<P){const n=c-_,o=i-W,r=u-q;F[e]=n,F[e+1]=o,F[e+2]=r,f(n,o,r,H),d(U,t,M,s)}tt=c,et=u}else tt=F[e]+_,et=F[e+2]+q}const L=tt,R=et,I=E,j=k;E=t,k=c;const N=(G-P)*z,J=1===o?a(v,u,r):F[N+2]+q,K=a(v,O,r);if(o<P){const e=G+P,n=e*z,o=t-_,s=D-W,i=K-q;F[n]=o,F[n+1]=s,F[n+2]=i,f(o,s,i,H);const r=Z;Z=M,d(U,e,r,V)}{const t=L-I,e=-t*(R-j),n=m-D,o=-n*(J-K),s=t*t+n*n,i=e*e+o*o+s*s;if(0===i)g(A,G,0,0,1);else{const t=1/Math.sqrt(i);g(A,G,e*t,o*t,s*t)}}++G}}}function W(t,e){t.tile.intersectsClippingArea&&(G(t),z(t,!0),tt(t))}function q(t,e){t.tile.intersectsClippingArea&&(F(t),tt(t))}function F(t,e){t.tile.intersectsClippingArea&&(G(t),z(t,!1))}function z(s,i){const r=s.geometryState,c=r.neighborData,l=s.tile,u=l.surface,d=u.shading||rt,g=l.extent,m=r.clippingArea,p=o(m)?m:ot,S=g[0],b=g[2],L=g[1],R=g[3],B=[R>p[3],b>p[2],L<p[1],S<p[0]],O=s.geometryInfo,T=l.horizontalScale,P=K(u.isWebMercatorOnPlateeCarree,l.ellipsoid.radius,T),D=O.boundingBox,V=O.uvRange[0],I=O.uvRange[1],U=O.uvRange[2],A=O.uvRange[3],E=Math.max(S,p[0]),C=Math.min(b,p[2]),j=Math.max(L,p[1]),w=Math.min(R,p[3]),N=s.localOrigin,H=N[0],_=N[1],W=N[2],q=r.samplerData;for(let F=0;F<4;++F){const r=1===F||3===F,g=c.edgeResolutions[F];x(t(g));const m=g+1,p=B[F],N=h(l,c.edgePeerNeighbors[F]);if(!p&&it(l,N,F)){Y(s,F);continue}const z=o(N)&&!p,G=N?.renderData,k=G?.geometryState;if(M&&(x(!z||N.level===l.level),x(!z||v(l,N)<=0),l&&!N&&!u.updatingRootTiles)){const t=y[F],e=l.findNeighborTile(t,(t=>t.isLoaded||t.isLeaf||t.level===l.level));u.updatingRootTiles||(e?e.intersectsClippingArea&&(x(!e.isLoaded),x(!e.isLeaf),x(e.level===l.level)):x(n(u?.rootTiles)||!l.shouldHaveNeighbor(t)))}const J=e(1===F?b:S,E,C),K=e(0===F?R:L,j,w),Q=k?.samplerData,X=O.outerEdges[F],Z=i&&m>3?m-3:1,$=e(1===F?1:0,V,U),tt=e(0===F?1:0,I,A),et=z?(t,e)=>.5*(a(t,e,Q)+a(t,e,q)):(t,e)=>a(t,e,q);if(d){const t=(b-S)/g,n=r?1===F?t:-t:0,o=r?0:0===F?t:-t,s=-n,i=-o,c=X.attributes.position.typedBuffer,l=X.attributes.position.typedBufferStride,u=X.index0,d=X.stride,p=u*l;let h=c[p]+H,M=c[p+1]+_,x=c[p+2]+W,y=0,v=0,B=0;{const t=1/g,n=r?J:e(S*(1-t)+b*t,E,C),o=r?e(L*(1-t)+R*t,j,w):K,s=et(n,o);y=n*T,v=P(o),B=s}for(let O=1;O<m-1;O+=Z){const t=O/g,p=y,N=v,F=B;{const n=r?$:e(t,V,U),o=r?e(t,I,A):tt,s=p-H,i=N-_,a=F-W;f(p,i,a,D),X.setVertexFromValuesRawPositionUV(O,s,i,a,n,o)}const G=O+1;if(O===m-1){const t=(u+G*d)*l;y=c[t]+H,v=c[t+1]+_,B=c[t+2]+W}else{const t=G/g,n=r?J:e(S*(1-t)+b*t,E,C),o=r?e(L*(1-t)+R*t,j,w):K,s=et(n,o);y=n*T,v=P(o),B=s}const k=y,Y=B,Z=h,nt=M,ot=x;h=p,M=N,x=F;let st=0,it=0,rt=0;if(r){{const t=v-N,e=nt-N;it-=e*(ot-F)+t*(Y-F),rt+=e*e+t*t}{const o=e(L*(1-t)+R*t,j,w),i=J+s,r=i*T-p;if(st-=r*(a(i,o,q)-F),rt+=r*r,z){const t=J+n,e=t*T-p;st-=e*(a(t,o,Q)-F),rt+=e*e}}}else{{const t=k-p,e=Z-p;st-=t*(Y-F)+e*(ot-F),rt+=t*t+e*e}{const n=e(S*(1-t)+b*t,E,C),s=K+i,r=a(n,s,q)-F,c=P(s)-N;if(it-=c*r,rt+=c*c,z){const t=n,e=K+o,s=P(e)-N;it-=s*(a(t,e,Q)-F),rt+=s*s}}}const at=1/Math.sqrt(st*st+it*it+rt*rt);X.setNormalFromValues(O,st*at,it*at,rt*at)}}else for(let t=1;t<m-1;t+=Z){const n=t/g,o=r?J:e(S*(1-n)+b*n,E,C),s=r?e(L*(1-n)+R*n,j,w):K,i=r?$:e(n,V,U),a=r?e(n,I,A):tt,c=et(o,s),l=o*T-H,u=P(s)-_,d=c-W;f(l,u,d,D),X.setVertexFromValuesRawPositionUV(t,l,u,d,i,a)}}}function G(t,e){Z(t)}function k(t,e){return(Math.PI/2-2*Math.atan(Math.exp(-t/e)))*e}function J(t,e){return t*e}function K(t,e,n){return t?t=>k(t,e):t=>J(t,n)}function Q(t,e,n,o,s,i){const r=e-1,a=t.vertexAttributes.count,c=2*(Math.min(e-2,o[1])-Math.max(1,o[0]))*(Math.min(e-2,s[1])-Math.max(1,s[0])),l=y.map(((t,n)=>0===n&&s[1]<e-2||1===n&&o[1]<e-2||2===n&&s[0]>1||3===n&&o[0]>1)),u=t.outerEdges.reduce(((t,e,n)=>t+(l[n]?0:r-2+e.count-1)),0),f=n.reduce(((t,e)=>t+r*(2*(e.latitudeResolution-1)+1)),0),d=i?2:1,g=3*(c+u+f)*d,m=a>=L?new Uint32Array(g):new Uint16Array(g);let p=0;const h=e-2,S=r-2;if(x(S>=0),i){const i=(t,e,n)=>{m[p++]=t,m[p++]=e,m[p++]=e,m[p++]=n,m[p++]=n,m[p++]=t,M&&(x(t<a),x(e<a),x(n<a),x(p<=g))};(()=>{for(let t=Math.max(s[0],1)-1;t<Math.min(s[1],e-2)-1;++t)for(let n=Math.max(o[0],1)-1;n<Math.min(o[1],e-2)-1;++n){const e=t*h+n,o=e+1,s=o+h,r=s-1;i(e,o,s),i(s,r,e)}})(),x(p===3*c*d);(()=>{for(let e=0;e<4;++e){const n=p;if(l[e])continue;const o=t.outerEdges[e],s=t.innerEdges[e];let a=0,c=0;const u=o.count,f=s.count;x(f===r-1);let g=0;const m=1===e||2===e?(t,e,n)=>i(t,e,n):(t,e,n)=>i(t,n,e);for(;a<u-1||c<f-1;){const t=s.getVertexIndex(c),e=o.getVertexIndex(a),n=a<u-1,i=c<f-1;if(n&&(!i||(n?0+r*(a+.5)/(u-1):0)<=(i?1+S*(c+.5)/(f-1):0))){++a,M&&x(a<u);m(t,e,o.getVertexIndex(a)),g++}else{++c,M&&x(c<f);m(t,e,s.getVertexIndex(c)),g++}}M&&(x(a===u-1),x(c===f-1),x(g===u+f-2),x(g===r-2+o.count-1),x(p===n+3*g*d))}})(),x(p===3*(c+u)*d);const f=n=>{const o=t.outerEdges[n.connectedOuterEdgeOffset];let s=o.getVertexIndex(0),a=o.stride;for(let t=0;t<n.latitudeResolution;++t){const o=0===t?n.rowOffset:s+e;for(let e=0;e<r;e++)i(s,s+1,o+e),t<n.latitudeResolution-1&&i(s+1,o+e+1,o+e),s+=a;s=o,a=1}};(()=>n.forEach(f))()}else{(()=>{const t=Math.max(s[0],1)-1,n=Math.min(s[1],e-2)-1,i=Math.max(o[0],1)-1,r=Math.min(o[1],e-2)-1;for(let e=t;e<n;++e){const t=e*h;for(let e=i;e<r;++e){const n=t+e,o=n+1,s=o+h,i=s-1;m[p]=n,m[p+1]=o,m[p+2]=s,m[p+3]=s,m[p+4]=i,m[p+5]=n,p+=6}}})(),x(p===3*c*d);(()=>{for(let e=0;e<4;++e){if(l[e])continue;const n=t.outerEdges[e],o=t.innerEdges[e];let s=0,i=0;const a=n.count,c=o.count;x(c===r-1);const u=1===e||2===e,f=u?1:2,d=u?2:1,g=n.index0,h=n.stride,M=o.index0,y=o.stride;for(;s<a-1||i<c-1;){const t=M+i*y,e=g+s*h,n=s<a-1,o=i<c-1,l=n&&(!o||(n?0+r*(s+.5)/(a-1):0)<=(o?1+S*(i+.5)/(c-1):0));l?++s:++i;const u=l?e+h:t+y;m[p]=t,m[p+f]=e,m[p+d]=u,p+=3}}})(),x(p===3*(c+u)*d);const i=n=>{const o=t.outerEdges[n.connectedOuterEdgeOffset];let s=o.getVertexIndex(0),i=o.stride;for(let t=0;t<n.latitudeResolution;++t){const o=0===t?n.rowOffset:s+e;for(let e=0;e<r;e++){const r=o+e;m[p]=s,m[p+1]=s+1,m[p+2]=r,t<n.latitudeResolution-1?(m[p+3]=s+1,m[p+4]=r+1,m[p+5]=r,p+=6):p+=3,s+=i}s=o,i=1}};(()=>n.forEach(i))()}x(p===g),t.indices=m,t.indexCount=g}function X(t,e){const n=t.localOrigin,o=t.geometryInfo,s=t.geometryState.neighborData.edgeResolutions,i=o.numVerticesPerSide-2,r=o.vertexAttributes;let a=e;for(let c=0;c<4;++c){{const t=0===c||2===c,e=(0===c?i-1:0)*i+(1===c?i-1:0),s=(t?0:1)*i+(t?1:0);o.innerEdges[c]=new m(r,n,e,s,i)}{const t=a,e=s[c]+1;o.outerEdges[c]=new m(r,n,t,1,e),a+=e}}}function Y(n,o){const s=(o+2)%4,i=n.geometryState,r=n.tile,a=i.neighborData,c=h(r,a.edgePeerNeighbors[o]),l=r.level-c.level,u=1===o||3===o,g=a.edgeResolutions[o];x(t(g));const m=g+1,p=n.geometryInfo,M=p.boundingBox,y=p.outerEdges[o],S=p.uvRange[0],b=p.uvRange[1],v=p.uvRange[2],L=p.uvRange[3],R=e(1===o?1:0,S,v),B=e(0===o?1:0,b,L),O=c.renderData,T=O.geometryState,P=O.geometryInfo.outerEdges[s],D=r.getNeighborEdgeStartVertexIndex(o,c)*g,V=g*2**l;x(T.neighborData.edgeResolutions[s]===V),x(P.count-1===V);const I=O.localOrigin[0]-n.localOrigin[0],U=O.localOrigin[1]-n.localOrigin[1],A=O.localOrigin[2]-n.localOrigin[2],E=y.attributes,C=y.index0,j=y.stride,w=E.position.typedBuffer,N=E.position.typedBufferStride,H=E.normalCompressed.typedBuffer,_=E.normalCompressed.typedBufferStride,W=E.uv0,q=P.attributes,F=P.index0,z=P.stride,G=q.position.typedBuffer,k=q.position.typedBufferStride,J=q.normalCompressed.typedBuffer,K=q.normalCompressed.typedBufferStride;for(let t=1;t<m-1;++t){const n=C+j*t,o=F+z*(D+t),s=n*N,i=o*k,r=G[i]+I,a=G[i+1]+U,c=G[i+2]+A;w[s]=r,w[s+1]=a,w[s+2]=c,f(r,a,c,M);const l=n*_,m=o*K;H[l]=J[m],H[l+1]=J[m+1];const p=t/g,h=u?R:e(p,S,v),x=u?e(p,b,L):B;d(W,n,h,x)}}function Z(t){const n=t.geometryState,s=n.neighborData,i=t.localOrigin,r=s.cornerNeighborData,c=t.geometryInfo,l=c.outerEdges,u=c.boundingBox,g=t.tile,m="local"===t.tile.surface.view?.viewingMode,p=g.ellipsoid.radius,h=g.extentInRadians,M=g.horizontalScale;let y=0,S=0,b=0,L=0,R=0,B=0;const O=(t,e,n)=>{const o=h[0===e?1:3],s=h[0===t?0:2],i=Math.cos(o),r=Math.sin(o),a=Math.sin(s),c=Math.cos(s),l=p+n;y=c*i*l,S=a*i*l,b=r*l},T=m?(()=>{const n=t.geometryState.clippingArea,s=g.extent,i=o(n)&&(s[3]>n[3]||s[2]>n[2]||s[1]<n[1]||s[0]<n[0]),r=K(g.surface.isWebMercatorOnPlateeCarree,g.ellipsoid.radius,M);return(t,o,s)=>{const a=0===t?A[0]:A[2],c=0===o?A[1]:A[3],l=i?e(a,n[0],n[2]):a,u=i?e(c,n[1],n[3]):c,f=s;y=l*M,S=r(u),b=f}})():O;let P=0,D=0,V=0;const I=m&&t.tile.surface.isWebMercatorOnPlateeCarree,U=(t,e,n,o)=>{if(m){const t=e*M,s=I?(Math.PI/2-2*Math.atan(Math.exp(-n/p)))*p:n*M,i=t-y,r=s-S,a=o-b;P+=-i*a,D+=-r*a,V+=i*i+r*r}else{const s=j(t),i=t.tile,r=i.extent,a=i.extentInRadians,c=(e-r[0])/(r[2]-r[0]),l=(n-r[1])/(r[3]-r[1]),u=a[0]*(1-c)+a[2]*c,f=s(l),d=Math.cos(f),g=Math.sin(f),m=Math.sin(u),h=Math.cos(u),M=p+o,x=h*d*M-y,v=m*d*M-S,O=g*M-b,T=v*B-O*R,I=O*L-x*B,U=x*R-v*L;P+=I*O-U*v,D+=U*x-T*O,V+=T*v-I*x}},A=g.extent,E=n.clippingArea,C=o(E)?E:ot,w=A[0],N=A[2],H=A[1],_=A[3],W=[_>C[3],N>C[2],H<C[1],w<C[0]],q=Math.max(w,C[0]),F=Math.min(N,C[2]),z=Math.max(H,C[1]),G=Math.min(_,C[3]),k=c.uvRange[0],J=c.uvRange[1],Q=c.uvRange[2],X=c.uvRange[3],Y=g.surface.shading||rt,Z=t=>{if(!m){const t=1/Math.sqrt(y*y+S*S+b*b);L=y*t,R=S*t,B=b*t}const e=r[t].cornerTiles;P=0,D=0,V=0;let n=1/0;for(let r=0;r<4;++r)n=Math.min(n,e[r]?.level??1/0);for(let r=0;r<4;++r){const t=e[r];st[r]=t?.level===n?t:null}let o=1,s=0;for(let r=0;r<4;++r){const t=st[r];t&&(o=Math.max(o,t?.renderData.geometryState.numVerticesPerSide),s=t.extent[2]-t.extent[0])}const i=s,c=o;x(c>1);const l=i/c;for(let r=0;r<4;++r){const t=st[(r+3)%4],e=st[r%4];if(!t&&!e)continue;const n=0===r?1:1===r?2:2===r?3:0,o=0===r?2:1===r?3:2===r?0:1;if(t&&e){const s=et[r][0]*l,i=et[r][1]*l,c=t.extent,u=c[0===n||1===n?2:0]+s,f=c[0===n||3===n?3:1]+i,d=e.extent,g=d[0===o||1===o?2:0]+s,m=d[0===o||3===o?3:1]+i,p=t.renderData,h=e.renderData,M=a(u,f,p.geometryState.samplerData),x=a(g,m,h.geometryState.samplerData);U(p,u,f,.5*(M+x))}else{const s=t??e,i=t?n:o,c=s.extent,u=et[r],f=c[0===i||1===i?2:0]+u[0]*l,d=c[0===i||3===i?3:1]+u[1]*l,g=s.renderData,m=a(f,d,g.geometryState.samplerData);U(g,f,d,m)}}const u=1/Math.sqrt(P*P+D*D+V*V);P*=u,D*=u,V*=u};for(let o=0;o<4;++o){const s=o,c=(o+1)%4,m=0===o||1===o?1:0,p=0===o||3===o?1:0,h=e(m,k,Q),M=e(p,J,X),L=l[s],R=0===o||3===o?L.count-1:0,B=l[c],O=0===o||1===o?B.count-1:0,I=r[o].cornerTiles;let U=-1;for(let t=0;t<4;++t){const e=I[t];e&&(-1===U||v(I[U],e)>0)&&(U=t)}const A=U,E=I[A];if(P=0,D=0,V=1,E!==g){const e=g.level-E.level,n=2**e,s=[E.lij[0]+e,E.lij[1]*n,E.lij[2]*n],i=[s[1]+n===g.lij[1],0===o&&(1===A||0===A&&E!==I[3])||1===o&&(0===A||1===A&&E!==I[2]),s[1]===g.lij[1]+1,2===o&&(3===A||2===A&&E!==I[1])||3===o&&(2===A||3===A&&E!==I[0])],r=i.reduce(((t,e)=>t+(e?1:0)),0);x(1===r||2===r);let a=-1,c=-1;const l=E.renderData;if(1===r){const e=i.findIndex((t=>t));x(0<=e&&e<=3),a=(e+2)%4;const n=t.geometryState.neighborData.edgeResolutions[e];c=g.getNeighborEdgeStartVertexIndex(e,E)*n+n*(0===e&&0===o||1===e&&0===o||2===e&&1===o||3===e&&3===o?1:0)}else{x(i[1]||i[3]),a=i[1]?3:1;const t=l.geometryState.neighborData.edgeResolutions[a];c=0===o||3===o?0:t}const m=l.geometryInfo.outerEdges[a];{const e=L.index0+R*L.stride,n=B.index0+O*B.stride,o=m.index0+c*m.stride;{const s=m.attributes.position,i=s.typedBuffer,r=o*s.typedBufferStride,a=t.localOrigin,c=m.localOrigin,l=i[r]+c[0]-a[0],d=i[r+1]+c[1]-a[1],g=i[r+2]+c[2]-a[2];f(l,d,g,u);{const t=L.attributes.position,n=t.typedBuffer,o=e*t.typedBufferStride;n[o]=l,n[o+1]=d,n[o+2]=g}{const t=B.attributes.position,e=t.typedBuffer,o=n*t.typedBufferStride;e[o]=l,e[o+1]=d,e[o+2]=g}}d(L.attributes.uv0,e,h,M),d(B.attributes.uv0,n,h,M);{const t=m.attributes.normalCompressed.typedBuffer,s=o*m.attributes.normalCompressed.typedBufferStride;{const n=L.attributes.normalCompressed,o=n.typedBuffer,i=e*n.typedBufferStride;o[i]=t[s],o[i+1]=t[s+1]}{const e=B.attributes.normalCompressed,o=e.typedBuffer,i=n*e.typedBufferStride;o[i]=t[s],o[i+1]=t[s+1]}}}}else{const t=W[s],r=W[c];let l;if(t||r){const t=e(w*(1-m)+N*m,q,F),o=e(H*(1-p)+_*p,z,G),s=n.samplerData;l=a(t,o,s)}else l=$(I);T(m,p,l),(Y||rt)&&Z(o);const d=y-i[0],g=S-i[1],x=b-i[2];f(d,g,x,u),L.setVertexFromValuesRawPositionUVNormal(R,d,g,x,h,M,P,D,V),B.setVertexFromValuesRawPositionUVNormal(O,d,g,x,h,M,P,D,V)}}for(let e=0;e<4;++e)st[e]=null}function $(t){const e=t.reduce(((t,e)=>Math.min(t,e?.level??1/0)),1/0);M&&(x(!t[0]||!t[2]||b(t[0],t[2],l.SOUTH_WEST)),x(!t[1]||!t[3]||b(t[1],t[3],l.NORTH_WEST)));let n=0,o=0;for(let i=0;i<4;++i){const s=t[i];if(s&&s.level===e){const t=0===i||1===i,e=0===i||3===i,r=s.extent,c=r[t?0:2],l=r[e?1:3],u=s.renderData?.geometryState?.samplerData;o+=a(c,l,u),n++}}const s=n?o/n:0;return x(null!=s),s}function tt(t){const e=t.vao,n=t.geometryInfo.vertexAttributes.position.typedBuffer;e.vertexBuffers.geometry.setSubData(n,0,0,n.length)}const et=[[0,1],[1,0],[0,-1],[-1,0]],nt=new p,ot=r(-1/0,-1/0,1/0,1/0),st=[null,null,null,null];function it(t,e,n){if(!e)return!1;const o=v(t,e);return o>0||0===o&&n>=2}const rt=!0;export{O as createInternalVerticesPositionsSpherical,w as createPlanarGlobePatch,R as createSphericalGlobePatch,D as updateCornerSpherical,W as updateCornersPlanar,q as updateEdgesAndCornersPlanar,P as updateEdgesAndCornersSpherical};
|
|
5
|
+
import{isPowerOfTwo as t,clamp as e}from"../../../core/mathUtils.js";import{isNone as n,isSome as o}from"../../../core/maybe.js";import{s}from"../../../chunks/vec4.js";import{empty as i}from"../../../geometry/support/aaBoundingBox.js";import{fromValues as r}from"../../../geometry/support/aaBoundingRect.js";import{sampleElevation as a}from"./ElevationData.js";import{PatchType as c,NeighborIndex as l}from"./interfaces.js";import{acquireTerrainAttributes as u,minMaxBoundingBox as f,encodeUVInBuffer as d,encodeNormalToBufferFromValues as g,EdgeDescriptor as m}from"./PatchGeometry.js";import{PatchGeometryLUT as p}from"./PatchGeometryLUT.js";import{neighborTileIfLoadedOrSelf as h}from"./PatchRenderData.js";import{ENABLE_TERRAIN_INTERNAL_CHECKS as M,internalAssert as x,neighborEdgeIndices as y,almostEquals as S}from"./terrainUtils.js";import{isCornerNeighbor as v}from"./Tile.js";import{compareTilesByLij as b}from"./tileUtils.js";const L=65536;function R(t,e){const n=t.tile,{extent:o,extentInRadians:s,surface:r}=n,a=t.localOrigin,l=t.geometryState,m=r.isWebMercator,p=r.shading||rt,h=l.numVerticesPerSide,y=h-1,S=(h-2)**2,v=m&&(e===c.HAS_SOUTH_POLE||e===c.HAS_BOTH_POLES),b=m&&(e===c.HAS_NORTH_POLE||e===c.HAS_BOTH_POLES),L=6,R=((v?1:0)+(b?1:0))*L*(y+1),O=l.neighborData,T=O.edgeResolutions.reduce(((t,e)=>t+e+1),0),P=u(S+R+T),D=t.geometryInfo;D.numVerticesPerSide=l.numVerticesPerSide,D.vertexAttributes=P;const I=D.boundingBox;i(I);const U=j(t);nt.update(y,s,U),B(t),X(t,S),V(t);const E=[];if((()=>{let t=S+T;const e=a[0],s=a[1],i=a[2],r=n.ellipsoid.radius,c=o[1],l=o[3],u=(n,o)=>{const a=o*h;f(-e,-s,n*r-i,I),E.push({connectedRowOffset:a,connectedOuterEdgeOffset:1===n?0:2,rowOffset:t,latitudeResolution:L});const u=A(-1===n?c:l,r),m=n*Math.PI/2-u,M=.99*(1===n?1:-1),x=r+0,S=P.position,v=P.uv0,b=P.normalCompressed;for(let r=1;r<=L;++r){const n=u+m*(r/L),o=Math.cos(n),a=Math.sin(n);for(let r=0;r<=y;r++){const n=r/y,c=nt.sinLonLUT[r],l=nt.cosLonLUT[r]*o,u=c*o,m=a,h=l*x-e,L=u*x-s,R=m*x-i;f(h,L,R,I),S.setValues(t,h,L,R),d(v,t,n,M),p&&g(b,t,l,u,m),++t}}};v&&u(-1,0),b&&u(1,y)})(),Q(D,l.numVerticesPerSide,E,[0,h-1],[0,h-1],l.wireframe),t.intersectionData=null,M)for(let i=0;i<4;++i)x(D.outerEdges[i].count===O.edgeResolutions[i]+1)}function B(t){const e=t.tile;e.intersectsClippingArea&&(e.surface.shading||rt?T(t):O(t))}function O(t){const e=t.geometryState,n=e.numVerticesPerSide,o=n-2,s=n-1,i=t.geometryInfo,r=i.vertexAttributes,c=r.position,l=r.uv0,u=t.tile,g=u.extent,m=g[0],p=g[2],h=g[1],M=g[3],x=u.ellipsoid.radius,y=e.samplerData,S=t.localOrigin,v=S[0],b=S[1],L=S[2],R=i.boundingBox,B=c.typedBuffer,O=c.typedBufferStride;let T=0;for(let P=1;P<=o;P++){const t=P/s,e=h*(1-t)+M*t,n=nt.sinLatLUT[P],i=nt.cosLatLUT[P];for(let r=1;r<=o;r++){const o=r/s,c=m*(1-o)+p*o,u=nt.sinLonLUT[r],g=nt.cosLonLUT[r],h=x+a(c,e,y),M=g*i*h-v,S=u*i*h-b,P=n*h-L;f(M,S,P,R);const D=T*O;B[D]=M,B[D+1]=S,B[D+2]=P,d(l,T,o,t),++T}}}function T(t){const e=t.geometryState,n=e.numVerticesPerSide,o=n-2,s=n-1,i=t.geometryInfo,r=i.vertexAttributes,c=r.position,l=r.uv0,u=r.normalCompressed,m=t.tile,p=m.extent,h=p[0],M=p[2],x=p[1],y=p[3],S=m.ellipsoid.radius,v=e.samplerData,b=t.localOrigin,L=b[0],R=b[1],B=b[2],O=c.typedBuffer,T=c.typedBufferStride,P=1/s,D=i.boundingBox;let V=0;if(1<=o){const t=P,e=x*(1-t)+y*t,n=nt.sinLatLUT[1],s=nt.cosLatLUT[1];for(let i=1;i<=o;i++){const o=i*P,r=h*(1-o)+M*o,c=nt.sinLonLUT[i],u=nt.cosLonLUT[i],g=S+a(r,e,v),m=g*u*s-L,p=g*c*s-R,x=g*n-B;f(m,p,x,D);const y=(i-1)*T;O[y]=m,O[y+1]=p,O[y+2]=x,d(l,i-1,o,t)}}for(let I=1;I<=o;I++){const t=I*P,e=x*(1-t)+y*t,n=nt.sinLatLUT[I],i=nt.cosLatLUT[I],r=I+1,c=r*P,m=x*(1-c)+y*c,p=nt.sinLatLUT[r],b=nt.cosLatLUT[r],U=nt.sinLonLUT[0],A=nt.cosLonLUT[0],E=S+a(h,e,v);let C=A*i*E-L,j=U*i*E-R,w=n*E-B;const N=V*T;let H=O[N],_=O[N+1],W=O[N+2];for(let y=1;y<=o;y++){const t=y*P,r=h*(1-t)+M*t,U=nt.sinLonLUT[y],A=nt.cosLonLUT[y],E=A*i,N=U*i,q=n;let F=0,z=0,G=0;{let t=0,r=0,c=0;if(y<o){const e=(V+1)*T;t=O[e],r=O[e+1],c=O[e+2]}else{const o=nt.sinLonLUT[s],l=nt.cosLonLUT[s],u=S+a(M,e,v);t=l*i*u-L,r=o*i*u-R,c=n*u-B}const l=C,u=j,f=w;C=H,j=_,w=W,H=t,_=r,W=c;const d=t-l,g=r-u,m=c-f,p=g*q-m*N,h=m*E-d*q,x=d*N-g*E;F=h*m-x*g,z=x*d-p*m,G=p*g-h*d}{let e=0,n=0,s=0;if(I>1){const t=(V-o)*T;e=O[t],n=O[t+1],s=O[t+2]}else{const t=nt.sinLatLUT[0],o=nt.cosLatLUT[0],i=S+a(r,x,v);e=A*o*i-L,n=U*o*i-R,s=t*i-B}{const i=S+a(r,m,v),u=A*b*i-L,g=U*b*i-R,h=p*i-B;if(I<o){const e=V+o,n=e*T;O[n]=u,O[n+1]=g,O[n+2]=h,f(u,g,h,D),d(l,e,t,c)}const M=e-u,x=n-g,y=s-h,P=x*q-y*N,C=y*E-M*q,j=M*N-x*E;F+=C*y-j*x,z+=j*M-P*y,G+=P*x-C*M}}const k=1/Math.sqrt(F*F+z*z+G*G);g(u,V,F*k,z*k,G*k),++V}}}function P(t){t.tile.intersectsClippingArea&&(V(t),tt(t))}function D(t){t.tile.intersectsClippingArea&&(U(t),I(t,!0),tt(t))}function V(t){t.tile.intersectsClippingArea&&(U(t),I(t))}function I(e,s=!1){const i=e.geometryState,r=e.geometryInfo,c=i.neighborData,l=e.tile,u=l.level,g=l.extent,m=l.ellipsoid.radius,p=l.extentInRadians,v=p[0],L=p[2],R=p[1],B=p[3],O=i.samplerData,T=g[0],P=g[2],D=g[1],V=g[3],I=j(e),U=r.boundingBox,A=e.localOrigin,E=A[0],C=A[1],w=A[2],N=l.surface.shading||rt,H=r.vertexAttributes,_=H.position,W=_.typedBuffer,q=_.typedBufferStride,F=H.uv0;for(let j=0;j<4;++j){const i=1===j||3===j,p=c.edgeResolutions[j];x(t(p));const A=p+1,H=h(l,c.edgePeerNeighbors[j]);if(it(l,H,j)){Y(e,j,H);continue}const _=o(H);x(!_||H.level===l.level),x(!_||b(l,H)<=0);const z=H?.renderData,G=z?.geometryState;if(M){const t=l.surface;if(!H&&t&&!t.updatingRootTiles){const e=y[j],o=l.findNeighborTile(e,(t=>t.isLoaded||t.isLeaf||t.level===l.level));o?o.intersectsClippingArea&&(x(!o.isLoaded),x(!o.isLeaf),x(o.level===u)):x(n(t?.rootTiles)||!l.shouldHaveNeighbor(e))}}const k=1===j?g[2]:g[0],J=H?.extent,K=J&&i?1===j?J[0]:J[2]:k,Q=0===j?g[3]:g[1],X=1===j?1:0,Z=0===j?1:0,$=1===j?L:v,tt=0===j?B:R,et=Math.sin($),nt=Math.cos($),ot=Math.sin(tt),st=Math.cos(tt),rt=G?.samplerData,at=_?(t,e,n)=>.5*(a(t,e,O)+a(n,e,rt)):(t,e,n)=>a(t,e,O),ct=r.outerEdges[j],lt=s&&A>3?A-3:1,ut=o(O)&&O.some((t=>null!=t)),ft=o(rt)&&rt.some((t=>null!=t)),dt=ut||ft,gt=1/p,mt=ct.index0;if(N){x(!J||S(J[2]-J[0],g[2]-g[0]));(()=>{const t=1===j?-1:3===j?1:0,e=0===j?-1:2===j?1:0,n=(g[2]-g[0])*gt,o=t*n,s=e*n,r=i?t*((L-v)*gt):0,c=i?0:e*gt,l=Z,u=i?$+r:$,p=i?Math.sin(u):et,h=i?Math.cos(u):nt,M=i?$-r:$,x=i?Math.sin(M):et,y=i?Math.cos(M):nt,S=i?tt:I(l+c),b=i?ot:Math.sin(S),R=i?st:Math.cos(S),B=i?tt:I(l-c),N=i?ot:Math.sin(B),H=i?st:Math.cos(B),z=(mt+0)*q;let G=W[z]+E,J=W[z+1]+C,Y=W[z+2]+w,it=0,ut=0,ft=0;{const t=1*gt,e=i?k:T*(1-t)+P*t,n=i?K:e,o=i?D*(1-t)+V*t:Q,s=i?$:v*(1-t)+L*t,r=i?et:Math.sin(s),a=i?nt:Math.cos(s),c=i?I(t):tt,l=i?Math.sin(c):ot,u=i?Math.cos(c):st,f=m+at(e,o,n);it=a*u*f,ut=r*u*f,ft=l*f}for(let g=1;g<A-1;g+=lt){let t=0,e=0,n=0;{const o=(mt+g+1)*q;if(g<A-2){const o=(g+1)*gt,s=i?k:T*(1-o)+P*o,r=i?K:s,a=i?D*(1-o)+V*o:Q,c=i?$:v*(1-o)+L*o,l=i?et:Math.sin(c),u=i?nt:Math.cos(c),f=i?I(o):tt,d=i?Math.sin(f):ot,p=i?Math.cos(f):st,h=m+at(s,a,r);t=u*p*h,e=l*p*h,n=d*h}else t=W[o]+E,e=W[o+1]+C,n=W[o+2]+w}const r=t,c=e,l=n,u=it,M=ut,S=ft;it=r,ut=c,ft=l;{const t=mt+g,e=t*q,n=u-E,o=M-C,s=S-w;W[e]=n,W[e+1]=o,W[e+2]=s,f(n,o,s,U);const r=g*gt;d(F,t,i?X:r,i?r:Z)}const B=G,j=J,z=Y;G=u,J=M,Y=S;const lt=u,pt=M,ht=S;let Mt=0,xt=0,yt=0;if(dt){const t=1/Math.sqrt(lt*lt+pt*pt+ht*ht),e=lt*t,n=pt*t,u=ht*t;{const t=r-B,o=c-j,s=l-z,i=o*u-s*n,a=s*e-t*u,f=t*n-o*e;Mt+=a*s-f*o,xt+=f*t-i*s,yt+=i*o-a*t}{const t=g*gt,r=i?k:T*(1-t)+P*t,c=i?K:r,l=i?D*(1-t)+V*t:Q,f=i?$:v*(1-t)+L*t,d=i?et:Math.sin(f),M=i?nt:Math.cos(f),S=i?I(t):tt,B=i?Math.sin(S):ot,U=i?Math.cos(S):st;let A=lt,E=pt,C=ht;if(_){const t=m+a(c-o,l-s,rt),e=i?U:H;A=(i?y:M)*e*t,E=(i?x:d)*e*t,C=(i?B:N)*t}{const t=m+a(r+o,l+s,O),c=i?U:R,f=(i?h:M)*c*t,g=(i?p:d)*c*t,x=(i?B:b)*t;_||(A=2*lt-f,E=2*pt-g,C=2*ht-x);const y=A-f,S=E-g,v=C-x,L=S*u-v*n,T=v*e-y*u,P=y*n-S*e;Mt+=T*v-P*S,xt+=P*y-L*v,yt+=L*S-T*y}}}else Mt=lt,xt=pt,yt=ht;const St=1/Math.sqrt(Mt*Mt+xt*xt+yt*yt);ct.setNormalFromValues(g,Mt*St,xt*St,yt*St)}})()}else{(()=>{for(let t=1;t<A-1;t+=lt){const e=t*gt,n=i?X:e,o=i?e:Z,s=i?k:T*(1-e)+P*e,r=i?D*(1-e)+V*e:Q,a=i?K:s,c=i?$:v*(1-e)+L*e,l=i?et:Math.sin(c),u=i?nt:Math.cos(c),g=i?I(e):tt,p=i?Math.sin(g):ot,h=i?Math.cos(g):st,M=at(s,r,a),x=m+M,y=u*h*x-E,S=l*h*x-C,b=p*x-w;f(y,S,b,U);const R=mt+t,B=R*q;W[B]=y,W[B+1]=S,W[B+2]=b,d(F,R,n,o)}})()}}}function U(t){Z(t)}function A(t,e){return Math.PI/2-2*Math.atan(Math.exp(-t/e))}function E(t,e,n,o){return A(t*(1-o)+e*o,n)}function C(t,e,n){return t*(1-n)+e*n}function j(t){const e=t.tile;if(e.surface.isWebMercator){const t=e.extent,n=e.ellipsoid.radius;return e=>E(t[1],t[3],n,e)}const n=e.extentInRadians;return t=>C(n[1],n[3],t)}function w(t,e){const n=t.tile.extent,r=t.geometryState,a=n[0],c=n[1],l=n[2]-a,f=n[3]-c,d=r.clippingArea,g=o(d)?Math.max(0,(d[0]-a)/l):0,m=o(d)?Math.max(0,(d[1]-c)/f):0,p=o(d)?Math.min(1,(d[2]-a)/l):1,h=o(d)?Math.min(1,(d[3]-c)/f):1,M=r.numVerticesPerSide,x=(M-2)**2,y=r.neighborData.edgeResolutions.reduce(((t,e)=>t+e+1),0),S=u(x+y),v=t.geometryInfo,b=v.boundingBox;i(b),v.numVerticesPerSide=r.numVerticesPerSide,v.vertexAttributes=S,s(v.uvRange,g,m,p,h),N(t),X(t,x),F(t),Q(v,r.numVerticesPerSide,[],[0,M-1],[0,M-1],r.wireframe),t.intersectionData=null}function N(t){const e=t.tile;e.intersectsClippingArea&&(e.surface.shading?_(t):H(t))}function H(t){const n=t.geometryState,s=n.samplerData,i=t.tile,r=i.surface,c=t.localOrigin,l=r.isWebMercatorOnPlateeCarree,u=n.clippingArea,g=o(u)?u:ot,m=i.extent,p=m[0],h=m[1],M=m[2],x=m[3],y=Math.max(p,g[0]),S=Math.min(M,g[2]),v=Math.max(h,g[1]),b=Math.min(x,g[3]),L=c[0],R=c[1],B=c[2],O=i.ellipsoid.radius,T=i.horizontalScale,P=K(l,O,T),D=n.numVerticesPerSide,V=D-1,I=D-2,U=t.geometryInfo,A=U.uvRange,E=A[0],C=A[1],j=A[2],w=A[3],N=U.boundingBox,H=U.vertexAttributes,_=H.position,W=H.uv0;let q=0;for(let o=1;o<=I;o++){const t=o/V,n=e(h*(1-t)+x*t,v,b),i=e(t,C,w),r=P(n)-R;for(let o=1;o<=I;o++){const t=o/V,c=e(p*(1-t)+M*t,y,S),l=e(t,E,j),u=c*T-L,g=a(c,n,s)-B;f(u,r,g,N),_.setValues(q,u,r,g),d(W,q,l,i),++q}}}function _(t){const n=t.tile,s=n.surface;if(!(s.shading||rt))return;const i=t.geometryState,r=i.samplerData,c=t.localOrigin,l=s.isWebMercatorOnPlateeCarree,u=i.clippingArea,m=o(u)?u:ot,p=n.extent,h=p[0],M=p[1],x=p[2],y=p[3],S=Math.max(h,m[0]),v=Math.min(x,m[2]),b=Math.max(M,m[1]),L=Math.min(y,m[3]),R=n.ellipsoid.radius,B=n.horizontalScale,O=i.numVerticesPerSide,T=O-1,P=O-2,D=t.geometryInfo,V=D.vertexAttributes,I=V.position,U=V.uv0,A=V.normalCompressed,E=D.uvRange,C=E[0],j=E[1],w=E[2],N=E[3],H=D.boundingBox,_=c[0],W=c[1],q=c[2],F=I.typedBuffer,z=I.typedBufferStride;let G=0;const k=e(M,b,L),J=l?(Math.PI/2-2*Math.atan(Math.exp(-k/R)))*R:k*B,K=1/T,Q=e(M*(1-K)+y*K,b,L);let X=J,Y=l?(Math.PI/2-2*Math.atan(Math.exp(-Q/R)))*R:Q*B;for(let o=1;o<=P;o++){const t=o/T,n=e(M*(1-t)+y*t,b,L),s=e(t,j,N),i=Y,c=(o-1)/T,u=e(M*(1-c)+y*c,b,L),m=X,p=(o+1)/T,O=e(M*(1-p)+y*p,b,L),D=l?(Math.PI/2-2*Math.atan(Math.exp(-O/R)))*R:O*B,V=e(p,j,N);X=Y,Y=D;const I=e(h,S,v);let E=I*B,k=a(I,n,r);const J=1/T,K=e(J,C,w),Q=e(h*(1-K)+x*K,S,v);let Z=K,$=Q,tt=Q*B,et=a(Q,n,r);if(1===o){const t=tt-_,n=X-W,o=et-q,i=0*z;F[i]=t,F[i+1]=n,F[i+2]=o,f(t,n,o,H);const r=e(J,C,w);d(U,G,r,s)}for(let l=1;l<=P;l++){const t=tt,c=et,p=(l+1)/T,M=e(p,C,w),y=e(h*(1-p)+x*p,S,v),b=$;$=y;{const t=G+1,e=t*z;if(1===o||l===P){const c=y*B,u=a(y,n,r);if(1===o&&l<P){const n=c-_,o=i-W,r=u-q;F[e]=n,F[e+1]=o,F[e+2]=r,f(n,o,r,H),d(U,t,M,s)}tt=c,et=u}else tt=F[e]+_,et=F[e+2]+q}const L=tt,R=et,I=E,j=k;E=t,k=c;const N=(G-P)*z,J=1===o?a(b,u,r):F[N+2]+q,K=a(b,O,r);if(o<P){const e=G+P,n=e*z,o=t-_,s=D-W,i=K-q;F[n]=o,F[n+1]=s,F[n+2]=i,f(o,s,i,H);const r=Z;Z=M,d(U,e,r,V)}{const t=L-I,e=-t*(R-j),n=m-D,o=-n*(J-K),s=t*t+n*n,i=e*e+o*o+s*s;if(0===i)g(A,G,0,0,1);else{const t=1/Math.sqrt(i);g(A,G,e*t,o*t,s*t)}}++G}}}function W(t,e){t.tile.intersectsClippingArea&&(G(t),z(t,!0),tt(t))}function q(t,e){t.tile.intersectsClippingArea&&(F(t),tt(t))}function F(t,e){t.tile.intersectsClippingArea&&(G(t),z(t,!1))}function z(s,i){const r=s.geometryState,c=r.neighborData,l=s.tile,u=l.surface,d=u.shading||rt,g=l.extent,m=r.clippingArea,p=o(m)?m:ot,S=g[0],v=g[2],L=g[1],R=g[3],B=[R>p[3],v>p[2],L<p[1],S<p[0]],O=s.geometryInfo,T=l.horizontalScale,P=K(u.isWebMercatorOnPlateeCarree,l.ellipsoid.radius,T),D=O.boundingBox,V=O.uvRange[0],I=O.uvRange[1],U=O.uvRange[2],A=O.uvRange[3],E=Math.max(S,p[0]),C=Math.min(v,p[2]),j=Math.max(L,p[1]),w=Math.min(R,p[3]),N=s.localOrigin,H=N[0],_=N[1],W=N[2],q=r.samplerData;for(let F=0;F<4;++F){const r=1===F||3===F,g=c.edgeResolutions[F];x(t(g));const m=g+1,p=B[F],N=h(l,c.edgePeerNeighbors[F]);if(!p&&it(l,N,F)){Y(s,F,N);continue}const z=o(N)&&!p,G=N?.renderData,k=G?.geometryState;if(M&&(x(!z||N.level===l.level),x(!z||b(l,N)<=0),l&&!N&&!u.updatingRootTiles)){const t=y[F],e=l.findNeighborTile(t,(t=>t.isLoaded||t.isLeaf||t.level===l.level));u.updatingRootTiles||(e?e.intersectsClippingArea&&(x(!e.isLoaded),x(!e.isLeaf),x(e.level===l.level)):x(n(u?.rootTiles)||!l.shouldHaveNeighbor(t)))}const J=e(1===F?v:S,E,C),K=e(0===F?R:L,j,w),Q=k?.samplerData,X=O.outerEdges[F],Z=i&&m>3?m-3:1,$=e(1===F?1:0,V,U),tt=e(0===F?1:0,I,A),et=z?(t,e)=>.5*(a(t,e,Q)+a(t,e,q)):(t,e)=>a(t,e,q);if(d){const t=(v-S)/g,n=r?1===F?t:-t:0,o=r?0:0===F?t:-t,s=-n,i=-o,c=X.attributes.position.typedBuffer,l=X.attributes.position.typedBufferStride,u=X.index0,d=X.stride,p=u*l;let h=c[p]+H,M=c[p+1]+_,x=c[p+2]+W,y=0,b=0,B=0;{const t=1/g,n=r?J:e(S*(1-t)+v*t,E,C),o=r?e(L*(1-t)+R*t,j,w):K,s=et(n,o);y=n*T,b=P(o),B=s}for(let O=1;O<m-1;O+=Z){const t=O/g,p=y,N=b,F=B;{const n=r?$:e(t,V,U),o=r?e(t,I,A):tt,s=p-H,i=N-_,a=F-W;f(p,i,a,D),X.setVertexFromValuesRawPositionUV(O,s,i,a,n,o)}const G=O+1;if(O===m-1){const t=(u+G*d)*l;y=c[t]+H,b=c[t+1]+_,B=c[t+2]+W}else{const t=G/g,n=r?J:e(S*(1-t)+v*t,E,C),o=r?e(L*(1-t)+R*t,j,w):K,s=et(n,o);y=n*T,b=P(o),B=s}const k=y,Y=B,Z=h,nt=M,ot=x;h=p,M=N,x=F;let st=0,it=0,rt=0;if(r){{const t=b-N,e=nt-N;it-=e*(ot-F)+t*(Y-F),rt+=e*e+t*t}{const o=e(L*(1-t)+R*t,j,w),i=J+s,r=i*T-p;if(st-=r*(a(i,o,q)-F),rt+=r*r,z){const t=J+n,e=t*T-p;st-=e*(a(t,o,Q)-F),rt+=e*e}}}else{{const t=k-p,e=Z-p;st-=t*(Y-F)+e*(ot-F),rt+=t*t+e*e}{const n=e(S*(1-t)+v*t,E,C),s=K+i,r=a(n,s,q)-F,c=P(s)-N;if(it-=c*r,rt+=c*c,z){const t=n,e=K+o,s=P(e)-N;it-=s*(a(t,e,Q)-F),rt+=s*s}}}const at=1/Math.sqrt(st*st+it*it+rt*rt);X.setNormalFromValues(O,st*at,it*at,rt*at)}}else for(let t=1;t<m-1;t+=Z){const n=t/g,o=r?J:e(S*(1-n)+v*n,E,C),s=r?e(L*(1-n)+R*n,j,w):K,i=r?$:e(n,V,U),a=r?e(n,I,A):tt,c=et(o,s),l=o*T-H,u=P(s)-_,d=c-W;f(l,u,d,D),X.setVertexFromValuesRawPositionUV(t,l,u,d,i,a)}}}function G(t,e){Z(t)}function k(t,e){return(Math.PI/2-2*Math.atan(Math.exp(-t/e)))*e}function J(t,e){return t*e}function K(t,e,n){return t?t=>k(t,e):t=>J(t,n)}function Q(t,e,n,o,s,i){const r=e-1,a=t.vertexAttributes.count,c=2*(Math.min(e-2,o[1])-Math.max(1,o[0]))*(Math.min(e-2,s[1])-Math.max(1,s[0])),l=y.map(((t,n)=>0===n&&s[1]<e-2||1===n&&o[1]<e-2||2===n&&s[0]>1||3===n&&o[0]>1)),u=t.outerEdges.reduce(((t,e,n)=>t+(l[n]?0:r-2+e.count-1)),0),f=n.reduce(((t,e)=>t+r*(2*(e.latitudeResolution-1)+1)),0),d=i?2:1,g=3*(c+u+f)*d,m=a>=L?new Uint32Array(g):new Uint16Array(g);let p=0;const h=e-2,S=r-2;if(x(S>=0),i){const i=(t,e,n)=>{m[p++]=t,m[p++]=e,m[p++]=e,m[p++]=n,m[p++]=n,m[p++]=t,M&&(x(t<a),x(e<a),x(n<a),x(p<=g))};(()=>{for(let t=Math.max(s[0],1)-1;t<Math.min(s[1],e-2)-1;++t)for(let n=Math.max(o[0],1)-1;n<Math.min(o[1],e-2)-1;++n){const e=t*h+n,o=e+1,s=o+h,r=s-1;i(e,o,s),i(s,r,e)}})(),x(p===3*c*d);(()=>{for(let e=0;e<4;++e){const n=p;if(l[e])continue;const o=t.outerEdges[e],s=t.innerEdges[e];let a=0,c=0;const u=o.count,f=s.count;x(f===r-1);let g=0;const m=1===e||2===e?(t,e,n)=>i(t,e,n):(t,e,n)=>i(t,n,e);for(;a<u-1||c<f-1;){const t=s.getVertexIndex(c),e=o.getVertexIndex(a),n=a<u-1,i=c<f-1;if(n&&(!i||(n?0+r*(a+.5)/(u-1):0)<=(i?1+S*(c+.5)/(f-1):0))){++a,M&&x(a<u);m(t,e,o.getVertexIndex(a)),g++}else{++c,M&&x(c<f);m(t,e,s.getVertexIndex(c)),g++}}M&&(x(a===u-1),x(c===f-1),x(g===u+f-2),x(g===r-2+o.count-1),x(p===n+3*g*d))}})(),x(p===3*(c+u)*d);const f=n=>{const o=t.outerEdges[n.connectedOuterEdgeOffset];let s=o.getVertexIndex(0),a=o.stride;for(let t=0;t<n.latitudeResolution;++t){const o=0===t?n.rowOffset:s+e;for(let e=0;e<r;e++)i(s,s+1,o+e),t<n.latitudeResolution-1&&i(s+1,o+e+1,o+e),s+=a;s=o,a=1}};(()=>n.forEach(f))()}else{(()=>{const t=Math.max(s[0],1)-1,n=Math.min(s[1],e-2)-1,i=Math.max(o[0],1)-1,r=Math.min(o[1],e-2)-1;for(let e=t;e<n;++e){const t=e*h;for(let e=i;e<r;++e){const n=t+e,o=n+1,s=o+h,i=s-1;m[p]=n,m[p+1]=o,m[p+2]=s,m[p+3]=s,m[p+4]=i,m[p+5]=n,p+=6}}})(),x(p===3*c*d);(()=>{for(let e=0;e<4;++e){if(l[e])continue;const n=t.outerEdges[e],o=t.innerEdges[e];let s=0,i=0;const a=n.count,c=o.count;x(c===r-1);const u=1===e||2===e,f=u?1:2,d=u?2:1,g=n.index0,h=n.stride,M=o.index0,y=o.stride;for(;s<a-1||i<c-1;){const t=M+i*y,e=g+s*h,n=s<a-1,o=i<c-1,l=n&&(!o||(n?0+r*(s+.5)/(a-1):0)<=(o?1+S*(i+.5)/(c-1):0));l?++s:++i;const u=l?e+h:t+y;m[p]=t,m[p+f]=e,m[p+d]=u,p+=3}}})(),x(p===3*(c+u)*d);const i=n=>{const o=t.outerEdges[n.connectedOuterEdgeOffset];let s=o.getVertexIndex(0),i=o.stride;for(let t=0;t<n.latitudeResolution;++t){const o=0===t?n.rowOffset:s+e;for(let e=0;e<r;e++){const r=o+e;m[p]=s,m[p+1]=s+1,m[p+2]=r,t<n.latitudeResolution-1?(m[p+3]=s+1,m[p+4]=r+1,m[p+5]=r,p+=6):p+=3,s+=i}s=o,i=1}};(()=>n.forEach(i))()}x(p===g),t.indices=m,t.indexCount=g}function X(t,e){const n=t.localOrigin,o=t.geometryInfo,s=t.geometryState.neighborData.edgeResolutions,i=o.numVerticesPerSide-2,r=o.vertexAttributes;let a=e;for(let c=0;c<4;++c){{const t=0===c||2===c,e=(0===c?i-1:0)*i+(1===c?i-1:0),s=(t?0:1)*i+(t?1:0);o.innerEdges[c]=new m(r,n,e,s,i)}{const t=a,e=s[c]+1;o.outerEdges[c]=new m(r,n,t,1,e),a+=e}}}function Y(n,o,s){const i=(o+2)%4,r=n.geometryState,a=n.tile,c=r.neighborData,l=a.level-s.level,u=1===o||3===o,g=c.edgeResolutions[o];x(t(g));const m=g+1,p=n.geometryInfo,h=p.boundingBox,M=p.outerEdges[o],y=p.uvRange[0],S=p.uvRange[1],v=p.uvRange[2],b=p.uvRange[3],L=e(1===o?1:0,y,v),R=e(0===o?1:0,S,b),B=s.renderData,O=B.geometryState,T=B.geometryInfo.outerEdges[i],P=a.getNeighborEdgeStartVertexIndex(o,s)*g,D=g*2**l;x(O.neighborData.edgeResolutions[i]===D),x(T.count-1===D);const V=B.localOrigin[0]-n.localOrigin[0],I=B.localOrigin[1]-n.localOrigin[1],U=B.localOrigin[2]-n.localOrigin[2],A=M.attributes,E=M.index0,C=M.stride,j=A.position.typedBuffer,w=A.position.typedBufferStride,N=A.normalCompressed.typedBuffer,H=A.normalCompressed.typedBufferStride,_=A.uv0,W=T.attributes,q=T.index0,F=T.stride,z=W.position.typedBuffer,G=W.position.typedBufferStride,k=W.normalCompressed.typedBuffer,J=W.normalCompressed.typedBufferStride;for(let t=1;t<m-1;++t){const n=E+C*t,o=q+F*(P+t),s=n*w,i=o*G,r=z[i]+V,a=z[i+1]+I,c=z[i+2]+U;j[s]=r,j[s+1]=a,j[s+2]=c,f(r,a,c,h);const l=n*H,m=o*J;N[l]=k[m],N[l+1]=k[m+1];const p=t/g,M=u?L:e(p,y,v),x=u?e(p,S,b):R;d(_,n,M,x)}}function Z(t){const n=t.geometryState,s=n.neighborData,i=t.localOrigin,r=s.cornerNeighborData,c=t.geometryInfo,l=c.outerEdges,u=c.boundingBox,g=t.tile,m="local"===t.tile.surface.view?.viewingMode,p=g.ellipsoid.radius,h=g.extentInRadians,M=g.horizontalScale;let y=0,S=0,v=0,L=0,R=0,B=0;const O=(t,e,n)=>{const o=h[0===e?1:3],s=h[0===t?0:2],i=Math.cos(o),r=Math.sin(o),a=Math.sin(s),c=Math.cos(s),l=p+n;y=c*i*l,S=a*i*l,v=r*l},T=m?(()=>{const n=t.geometryState.clippingArea,s=g.extent,i=o(n)&&(s[3]>n[3]||s[2]>n[2]||s[1]<n[1]||s[0]<n[0]),r=K(g.surface.isWebMercatorOnPlateeCarree,g.ellipsoid.radius,M);return(t,o,s)=>{const a=0===t?A[0]:A[2],c=0===o?A[1]:A[3],l=i?e(a,n[0],n[2]):a,u=i?e(c,n[1],n[3]):c,f=s;y=l*M,S=r(u),v=f}})():O;let P=0,D=0,V=0;const I=m&&t.tile.surface.isWebMercatorOnPlateeCarree,U=(t,e,n,o)=>{if(m){const t=e*M,s=I?(Math.PI/2-2*Math.atan(Math.exp(-n/p)))*p:n*M,i=t-y,r=s-S,a=o-v;P+=-i*a,D+=-r*a,V+=i*i+r*r}else{const s=j(t),i=t.tile,r=i.extent,a=i.extentInRadians,c=(e-r[0])/(r[2]-r[0]),l=(n-r[1])/(r[3]-r[1]),u=a[0]*(1-c)+a[2]*c,f=s(l),d=Math.cos(f),g=Math.sin(f),m=Math.sin(u),h=Math.cos(u),M=p+o,x=h*d*M-y,b=m*d*M-S,O=g*M-v,T=b*B-O*R,I=O*L-x*B,U=x*R-b*L;P+=I*O-U*b,D+=U*x-T*O,V+=T*b-I*x}},A=g.extent,E=n.clippingArea,C=o(E)?E:ot,w=A[0],N=A[2],H=A[1],_=A[3],W=[_>C[3],N>C[2],H<C[1],w<C[0]],q=Math.max(w,C[0]),F=Math.min(N,C[2]),z=Math.max(H,C[1]),G=Math.min(_,C[3]),k=c.uvRange[0],J=c.uvRange[1],Q=c.uvRange[2],X=c.uvRange[3],Y=g.surface.shading||rt,Z=t=>{if(!m){const t=1/Math.sqrt(y*y+S*S+v*v);L=y*t,R=S*t,B=v*t}const e=r[t].cornerTiles;P=0,D=0,V=0;let n=1/0;for(let r=0;r<4;++r)n=Math.min(n,e[r]?.level??1/0);for(let r=0;r<4;++r){const t=e[r];st[r]=t?.level===n?t:null}let o=1,s=0;for(let r=0;r<4;++r){const t=st[r];t&&(o=Math.max(o,t?.renderData.geometryState.numVerticesPerSide),s=t.extent[2]-t.extent[0])}const i=s,c=o;x(c>1);const l=i/c;for(let r=0;r<4;++r){const t=st[(r+3)%4],e=st[r%4];if(!t&&!e)continue;const n=0===r?1:1===r?2:2===r?3:0,o=0===r?2:1===r?3:2===r?0:1;if(t&&e){const s=et[r][0]*l,i=et[r][1]*l,c=t.extent,u=c[0===n||1===n?2:0]+s,f=c[0===n||3===n?3:1]+i,d=e.extent,g=d[0===o||1===o?2:0]+s,m=d[0===o||3===o?3:1]+i,p=t.renderData,h=e.renderData,M=a(u,f,p.geometryState.samplerData),x=a(g,m,h.geometryState.samplerData);U(p,u,f,.5*(M+x))}else{const s=t??e,i=t?n:o,c=s.extent,u=et[r],f=c[0===i||1===i?2:0]+u[0]*l,d=c[0===i||3===i?3:1]+u[1]*l,g=s.renderData,m=a(f,d,g.geometryState.samplerData);U(g,f,d,m)}}const u=1/Math.sqrt(P*P+D*D+V*V);P*=u,D*=u,V*=u};for(let o=0;o<4;++o){const s=o,c=(o+1)%4,m=0===o||1===o?1:0,p=0===o||3===o?1:0,h=e(m,k,Q),M=e(p,J,X),L=l[s],R=0===o||3===o?L.count-1:0,B=l[c],O=0===o||1===o?B.count-1:0,I=r[o].cornerTiles;let U=-1;for(let t=0;t<4;++t){const e=I[t];e&&(-1===U||b(I[U],e)>0)&&(U=t)}const A=U,E=I[A];if(P=0,D=0,V=1,E!==g){const e=g.level-E.level,n=2**e,s=[E.lij[0]+e,E.lij[1]*n,E.lij[2]*n],i=[s[1]+n===g.lij[1],0===o&&(1===A||0===A&&E!==I[3])||1===o&&(0===A||1===A&&E!==I[2]),s[1]===g.lij[1]+1,2===o&&(3===A||2===A&&E!==I[1])||3===o&&(2===A||3===A&&E!==I[0])],r=i.reduce(((t,e)=>t+(e?1:0)),0);x(1===r||2===r);let a=-1,c=-1;const l=E.renderData;if(1===r){const e=i.findIndex((t=>t));x(0<=e&&e<=3),a=(e+2)%4;const n=t.geometryState.neighborData.edgeResolutions[e];c=g.getNeighborEdgeStartVertexIndex(e,E)*n+n*(0===e&&0===o||1===e&&0===o||2===e&&1===o||3===e&&3===o?1:0)}else{x(i[1]||i[3]),a=i[1]?3:1;const t=l.geometryState.neighborData.edgeResolutions[a];c=0===o||3===o?0:t}const m=l.geometryInfo.outerEdges[a];{const e=L.index0+R*L.stride,n=B.index0+O*B.stride,o=m.index0+c*m.stride;{const s=m.attributes.position,i=s.typedBuffer,r=o*s.typedBufferStride,a=t.localOrigin,c=m.localOrigin,l=i[r]+c[0]-a[0],d=i[r+1]+c[1]-a[1],g=i[r+2]+c[2]-a[2];f(l,d,g,u);{const t=L.attributes.position,n=t.typedBuffer,o=e*t.typedBufferStride;n[o]=l,n[o+1]=d,n[o+2]=g}{const t=B.attributes.position,e=t.typedBuffer,o=n*t.typedBufferStride;e[o]=l,e[o+1]=d,e[o+2]=g}}d(L.attributes.uv0,e,h,M),d(B.attributes.uv0,n,h,M);{const t=m.attributes.normalCompressed.typedBuffer,s=o*m.attributes.normalCompressed.typedBufferStride;{const n=L.attributes.normalCompressed,o=n.typedBuffer,i=e*n.typedBufferStride;o[i]=t[s],o[i+1]=t[s+1]}{const e=B.attributes.normalCompressed,o=e.typedBuffer,i=n*e.typedBufferStride;o[i]=t[s],o[i+1]=t[s+1]}}}}else{const t=W[s],r=W[c];let l;if(t||r){const t=e(w*(1-m)+N*m,q,F),o=e(H*(1-p)+_*p,z,G),s=n.samplerData;l=a(t,o,s)}else l=$(I);T(m,p,l),(Y||rt)&&Z(o);const d=y-i[0],g=S-i[1],x=v-i[2];f(d,g,x,u),L.setVertexFromValuesRawPositionUVNormal(R,d,g,x,h,M,P,D,V),B.setVertexFromValuesRawPositionUVNormal(O,d,g,x,h,M,P,D,V)}}for(let e=0;e<4;++e)st[e]=null}function $(t){const e=t.reduce(((t,e)=>Math.min(t,e?.level??1/0)),1/0);M&&(x(!t[0]||!t[2]||v(t[0],t[2],l.SOUTH_WEST)),x(!t[1]||!t[3]||v(t[1],t[3],l.NORTH_WEST)));let n=0,o=0;for(let i=0;i<4;++i){const s=t[i];if(s&&s.level===e){const t=0===i||1===i,e=0===i||3===i,r=s.extent,c=r[t?0:2],l=r[e?1:3],u=s.renderData?.geometryState?.samplerData;o+=a(c,l,u),n++}}const s=n?o/n:0;return x(null!=s),s}function tt(t){const e=t.vao,n=t.geometryInfo.vertexAttributes.position.typedBuffer;e.vertexBuffers.geometry.setSubData(n,0,0,n.length)}const et=[[0,1],[1,0],[0,-1],[-1,0]],nt=new p,ot=r(-1/0,-1/0,1/0,1/0),st=[null,null,null,null];function it(t,e,n){if(!e)return!1;const o=b(t,e);return o>0||0===o&&n>=2}const rt=!0;export{O as createInternalVerticesPositionsSpherical,w as createPlanarGlobePatch,R as createSphericalGlobePatch,D as updateCornerSpherical,W as updateCornersPlanar,q as updateEdgesAndCornersPlanar,P as updateEdgesAndCornersSpherical};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.26/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{equals as e}from"../../../core/arrayUtils.js";import{isPowerOfTwo as t}from"../../../core/mathUtils.js";import{isSome as r,isNone as i,mapOr as s}from"../../../core/maybe.js";import{i as a,j as n,u as o,b as l,n as h,e as d,w as g,F as c}from"../../../chunks/vec3.js";import{c as u,a as m}from"../../../chunks/vec3f64.js";import{empty as p}from"../../../geometry/support/aaBoundingBox.js";import{containsXY as f}from"../../../geometry/support/aaBoundingRect.js";import{earth as y}from"../../../geometry/support/Ellipsoid.js";import{glLayout as _}from"../support/buffer/glUtil.js";import{GeometryState as x}from"./GeometryState.js";import{NeighborIndex as D}from"./interfaces.js";import{LayerClass as v}from"./LayerClass.js";import{PatchGeometry as C,releaseGeometry as S}from"./PatchGeometry.js";import{ENABLE_TERRAIN_INTERNAL_CHECKS as $,internalAssert as E,neighborEdgeIndices as b,oppositeEdge as T,neighborCornerIndices as j,v32s as A,lij2s as V}from"./terrainUtils.js";import{TextureFader as R,ActivationTime as w}from"./TextureFader.js";export{ActivationTime}from"./TextureFader.js";import{isEdgeNeighbor as L}from"./Tile.js";import P from"./TileOverlayData.js";import{fallsWithinLayer as N}from"./tileUtils.js";import{VertexArrayObject as I}from"../webgl-engine/lib/VertexArrayObject.js";import{terrainVertexAttributeLocations as G}from"../webgl-engine/shaders/TerrainTechnique.js";import{BufferObject as M}from"../../webgl/BufferObject.js";class O{constructor(){this.geometryInfo=new C,this.intersectionData=null,this.geometryState=null,this._textureRef=new R((()=>this.tile.surface.textureFadeDuration)),this.overlay=new P,this._geometryStateChangedSinceLastUpdate=!0,this._hasGeometry=!1,this._numVerticesPerSideChanged=!1,this._samplerDataChanged=!1,this._clippingAreaChanged=!1,this._wireframeChanged=!1,this._shadingChanged=!1,this._dirtyEdgeResolutions=15,this._dirtyEdges=15,this._dirtyCorners=15}get tile(){return this._tile}init(e){this.clear(),this._tile=e;const t=this.geometryInfo;t.indices=null,t.vertexAttributes=null,p(t.boundingBox),t.indexCount=0,t.numVerticesPerSide=0,this.intersectionData=null,this.geometryState=new x,this.localOrigin=null,this.overlay.clear()}clear(){this.releaseGeometry(),this.releaseTexture(),this._textureRef.clear(),this._tile=null,this.intersectionData=null,this.geometryState=null}updateGeometryIfNeeded(e){if((!this._vao||this._geometryStateChangedSinceLastUpdate||this._wireframeChanged||this._shadingChanged||this._clippingAreaChanged||this._samplerDataChanged||this._numVerticesPerSideChanged||this._dirtyCorners||this._dirtyEdgeResolutions||this._dirtyEdges)&&(this._updateGeometry(e),this._geometryStateChangedSinceLastUpdate=!1),$&&this.tile.intersectsClippingArea)for(let t=0;t<4;++t)E(this.geometryInfo.outerEdges[t].count===this.geometryState.neighborData.edgeResolutions[t]+1)}_calculateEdgeResolution(e,t){const s=this.tile,a=this.geometryState.numVerticesPerSide-1;if(!s.surface.isGlobal){const t=s.surface.extent;if(r(t)&&(0===e&&s.extent[3]>t[3]||1===e&&s.extent[2]>t[2]||2===e&&s.extent[1]<t[1]||3===e&&s.extent[0]<t[0]))return a}const n=s.level,o=b[e];if(!t)return E(i(s.surface?.rootTiles)||s.surface.updatingRootTiles||!s.shouldHaveNeighbor(o)),a;if(t.isLoaded){const r=t,i=r.renderData.geometryState,s=n-r.level;if(E(s>=0),0===s){const e=i.numVerticesPerSide-1;return Math.max(e,a)}const o=2**s,l=i.neighborData.edgeResolutions[(e+2)%4]/o;return Math.max(1,l)}E(!t.isLeaf);let l=a;return t.forAllSubtreeOnSide(T(o),(e=>e===s||(e.isLoaded?(l=Math.max(l,2**(e.level-n)),!0):(E(!e.isLeaf),!1)))),l}updateNeighborData(){const e=this.tile;if(!e.intersectsClippingArea)return;const r=e.renderData.geometryState.neighborData,i=t=>(t.isLoaded||t.level===e.level)&&t?.intersectsClippingArea,s=r.edgePeerNeighbors,a=r.edgePeerNeighborSamplerVersions;for(let o=0;o<4;++o){const n=e.findNeighborTile(b[o],i),l=z(e,n),h=l?.renderData?.geometryState.samplerDataVersion??-1,d=s[o],g=l!==z(e,d),c=a[o]!==h;s[o]=n,(g||c)&&(a[o]=h,this._markEdgeDirty(o));const u=r.edgeResolutions[o],m=this._calculateEdgeResolution(o,n);E(t(m)),E(m>=1),r.edgeResolutions[o]=m,u!==m&&this._markEdgeResolutionDirty(o)}const n=r.cornerPeerNeighbors;for(let t=0;t<4;++t){const a=e.findNeighborTile(j[t],i);n[t]=a;const o=z(e,s[t]),l=z(e,s[(t+1)%4]),h=z(e,a);q[t]=h,q[(t+1)%4]=l,q[(t+2)%4]=e,q[(t+3)%4]=o,E(q.some((t=>t?.isLoaded||t===e)));const d=q.reduce(((e,t)=>Math.min(e,t?.level??1/0)),1/0);q.forEach(((e,t)=>{e?.level>d&&(q[t]=null)})),E(q.some((t=>t?.isLoaded||t===e)));const g=r.cornerNeighborData[t].cornerTiles,c=r.cornerNeighborData[t].cornerTileSamplerVersions;for(let e=0;e<4;++e){const r=q[e],i=r?.renderData.geometryState.samplerDataVersion??-1,s=g[e]!==r,a=!s&&c[e]!==i;(s||a)&&(g[e]=r,c[e]=i,this._markCornerDirty(t))}E(g.some((t=>t?.isLoaded||t===e)))}$&&E(this.geometryState.neighborData.edgeResolutions.every((e=>e>0)));for(let t=0;t<4;++t)q[t]=null}_updateGeometry(e){if(!this.tile.intersectsClippingArea)return;$&&E(!this.tile.intersectsClippingArea||this.geometryState.neighborData.edgeResolutions.every((e=>e>0))),this.intersectionData=null;const t=this.tile,r=this._vao,i=this.geometryInfo.vertexAttributes,s=!r||!i||this._wireframeChanged||this._shadingChanged||this._numVerticesPerSideChanged||this._samplerDataChanged||this._clippingAreaChanged||this._dirtyEdgeResolutions,a=!s&&(0!==this._dirtyEdges||0!==this._dirtyEdgeResolutions),n=!a&&0!==this._dirtyCorners;s?(this.releaseGeometry(),this._createGeometry(e)):a||n?t.updateEdgeElevations():n?t.updateCornerElevations():console.warn("Update for no reason?"),this._numVerticesPerSideChanged=!1,this._samplerDataChanged=!1,this._dirtyEdgeResolutions=0,this._dirtyEdges=0,this._dirtyCorners=0,this._clippingAreaChanged=!1,this._wireframeChanged=!1,this._shadingChanged=!1}get hasGeometry(){return this._hasGeometry}releaseGeometry(){return this._hasGeometry=!1,this.intersectionData=null,!!this._vao&&(this._vao.dispose(),this._vao=null,S(this.geometryInfo),!0)}ensureTexture(e,t){return r(this._texture)&&this._texture.descriptor.width!==e&&this.releaseTexture(),i(this._texture)&&(this._texture=t(),this.tile.setMemoryDirty()),this._texture}releaseTexture(){r(this._texture)&&(this._texture.release(),this._texture=null,this.tile.setMemoryDirty())}_markCornerDirty(e){const t=1<<e;this._dirtyCorners|=t}_markEdgeDirty(e){const t=1<<e;this._dirtyEdges|=t}_markEdgeResolutionDirty(e){const t=1<<e;this._dirtyEdgeResolutions|=t,this._dirtyEdges|=t}_markAllEdgesAndCornersDirty(){this._dirtyCorners=15,this._dirtyEdges=15,this._dirtyEdgeResolutions=15}updateGeometryState(){const t=this._getElevationInfo(),r=this.tile,i=t.samplerData?r.getElevationBasedVerticesPerSide(t.maxTileLevel):r.getDefaultVerticesPerRowOnLevel(),s=Math.max(i,5);let a=r.clippingArea;r.intersectsClippingArea&&!r.isWithinClippingArea||(a=null);const n=this.geometryState;let o=!1;n.numVerticesPerSide!==s&&(this._numVerticesPerSideChanged=!0,n.numVerticesPerSide=s,n.samplerDataVersion++,o=!0),t.changed&&(this._samplerDataChanged=!0,n.samplerData=t.samplerData,n.samplerDataVersion++,o=!0),e(n.clippingArea,a)||(this._clippingAreaChanged=!0,n.clippingArea=a,o=!0);const l=r.surface,h=l.wireframe;n.wireframe!==h&&(this._wireframeChanged=!0,n.wireframe=h,o=!0);const d=l.shading;return n.shading!==d&&(this._shadingChanged=d,n.shading=d,o=d),this._geometryStateChangedSinceLastUpdate||(this._geometryStateChangedSinceLastUpdate=o),o&&this._markAllEdgesAndCornersDirty(),this._hasGeometry=!0,this._geometryStateChangedSinceLastUpdate}_createGeometry(e){this.tile.createGeometry();const t=this.geometryInfo.vertexAttributes,r=this.geometryInfo.indices,i=e.gl;this._vao=new I(e,G,{geometry:_(t.layout)},{geometry:M.createVertex(e,i.STATIC_DRAW,t.buffer)},M.createIndex(e,i.STATIC_DRAW,r)),this._hasGeometry=!0}get vao(){return this._vao}setTextureReference(e,t=w.Immediate){r(e)&&e.texture!==this._texture&&this.releaseTexture(),this._textureRef.push(e,t)}get textureReference(){return this._textureRef.current}get nextTextureReference(){return this._textureRef.next}get textureFadeFactor(){return this._textureRef.fadeFactor}get textureIsFading(){return this._textureRef.isFading}_getElevationInfo(){const e=this.geometryState.samplerData,t=this.tile.layerInfo[v.ELEVATION],i=t.length;let s=new Array(i),a=0,n=0,o=!1;for(let l=0;l<i;l++){const i=t[l];if(r(i.upsampleInfo)){const t=i.upsampleInfo.tile,r=t.layerInfo[v.ELEVATION][l].data,h=r&&r.samplerData;e&&e[a]===h||(o=!0),s[a++]=h,n=Math.max(n,t.lij[0])}else if(i.data){const t=this.tile.surface.layerViewByIndex(l,v.ELEVATION);if(N(this.tile,t.layer,!1)){const t=i.data;e&&e[a]===t.samplerData||(o=!0),s[a++]=t.samplerData,n=this.tile.level}}}return r(e)&&e.length!==a&&(o=!0),a>0?s.length=a:s=null,{changed:o,samplerData:s,maxTileLevel:n}}get estimatedGeometryMemoryUsage(){const e=s(this.intersectionData,0,(e=>e.estimatedMemoryUsage));return(this.geometryInfo.indices?.byteLength??0)+(this.geometryInfo.vertexAttributes?.byteLength??0)+e}get textureDescriptor(){return r(this._texture)?this._texture.descriptor:null}get test(){return{hasTexture:null!=this._texture}}checkGeometryWaterproofness(){if(!$)return;const e=this.tile;if(E(e?.isLoaded),!e.isLoaded||!e.intersectsClippingArea)return;if(0===e.level)return;const s=e.surface.extent;if(r(s)&&!e.intersectsExtent(s))return;const p=b.map(((t,i)=>!!r(s)&&(i<2?-1:1)*(e.extent[3-i]-s[3-i])<0)),_=e.level;E(0===this._dirtyCorners),E(0===this._dirtyEdges),E(0===this._dirtyEdgeResolutions),E(!this._numVerticesPerSideChanged),E(!this._samplerDataChanged),E(!this._clippingAreaChanged),E(!this._wireframeChanged);const x=j.map((t=>e.findNeighborCornerTileExact(t,(t=>!t.intersectsClippingArea||t.isLoaded||t.level===e.level))??null)).map((e=>e?.intersectsClippingArea?e:null)),v=this.geometryState.neighborData;for(let t=0;t<4;++t){const r=v.cornerPeerNeighbors[t],i=x[t];E(i===r,`Tile[${e.lij}].corner[${t}] out of date: cur=[${r?.lij}] exp=[${i?.lij}]`)}b.forEach(((s,x)=>{if(p[x])return;const v=e.findNeighborTile(s,(e=>(e.level===_||e?.isLoaded)&&e?.intersectsClippingArea));if(!v){const t=!e.surface.updatingRootTiles&&r(e.surface.rootTiles)&&e.surface.rootTiles.length>0&&e.shouldHaveNeighbor(s);return void E(!t)}E(v.isLoaded||v.level===e.level),E(v===this.geometryState.neighborData.edgePeerNeighbors[x]);const C=_-v.level;if(!v.isLoaded)return E(!v.isLeaf),void E(0===C);E(L(e,v,s)),E(C>=0);const S=2**C;if(C<0)return void E(!1);const $=e.renderData.geometryInfo,b=$.outerEdges[x],T=$.numVerticesPerSide-1,j=v.renderData.geometryInfo;if(!j)return void E(!1);{const t=this.geometryState.neighborData.edgePeerNeighbors[x];(t?.isLoaded||t.isLoaded)&&(E(t==t),E(e.renderData.geometryState.neighborData.edgePeerNeighborSamplerVersions[x]===t.renderData.geometryState.samplerDataVersion),E(this.geometryState.neighborData.edgePeerNeighborSamplerVersions[x]===t.renderData.geometryState.samplerDataVersion))}const R=(x+2)%4,w=j.outerEdges[R],P=b.count-1,N=w.count-1;E(P*S===N,`Tile[${e.lij}]:e${x},res=${P} edgeRes mismatch with Neighbor[${v.lij}]:e${R},res=${N} (expected:${P*S})`);const I=e.extent,G=s===D.NORTH||s===D.SOUTH,M=w.count-1,O=M/2**C,q=b.count-1;if(O<1)return void E(1===q);E(O===q),E(t(O));const z=j.numVerticesPerSide-1;E(C>0||O===Math.max(z,T));const J=e.getNeighborEdgeStartVertexIndex(x,v);E(0<=J&&J<S);const K=J*O;E(0<=K&&K<=M-O);let Q=0,Y=K;b.getVertexPos(U,0),b.getVertexPos(k,b.count-1);const Z=a(U,k),ee=Math.max(W,1e-4*Z);for(let t=0;t<=O;++t){b.getVertexPos(U,Q),w.getVertexPos(k,Y);const a=t/O,p=G?I[0]+a*(I[2]-I[0]):s===D.WEST?I[0]:I[2],_=G?s===D.SOUTH?I[1]:I[3]:I[1]+a*(I[3]-I[1]),C=e.surface.extent;if(i(C)||f(C,p,_)){const t=n(U,k),i=o(U)-y.radius,s=o(k)-y.radius,a=t<ee;if(!a){console.warn(`Tile edge vertex position mismatch: between [${e.lij}].edge${x}[${Q}/${b.count}] and [${v.lij}].edge${R}[${Y}/${w.count}]`),r(C)&&console.warn(" surface extent= ",C," x,y=",p,",",_);const n=u();l(n,e.renderData.localOrigin,v.renderData.localOrigin),o(n)>0&&console.warn(` localOrigins: ${e.renderData.localOrigin} vs ${v.renderData.localOrigin} d=${o(n)} [${n}]`);(()=>{const t=m(U),r=m(k);e.updateEdgeElevations(),v.updateEdgeElevations(),b.getVertexPos(U,Q),w.getVertexPos(k,Y);const i=u();g(i,U,t),o(i)>0&&console.warn(` XXX Tile[${e.lij}] edge out of date: ${t} vs ${U} d=${o(i)} [${i}]`),g(i,k,r),o(i)>0&&console.warn(` XXX Neighbor[${v.lij}] edge out of date: ${r} vs ${k} d=${o(i)} [${i}]`)})(),E(a,`Mismatch in tile [${e.lij}].edge[${x}][${Q}/${b.count}] vs neighbor [${v.lij}].edge[${R}][${Y}/${w.count}] ${A(U)} vs ${A(k)} dist=${t} h(t|n|d)=${i}|${s}|${s-i}`)}if(e.surface.shading){b.getNormal(F,Q),w.getNormal(B,Y),h(X,F),h(H,B);const t=d(X,H),r=1-t<.01||!1||e===v;if(!r){const i=u();g(i,F,B);const s=()=>`Mismatch in tile edge normal ${V(e.lij)} (${Q}/${b.count-1}) edge ${x} vs neighbor ${V(v.lij)} (${Y}/${w.count-1}) nedge ${R} :${A(F)} vs ${A(B)} dot = ${t} : ${A(i)}`;console.warn("Mismatch in tile edge normal: ",s());{e.updateEdgeElevations(),v.updateEdgeElevations();const t=u(),r=u();b.getNormal(t,Q),w.getNormal(r,Y),c(F,t)||console.warn("Missing update in tile normal: ",A(F)," => ",A(t)),c(B,r)||console.warn("Missing update in neighbor normal: ",A(B)," => ",A(r))}E(r,s())}}}Q+=1,Y+=1}}))}}const U=u(),k=u(),F=u(),B=u(),X=u(),H=u(),W=1,q=[null,null,null,null];function z(e,t){return t?.isLoaded||t===e?t:null}export{O as PatchRenderData,z as neighborTileIfLoadedOrSelf};
|
|
5
|
+
import{equals as e}from"../../../core/arrayUtils.js";import{isPowerOfTwo as t}from"../../../core/mathUtils.js";import{isSome as r,isNone as i,mapOr as s}from"../../../core/maybe.js";import{i as a,j as o,u as n,b as l,n as h,e as d,w as g,F as c}from"../../../chunks/vec3.js";import{c as u,a as m}from"../../../chunks/vec3f64.js";import{empty as p}from"../../../geometry/support/aaBoundingBox.js";import{containsXY as f}from"../../../geometry/support/aaBoundingRect.js";import{earth as y}from"../../../geometry/support/Ellipsoid.js";import{glLayout as _}from"../support/buffer/glUtil.js";import{GeometryState as x}from"./GeometryState.js";import{NeighborIndex as v}from"./interfaces.js";import{LayerClass as C}from"./LayerClass.js";import{PatchGeometry as D,releaseGeometry as S}from"./PatchGeometry.js";import{ENABLE_TERRAIN_INTERNAL_CHECKS as $,internalAssert as E,neighborEdgeIndices as b,oppositeEdge as T,neighborCornerIndices as j,v32s as A,lij2s as V}from"./terrainUtils.js";import{TextureFader as R,ActivationTime as w}from"./TextureFader.js";export{ActivationTime}from"./TextureFader.js";import{isEdgeNeighbor as L}from"./Tile.js";import P from"./TileOverlayData.js";import{fallsWithinLayer as N}from"./tileUtils.js";import{VertexArrayObject as I}from"../webgl-engine/lib/VertexArrayObject.js";import{terrainVertexAttributeLocations as G}from"../webgl-engine/shaders/TerrainTechnique.js";import{BufferObject as M}from"../../webgl/BufferObject.js";class O{constructor(){this.geometryInfo=new D,this.intersectionData=null,this.geometryState=null,this._textureRef=new R((()=>this.tile.surface.textureFadeDuration)),this.overlay=new P,this._geometryStateChangedSinceLastUpdate=!0,this._hasGeometry=!1,this._numVerticesPerSideChanged=!1,this._samplerDataChanged=!1,this._clippingAreaChanged=!1,this._wireframeChanged=!1,this._shadingChanged=!1,this._dirtyEdgeResolutions=15,this._dirtyEdges=15,this._dirtyCorners=15}get tile(){return this._tile}init(e){this.clear(),this._tile=e;const t=this.geometryInfo;t.indices=null,t.vertexAttributes=null,p(t.boundingBox),t.indexCount=0,t.numVerticesPerSide=0,this.intersectionData=null,this.geometryState=new x,this.localOrigin=null,this.overlay.clear()}clear(){this.releaseGeometry(),this.releaseTexture(),this._textureRef.clear(),this._tile=null,this.intersectionData=null,this.geometryState=null}updateGeometryIfNeeded(e){if((!this._vao||this._geometryStateChangedSinceLastUpdate||this._wireframeChanged||this._shadingChanged||this._clippingAreaChanged||this._samplerDataChanged||this._numVerticesPerSideChanged||this._dirtyCorners||this._dirtyEdgeResolutions||this._dirtyEdges)&&(this._updateGeometry(e),this._geometryStateChangedSinceLastUpdate=!1),$&&this.tile.intersectsClippingArea)for(let t=0;t<4;++t)E(this.geometryInfo.outerEdges[t].count===this.geometryState.neighborData.edgeResolutions[t]+1)}_calculateEdgeResolution(e,t){const s=this.tile,a=this.geometryState.numVerticesPerSide-1;if(!s.surface.isGlobal){const t=s.surface.extent;if(r(t)&&(0===e&&s.extent[3]>t[3]||1===e&&s.extent[2]>t[2]||2===e&&s.extent[1]<t[1]||3===e&&s.extent[0]<t[0]))return a}const o=s.level,n=b[e];if(!t)return E(i(s.surface?.rootTiles)||s.surface.updatingRootTiles||!s.shouldHaveNeighbor(n)),a;if(t.isLoaded){const r=t,i=r.renderData.geometryState,s=o-r.level;if(E(s>=0),0===s){const e=i.numVerticesPerSide-1;return Math.max(e,a)}const n=2**s,l=i.neighborData.edgeResolutions[(e+2)%4]/n;return Math.max(1,l)}E(!t.isLeaf);let l=a;return t.forAllSubtreeOnSide(T(n),(e=>e===s||(e.isLoaded?(l=Math.max(l,2**(e.level-o)),!0):(E(!e.isLeaf),!1)))),l}updateNeighborData(){const e=this.tile;if(!e.intersectsClippingArea)return;const r=e.renderData.geometryState.neighborData,i=t=>(t.isLoaded||t.level===e.level)&&t?.intersectsClippingArea,s=r.edgePeerNeighbors,a=r.edgePeerNeighborSamplerVersions;for(let n=0;n<4;++n){const o=e.findNeighborTile(b[n],i),l=z(e,o),h=l?.renderData?.geometryState.samplerDataVersion??-1,d=s[n],g=l!==z(e,d),c=a[n]!==h;s[n]=o,(g||c)&&(a[n]=h,this._markEdgeDirty(n));const u=r.edgeResolutions[n],m=this._calculateEdgeResolution(n,o);E(t(m)),E(m>=1),r.edgeResolutions[n]=m,u!==m&&this._markEdgeResolutionDirty(n)}const o=r.cornerPeerNeighbors;for(let t=0;t<4;++t){const a=e.findNeighborTile(j[t],i);o[t]=a;const n=z(e,s[t]),l=z(e,s[(t+1)%4]),h=z(e,a);q[t]=h,q[(t+1)%4]=l,q[(t+2)%4]=e,q[(t+3)%4]=n,E(q.some((t=>t?.isLoaded||t===e)));const d=q.reduce(((e,t)=>Math.min(e,t?.level??1/0)),1/0);q.forEach(((e,t)=>{e&&e?.level>d&&(q[t]=null)})),E(q.some((t=>t?.isLoaded||t===e)));const g=r.cornerNeighborData[t].cornerTiles,c=r.cornerNeighborData[t].cornerTileSamplerVersions;for(let e=0;e<4;++e){const r=q[e],i=r?.renderData.geometryState.samplerDataVersion??-1,s=g[e]!==r,a=!s&&c[e]!==i;(s||a)&&(g[e]=r,c[e]=i,this._markCornerDirty(t))}E(g.some((t=>t?.isLoaded||t===e)))}$&&E(this.geometryState.neighborData.edgeResolutions.every((e=>e>0)));for(let t=0;t<4;++t)q[t]=null}_updateGeometry(e){if(!this.tile.intersectsClippingArea)return;$&&E(!this.tile.intersectsClippingArea||this.geometryState.neighborData.edgeResolutions.every((e=>e>0))),this.intersectionData=null;const t=this.tile,r=this._vao,i=this.geometryInfo.vertexAttributes,s=!r||!i||this._wireframeChanged||this._shadingChanged||this._numVerticesPerSideChanged||this._samplerDataChanged||this._clippingAreaChanged||this._dirtyEdgeResolutions,a=!s&&(0!==this._dirtyEdges||0!==this._dirtyEdgeResolutions),o=!a&&0!==this._dirtyCorners;s?(this.releaseGeometry(),this._createGeometry(e)):a||o?t.updateEdgeElevations():o?t.updateCornerElevations():console.warn("Update for no reason?"),this._numVerticesPerSideChanged=!1,this._samplerDataChanged=!1,this._dirtyEdgeResolutions=0,this._dirtyEdges=0,this._dirtyCorners=0,this._clippingAreaChanged=!1,this._wireframeChanged=!1,this._shadingChanged=!1}get hasGeometry(){return this._hasGeometry}releaseGeometry(){return this._hasGeometry=!1,this.intersectionData=null,!!this._vao&&(this._vao.dispose(),this._vao=null,S(this.geometryInfo),!0)}ensureTexture(e,t){return r(this._texture)&&this._texture.descriptor.width!==e&&this.releaseTexture(),i(this._texture)&&(this._texture=t(),this.tile.setMemoryDirty()),this._texture}releaseTexture(){r(this._texture)&&(this._texture.release(),this._texture=null,this.tile.setMemoryDirty())}_markCornerDirty(e){const t=1<<e;this._dirtyCorners|=t}_markEdgeDirty(e){const t=1<<e;this._dirtyEdges|=t}_markEdgeResolutionDirty(e){const t=1<<e;this._dirtyEdgeResolutions|=t,this._dirtyEdges|=t}_markAllEdgesAndCornersDirty(){this._dirtyCorners=15,this._dirtyEdges=15,this._dirtyEdgeResolutions=15}updateGeometryState(){const t=this._getElevationInfo(),r=this.tile,i=t.samplerData?r.getElevationBasedVerticesPerSide(t.maxTileLevel):r.getDefaultVerticesPerRowOnLevel(),s=Math.max(i,5);let a=r.clippingArea;r.intersectsClippingArea&&!r.isWithinClippingArea||(a=null);const o=this.geometryState;let n=!1;o.numVerticesPerSide!==s&&(this._numVerticesPerSideChanged=!0,o.numVerticesPerSide=s,o.samplerDataVersion++,n=!0),t.changed&&(this._samplerDataChanged=!0,o.samplerData=t.samplerData,o.samplerDataVersion++,n=!0),e(o.clippingArea,a)||(this._clippingAreaChanged=!0,o.clippingArea=a,n=!0);const l=r.surface,h=l.wireframe;o.wireframe!==h&&(this._wireframeChanged=!0,o.wireframe=h,n=!0);const d=l.shading;return o.shading!==d&&(this._shadingChanged=d,o.shading=d,n=d),this._geometryStateChangedSinceLastUpdate||(this._geometryStateChangedSinceLastUpdate=n),n&&this._markAllEdgesAndCornersDirty(),this._hasGeometry=!0,this._geometryStateChangedSinceLastUpdate}_createGeometry(e){this.tile.createGeometry();const t=this.geometryInfo.vertexAttributes,r=this.geometryInfo.indices,i=e.gl;this._vao=new I(e,G,{geometry:_(t.layout)},{geometry:M.createVertex(e,i.STATIC_DRAW,t.buffer)},M.createIndex(e,i.STATIC_DRAW,r)),this._hasGeometry=!0}get vao(){return this._vao}setTextureReference(e,t=w.Immediate){r(e)&&e.texture!==this._texture&&this.releaseTexture(),this._textureRef.push(e,t)}get textureReference(){return this._textureRef.current}get nextTextureReference(){return this._textureRef.next}get textureFadeFactor(){return this._textureRef.fadeFactor}get textureIsFading(){return this._textureRef.isFading}_getElevationInfo(){const e=this.geometryState.samplerData,t=this.tile.layerInfo[C.ELEVATION],i=t.length,s=new Array(i);let a=0,o=0,n=!1;for(let d=0;d<i;d++){const i=t[d];if(r(i.upsampleInfo)){const t=i.upsampleInfo.tile,r=t.layerInfo[C.ELEVATION][d].data,l=r&&r.samplerData;e&&e[a]===l||(n=!0),s[a++]=l,o=Math.max(o,t.lij[0])}else if(i.data){const t=this.tile.surface.layerViewByIndex(d,C.ELEVATION);if(N(this.tile,t.layer,!1)){const t=i.data;e&&e[a]===t.samplerData||(n=!0),s[a++]=t.samplerData,o=this.tile.level}}}r(e)&&e.length!==a&&(n=!0);const l=a>0,h=l?s:null;return l&&(s.length=a),{changed:n,samplerData:h,maxTileLevel:o}}get estimatedGeometryMemoryUsage(){const e=s(this.intersectionData,0,(e=>e.estimatedMemoryUsage));return(this.geometryInfo.indices?.byteLength??0)+(this.geometryInfo.vertexAttributes?.byteLength??0)+e}get textureDescriptor(){return r(this._texture)?this._texture.descriptor:null}get test(){return{hasTexture:null!=this._texture}}checkGeometryWaterproofness(){if(!$)return;const e=this.tile;if(E(e?.isLoaded),!e.isLoaded||!e.intersectsClippingArea)return;const s=e.renderData;if(0===e.level)return;const p=e.surface.extent;if(r(p)&&!e.intersectsExtent(p))return;const _=b.map(((t,i)=>!!r(p)&&(i<2?-1:1)*(e.extent[3-i]-p[3-i])<0)),x=e.level;E(0===this._dirtyCorners),E(0===this._dirtyEdges),E(0===this._dirtyEdgeResolutions),E(!this._numVerticesPerSideChanged),E(!this._samplerDataChanged),E(!this._clippingAreaChanged),E(!this._wireframeChanged);const C=j.map((t=>e.findNeighborCornerTileExact(t,(t=>!t.intersectsClippingArea||t.isLoaded||t.level===e.level))??null)).map((e=>e?.intersectsClippingArea?e:null)),D=this.geometryState.neighborData;for(let t=0;t<4;++t){const r=D.cornerPeerNeighbors[t],i=C[t];E(i===r,`Tile[${e.lij}].corner[${t}] out of date: cur=[${r?.lij}] exp=[${i?.lij}]`)}b.forEach(((p,C)=>{if(_[C])return;const D=e.findNeighborTile(p,(e=>(e.level===x||e?.isLoaded)&&e?.intersectsClippingArea));if(!D){const t=!e.surface.updatingRootTiles&&r(e.surface.rootTiles)&&e.surface.rootTiles.length>0&&e.shouldHaveNeighbor(p);return void E(!t)}E(D.isLoaded||D.level===e.level),E(D===this.geometryState.neighborData.edgePeerNeighbors[C]);const S=x-D.level;if(!D.isLoaded)return E(!D.isLeaf),void E(0===S);const $=D.renderData;E(L(e,D,p)),E(S>=0);const b=2**S;if(S<0)return void E(!1);const T=s.geometryInfo,j=T.outerEdges[C],R=T.numVerticesPerSide-1,w=$.geometryInfo;if(!w)return void E(!1);{const e=this.geometryState.neighborData.edgePeerNeighbors[C];if(e?.isLoaded){const t=e.renderData;E(e==e),E(s.geometryState.neighborData.edgePeerNeighborSamplerVersions[C]===t.geometryState.samplerDataVersion),E(this.geometryState.neighborData.edgePeerNeighborSamplerVersions[C]===t.geometryState.samplerDataVersion)}}const P=(C+2)%4,N=w.outerEdges[P],I=j.count-1,G=N.count-1;E(I*b===G,`Tile[${e.lij}]:e${C},res=${I} edgeRes mismatch with Neighbor[${D.lij}]:e${P},res=${G} (expected:${I*b})`);const M=e.extent,O=p===v.NORTH||p===v.SOUTH,q=N.count-1,z=q/2**S,J=j.count-1;if(z<1)return void E(1===J);E(z===J),E(t(z));const K=w.numVerticesPerSide-1;E(S>0||z===Math.max(K,R));const Q=e.getNeighborEdgeStartVertexIndex(C,D);E(0<=Q&&Q<b);const Y=Q*z;E(0<=Y&&Y<=q-z);let Z=0,ee=Y;j.getVertexPos(U,0),j.getVertexPos(k,j.count-1);const te=a(U,k),re=Math.max(W,1e-4*te);for(let t=0;t<=z;++t){j.getVertexPos(U,Z),N.getVertexPos(k,ee);const a=t/z,_=O?M[0]+a*(M[2]-M[0]):p===v.WEST?M[0]:M[2],x=O?p===v.SOUTH?M[1]:M[3]:M[1]+a*(M[3]-M[1]),S=e.surface.extent;if(i(S)||f(S,_,x)){const t=o(U,k),i=n(U)-y.radius,a=n(k)-y.radius,p=t<re;if(!p){console.warn(`Tile edge vertex position mismatch: between [${e.lij}].edge${C}[${Z}/${j.count}] and [${D.lij}].edge${P}[${ee}/${N.count}]`),r(S)&&console.warn(" surface extent= ",S," x,y=",_,",",x);const o=u();l(o,s.localOrigin,$.localOrigin),n(o)>0&&console.warn(` localOrigins: ${s.localOrigin} vs ${$.localOrigin} d=${n(o)} [${o}]`);(()=>{const t=m(U),r=m(k);e.updateEdgeElevations(),D.updateEdgeElevations(),j.getVertexPos(U,Z),N.getVertexPos(k,ee);const i=u();g(i,U,t),n(i)>0&&console.warn(` XXX Tile[${e.lij}] edge out of date: ${t} vs ${U} d=${n(i)} [${i}]`),g(i,k,r),n(i)>0&&console.warn(` XXX Neighbor[${D.lij}] edge out of date: ${r} vs ${k} d=${n(i)} [${i}]`)})(),E(p,`Mismatch in tile [${e.lij}].edge[${C}][${Z}/${j.count}] vs neighbor [${D.lij}].edge[${P}][${ee}/${N.count}] ${A(U)} vs ${A(k)} dist=${t} h(t|n|d)=${i}|${a}|${a-i}`)}if(e.surface.shading){j.getNormal(F,Z),N.getNormal(B,ee),h(X,F),h(H,B);const t=d(X,H),r=1-t<.01||!1||e===D;if(!r){const i=u();g(i,F,B);const s=()=>`Mismatch in tile edge normal ${V(e.lij)} (${Z}/${j.count-1}) edge ${C} vs neighbor ${V(D.lij)} (${ee}/${N.count-1}) nedge ${P} :${A(F)} vs ${A(B)} dot = ${t} : ${A(i)}`;console.warn("Mismatch in tile edge normal: ",s());{e.updateEdgeElevations(),D.updateEdgeElevations();const t=u(),r=u();j.getNormal(t,Z),N.getNormal(r,ee),c(F,t)||console.warn("Missing update in tile normal: ",A(F)," => ",A(t)),c(B,r)||console.warn("Missing update in neighbor normal: ",A(B)," => ",A(r))}E(r,s())}}}Z+=1,ee+=1}}))}}const U=u(),k=u(),F=u(),B=u(),X=u(),H=u(),W=1,q=[null,null,null,null];function z(e,t){return t?.isLoaded||t===e?t:null}export{O as PatchRenderData,z as neighborTileIfLoadedOrSelf};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.26/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{disposeMaybe as t,isSome as e,isNone as r}from"../../../core/maybe.js";import{C as s}from"../../../chunks/RasterColorizer.glsl.js";import{TextureSamplingMode as i}from"../../webgl/enums.js";import{createTransformTexture as o,getCommonUniforms as a,getColormapUniforms as h,getStretchUniforms as n,getShadedReliefUniforms as l,createRasterTexture as u,createColormapTexture as m}from"../../webgl/rasterUtils.js";const d={bandCount:3,outMin:0,outMax:1,minCutOff:[0,0,0],maxCutOff:[255,255,255],factor:[1/255,1/255,1/255],useGamma:!1,gamma:[1,1,1],gammaCorrection:[1,1,1],colormap:null,colormapOffset:null,stretchType:"none",type:"stretch"};class _{constructor(t,e,r=null,s=null){this.type="raster-tile",this._memoryUsed=null,this._source=null,this._symbolizerParameters=null,this._bandIds=null,this._interpolation=null,this._dirty=!1,this._transformGrid=null,this.isRendereredSource=!1,this.symbolizerRenderer=null,this.rawPixelData=null,this.lij=null,this.opacity=1,this.lij=t,this.source=e,this.width=r||e.width,this.height=s||e.height}get source(){return this._source}set source(e){this._source=e,this._rasterTexture=t(this._rasterTexture),this._memoryUsed=null}get symbolizerParameters(){return this.isRendereredSource?{...d,maxCutOff:[1,1,1],factor:[1,1,1]}:this._symbolizerParameters||d}set symbolizerParameters(t){this._symbolizerParameters=t}get bandIds(){return this._bandIds}set bandIds(t){if(e(t)&&t.length>0){this._bandIds&&t.every(((t,e)=>!!this._bandIds[e]&&t===this._bandIds[e]))||(this._bandIds=t,this._dirty=!0)}else this._bandIds=null}get interpolation(){return this._interpolation||"nearest"}set interpolation(t){if(this._interpolation=t,e(this._rasterTexture)){const e=this._getRasterTextureInterpolation(t);this._rasterTexture.setSamplingMode("bilinear"===e?i.LINEAR:i.NEAREST)}}get transformGrid(){return this._transformGrid}set transformGrid(e){this._transformGrid=e,this._transformGridTexture=t(this._transformGridTexture),this._memoryUsed=null}bind(t){return!!(this.source&&this.source.pixels&&this.source.pixels.length>0)&&((r(this._rasterTexture)||this._dirty)&&this._updateRasterTexture(t,this.bandIds),e(this._rasterTexture)&&(this._updateColormapTexture(t),this.transformGrid&&r(this._transformGridTexture)&&(this._transformGridTexture=o(t,this.transformGrid))),!0)}getUniforms(){const{symbolizerParameters:t,transformGrid:e,width:r,height:i,opacity:o}=this,u=a(e,[r,i],[this.source.width,this.source.height],o),m=h(t.colormap,t.colormapOffset),d="stretch"===this.symbolizerParameters.type?n(this.symbolizerParameters):null,_="hillshade"===this.symbolizerParameters.type?l(this.symbolizerParameters):null;return new s(u,m,d||_,this._rasterTexture,this._transformGridTexture,this._colormapTexture)}get memoryUsage(){if(r(this._memoryUsed)){const t=[this._rasterTexture,this._transformGridTexture,this._colormapTexture];this._memoryUsed=t.map((t=>e(t)?t.descriptor.width*t.descriptor.height*4:0)).reduce(((t,e)=>t+e),0)}return this._memoryUsed}release(){return this._rasterTexture=t(this._rasterTexture),this._transformGridTexture=t(this._transformGridTexture),this._colormapTexture=t(this._colormapTexture),this.source=null,this.transformGrid=null,this.rawPixelData=null,!0}_updateRasterTexture(s,i){const o=this.source?this.source.extractBands(i):null;if(!(o&&o.pixels&&o.pixels.length>0))return void(this._rasterTexture=t(this._rasterTexture));const a=r(i)&&r(this.bandIds)||e(i)&&e(this.bandIds)&&i.join("")===this.bandIds.join("");if(e(this._rasterTexture)&&a)return;this._rasterTexture=t(this._rasterTexture);const h=this._getRasterTextureInterpolation(this.interpolation);this._rasterTexture=u(s,o,h,this.isRendereredSource||this.hasStretchTypeNone())}hasStretchTypeNone(){return"stretchType"in this.symbolizerParameters&&"none"===this.symbolizerParameters.stretchType&&!this.symbolizerParameters.useGamma&&"u8"===this.source.pixelType}_getRasterTextureInterpolation(t){return"lut"===this.symbolizerParameters.type||"nearest"===t||"majority"===t?"nearest":"bilinear"}_updateColormapTexture(e){const r=this._colormap,s=this.symbolizerParameters.colormap;return s?r?s.length!==r.length||s.some(((t,e)=>t!==r[e]))?(this._colormapTexture=t(this._colormapTexture),this._colormapTexture=m(e,s),void(this._colormap=s)):void 0:(this._colormapTexture=m(e,s),void(this._colormap=s)):(this._colormapTexture=t(this._colormapTexture),void(this._colormap=null))}}export{_ as RasterTile};
|
|
5
|
+
import{disposeMaybe as t,isSome as e,isNone as r}from"../../../core/maybe.js";import{C as s}from"../../../chunks/RasterColorizer.glsl.js";import{TextureSamplingMode as i}from"../../webgl/enums.js";import{createTransformTexture as o,getCommonUniforms as a,getColormapUniforms as h,getStretchUniforms as n,getShadedReliefUniforms as l,createRasterTexture as u,createColormapTexture as m}from"../../webgl/rasterUtils.js";const d={bandCount:3,outMin:0,outMax:1,minCutOff:[0,0,0],maxCutOff:[255,255,255],factor:[1/255,1/255,1/255],useGamma:!1,gamma:[1,1,1],gammaCorrection:[1,1,1],colormap:null,colormapOffset:null,stretchType:"none",type:"stretch"};class _{constructor(t,e,r=null,s=null){this.type="raster-tile",this._memoryUsed=null,this._source=null,this._symbolizerParameters=null,this._bandIds=null,this._interpolation=null,this._dirty=!1,this._transformGrid=null,this.isRendereredSource=!1,this.symbolizerRenderer=null,this.rawPixelData=null,this.lij=null,this.opacity=1,this.lij=t,this.source=e,this.width=r||e.width,this.height=s||e.height}get source(){return this._source}set source(e){this._source=e,this._rasterTexture=t(this._rasterTexture),this._memoryUsed=null}get symbolizerParameters(){return this.isRendereredSource?{...d,maxCutOff:[1,1,1],factor:[1,1,1]}:this._symbolizerParameters||d}set symbolizerParameters(t){this._symbolizerParameters=t}get bandIds(){return this._bandIds}set bandIds(t){if(e(t)&&t.length>0){this._bandIds&&t.every(((t,e)=>!!this._bandIds?.[e]&&t===this._bandIds[e]))||(this._bandIds=t,this._dirty=!0)}else this._bandIds=null}get interpolation(){return this._interpolation||"nearest"}set interpolation(t){if(this._interpolation=t,e(this._rasterTexture)){const e=this._getRasterTextureInterpolation(t);this._rasterTexture.setSamplingMode("bilinear"===e?i.LINEAR:i.NEAREST)}}get transformGrid(){return this._transformGrid}set transformGrid(e){this._transformGrid=e,this._transformGridTexture=t(this._transformGridTexture),this._memoryUsed=null}bind(t){return!!(this.source&&this.source.pixels&&this.source.pixels.length>0)&&((r(this._rasterTexture)||this._dirty)&&this._updateRasterTexture(t,this.bandIds),e(this._rasterTexture)&&(this._updateColormapTexture(t),this.transformGrid&&r(this._transformGridTexture)&&(this._transformGridTexture=o(t,this.transformGrid))),!0)}getUniforms(){const{symbolizerParameters:t,transformGrid:e,width:r,height:i,opacity:o}=this,u=a(e,[r,i],[this.source.width,this.source.height],o),m=h(t.colormap,t.colormapOffset),d="stretch"===this.symbolizerParameters.type?n(this.symbolizerParameters):null,_="hillshade"===this.symbolizerParameters.type?l(this.symbolizerParameters):null;return new s(u,m,d||_,this._rasterTexture,this._transformGridTexture,this._colormapTexture)}get memoryUsage(){if(r(this._memoryUsed)){const t=[this._rasterTexture,this._transformGridTexture,this._colormapTexture];this._memoryUsed=t.map((t=>e(t)?t.descriptor.width*t.descriptor.height*4:0)).reduce(((t,e)=>t+e),0)}return this._memoryUsed}release(){return this._rasterTexture=t(this._rasterTexture),this._transformGridTexture=t(this._transformGridTexture),this._colormapTexture=t(this._colormapTexture),this.source=null,this.transformGrid=null,this.rawPixelData=null,!0}_updateRasterTexture(s,i){const o=this.source?this.source.extractBands(i):null;if(!(o&&o.pixels&&o.pixels.length>0))return void(this._rasterTexture=t(this._rasterTexture));const a=r(i)&&r(this.bandIds)||e(i)&&e(this.bandIds)&&i.join("")===this.bandIds.join("");if(e(this._rasterTexture)&&a)return;this._rasterTexture=t(this._rasterTexture);const h=this._getRasterTextureInterpolation(this.interpolation);this._rasterTexture=u(s,o,h,this.isRendereredSource||this.hasStretchTypeNone())}hasStretchTypeNone(){return"stretchType"in this.symbolizerParameters&&"none"===this.symbolizerParameters.stretchType&&!this.symbolizerParameters.useGamma&&"u8"===this.source.pixelType}_getRasterTextureInterpolation(t){return"lut"===this.symbolizerParameters.type||"nearest"===t||"majority"===t?"nearest":"bilinear"}_updateColormapTexture(e){const r=this._colormap,s=this.symbolizerParameters.colormap;return s?r?s.length!==r.length||s.some(((t,e)=>t!==r[e]))?(this._colormapTexture=t(this._colormapTexture),this._colormapTexture=m(e,s),void(this._colormap=s)):void 0:(this._colormapTexture=m(e,s),void(this._colormap=s)):(this._colormapTexture=t(this._colormapTexture),void(this._colormap=null))}}export{_ as RasterTile};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.26/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as e}from"../../../chunks/tslib.es6.js";import t from"../../../Color.js";import i from"../../../core/Accessor.js";import{difference as r}from"../../../core/arrayUtils.js";import s from"../../../core/CollectionFlattener.js";import a from"../../../core/Evented.js";import n from"../../../core/Handles.js";import l from"../../../core/Logger.js";import{clamp as o}from"../../../core/mathUtils.js";import{releaseMaybe as h,destroyMaybe as d,isNone as p,isSome as u}from"../../../core/maybe.js";import c from"../../../core/ObjectPool.js";import _ from"../../../core/PooledArray.js";import{throwIfAborted as g,isAbortError as m,isAborted as T,createAbortError as f}from"../../../core/promiseUtils.js";import{watch as y,syncAndInitial as v,sync as w,initial as E}from"../../../core/reactiveUtils.js";import{property as S}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/accessorSupport/ensureType.js";import{subclass as L}from"../../../core/accessorSupport/decorators/subclass.js";import{m as D}from"../../../chunks/mat4.js";import{c as C}from"../../../chunks/mat4f64.js";import{c as P}from"../../../chunks/vec3.js";import{c as b}from"../../../chunks/vec3f64.js";import{c as U}from"../../../chunks/vec4f64.js";import{WatchUpdatingTracking as x}from"../../../core/support/WatchUpdatingTracking.js";import{projectVectorToVector as R,projectPointToVector as M}from"../../../geometry/projection.js";import{getReferenceEllipsoid as j}from"../../../geometry/projectionEllipsoid.js";import A from"../../../geometry/SpatialReference.js";import{create as I,equals as O,intersection as V,empty as k,expand as B,intersectsSphere as N}from"../../../geometry/support/aaBoundingRect.js";import{create as F,copy as G}from"../../../geometry/support/frustum.js";import{isPlateCarree as q}from"../../../geometry/support/spatialReferenceUtils.js";import{isRefreshableLayer as W}from"../../../layers/mixins/RefreshableLayer.js";import{ElevationQueryTileCache as H}from"../../../layers/support/ElevationQueryTileCache.js";import{ElevationTileData as z}from"../../../layers/support/ElevationTileData.js";import{isBaseLayer as X}from"../../../layers/support/layerUtils.js";import{acquireDecoder as Q}from"../../../layers/support/LercDecoder.js";import{printAllocations as Y}from"../../2d/engine/vectorTiles/VectorTile.js";import{directionToHeadingTilt as $}from"../support/cameraUtils.js";import K from"../support/debugFlags.js";import{toBoundingRect as J}from"../support/extentUtils.js";import{ClientType as Z}from"../support/index.js";import{updatingProgress as ee}from"../support/updatingProperties.js";import{ElevationBounds as te}from"./ElevationBounds.js";import{ElevationData as ie,sampleElevation as re}from"./ElevationData.js";import{create as se}from"./ExtentHelper.js";import{LODSnapping as ae,TextureUpdate as ne}from"./interfaces.js";import{LayerClass as le,LayerClasses as oe}from"./LayerClass.js";import{OverlayManager as he}from"./OverlayManager.js";import{PlanarPatch as de}from"./PlanarPatch.js";import{RenderOrder as pe}from"./RenderOrder.js";import{SphericalPatch as ue}from"./SphericalPatch.js";import{SplitLimits as ce}from"./SplitLimits.js";import{MAX_ROOT_TILES as _e,TOO_MANY_ROOT_TILES_AFTER_CHANGE_ERROR as ge,TOO_MANY_ROOT_TILES_FOR_LAYER_ERROR as me,MAX_MEMORY_LOD_BIAS as Te,ELEVATION_NODATA_VALUE as fe}from"./TerrainConst.js";import{TerrainRenderer as ye,TransparencyMode as ve}from"./TerrainRenderer.js";import we from"./TerrainSurfacePerformanceInfo.js";import{weakAssert as Ee,internalAssert as Se,oppositeEdge as Le,isSurfaceLayerView as De,isGroupLayerView as Ce,isMapTileLayerView as Pe,isBlendableLayerView as be,isElevationLayerView as Ue,isVectorTileLayerView as xe,useFetchTileForLayer as Re,isImageryTileLayerView as Me,isTileLayerView as je,releaseTileData as Ae,neighborEdgeIndices as Ie,ENABLE_TERRAIN_INTERNAL_CHECKS as Oe,ENABLE_WATERPROOFNESS_TESTS as Ve,enableTerrainInternalChecks as ke,enableTerrainWaterproofnessChecks as Be}from"./terrainUtils.js";import{Tile as Ne}from"./Tile.js";import{printAllocations as Fe}from"./TilePerLayerInfo.js";import{TileUpdate as Ge}from"./TileUpdate.js";import{IteratorPreorder as qe,IteratorPostorder as We,compareTilesByLij as He,hasLoadableSiblings as ze,sortTilesByPOI as Xe,sortTiles as Qe}from"./tileUtils.js";import{TilingSchemeLogic as Ye}from"./TilingSchemeLogic.js";import{UpsampleInfo as $e}from"./UpsampleInfo.js";import{isCompositeBlendMode as Ke,blendModeFromString as Je}from"../webgl-engine/core/shaderLibrary/output/BlendOptions.js";import{RenderRequestType as Ze}from"../webgl-engine/lib/basicInterfaces.js";import{RenderState as et}from"../../support/RenderState.js";import{ImmediateTask as tt,TaskPriority as it,noBudget as rt}from"../../support/Scheduler.js";let st=class extends(a.EventedMixin(i)){constructor(e){super(e),this._iteratorPool=new c(qe,(e=>e.remove=()=>this._iteratorPool.release(e))),this._postorderIterator=new We,this._hasPendingUpdates=!1,this._pendingUpdates=0,this._asyncWorkItems=0,this._allTilesDirty=!0,this._allTilesSorted=!0,this._visibleCached=!1,this._usedMemory=null,this._performanceInfo=new we,this._viewChanged=!1,this._inFrameTask=!1,this._viewChangeUpdateDirty=!1,this._eyePosRenderSR=b(),this._eyePosSurfaceSR=b(),this._splitLimits=new ce,this._frustum=F(),this._viewProjectionMatrix=C(),this._layerViews=[new Array,new Array],this._layerIndexByUid=[new Map,new Map],this._basemapLayerViewHandles=new Map,this._handles=new n,this._watchUpdatingTracking=new x,this._frameTask=tt,this._allTiles=new _,this._upsampleInfoPool=new c($e),this._rootTilesExtent=I(),this._maxNumUpdating=1,this.maxTextureScale=1.2,this._spatialReference=A.WebMercator,this.visibleElevationBounds=new te(1/0,-1/0),this.rootTileElevationBounds=new te(1/0,-1/0),this._updatingRootTiles=!1,this._pendingTilesForElevationUpdateEvent=new Set,this._pendingTilesToUpdate=new Set,this.totalGeometryUpdates=0,this.totalTileUpdates=0,this.oneBatchPerFrameTask=!0,this._layerViewsDirty=!1,this._shading=!0,this._isWebMercator=!1,this._isWebMercatorOnPlateeCarree=!1,this._isGlobal=!e.view?.state?.isLocal}initialize(){this._lercDecoder=Q(this.view.resourceController),this._tilePool=this.view.state.isLocal?new c(de):new c(ue);const e=this.view.resourceController.memoryController;this._upsampleMapCache=e.newCache("esri.views.3d.terrain.upsample",(e=>e.unloadMapData())),this._elevationQueryCache=new H(e.newCache("elevation-query")),this._set("overlayManager",new he({surface:this})),this._handles.add([y((()=>this.overlayManager.hasHighlights),(e=>this._renderer.setNeedsHighlight(e))),y((()=>this.overlayManager.rendersOccluded),(e=>this._renderer.setRenderOccludedOverlay(e))),y((()=>this.overlayManager.renderer.isEmpty),(()=>this._evaluateTransparency()))],"overlayManager"),this._renderer=new ye({_overlayRenderer:this.overlayManager.renderer,_ellipsoidRadius:j(this.view.spatialReference).radius,_stage:this.view._stage,_allTiles:this._allTiles}),this._handles.add([y((()=>this.baseOpacity),(()=>{this._handleLayerViewChanges(),this._updateTileTextures(this._evaluateTransparency()?ne.UNFADED:ne.IMMEDIATE)}),v),y((()=>this.hasCompositeBlendMode),(()=>{this._updateTileTextures(this._evaluateTransparency()?ne.UNFADED:ne.IMMEDIATE)}),v),y((()=>this.renderingDisabled),(()=>this.view?._stage?.renderer.setParameters({terrainRenderingEnabled:!this.renderingDisabled})),w),y((()=>this.backgroundColor),(e=>{this._handleLayerViewChanges(),this._renderer.updateTileBackground(e)}),v),y((()=>this.snapLevel),(()=>this._viewChanged=!0),w),y((()=>this.view.pointsOfInterest),(e=>{this._renderer.pointsOfInterest=e,this._watchUpdatingTracking.removeAll(),e&&this._watchUpdatingTracking.add((()=>e.focus.renderLocation),(()=>this._allTilesSorted=!1))})),y((()=>K.TERRAIN_TILE_TREE_SHOW_TILES),(e=>{e&&!this._treeDebugger?import("../layers/support/TerrainTileTree3DDebugger.js").then((({TerrainTileTree3DDebugger:e})=>{!this._treeDebugger&&K.TERRAIN_TILE_TREE_SHOW_TILES&&(this._treeDebugger=new e({view:this.view}))})):e||(this._treeDebugger=d(this._treeDebugger))}),E)]),this._extentHelper=se(this.viewingMode,{layers:this.view.map.allLayers,layerViews:this.view.allLayerViews,viewSpatialReference:this.view.spatialReference});const t=new s({getCollections:()=>this.view?.defaultsFromMap?.mapCollections?.map((({layers:e})=>e)),getChildrenFunction:e=>e&&"layers"in e?e.layers:null}),i=new Ye({layers:t,extentHelper:this._extentHelper,viewingMode:this.viewingMode,viewSpatialReference:this.view.spatialReference});this._set("tilingSchemeLogic",i),this._updateTilingScheme(),this._elevationDataRequester=this.view.resourceController.createStreamDataRequester(Z.ELEVATION),this._mapDataRequester=this.view.resourceController.createStreamDataRequester(Z.BASEMAP);const r=this.view.resourceController.scheduler;this._frameTask=r.registerTask(it.TERRAIN_SURFACE,this),this._handles.add([y((()=>this._extentHelper.stencilEnabledExtents),(e=>this._renderer.setStencilEnabledLayerExtents(e)),E),y((()=>this.tilingSchemeLogic.tilingScheme),(()=>this._updateTilingScheme()),w),y((()=>this.extent),(()=>this._updateRootTiles()),E),this.view.on("resize",(()=>this._viewChangeUpdate())),y((()=>{const e=this.view,t=e.state;return[this._lodBias,this.lodSnapping,e.resourceController?.memoryController?.memoryFactor,t.camera,t.contentCamera,t.fixedContentCamera]}),(()=>this._viewChangeUpdate()),v),y((()=>this.view.qualitySettings?.tiledSurface?.textureFadeDuration),(e=>this._renderer.textureFadingEnabled=e>0),E),y((()=>this._userClippingExtent),(()=>this._updateClippingExtent()),w)]),this._handles.add(this.view.allLayerViews.on("after-changes",(()=>this._layerViewsDirty=!0))),this._handles.add([y((()=>this.view?.map.ground.shading),(()=>{this._updateShadingIfChanged()}))]),this._updateShading(),this._layerViewsDirty=!0,this._handleLayerViewChanges()}destroy(){this._frameTask.remove(),this._handles.destroy(),this._watchUpdatingTracking.destroy(),this._lercDecoder=h(this._lercDecoder),this._removeAllTiles(),this._upsampleMapCache=d(this._upsampleMapCache),this._elevationQueryCache=d(this._elevationQueryCache);const e=this.tilingSchemeLogic.layers;this._set("tilingSchemeLogic",d(this.tilingSchemeLogic)),e.destroy(),this._basemapLayerViewHandles.forEach(((e,t)=>this._unregisterTiledLayerView(t))),this._elevationDataRequester=null,this._mapDataRequester=null,this._set("overlayManager",d(this.overlayManager)),this._tilePool=d(this._tilePool),Ne.prune(),this._treeDebugger&&(this._treeDebugger.destroy(),this._treeDebugger=null),this._renderer=d(this._renderer),this._iteratorPool=d(this._iteratorPool),this._set("view",null),this._upsampleInfoPool=d(this._upsampleInfoPool),Y(),Fe()}get renderer(){return this._renderer}get frustum(){return this._frustum}get snapLevel(){if(this.lodSnapping===ae.ON){const e=this.view,t=this.tilingScheme,i=e.pointsOfInterest?.cameraOnSurface?.scale;if(i&&t){const r=e.state.contentCamera;let s=$(e,r.eye,r.viewForward,r.up).tilt;s>90&&(s=180-s);const a=2*(s/90)**2,n=t.levelAtScale(i)-a;return Math.round(n)}}return null}get lodSnapping(){return this.view.qualitySettings.tiledSurface.reduceTileLevelDifferences?ae.ON:ae.OFF}get upsampleInfoPool(){return this._upsampleInfoPool}get upsampleMapCache(){return this._upsampleMapCache}get elevationQueryCache(){return this._elevationQueryCache}get mapTileRequester(){return this._mapDataRequester}get _userClippingExtent(){const{spatialReference:e}=this,{clippingArea:t}=this.view;if(p(t)||p(e))return null;const i=I(),r=J(t,i,e)?i:null,s=this._get("extent");return O(r,s)?s:r}get rootTilesExtent(){return this._rootTilesExtent}get extent(){const e=V(this.groundExtent,this._userClippingExtent,I()),t=this._get("extent");return O(e,t)?t:e}get groundExtent(){return u(this._tilingSchemeExtent)?this._tilingSchemeExtent:this._rootTilesExtent}get _tilingSchemeExtent(){return this.tilingSchemeLogic?.extent}get updating(){return this._hasPendingUpdates||(this._maxNumUpdating=1),!!((this.running||this._watchUpdatingTracking.updating||this._asyncWorkItems>0)&&this.ready&&!this.suspended||this.overlayManager.updating)}get running(){return(this._hasPendingUpdates||this._viewChanged||this._allTilesDirty||!this._allTilesSorted||this._layerViewsDirty||this._frameTask.updating)&&this.ready&&!this.suspended}get updatingProgressValue(){return this._maxNumUpdating=Math.max(this._pendingUpdates,this._maxNumUpdating),1-this._pendingUpdates/this._maxNumUpdating}get baseOpacity(){return this.view.map.ground.opacity}set baseOpacity(e){this.view.map.ground.opacity=e}get viewingMode(){return this.view.state.viewingMode}get ready(){return u(this._rootTiles)}set renderOrder(e){this._renderer.renderOrder=e,this._set("renderOrder",e)}get rootTiles(){return this._rootTiles}get spatialReference(){return this.tilingScheme?.spatialReference??null}get backgroundColor(){return this.view.map.ground.surfaceColor}set backgroundColor(e){this.view.map.ground.surfaceColor=e}set slicePlaneEnabled(e){this._renderer.slicePlaneEnabled=e,this._set("slicePlaneEnabled",e),this._evaluateTransparency()}get tilingSchemeLocked(){return this.tilingSchemeLogic?.tilingSchemeLocked??!1}set velvetOverground(e){this._renderer.velvetOverground=e,this._set("velvetOverground",e)}get wireframe(){return this._renderer.wireframe}set wireframe(e){e!==this._renderer.wireframe&&(this._renderer.wireframe=e,this._updateAllTileGeometries())}set _visible(e){e!==this._visibleCached&&(this._visibleCached=e,this._renderer.setVisibility(e),this.suspended=!e)}get opaque(){return this._renderer.transparency===ve.Opaque}set suspended(e){this._set("suspended",e),this._viewChangeUpdate()}get textureFadeDuration(){return this.view.qualitySettings.tiledSurface.textureFadeDuration??0}intersect(e,t,i,r){this._renderer.intersect(e,t,i,r)}getElevation(e,t,i,r){const s=this._rootTiles;if(p(s)||!s.length)return null;if(0===s[0].layerInfo[le.ELEVATION].length)return null;const a=ht;if(a[0]=e,a[1]=t,a[2]=i,!R(a,r,a,this._spatialReference))return l.getLogger(this.declaredClass).error("TerrainSurface.getElevation(): could not project given point to tiling scheme coordinate system"),null;return gt(s,a[0],a[1])}getElevations(e,t,i){const r=this._rootTiles,s=r?r[0].layerInfo[le.ELEVATION].length:0;if(!p(r)&&r.length&&0!==s)for(let a=0;a<t;++a){const t=3*a;i(a,gt(r,e[t+0],e[t+1]))}else for(let a=0;a<t;++a)i(a,null)}getScale(e){if(!this.tilingScheme)return null;if(!M(e,ht,this.spatialReference))return l.getLogger(this.declaredClass).error("TerrainSurface.getScale(): could not project given point to tiling scheme coordinate system"),null;const t=this._rootTiles;if(u(t))for(let i of t)if(i?.containsPoint(ht)){for(;!i.isLeaf&&!i.rendered;){let e=0;ht[0]>i.children[0].extent[2]&&(e+=1),ht[1]<i.children[0].extent[1]&&(e+=2),i=i.children[e]}return this._getLodBiasCorrectedScale(i.level)}return 1/0}getSphereElevationBounds(e,t,i,r,s){if(ht[0]=e,ht[1]=t,ht[2]=i,ht[3]=r,!R(ht,s,ht,this.tilingScheme?.spatialReference))return l.getLogger(this.declaredClass).error("TerrainSurface.getSphereElevationBounds(): could not project given point to tiling scheme coordinate system"),null;let a=1/0,n=-1/0;const o=e=>{if(e&&N(e.extent,ht))if(e.isLeaf||e.rendered)a=Math.min(a,e.elevationBounds[0]),n=Math.max(n,e.elevationBounds[1]);else for(const t of e.children)o(t)},h=this._rootTiles;if(u(h))for(const l of h)o(l);return{min:a,max:n}}getSphereScale(e,t){if(!this.tilingScheme)return null;if(!M(e,ht,this.spatialReference))return l.getLogger(this.declaredClass).error("TerrainSurface.getSphereScale(): could not project given point to tiling scheme coordinate system"),null;ht[3]=t;let i=null;const r=e=>{if(e&&N(e.extent,ht))if(e.isLeaf||e.rendered){const t=this._getLodBiasCorrectedScale(e.level);i=null==i?t:Math.min(i,t)}else for(const t of e.children)r(t)},s=this._rootTiles;if(u(s))for(const a of s)r(a);return i}queryVisibleScaleRange(e,t,i,r){const s=t?this.tilingScheme.levelAtScale(t):0,a=i?this.tilingScheme.levelAtScale(i):1/0,n=this._lodBias;this._renderer.queryVisibleLevelRange(e,s+n,a+n,r)}_evaluateTransparency(){const e=this.baseOpacity,t=this.overlayManager.renderer.isEmpty,i=this._renderer.transparency,r=this._allSurfaceLayersTransparent()?t?ve.Empty:ve.TransparentWithDraped:e>=1&&!this.hasCompositeBlendMode&&!this._renderer.slicePlaneEnabled?ve.Opaque:ve.Semitransparent,s=i!==r;return s&&(this._renderer.transparency=r,this.view?._stage?.renderer.setParameters({terrainTransparency:this._renderer.transparency})),s}_updateTilingScheme(){const e=this.tilingSchemeLogic.tilingScheme;if(!(e!==this.tilingScheme))return;Ee(!!e,"tiling scheme cannot be reset to undefined"),this._isGlobal=!this.view?.state?.isLocal,this.tilingScheme&&this._removeAllTiles();const t=e?.spatialReference??A.WebMercator;this._spatialReference=t,this._isWebMercator=!!t?.isWebMercator,this._isWebMercatorOnPlateeCarree=this._isWebMercator&&q(this.view?.renderSpatialReference),this._set("tilingScheme",e),this._updateClippingExtent(),e&&(this._updateTiledLayers(),this._renderer.setTileSize(e.pixelSize),this.overlayManager.setSpatialReference(e.spatialReference),this._updateRootTiles())}_acquireTile(e,t,i,r){const s=this._tilePool.acquire();return pt[0]=e,pt[1]=t,pt[2]=i,s.init(pt,r,this),s}get updatingRootTiles(){return this._updatingRootTiles}_updateRootTiles(){const{extent:e,tilingScheme:t}=this;if(!t)return;const i=dt;let s=t.rootTilesInExtent(e,i,5*_e);if(u(this._rootTiles)){if(s.length>_e)return void l.getLogger(this.declaredClass).warn(ge);const e=this._rootTiles.map((e=>e.lij)),t=r(e,s,nt);if(this._updatingRootTiles=!0,t.removed.length>0||t.added.length>0){const e=this._rootTiles.filter((e=>!(t.removed.findIndex((t=>nt(t,e.lij)))>-1)||(this._purgeTile(e),!1)));t.added.forEach((t=>e.push(this._newRootTile(t)))),this._setRootTiles(e)}}else this._updatingRootTiles=!0,s.length>_e&&(l.getLogger(this.declaredClass).warn(me),s=t.rootTilesInExtent(e,i,_e)),this._setRootTiles(s.map((e=>this._newRootTile(e))));O(i,this._rootTilesExtent)||(this._rootTilesExtent=I(i)),this._visible=!0,this._viewChangeUpdate(),this.overlayManager.setPlacementDirty(),this.notifyChange("ready"),this._updateAllTileGeometries(),this._updatingRootTiles=!1,this.checkAllTilesWaterproofness()}_updateAllTileGeometries(){const e=this._allTiles.filter((e=>e.isLoaded&&e.intersectsClippingArea));e.forEach((e=>this._renderer.updateTileGeometryState(e))),e.forEach((e=>e.renderData.updateNeighborData())),this._updateTilesGeometries(e),this._pendingTilesToUpdate.clear()}_updateTilesGeometries(e){if(0===e.length)return;e.sort(He);const t=this.renderer;e.forEach((e=>t.updateGeometryIfNeeded(e))),e.forEach((e=>this._pendingTilesForElevationUpdateEvent.add(e)))}_shouldSplit(e){return e.shouldSplit(this._splitLimits,this._eyePosRenderSR,this.snapLevel)===Ge.SPLIT}_newRootTile(e){const t=this._acquireTile(0,e[1],e[2],null);return this._shouldSplit(t)&&t.setPendingUpdate(Ge.SPLIT),this._loadTile(t),this._markTileToUpdate(t),this._updateRootTileElevationBounds(),t}_setRootTiles(e){if(this._rootTiles=e,this._allTiles.clear(),u(e)){const t=this._iteratorPool.acquire();for(t.reset(e);!t.done;)this._allTiles.push(t.next());t.remove()}this._renderer.setRootTiles(this._rootTiles),this._updateTilesVisibility(e)}_runViewChangeUpdateIfDirty(){this._viewChangeUpdateDirty&&(this._viewChangeUpdateDirty=!1,this._viewChangeUpdate())}_viewChangeUpdate(){this.view&&!this.suspended&&this.tilingScheme&&this._visibleCached&&(this._inFrameTask?this._viewChangeUpdateDirty=!0:(this._viewChangeUpdateDirty=!1,this._updateViewDependentParameters(),this._updateTilesVisibility(this._rootTiles)))}_updateClippingStatus(e){e.updateClippingStatus(this.extent)&&e.resetPendingUpdate(Ge.GEOMETRY)&&this._updateTileGeometryState(e)}_updateTilesVisibility(e){if(p(e))return;const t=ze(e),i=this.visibleElevationBounds;let r=t?i.min:1/0,s=t?i.max:-1/0;const a=this.extent,n=this._viewProjectionMatrix;this.setTileTreeDirty();const l=this._iteratorPool.acquire();for(l.reset(e);!l.done;){const e=l.next();e.updateClippingStatus(a)&&e.resetPendingUpdate(Ge.GEOMETRY)&&this._updateTileGeometryState(e),e.setPendingUpdate(Ge.RENDERDATA),e.computeVisibility(),e.updateScreenDepth(n),e.renderData&&(r=Math.min(e.elevationBounds[0],r),s=Math.max(e.elevationBounds[1],s))}l.remove(),this._viewChanged=!0,this._allTilesDirty=!0,this._batchUpdatePendingTileGeometries(),isFinite(r)&&isFinite(s)&&(i.min!==r||i.max!==s)&&(this.visibleElevationBounds=new te(r,s))}_updateRootTileElevationBounds(){let e=1/0,t=-1/0;const i=this._rootTiles;u(i)&&i.forEach((({elevationBounds:i})=>{e=Math.min(e,i[0]),t=Math.max(t,i[1])}));const r=this.rootTileElevationBounds;r.min===e&&r.max===t||(this.rootTileElevationBounds=new te(e,t))}_updateViewDependentParameters(){const{camera:e,contentCamera:t}=this.view.state,i=Math.tan(.5*t.fovX),r=Math.tan(.5*t.fovY),s=this.tilingScheme.pixelSize,a=2**-this._lodBias*e.pixelRatio;this._splitLimits.aboveGround=e.aboveGround,this._splitLimits.fovX=i,this._splitLimits.fovY=r,this._splitLimits.relativeWidthLimit=s/e.width*this.maxTextureScale*a,this._splitLimits.relativeHeightLimit=s/e.height*this.maxTextureScale*a,this._splitLimits.maxLod=this.tilingScheme.getMaxLod(),this._splitLimits.angledSplitBias=this.view.qualitySettings.tiledSurface.angledSplitBias,this.view.state.fixedContentCamera?(p(this._splitLimits.frustum)&&(this._splitLimits.frustum=F()),G(this._splitLimits.frustum,t.frustum)):this._splitLimits.frustum=null,G(this._frustum,e.frustum),D(this._viewProjectionMatrix,t.projectionMatrix,t.viewMatrix),P(this._eyePosRenderSR,t.eye),R(e.eye,this.view.renderSpatialReference,this._eyePosSurfaceSR,this.spatialReference)}_updateRenderData(e){e.rendered&&!e.shouldLoad&&(lt(e)?this._loadChildren(e):ot(e)&&this._loadParent(e))}_updateTileGeometryState(e){e.updateVisibility();this._renderer.updateTileGeometryState(e)&&this._markTileToUpdate(e),this._usedMemory=null}_markAllTileNeighborsForGeometryUpdate(e){const t=this._pendingTilesToUpdate;e.forEachLoadedNeighbor((e=>{t.add(e)}))}_updateTileTexture(e,t){const i=e.resetPendingUpdate(Ge.TEXTURE_FADING)?Ge.TEXTURE_FADING:!!e.resetPendingUpdate(Ge.TEXTURE_NOFADING)&&Ge.TEXTURE_NOFADING;i&&(this._renderer.updateTileTexture(e,i),this._usedMemory=null,t.madeProgress())}_emitElevationUpdateEventForTiles(){const e=ct.extent;k(e),this._pendingTilesForElevationUpdateEvent.forEach((t=>B(e,t.extent,e))),this._pendingTilesForElevationUpdateEvent.clear(),ct.spatialReference=this.spatialReference,this.emit("elevation-change",ct)}runTask(e){this._handleLayerViewChanges(e),this._frameTask.processQueue(e),this._inFrameTask=!0,this._pendingUpdates=0,this._hasPendingUpdates=!1,this._updateAllTilesStatus(e),this._sortTiles(e);const t=!this.view.state.fixedContentCamera;this._mergeAndSplit(e,t),this._updateElevation(e),this._updateTextures(e),t||this._mergeAndSplit(e,!0),this._inFrameTask=!1,this._runViewChangeUpdateIfDirty(),this._batchUpdatePendingTileGeometries(),this._emitElevationUpdateEventForTiles(),e.done&&e.hasProgressed?this.requestUpdate():this.getUsedMemory(),this.notifyChange("updatingProgressValue")}_updateAllTilesStatus(e){if(!this._viewChanged||!this._rootTiles||e.done)return;this._viewChanged=!1;const t=this._iteratorPool.acquire();t.reset(this._rootTiles);const i=this.snapLevel,r=this._splitLimits,s=this._eyePosRenderSR;for(;!t.done;){const e=t.next(),a=e.shouldSplit(r,s,i);if(a!==Ge.SPLIT){if(e.resetPendingUpdate(Ge.SPLIT)&&e.updateAgentSuspension(),a===Ge.VSPLITMERGE&&e.updateAgents(le.ELEVATION),t.skipSubtree(),!e.isLeaf){e.setPendingUpdate(Ge.MERGE),e.resetPendingUpdate(Ge.SPLIT);const t=this._iteratorPool.acquire();t.resetOne(e);const i=this._viewProjectionMatrix;for(let e=t.next();!t.done;e=t.next())this._updateClippingStatus(e),e.updateVisibility(),e.updateScreenDepth(i);t.remove()}}else e.resetPendingUpdate(Ge.MERGE),e.isLeaf&&(e.setPendingUpdate(Ge.SPLIT),t.skipSubtree()),e.rendered&&e.setPendingUpdate(Ge.RENDERDATA)}t.remove(),this.requestUpdate(),(this.shortBatches||!this.oneBatchPerFrameTask)&&this._batchUpdatePendingTileGeometries(),e.madeProgress()}_sortTiles(e){e.done||this._allTilesSorted||(Xe(this._allTiles,this.view.pointsOfInterest.focus.renderLocation),this._allTilesSorted=!0,this._treeDebugger&&this._treeDebugger.update(),e.madeProgress())}_markTileToUpdate(e){Se(e.isLoaded),e.intersectsClippingArea&&(this._pendingTilesToUpdate.add(e),this._markAllTileNeighborsForGeometryUpdate(e))}_batchUpdatePendingTileGeometries(){const e=this._pendingTilesToUpdate;if(0===e.size)return;const t=Array.from(this._pendingTilesToUpdate.keys()).filter((e=>e.isLoaded&&e.intersectsClippingArea)),i=(i,r)=>{!r?.isLoaded||!r.intersectsClippingArea||r.level<i.level||e.has(r)||(e.add(r),t.push(r),r.renderData.updateNeighborData())};t.sort(He);const r=t.length;for(let s=0;s<r;++s){const r=t[s];Se(r.isLoaded),Se(r.intersectsClippingArea);const a=r.renderData;a.updateNeighborData();const n=a._dirtyEdgeResolutions,l=a.geometryState.neighborData;for(let t=0;t<4;++t)if(n&1<<t){const s=r.renderData.geometryState.neighborData.edgePeerNeighbors[t];s&&s?.level>=r.level&&s.forAllSubtreeOnSide(Le(Ie[t]),(t=>!(!t.isLoaded||!t.intersectsClippingArea)&&(Se(e.has(t)||He(r,t)<0),i(r,t),!0))),i(r,l.cornerPeerNeighbors[t]),i(r,l.cornerPeerNeighbors[(t+1)%4])}}e.clear(),this._updateTilesGeometries(t),Oe&&Ve&&this.checkAllTilesWaterproofness()}_mergeAndSplit(e,t){if(this.suspended||e.done||!this._allTilesDirty)return;this._allTilesDirty=!1,this.requestUpdate();let i=!1;const r=this.view.state.fixedContentCamera;let s=!1;for(;!e.done;){s=!0;let a=!1;const n=!this._allTiles.some((s=>{if(!i&&!r&&!s.visible)return e.done;let n=s;if(s.resetPendingUpdate(Ge.MERGE)){if(!t)return s.setPendingUpdate(Ge.MERGE),e.done;for(;n.parent?.resetPendingUpdate(Ge.MERGE);)n=n.parent;this._mergeTile(n),a=!0,e.madeProgress()}else s.resetPendingUpdate(Ge.SPLIT)&&(this._splitTile(s),a=!0,e.madeProgress());return!e.done&&n===s&&s.resetPendingUpdate(Ge.RENDERDATA)&&(this._updateRenderData(s),e.madeProgress()),e.done}));if(a&&(this._allTilesSorted=!1,this._allTilesDirty=!0),n){if(!i){i=!0;continue}if(!a)break}else this._allTilesDirty=!0}s?e.madeProgress():this._allTilesDirty=!0,!this.oneBatchPerFrameTask&&this._batchUpdatePendingTileGeometries(),this._sortTiles(e)}_updateElevation(e){e.done||(this._allTiles.some((t=>(t.resetPendingUpdate(Ge.GEOMETRY)&&(this._updateTileGeometryState(t),this._updateTileTexture(t,e),this.shortBatches&&this._batchUpdatePendingTileGeometries(),e.madeProgress()),e.done))),!this.oneBatchPerFrameTask&&this._batchUpdatePendingTileGeometries())}_updateTextures(e){e.done||this._allTiles.some((t=>(this._updateTileTexture(t,e),e.done)))}_updateClippingExtent(){this.spatialReference&&(this.updateTileOverlayParams(Ze.UPDATE),this.overlayManager.setPlacementDirty(),this._updateRootTiles())}get _lodBias(){const e=this.view.resourceController.memoryController.memoryFactor;return this.view.qualitySettings.tiledSurface.lodBias-(1-e)*Te}_getLodBiasCorrectedScale(e){const t=this.tilingScheme.levels,i=o(e-this._lodBias,0,t.length-1),r=i-Math.floor(i);return t[Math.floor(i)].scale*(1-r)+t[Math.ceil(i)].scale*r}_removeAllTiles(){u(this._rootTiles)&&(this._rootTiles.forEach((e=>this._purgeTile(e))),this._setRootTiles(null),this.notifyChange("ready")),this._allTiles.clear(),this._visible=!1}_purgeDescendantTiles(e){if(e.isLeaf)return!1;let t=!1;for(let i=0;i<4;++i)t=this._purgeTile(e.children[i])||t;return e.unsetChildren(),t}_purgeTile(e){const t=this._purgeDescendantTiles(e)||e.rendered;return this._allTiles.removeUnordered(e),this._unloadTile(e),this._tilePool.release(e),t}_unloadTile(e){this._pendingTilesToUpdate.delete(e),this._pendingTilesForElevationUpdateEvent.delete(e),e.unload(this._renderer)}_splitTile(e){Ee(e.isLeaf,"tile that is already split should not be split again!");const t=e.level+1,i=2*e.lij[1],r=2*e.lij[2];e.setChildren(this._createTile(t,i,r,e),this._createTile(t,i,r+1,e),this._createTile(t,i+1,r,e),this._createTile(t,i+1,r+1,e)),e.setPendingUpdate(Ge.RENDERDATA),e.updateAgentSuspension(),this._allTiles.pushArray(e.children),this._allTilesDirty=!0,++this._performanceInfo.numSplit}_emitTileScaleChange(e,t=e.level){_t.spatialReference=this.spatialReference,_t.extent=e.extent,_t.scale=this._getLodBiasCorrectedScale(t),this.emit("scale-change",_t)}_createTile(e,t,i,r){Ee(!!r,"_createTile sanity check");const s=this._acquireTile(e,t,i,r);return s.updateClippingStatus(this.extent),s.updateScreenDepth(this._viewProjectionMatrix),this._shouldSplit(s)&&s.setPendingUpdate(Ge.SPLIT),s}get shortBatches(){return this.view.state.mode!==et.IDLE}_mergeTile(e){Ee(!e.hasPendingUpdate(Ge.SPLIT),"_mergeTile sanity check"),this._purgeDescendantTiles(e)&&(Ee(!e.renderData,"_mergeTile sanity check"),this._loadTile(e),this._markTileToUpdate(e),this._emitTileScaleChange(e),this.shortBatches&&this._batchUpdatePendingTileGeometries()),this._allTilesDirty=!0,++this._performanceInfo.numMerged}_loadChildren(e){Ee(e.rendered,"parent should be rendered"),this._unloadTile(e);const t=e.children;t.forEach((e=>this._loadTile(e))),t.forEach((e=>this._pendingTilesToUpdate.add(e))),this._markAllTileNeighborsForGeometryUpdate(e),this._emitTileScaleChange(e,e.level+1),this.shortBatches&&this._batchUpdatePendingTileGeometries()}_loadParent(e){const t=e.parent;this._unloadChildren(t),this._loadTile(t),this._markTileToUpdate(t),this._emitTileScaleChange(t,t.level),this.shortBatches&&this._batchUpdatePendingTileGeometries()}_unloadChildren(e){if(!e.isLeaf)for(let t=0;t<4;++t){const i=e.children[t];this._unloadChildren(i),this._unloadTile(i)}}_loadTile(e){e.load(),e.setPendingUpdate(Ge.RENDERDATA),this.requestUpdate(),this._allTilesDirty=!0,this.overlayManager&&this.overlayManager.hasOverlays&&this.overlayManager.setTileParameters(e)}_elevationDataArrived(e,t,i){const r=new ie(e.lij,e.extent,i);e.dataArrived(t,le.ELEVATION,r);const s=[e],a=e.level,n=this._iteratorPool.acquire();for(n.reset(s);!n.done;){const e=n.next();e.findElevationBoundsForLayer(t,a),e.computeElevationBounds()}0===a&&this._updateRootTileElevationBounds(),n.remove(),this._updateTilesVisibility(s)}_handleLayerViewChanges(e=rt){if(!this._layerViewsDirty)return;this._layerViewsDirty=!1;let t=!1;const i=new Set;let r=-1;for(const s of this.view.allLayerViews.items)if(i.add(s.uid),De(s)||Ce(s))if(this._basemapLayerViewHandles.has(s.uid)&&!Ce(s)){const e=this._layerClassFromLayerView(s),i=this._getLayerIdxByUID(e,s.uid);u(i)&&((i<r||p(r))&&(t=!0),r=i)}else this._registerTiledLayerView(s),s.layer.loaded&&(t=!0);this._basemapLayerViewHandles.forEach(((e,r)=>{i.has(r)||(this._unregisterTiledLayerView(r),t=!0)})),t&&this._updateTiledLayers(),this.hasCompositeBlendMode=this._hasCompositeBlendMode(),this._evaluateTransparency(),e.madeProgress()}_allSurfaceLayersTransparent(){let e=0===this.view.map?.ground?.opacity;for(const t of this.view.allLayerViews.items)if(Pe(t)&&!X(t.layer)&&0!==t.fullOpacity)return e=!1,e;return e}_hasCompositeBlendMode(){for(const e of this.view.allLayerViews.items)if((be(e)||Ce(e))&&Ke(Je[e.layer.blendMode]))return!0;return!1}_layerClassFromLayerView(e){return Ue(e)?le.ELEVATION:le.MAP}_registerTiledLayerView(e){const t=[];if((be(e)||Ce(e))&&t.push(y((()=>e.layer.blendMode),(()=>{this.hasCompositeBlendMode=this._hasCompositeBlendMode(),this._updateTileTextures(ne.UNFADED)}))),Ce(e))return;const i=this._layerClassFromLayerView(e);t.push(y((()=>e.suspended),(()=>this._updateTiledLayers()))),t.push(y((()=>e.fullOpacity),(()=>this._updateTileTextures(ne.UNFADED)))),t.push(y((()=>"effectiveScaleRange"in e.layer?e.layer.effectiveScaleRange:null),(()=>this._restartAllAgents(i)))),e.on("data-changed",(()=>{const t=this._getLayerIdxByUID(i,e.uid);u(t)&&this._invalidateLayerData(t,i)})),this._basemapLayerViewHandles.set(e.uid,t)}_unregisterTiledLayerView(e){const t=this._basemapLayerViewHandles.get(e);if(t){for(let e=0;e<t.length;e++)t[e].remove();this._basemapLayerViewHandles.delete(e)}}_updateTiledLayers(){if(!this.tilingScheme||this.view.suspended)return;const e=this.view.allLayerViews,t=[[],[]];let i=null;e.forEach((e=>{if(!e.layer||e.suspended||!De(e)||!e.fullExtent)return;const r=this._layerClassFromLayerView(e);if(r===le.MAP){const t=e.displayLevelRange.maxLevel;t!==1/0&&(null===i||t>i)&&(i=t)}t[r].push(e)}));for(const r of oe){const e=this._layerViews[r],i=t[r];i.reverse();const s=i.length;let a=e.length!==s;const n=new Array(s),l=new Array(e.length);this._layerIndexByUid[r].clear();for(let t=0;t<s;t++){const s=i[t].uid;this._layerIndexByUid[r].set(s,t);const o=e.indexOf(i[t]);n[t]=o,t!==o&&(a=!0),o>-1&&(l[o]=t)}if(a){const e=this._postorderIterator;for(e.reset(this._rootTiles);!e.done;)e.next().modifyLayers(l,n,r);this._layerViews[r]=i,this._restartAllAgents(r),this._updateTilesVisibility(this._rootTiles)}}this.tilingScheme.ensureMaxLod(i)&&this._viewChangeUpdate()}_restartAllAgents(e){const t=this._postorderIterator;for(t.reset(this._rootTiles);!t.done;){const i=t.next();i.restartAgents(e),e===le.ELEVATION&&i.computeElevationBounds()}this._updateRootTileElevationBounds()}layerViewByIndex(e,t){return this._layerViews[t][e]}numLayers(e){return this._layerViews[e].length}_updateTileTextures(e){this._allTiles.forAll((t=>{t.updateAgents(le.MAP),e===ne.IMMEDIATE?this.renderer.updateTileTexture(t,Ge.TEXTURE_NOFADING):t.updateRenderData(le.MAP,e)})),this._evaluateTransparency()}_invalidateLayerData(e,t){this._allTiles.forAll((i=>i.removeLayerAgent(e,t))),this._allTiles.forAll((i=>i.invalidateLayerData(e,t)))}setTileTreeDirty(){this._allTilesDirty=!0}requestRender(e=Ze.UPDATE){this.renderer.setNeedsRender(e)}requestUpdate(){1==++this._pendingUpdates&&(this._hasPendingUpdates=!0)}requestTileData(e,t,i,r){const s=this.layerViewByIndex(t,i),a=s.layer;return!a.tilemapCache||xe(s)?this._requestTileData(e,i,s,r):(++this._asyncWorkItems,a.tilemapCache.fetchAvailability(e.lij[0],e.lij[1],e.lij[2],{...r,timeout:6e3}).then((()=>--this._asyncWorkItems)).catch((t=>{throw--this._asyncWorkItems,g(r),m(t)||this._dataMissing(e,i,s,{notInTilemap:!0}),t})).then((()=>this._frameTask.schedule((()=>this._requestTileData(e,i,s,r)),r.signal))))}_requestTileData(e,t,i,r){return t===le.ELEVATION?Ue(i)?this._requestElevationTileData(e,i,r):Promise.reject():Pe(i)?this._requestMapTileData(e,i,r):Promise.reject()}_requestElevationTileData(e,t,i){++this._asyncWorkItems;const r=r=>{if(T(i))return;const s=this._layerIndexByUid[le.ELEVATION].get(t.uid);null!=s?(this._usedMemory=null,this.requestUpdate(),this._elevationDataArrived(e,s,r)):l.getLogger(this.declaredClass).warn("TerrainSurface: received data from unknown layer %d %s",le.ELEVATION,e.lij.toString())},s=i=>{m(i)||(this._dataMissing(e,le.ELEVATION,t,i),this.requestUpdate())};if(Re(t.layer))return t.layer.fetchTile(e.lij[0],e.lij[1],e.lij[2],{noDataValue:fe,signal:i.signal}).then((e=>{if(!T(i))return this._frameTask.schedule((()=>r(e)),i.signal,s);l.getLogger(this.declaredClass).warnOnce("A call to fetchTile resolved even though the request was aborted. fetchTile should not resolve if options.signal.aborted is true.")}),s).finally((()=>{--this._asyncWorkItems}));const a=t.getTileUrl(e.lij[0],e.lij[1],e.lij[2]);return this._elevationDataRequester.request(a,"binary",i).then((e=>this._lercDecoder.decode(e,{noDataValue:fe},i.signal))).then((e=>{e?r(new z(e)):s(new Error("LERC decoding failed"))}),s).finally((()=>{--this._asyncWorkItems}))}_requestMapTileData(e,t,i){++this._asyncWorkItems;const r=(r,s)=>{--this._asyncWorkItems,Ae(s),T(i)||(this._dataMissing(e,le.MAP,t,r),this.requestUpdate())},s=e=>t=>r(t,e),a=r=>this._frameTask.schedule((()=>{--this._asyncWorkItems,this.requestUpdate(),T(i)?Ae(r):this._mapTileDataArrived(e,t,r)}),i.signal,s(r)).catch(s(r)),n=(e,t=null)=>this._frameTask.schedule((()=>r(e,t)));if(xe(t)){const r=t.schemaHelper.getLevelRowColumn(e.lij);return t.fetchTile(r[0],r[1],r[2],i).then(a,n)}if(Me(t))return t.fetchTile(e.lij[0],e.lij[1],e.lij[2],i).then(a,n);if(je(t)&&Re(t.layer))return t.layer.fetchTile(e.lij[0],e.lij[1],e.lij[2],i).then((e=>{if(T(i))return l.getLogger(this.declaredClass).warnOnce("A call to fetchTile resolved even though the request was aborted. fetchTile should not resolve if options.signal.aborted is true."),void n(f());a(e)}),n);let o=t.getTileUrl(e.lij[0],e.lij[1],e.lij[2]);W(t.layer)&&t.layer.refreshTimestamp&&(o+=`${o.includes("?")?"&":"?"}_ts=${t.layer.refreshTimestamp}`);const h=t.hasMixedImageFormats?"image+type":"image";return this._mapDataRequester.request(o,h,i).then(a,n)}_mapTileDataArrived(e,t,i){const r=this._getLayerIdxByUID(le.MAP,t.uid);u(r)?e.dataArrived(r,le.MAP,i):(Ae(i),l.getLogger(this.declaredClass).warn("TerrainSurface: received data from unknown layer"))}_getLayerIdxByUID(e,t){return this._layerIndexByUid[e].get(t)}_dataMissing(e,t,i,r){const s=this._getLayerIdxByUID(t,i.uid);u(s)?e.dataMissing(s,t,r):l.getLogger(this.declaredClass).warn("TerrainSurface: received data from unknown layer")}updateTileOverlayParams(e){this._rootTiles&&this.overlayManager&&(this._allTiles.forAll((e=>{e.renderData&&this.overlayManager.setTileParameters(e)})),this._renderer.setNeedsRender(e))}get performanceInfo(){const e=this._performanceInfo;return e.numNodes=this._allTiles.length,e.numLeaves=e.numVisible=e.numRendered=e.numLoadedPerLevel.length=e.numRenderedPerLevel.length=0,this._allTiles.forAll((t=>{t.isLeaf&&e.numLeaves++;const i=t.level;t.renderData&&(e.numLoadedPerLevel[i]=(e.numLoadedPerLevel[i]||0)+1),t.visible&&(e.numVisible++,t.rendered&&(e.numRenderedPerLevel[i]=(e.numRenderedPerLevel[i]||0)+1,e.numRendered++))})),e}getUsedMemory(){return this.tilingScheme?(p(this._usedMemory)&&(this._usedMemory=this._recalculateUsedMemory()),u(this._usedMemory)?this._usedMemory:0):0}_recalculateUsedMemory(){return this.tilingScheme?this._allTiles.reduce(((e,t)=>e+t.usedMemory),0):null}getUsedMemoryForLayerView(e){let t=0;const i=this._layerClassFromLayerView(e),r=this._getLayerIdxByUID(i,e.uid);return u(r)&&this._allTiles.forAll((e=>t+=e.getUsedMemoryForLayer(i,r))),t}getTile(e){if(p(e)||p(this._rootTiles))return null;const t=e.split("/").map((e=>+e));if(0===t[0])return this._rootTiles.find((e=>e.lij[1]===t[1]&&e.lij[2]===t[2]));const i=2**t[0],r=Math.floor(t[1]/i),s=Math.floor(t[2]/i);let a;if(this._rootTiles.some((e=>e.lij[1]===r&&e.lij[2]===s&&(a=e,!0))),a){let e=1<<t[0]-1;for(;a.lij[0]<t[0];){let i=t[1]&e?2:0;if((t[2]&e)>0&&i++,!a.children[i])return null;a=a.children[i],e>>=1}return Ee(a.lij[0]===t[0]&&a.lij[1]===t[1]&&a.lij[2]===t[2],"not the right tile?"),a}return null}get renderPatchBorders(){return this._renderer.renderPatchBorders}set renderPatchBorders(e){this._renderer.renderPatchBorders=e}get visualizeNormals(){return this._renderer.visualizeNormals}set visualizeNormals(e){this._renderer.visualizeNormals=e}get renderingDisabled(){return this._renderer.renderingDisabled}set renderingDisabled(e){this._renderer.renderingDisabled=e}get test(){const e=this;return{renderer:e._renderer,lercDecoder:e._lercDecoder,forceReload:()=>{u(e._rootTiles)&&e._rootTiles.length>0&&(e._mergeTile(e._rootTiles[0]),e._viewChangeUpdate())},getTiles:()=>e._allTiles.toArray(),getRenderedTiles(){ut.clear(),e._allTiles.forAll((e=>{e.visible&&e.rendered&&ut.push(e)}));const t=ut.toArray();return Qe(e.renderOrder,t),t},lockTilingScheme(t,i){e._extentHelper.defaultTiledLayersExtent=i,e.tilingSchemeLogic.test.lockTilingScheme(t)}}}checkAllTilesWaterproofness(){if(!Ve)return;const e=this._rootTiles;if(p(e))return;const t=e=>e?.renderData?.geometryInfo?.indices?.length>0,i=(e,i)=>{t(e)&&console.error("Tile[",e.lij,"] has geometry although parent[",i.lij,"] has geom")},r=e=>{if(e.intersectsClippingArea)if(e.renderData&&!e.renderData.geometryState&&console.error("Tile[",e.lij,"] has renderData but not geometryState"),e.renderData&&!e.renderData.geometryInfo&&console.error("Tile[",e.lij,"] has renderData but not geometryInfo"),!e.renderData?.geometryInfo||(e.renderData.geometryInfo.indices?.length??0)>0||console.error("Tile[",e.lij,"] has renderData but no indices - geometryInfo: ",e.renderData.geometryInfo),t(e)){e.checkGeometryWaterproofness();for(const t of e.children)i(t,e)}else if(e.isLeaf)console.error("Tile[",e.lij,"] has no geometry and no children, from root to leaf");else for(const t of e.children)r(t)},s=e=>{const t=e.parent?.visible??!0,i=e.visible;e.computeVisibility();const r=e.visible;if(i!==r&&t&&console.error(" Tile[",e.lij,"] has out of date visibility: ",i," instead of ",r),!e.isLeaf)for(const a of e.children)s(a)};for(const a of e)r(a),s(a)}get isGlobal(){return this._isGlobal}get shading(){return this._shading}_updateShadingIfChanged(){const e=this.view?.map?.ground?.shading;e!==this._shading&&this._updateShading()}_updateShading(){const e=this.view?.map?.ground?.shading;this._shading=e,this.renderer&&(this.renderer.shading=e,this.renderer.setNeedsRender()),this._updateAllTileGeometries()}get isWebMercator(){return this._isWebMercator}get isWebMercatorOnPlateeCarree(){return this._isWebMercatorOnPlateeCarree}isEastEndWrap(e){return this.isGlobal&&e[2]===this.lijEastEnd(e[0])-1}isWestEndWrap(e){return this.isGlobal&&0===e[2]}lijEastEnd(e){return 2**(e+(u(this.spatialReference)&&this.spatialReference.isGeographic?1:0))}wrapEastWest(e){const t=this.lijEastEnd(e[0]),i=e[2];if(0<=i&&i<t)return e;if(!this.isGlobal)return null;const r=(i+(i<0?t:0))%t;return[e[0],e[1],r]}enableInternalChecks(e){ke(e)}enableWaterproofnessChecks(e){Be(e)}};e([S()],st.prototype,"_renderer",void 0),e([S()],st.prototype,"_hasPendingUpdates",void 0),e([S()],st.prototype,"_asyncWorkItems",void 0),e([S()],st.prototype,"_allTilesDirty",void 0),e([S()],st.prototype,"_allTilesSorted",void 0),e([S()],st.prototype,"_viewChanged",void 0),e([S({readOnly:!0})],st.prototype,"_watchUpdatingTracking",void 0),e([S()],st.prototype,"_frameTask",void 0),e([S({readOnly:!0})],st.prototype,"snapLevel",null),e([S({readOnly:!0})],st.prototype,"lodSnapping",null),e([S({constructOnly:!0})],st.prototype,"view",void 0),e([S()],st.prototype,"_userClippingExtent",null),e([S()],st.prototype,"_rootTilesExtent",void 0),e([S({readOnly:!0})],st.prototype,"extent",null),e([S({readOnly:!0})],st.prototype,"groundExtent",null),e([S({readOnly:!0})],st.prototype,"_tilingSchemeExtent",null),e([S({readOnly:!0})],st.prototype,"updating",null),e([S({readOnly:!0})],st.prototype,"running",null),e([S(ee)],st.prototype,"updatingProgress",void 0),e([S({readOnly:!0})],st.prototype,"updatingProgressValue",null),e([S()],st.prototype,"_maxNumUpdating",void 0),e([S()],st.prototype,"baseOpacity",null),e([S()],st.prototype,"hasCompositeBlendMode",void 0),e([S({readOnly:!0})],st.prototype,"overlayManager",void 0),e([S({readOnly:!0})],st.prototype,"viewingMode",null),e([S()],st.prototype,"maxTextureScale",void 0),e([S({readOnly:!0})],st.prototype,"ready",null),e([S({value:pe.FRONT_TO_BACK})],st.prototype,"renderOrder",null),e([S({readOnly:!0})],st.prototype,"rootTiles",null),e([S()],st.prototype,"_rootTiles",void 0),e([S({readOnly:!0})],st.prototype,"spatialReference",null),e([S({type:t})],st.prototype,"backgroundColor",null),e([S({value:!1})],st.prototype,"slicePlaneEnabled",null),e([S({readOnly:!0})],st.prototype,"tilingScheme",void 0),e([S({readOnly:!0})],st.prototype,"tilingSchemeLocked",null),e([S({readOnly:!0})],st.prototype,"tilingSchemeLogic",void 0),e([S({value:!0})],st.prototype,"velvetOverground",null),e([S()],st.prototype,"wireframe",null),e([S({value:!1})],st.prototype,"suspended",null),e([S()],st.prototype,"textureFadeDuration",null),e([S()],st.prototype,"visibleElevationBounds",void 0),e([S()],st.prototype,"rootTileElevationBounds",void 0),e([S()],st.prototype,"_layerViewsDirty",void 0),e([S()],st.prototype,"renderPatchBorders",null),e([S()],st.prototype,"visualizeNormals",null),e([S()],st.prototype,"renderingDisabled",null),st=e([L("esri.views.3d.terrain.TerrainSurface")],st);const at=st;function nt(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]}function lt(e){return!e.isLeaf&&(e.children.some((e=>e.shouldLoad))||e.children.some((e=>lt(e))))}function ot(e){return e.isLeaf&&e.parent&&e.parent.shouldLoad}const ht=U(),dt=I(),pt=[0,0,0],ut=new _,ct={spatialReference:null,extent:I(),context:"ground"},_t={spatialReference:null,extent:null,scale:0};function gt(e,t,i){for(const r of e){if(!r.containsPointXY(t,i))continue;let e=r;for(;e&&!e.renderData;){const r=(t>e.extentMidX?1:0)+(i<e.extentMidY?2:0);e=e.children[r]}const s=e?.renderData?.geometryState.samplerData??null;return re(t,i,s)}return null}export{at as default};
|
|
5
|
+
import{_ as e}from"../../../chunks/tslib.es6.js";import t from"../../../Color.js";import i from"../../../core/Accessor.js";import{difference as r}from"../../../core/arrayUtils.js";import s from"../../../core/CollectionFlattener.js";import a from"../../../core/Evented.js";import n from"../../../core/Handles.js";import l from"../../../core/Logger.js";import{clamp as o}from"../../../core/mathUtils.js";import{releaseMaybe as h,destroyMaybe as d,isNone as p,isSome as u}from"../../../core/maybe.js";import c from"../../../core/ObjectPool.js";import _ from"../../../core/PooledArray.js";import{throwIfAborted as g,isAbortError as m,isAborted as T,createAbortError as f}from"../../../core/promiseUtils.js";import{watch as y,syncAndInitial as v,sync as w,initial as E}from"../../../core/reactiveUtils.js";import{property as S}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/accessorSupport/ensureType.js";import{subclass as L}from"../../../core/accessorSupport/decorators/subclass.js";import{m as D}from"../../../chunks/mat4.js";import{c as C}from"../../../chunks/mat4f64.js";import{c as P}from"../../../chunks/vec3.js";import{c as b}from"../../../chunks/vec3f64.js";import{c as U}from"../../../chunks/vec4f64.js";import{WatchUpdatingTracking as x}from"../../../core/support/WatchUpdatingTracking.js";import{projectVectorToVector as R,projectPointToVector as M}from"../../../geometry/projection.js";import{getReferenceEllipsoid as j}from"../../../geometry/projectionEllipsoid.js";import A from"../../../geometry/SpatialReference.js";import{create as I,equals as O,intersection as V,empty as k,expand as B,intersectsSphere as N}from"../../../geometry/support/aaBoundingRect.js";import{create as F,copy as G}from"../../../geometry/support/frustum.js";import{isPlateCarree as q}from"../../../geometry/support/spatialReferenceUtils.js";import{isRefreshableLayer as W}from"../../../layers/mixins/RefreshableLayer.js";import{ElevationQueryTileCache as H}from"../../../layers/support/ElevationQueryTileCache.js";import{ElevationTileData as z}from"../../../layers/support/ElevationTileData.js";import{isBaseLayer as X}from"../../../layers/support/layerUtils.js";import{acquireDecoder as Q}from"../../../layers/support/LercDecoder.js";import{printAllocations as Y}from"../../2d/engine/vectorTiles/VectorTile.js";import{directionToHeadingTilt as $}from"../support/cameraUtils.js";import K from"../support/debugFlags.js";import{toBoundingRect as J}from"../support/extentUtils.js";import{ClientType as Z}from"../support/index.js";import{updatingProgress as ee}from"../support/updatingProperties.js";import{ElevationBounds as te}from"./ElevationBounds.js";import{ElevationData as ie,sampleElevation as re}from"./ElevationData.js";import{create as se}from"./ExtentHelper.js";import{LODSnapping as ae,TextureUpdate as ne}from"./interfaces.js";import{LayerClass as le,LayerClasses as oe}from"./LayerClass.js";import{OverlayManager as he}from"./OverlayManager.js";import{PlanarPatch as de}from"./PlanarPatch.js";import{RenderOrder as pe}from"./RenderOrder.js";import{SphericalPatch as ue}from"./SphericalPatch.js";import{SplitLimits as ce}from"./SplitLimits.js";import{MAX_ROOT_TILES as _e,TOO_MANY_ROOT_TILES_AFTER_CHANGE_ERROR as ge,TOO_MANY_ROOT_TILES_FOR_LAYER_ERROR as me,MAX_MEMORY_LOD_BIAS as Te,ELEVATION_NODATA_VALUE as fe}from"./TerrainConst.js";import{TerrainRenderer as ye,TransparencyMode as ve}from"./TerrainRenderer.js";import we from"./TerrainSurfacePerformanceInfo.js";import{weakAssert as Ee,internalAssert as Se,oppositeEdge as Le,isSurfaceLayerView as De,isGroupLayerView as Ce,isMapTileLayerView as Pe,isBlendableLayerView as be,isElevationLayerView as Ue,isVectorTileLayerView as xe,useFetchTileForLayer as Re,isImageryTileLayerView as Me,isTileLayerView as je,releaseTileData as Ae,neighborEdgeIndices as Ie,ENABLE_TERRAIN_INTERNAL_CHECKS as Oe,ENABLE_WATERPROOFNESS_TESTS as Ve,enableTerrainInternalChecks as ke,enableTerrainWaterproofnessChecks as Be}from"./terrainUtils.js";import{Tile as Ne}from"./Tile.js";import{printAllocations as Fe}from"./TilePerLayerInfo.js";import{TileUpdate as Ge}from"./TileUpdate.js";import{IteratorPreorder as qe,IteratorPostorder as We,compareTilesByLij as He,hasLoadableSiblings as ze,sortTilesByPOI as Xe,sortTiles as Qe}from"./tileUtils.js";import{TilingSchemeLogic as Ye}from"./TilingSchemeLogic.js";import{UpsampleInfo as $e}from"./UpsampleInfo.js";import{isCompositeBlendMode as Ke,blendModeFromString as Je}from"../webgl-engine/core/shaderLibrary/output/BlendOptions.js";import{RenderRequestType as Ze}from"../webgl-engine/lib/basicInterfaces.js";import{RenderState as et}from"../../support/RenderState.js";import{ImmediateTask as tt,TaskPriority as it,noBudget as rt}from"../../support/Scheduler.js";let st=class extends(a.EventedMixin(i)){constructor(e){super(e),this._iteratorPool=new c(qe,(e=>e.remove=()=>this._iteratorPool.release(e))),this._postorderIterator=new We,this._hasPendingUpdates=!1,this._pendingUpdates=0,this._asyncWorkItems=0,this._allTilesDirty=!0,this._allTilesSorted=!0,this._visibleCached=!1,this._usedMemory=null,this._performanceInfo=new we,this._viewChanged=!1,this._inFrameTask=!1,this._viewChangeUpdateDirty=!1,this._eyePosRenderSR=b(),this._eyePosSurfaceSR=b(),this._splitLimits=new ce,this._frustum=F(),this._viewProjectionMatrix=C(),this._layerViews=[new Array,new Array],this._layerIndexByUid=[new Map,new Map],this._basemapLayerViewHandles=new Map,this._handles=new n,this._watchUpdatingTracking=new x,this._frameTask=tt,this._allTiles=new _,this._upsampleInfoPool=new c($e),this._rootTilesExtent=I(),this._maxNumUpdating=1,this.maxTextureScale=1.2,this._spatialReference=A.WebMercator,this.visibleElevationBounds=new te(1/0,-1/0),this.rootTileElevationBounds=new te(1/0,-1/0),this._updatingRootTiles=!1,this._pendingTilesForElevationUpdateEvent=new Set,this._pendingTilesToUpdate=new Set,this.totalGeometryUpdates=0,this.totalTileUpdates=0,this.oneBatchPerFrameTask=!0,this._layerViewsDirty=!1,this._shading=!0,this._isWebMercator=!1,this._isWebMercatorOnPlateeCarree=!1,this._isGlobal=!e.view?.state?.isLocal}initialize(){this._lercDecoder=Q(this.view.resourceController),this._tilePool=this.view.state.isLocal?new c(de):new c(ue);const e=this.view.resourceController.memoryController;this._upsampleMapCache=e.newCache("esri.views.3d.terrain.upsample",(e=>e.unloadMapData())),this._elevationQueryCache=new H(e.newCache("elevation-query")),this._set("overlayManager",new he({surface:this})),this._handles.add([y((()=>this.overlayManager.hasHighlights),(e=>this._renderer.setNeedsHighlight(e))),y((()=>this.overlayManager.rendersOccluded),(e=>this._renderer.setRenderOccludedOverlay(e))),y((()=>this.overlayManager.renderer.isEmpty),(()=>this._evaluateTransparency()))],"overlayManager"),this._renderer=new ye({_overlayRenderer:this.overlayManager.renderer,_ellipsoidRadius:j(this.view.spatialReference).radius,_stage:this.view._stage,_allTiles:this._allTiles}),this._handles.add([y((()=>this.baseOpacity),(()=>{this._handleLayerViewChanges(),this._updateTileTextures(this._evaluateTransparency()?ne.UNFADED:ne.IMMEDIATE)}),v),y((()=>this.hasCompositeBlendMode),(()=>{this._updateTileTextures(this._evaluateTransparency()?ne.UNFADED:ne.IMMEDIATE)}),v),y((()=>this.renderingDisabled),(()=>this.view?._stage?.renderer.setParameters({terrainRenderingEnabled:!this.renderingDisabled})),w),y((()=>this.backgroundColor),(e=>{this._handleLayerViewChanges(),this._renderer.updateTileBackground(e)}),v),y((()=>this.snapLevel),(()=>this._viewChanged=!0),w),y((()=>this.view.pointsOfInterest),(e=>{this._renderer.pointsOfInterest=e,this._watchUpdatingTracking.removeAll(),e&&this._watchUpdatingTracking.add((()=>e.focus.renderLocation),(()=>this._allTilesSorted=!1))})),y((()=>K.TERRAIN_TILE_TREE_SHOW_TILES),(e=>{e&&!this._treeDebugger?import("../layers/support/TerrainTileTree3DDebugger.js").then((({TerrainTileTree3DDebugger:e})=>{!this._treeDebugger&&K.TERRAIN_TILE_TREE_SHOW_TILES&&(this._treeDebugger=new e({view:this.view}))})):e||(this._treeDebugger=d(this._treeDebugger))}),E)]),this._extentHelper=se(this.viewingMode,{layers:this.view.map.allLayers,layerViews:this.view.allLayerViews,viewSpatialReference:this.view.spatialReference});const t=new s({getCollections:()=>this.view?.defaultsFromMap?.mapCollections?.map((({layers:e})=>e)),getChildrenFunction:e=>e&&"layers"in e?e.layers:null}),i=new Ye({layers:t,extentHelper:this._extentHelper,viewingMode:this.viewingMode,viewSpatialReference:this.view.spatialReference});this._set("tilingSchemeLogic",i),this._updateTilingScheme(),this._elevationDataRequester=this.view.resourceController.createStreamDataRequester(Z.ELEVATION),this._mapDataRequester=this.view.resourceController.createStreamDataRequester(Z.BASEMAP);const r=this.view.resourceController.scheduler;this._frameTask=r.registerTask(it.TERRAIN_SURFACE,this),this._handles.add([y((()=>this._extentHelper.stencilEnabledExtents),(e=>this._renderer.setStencilEnabledLayerExtents(e)),E),y((()=>this.tilingSchemeLogic.tilingScheme),(()=>this._updateTilingScheme()),w),y((()=>this.extent),(()=>this._updateRootTiles()),E),this.view.on("resize",(()=>this._viewChangeUpdate())),y((()=>{const e=this.view,t=e.state;return[this._lodBias,this.lodSnapping,e.resourceController?.memoryController?.memoryFactor,t.camera,t.contentCamera,t.fixedContentCamera]}),(()=>this._viewChangeUpdate()),v),y((()=>this.view.qualitySettings?.tiledSurface?.textureFadeDuration),(e=>this._renderer.textureFadingEnabled=e>0),E),y((()=>this._userClippingExtent),(()=>this._updateClippingExtent()),w)]),this._handles.add(this.view.allLayerViews.on("after-changes",(()=>this._layerViewsDirty=!0))),this._handles.add([y((()=>this.view?.map.ground.shading),(()=>{this._updateShadingIfChanged()}))]),this._updateShading(),this._layerViewsDirty=!0,this._handleLayerViewChanges()}destroy(){this._frameTask.remove(),this._handles.destroy(),this._watchUpdatingTracking.destroy(),this._lercDecoder=h(this._lercDecoder),this._removeAllTiles(),this._upsampleMapCache=d(this._upsampleMapCache),this._elevationQueryCache=d(this._elevationQueryCache);const e=this.tilingSchemeLogic.layers;this._set("tilingSchemeLogic",d(this.tilingSchemeLogic)),e.destroy(),this._basemapLayerViewHandles.forEach(((e,t)=>this._unregisterTiledLayerView(t))),this._elevationDataRequester=null,this._mapDataRequester=null,this._set("overlayManager",d(this.overlayManager)),this._tilePool=d(this._tilePool),Ne.prune(),this._treeDebugger=d(this._treeDebugger),this._renderer=d(this._renderer),this._iteratorPool=d(this._iteratorPool),this._set("view",null),this._upsampleInfoPool=d(this._upsampleInfoPool),Y(),Fe()}get renderer(){return this._renderer}get frustum(){return this._frustum}get snapLevel(){if(this.lodSnapping===ae.ON){const e=this.view,t=this.tilingScheme,i=e.pointsOfInterest?.cameraOnSurface?.scale;if(i&&t){const r=e.state.contentCamera;let s=$(e,r.eye,r.viewForward,r.up).tilt;s>90&&(s=180-s);const a=2*(s/90)**2,n=t.levelAtScale(i)-a;return Math.round(n)}}return null}get lodSnapping(){return this.view.qualitySettings.tiledSurface.reduceTileLevelDifferences?ae.ON:ae.OFF}get upsampleInfoPool(){return this._upsampleInfoPool}get upsampleMapCache(){return this._upsampleMapCache}get elevationQueryCache(){return this._elevationQueryCache}get mapTileRequester(){return this._mapDataRequester}get _userClippingExtent(){const{spatialReference:e}=this,{clippingArea:t}=this.view;if(p(t)||p(e))return null;const i=I(),r=J(t,i,e)?i:null,s=this._get("extent");return O(r,s)?s:r}get rootTilesExtent(){return this._rootTilesExtent}get extent(){const e=V(this.groundExtent,this._userClippingExtent,I()),t=this._get("extent");return O(e,t)?t:e}get groundExtent(){return u(this._tilingSchemeExtent)?this._tilingSchemeExtent:this._rootTilesExtent}get _tilingSchemeExtent(){return this.tilingSchemeLogic?.extent}get updating(){return this._hasPendingUpdates||(this._maxNumUpdating=1),!!((this.running||this._watchUpdatingTracking.updating||this._asyncWorkItems>0)&&this.ready&&!this.suspended||this.overlayManager.updating)}get running(){return(this._hasPendingUpdates||this._viewChanged||this._allTilesDirty||!this._allTilesSorted||this._layerViewsDirty||this._frameTask.updating)&&this.ready&&!this.suspended}get updatingProgressValue(){return this._maxNumUpdating=Math.max(this._pendingUpdates,this._maxNumUpdating),1-this._pendingUpdates/this._maxNumUpdating}get baseOpacity(){return this.view.map.ground.opacity}set baseOpacity(e){this.view.map.ground.opacity=e}get viewingMode(){return this.view.state.viewingMode}get ready(){return u(this._rootTiles)}set renderOrder(e){this._renderer.renderOrder=e,this._set("renderOrder",e)}get rootTiles(){return this._rootTiles}get spatialReference(){return this.tilingScheme?.spatialReference??null}get backgroundColor(){return this.view.map.ground.surfaceColor}set backgroundColor(e){this.view.map.ground.surfaceColor=e}set slicePlaneEnabled(e){this._renderer.slicePlaneEnabled=e,this._set("slicePlaneEnabled",e),this._evaluateTransparency()}get tilingSchemeLocked(){return this.tilingSchemeLogic?.tilingSchemeLocked??!1}set velvetOverground(e){this._renderer.velvetOverground=e,this._set("velvetOverground",e)}get wireframe(){return this._renderer.wireframe}set wireframe(e){e!==this._renderer.wireframe&&(this._renderer.wireframe=e,this._updateAllTileGeometries())}set _visible(e){e!==this._visibleCached&&(this._visibleCached=e,this._renderer.setVisibility(e),this.suspended=!e)}get opaque(){return this._renderer.transparency===ve.Opaque}set suspended(e){this._set("suspended",e),this._viewChangeUpdate()}get textureFadeDuration(){return this.view.qualitySettings.tiledSurface.textureFadeDuration??0}intersect(e,t,i,r){this._renderer.intersect(e,t,i,r)}getElevation(e,t,i,r){const s=this._rootTiles;if(p(s)||!s.length)return null;if(0===s[0].layerInfo[le.ELEVATION].length)return null;const a=ht;if(a[0]=e,a[1]=t,a[2]=i,!R(a,r,a,this._spatialReference))return l.getLogger(this.declaredClass).error("TerrainSurface.getElevation(): could not project given point to tiling scheme coordinate system"),null;return gt(s,a[0],a[1])}getElevations(e,t,i){const r=this._rootTiles,s=r?r[0].layerInfo[le.ELEVATION].length:0;if(!p(r)&&r.length&&0!==s)for(let a=0;a<t;++a){const t=3*a;i(a,gt(r,e[t+0],e[t+1]))}else for(let a=0;a<t;++a)i(a,null)}getScale(e){if(!this.tilingScheme)return null;if(!M(e,ht,this.spatialReference))return l.getLogger(this.declaredClass).error("TerrainSurface.getScale(): could not project given point to tiling scheme coordinate system"),null;const t=this._rootTiles;if(u(t))for(const i of t)if(i?.containsPoint(ht)){let e=i;for(;e.children[0]&&!e.rendered;){const t=e.children[0].extent;let i=0;ht[0]>t[2]&&(i+=1),ht[1]<t[1]&&(i+=2),e=e.children[i]}return this._getLodBiasCorrectedScale(e.level)}return 1/0}getSphereElevationBounds(e,t,i,r,s){if(ht[0]=e,ht[1]=t,ht[2]=i,ht[3]=r,!R(ht,s,ht,this.tilingScheme?.spatialReference))return l.getLogger(this.declaredClass).error("TerrainSurface.getSphereElevationBounds(): could not project given point to tiling scheme coordinate system"),null;let a=1/0,n=-1/0;const o=e=>{if(e&&N(e.extent,ht))if(e.isLeaf||e.rendered)a=Math.min(a,e.elevationBounds[0]),n=Math.max(n,e.elevationBounds[1]);else for(const t of e.children)o(t)},h=this._rootTiles;if(u(h))for(const l of h)o(l);return{min:a,max:n}}getSphereScale(e,t){if(!this.tilingScheme)return null;if(!M(e,ht,this.spatialReference))return l.getLogger(this.declaredClass).error("TerrainSurface.getSphereScale(): could not project given point to tiling scheme coordinate system"),null;ht[3]=t;let i=null;const r=e=>{if(e&&N(e.extent,ht)){const t=e.children;if(t[0]&&!e.rendered)for(const e of t)r(e);else{const t=this._getLodBiasCorrectedScale(e.level);i=null==i?t:Math.min(i,t)}}},s=this._rootTiles;if(u(s))for(const a of s)r(a);return i}queryVisibleScaleRange(e,t,i,r){const s=t?this.tilingScheme.levelAtScale(t):0,a=i?this.tilingScheme.levelAtScale(i):1/0,n=this._lodBias;this._renderer.queryVisibleLevelRange(e,s+n,a+n,r)}_evaluateTransparency(){const e=this.baseOpacity,t=this.overlayManager.renderer.isEmpty,i=this._renderer.transparency,r=this._allSurfaceLayersTransparent()?t?ve.Empty:ve.TransparentWithDraped:e>=1&&!this.hasCompositeBlendMode&&!this._renderer.slicePlaneEnabled?ve.Opaque:ve.Semitransparent,s=i!==r;return s&&(this._renderer.transparency=r,this.view?._stage?.renderer.setParameters({terrainTransparency:this._renderer.transparency})),s}_updateTilingScheme(){const e=this.tilingSchemeLogic.tilingScheme;if(!(e!==this.tilingScheme))return;Ee(!!e,"tiling scheme cannot be reset to undefined"),this._isGlobal=!this.view?.state?.isLocal,this.tilingScheme&&this._removeAllTiles();const t=e?.spatialReference??A.WebMercator;this._spatialReference=t,this._isWebMercator=!!t?.isWebMercator,this._isWebMercatorOnPlateeCarree=this._isWebMercator&&q(this.view?.renderSpatialReference),this._set("tilingScheme",e),this._updateClippingExtent(),e&&(this._updateTiledLayers(),this._renderer.setTileSize(e.pixelSize),this.overlayManager.setSpatialReference(e.spatialReference),this._updateRootTiles())}_acquireTile(e,t,i,r){const s=this._tilePool.acquire();return pt[0]=e,pt[1]=t,pt[2]=i,s.init(pt,r,this),s}get updatingRootTiles(){return this._updatingRootTiles}_updateRootTiles(){const{extent:e,tilingScheme:t}=this;if(!t)return;const i=dt;let s=t.rootTilesInExtent(e,i,5*_e);if(u(this._rootTiles)){if(s.length>_e)return void l.getLogger(this.declaredClass).warn(ge);const e=this._rootTiles.map((e=>e.lij)),t=r(e,s,nt);if(this._updatingRootTiles=!0,t.removed.length>0||t.added.length>0){const e=this._rootTiles.filter((e=>!(t.removed.findIndex((t=>nt(t,e.lij)))>-1)||(this._purgeTile(e),!1)));t.added.forEach((t=>e.push(this._newRootTile(t)))),this._setRootTiles(e)}}else this._updatingRootTiles=!0,s.length>_e&&(l.getLogger(this.declaredClass).warn(me),s=t.rootTilesInExtent(e,i,_e)),this._setRootTiles(s.map((e=>this._newRootTile(e))));O(i,this._rootTilesExtent)||(this._rootTilesExtent=I(i)),this._visible=!0,this._viewChangeUpdate(),this.overlayManager.setPlacementDirty(),this.notifyChange("ready"),this._updateAllTileGeometries(),this._updatingRootTiles=!1,this.checkAllTilesWaterproofness()}_updateAllTileGeometries(){const e=this._allTiles.filter((e=>e.isLoaded&&e.intersectsClippingArea));e.forEach((e=>this._renderer.updateTileGeometryState(e))),e.forEach((e=>e.renderData.updateNeighborData())),this._updateTilesGeometries(e),this._pendingTilesToUpdate.clear()}_updateTilesGeometries(e){if(0===e.length)return;e.sort(He);const t=this.renderer;e.forEach((e=>t.updateGeometryIfNeeded(e))),e.forEach((e=>this._pendingTilesForElevationUpdateEvent.add(e)))}_shouldSplit(e){return e.shouldSplit(this._splitLimits,this._eyePosRenderSR,this.snapLevel)===Ge.SPLIT}_newRootTile(e){const t=this._acquireTile(0,e[1],e[2],null);return this._shouldSplit(t)&&t.setPendingUpdate(Ge.SPLIT),this._loadTile(t),this._markTileToUpdate(t),this._updateRootTileElevationBounds(),t}_setRootTiles(e){if(this._rootTiles=e,this._allTiles.clear(),u(e)){const t=this._iteratorPool.acquire();for(t.reset(e);!t.done;)this._allTiles.push(t.next());t.remove()}this._renderer.setRootTiles(this._rootTiles),this._updateTilesVisibility(e)}_runViewChangeUpdateIfDirty(){this._viewChangeUpdateDirty&&(this._viewChangeUpdateDirty=!1,this._viewChangeUpdate())}_viewChangeUpdate(){this.view&&!this.suspended&&this.tilingScheme&&this._visibleCached&&(this._inFrameTask?this._viewChangeUpdateDirty=!0:(this._viewChangeUpdateDirty=!1,this._updateViewDependentParameters(),this._updateTilesVisibility(this._rootTiles)))}_updateClippingStatus(e){e.updateClippingStatus(this.extent)&&e.resetPendingUpdate(Ge.GEOMETRY)&&this._updateTileGeometryState(e)}_updateTilesVisibility(e){if(p(e))return;const t=ze(e),i=this.visibleElevationBounds;let r=t?i.min:1/0,s=t?i.max:-1/0;const a=this.extent,n=this._viewProjectionMatrix;this.setTileTreeDirty();const l=this._iteratorPool.acquire();for(l.reset(e);!l.done;){const e=l.next();e.updateClippingStatus(a)&&e.resetPendingUpdate(Ge.GEOMETRY)&&this._updateTileGeometryState(e),e.setPendingUpdate(Ge.RENDERDATA),e.computeVisibility(),e.updateScreenDepth(n),e.renderData&&(r=Math.min(e.elevationBounds[0],r),s=Math.max(e.elevationBounds[1],s))}l.remove(),this._viewChanged=!0,this._allTilesDirty=!0,this._batchUpdatePendingTileGeometries(),isFinite(r)&&isFinite(s)&&(i.min!==r||i.max!==s)&&(this.visibleElevationBounds=new te(r,s))}_updateRootTileElevationBounds(){let e=1/0,t=-1/0;const i=this._rootTiles;u(i)&&i.forEach((({elevationBounds:i})=>{e=Math.min(e,i[0]),t=Math.max(t,i[1])}));const r=this.rootTileElevationBounds;r.min===e&&r.max===t||(this.rootTileElevationBounds=new te(e,t))}_updateViewDependentParameters(){const{camera:e,contentCamera:t}=this.view.state,i=Math.tan(.5*t.fovX),r=Math.tan(.5*t.fovY),s=this.tilingScheme.pixelSize,a=2**-this._lodBias*e.pixelRatio;this._splitLimits.aboveGround=e.aboveGround,this._splitLimits.fovX=i,this._splitLimits.fovY=r,this._splitLimits.relativeWidthLimit=s/e.width*this.maxTextureScale*a,this._splitLimits.relativeHeightLimit=s/e.height*this.maxTextureScale*a,this._splitLimits.maxLod=this.tilingScheme.getMaxLod(),this._splitLimits.angledSplitBias=this.view.qualitySettings.tiledSurface.angledSplitBias,this.view.state.fixedContentCamera?(p(this._splitLimits.frustum)&&(this._splitLimits.frustum=F()),G(this._splitLimits.frustum,t.frustum)):this._splitLimits.frustum=null,G(this._frustum,e.frustum),D(this._viewProjectionMatrix,t.projectionMatrix,t.viewMatrix),P(this._eyePosRenderSR,t.eye),R(e.eye,this.view.renderSpatialReference,this._eyePosSurfaceSR,this.spatialReference)}_updateRenderData(e){e.rendered&&!e.shouldLoad&&(lt(e)?this._loadChildren(e):ot(e)&&this._loadParent(e))}_updateTileGeometryState(e){e.updateVisibility();this._renderer.updateTileGeometryState(e)&&this._markTileToUpdate(e),this._usedMemory=null}_markAllTileNeighborsForGeometryUpdate(e){const t=this._pendingTilesToUpdate;e.forEachLoadedNeighbor((e=>{t.add(e)}))}_updateTileTexture(e,t){const i=e.resetPendingUpdate(Ge.TEXTURE_FADING)?Ge.TEXTURE_FADING:!!e.resetPendingUpdate(Ge.TEXTURE_NOFADING)&&Ge.TEXTURE_NOFADING;i&&(this._renderer.updateTileTexture(e,i),this._usedMemory=null,t.madeProgress())}_emitElevationUpdateEventForTiles(){const e=ct.extent;k(e),this._pendingTilesForElevationUpdateEvent.forEach((t=>B(e,t.extent,e))),this._pendingTilesForElevationUpdateEvent.clear(),ct.spatialReference=this.spatialReference,this.emit("elevation-change",ct)}runTask(e){this._handleLayerViewChanges(e),this._frameTask.processQueue(e),this._inFrameTask=!0,this._pendingUpdates=0,this._hasPendingUpdates=!1,this._updateAllTilesStatus(e),this._sortTiles(e);const t=!this.view.state.fixedContentCamera;this._mergeAndSplit(e,t),this._updateElevation(e),this._updateTextures(e),t||this._mergeAndSplit(e,!0),this._inFrameTask=!1,this._runViewChangeUpdateIfDirty(),this._batchUpdatePendingTileGeometries(),this._emitElevationUpdateEventForTiles(),e.done&&e.hasProgressed?this.requestUpdate():this.getUsedMemory(),this.notifyChange("updatingProgressValue")}_updateAllTilesStatus(e){if(!this._viewChanged||!this._rootTiles||e.done)return;this._viewChanged=!1;const t=this._iteratorPool.acquire();t.reset(this._rootTiles);const i=this.snapLevel,r=this._splitLimits,s=this._eyePosRenderSR;for(;!t.done;){const e=t.next(),a=e.shouldSplit(r,s,i);if(a!==Ge.SPLIT){if(e.resetPendingUpdate(Ge.SPLIT)&&e.updateAgentSuspension(),a===Ge.VSPLITMERGE&&e.updateAgents(le.ELEVATION),t.skipSubtree(),!e.isLeaf){e.setPendingUpdate(Ge.MERGE),e.resetPendingUpdate(Ge.SPLIT);const t=this._iteratorPool.acquire();t.resetOne(e);const i=this._viewProjectionMatrix;for(let e=t.next();!t.done;e=t.next())this._updateClippingStatus(e),e.updateVisibility(),e.updateScreenDepth(i);t.remove()}}else e.resetPendingUpdate(Ge.MERGE),e.isLeaf&&(e.setPendingUpdate(Ge.SPLIT),t.skipSubtree()),e.rendered&&e.setPendingUpdate(Ge.RENDERDATA)}t.remove(),this.requestUpdate(),(this.shortBatches||!this.oneBatchPerFrameTask)&&this._batchUpdatePendingTileGeometries(),e.madeProgress()}_sortTiles(e){e.done||this._allTilesSorted||(Xe(this._allTiles,this.view.pointsOfInterest.focus.renderLocation),this._allTilesSorted=!0,this._treeDebugger&&this._treeDebugger.update(),e.madeProgress())}_markTileToUpdate(e){Se(e.isLoaded),e.intersectsClippingArea&&(this._pendingTilesToUpdate.add(e),this._markAllTileNeighborsForGeometryUpdate(e))}_batchUpdatePendingTileGeometries(){const e=this._pendingTilesToUpdate;if(0===e.size)return;const t=Array.from(this._pendingTilesToUpdate.keys()).filter((e=>e.isLoaded&&e.intersectsClippingArea)),i=(i,r)=>{!r?.isLoaded||!r.intersectsClippingArea||r.level<i.level||e.has(r)||(e.add(r),t.push(r),r.renderData.updateNeighborData())};t.sort(He);const r=t.length;for(let s=0;s<r;++s){const r=t[s];Se(r.isLoaded),Se(r.intersectsClippingArea);const a=r.renderData;a.updateNeighborData();const n=a._dirtyEdgeResolutions,l=a.geometryState.neighborData;for(let t=0;t<4;++t)if(n&1<<t){const s=a.geometryState.neighborData.edgePeerNeighbors[t];s&&s?.level>=r.level&&s.forAllSubtreeOnSide(Le(Ie[t]),(t=>!(!t.isLoaded||!t.intersectsClippingArea)&&(Se(e.has(t)||He(r,t)<0),i(r,t),!0))),i(r,l.cornerPeerNeighbors[t]),i(r,l.cornerPeerNeighbors[(t+1)%4])}}e.clear(),this._updateTilesGeometries(t),Oe&&Ve&&this.checkAllTilesWaterproofness()}_mergeAndSplit(e,t){if(this.suspended||e.done||!this._allTilesDirty)return;this._allTilesDirty=!1,this.requestUpdate();let i=!1;const r=this.view.state.fixedContentCamera;let s=!1;for(;!e.done;){s=!0;let a=!1;const n=!this._allTiles.some((s=>{if(!i&&!r&&!s.visible)return e.done;let n=s;if(s.resetPendingUpdate(Ge.MERGE)){if(!t)return s.setPendingUpdate(Ge.MERGE),e.done;for(;n.parent?.resetPendingUpdate(Ge.MERGE);)n=n.parent;this._mergeTile(n),a=!0,e.madeProgress()}else s.resetPendingUpdate(Ge.SPLIT)&&(this._splitTile(s),a=!0,e.madeProgress());return!e.done&&n===s&&s.resetPendingUpdate(Ge.RENDERDATA)&&(this._updateRenderData(s),e.madeProgress()),e.done}));if(a&&(this._allTilesSorted=!1,this._allTilesDirty=!0),n){if(!i){i=!0;continue}if(!a)break}else this._allTilesDirty=!0}s?e.madeProgress():this._allTilesDirty=!0,!this.oneBatchPerFrameTask&&this._batchUpdatePendingTileGeometries(),this._sortTiles(e)}_updateElevation(e){e.done||(this._allTiles.some((t=>(t.resetPendingUpdate(Ge.GEOMETRY)&&(this._updateTileGeometryState(t),this._updateTileTexture(t,e),this.shortBatches&&this._batchUpdatePendingTileGeometries(),e.madeProgress()),e.done))),!this.oneBatchPerFrameTask&&this._batchUpdatePendingTileGeometries())}_updateTextures(e){e.done||this._allTiles.some((t=>(this._updateTileTexture(t,e),e.done)))}_updateClippingExtent(){this.spatialReference&&(this.updateTileOverlayParams(Ze.UPDATE),this.overlayManager.setPlacementDirty(),this._updateRootTiles())}get _lodBias(){const e=this.view.resourceController.memoryController.memoryFactor;return this.view.qualitySettings.tiledSurface.lodBias-(1-e)*Te}_getLodBiasCorrectedScale(e){const t=this.tilingScheme.levels,i=o(e-this._lodBias,0,t.length-1),r=i-Math.floor(i);return t[Math.floor(i)].scale*(1-r)+t[Math.ceil(i)].scale*r}_removeAllTiles(){u(this._rootTiles)&&(this._rootTiles.forEach((e=>this._purgeTile(e))),this._setRootTiles(null),this.notifyChange("ready")),this._allTiles.clear(),this._visible=!1}_purgeDescendantTiles(e){if(!e.children[0])return!1;let t=!1;for(let i=0;i<4;++i)t=this._purgeTile(e.children[i])||t;return e.unsetChildren(),t}_purgeTile(e){const t=this._purgeDescendantTiles(e)||e.rendered;return this._allTiles.removeUnordered(e),this._unloadTile(e),this._tilePool.release(e),t}_unloadTile(e){this._pendingTilesToUpdate.delete(e),this._pendingTilesForElevationUpdateEvent.delete(e),e.unload(this._renderer)}_splitTile(e){Ee(e.isLeaf,"tile that is already split should not be split again!");const t=e.level+1,i=2*e.lij[1],r=2*e.lij[2];e.setChildren(this._createTile(t,i,r,e),this._createTile(t,i,r+1,e),this._createTile(t,i+1,r,e),this._createTile(t,i+1,r+1,e)),e.setPendingUpdate(Ge.RENDERDATA),e.updateAgentSuspension(),this._allTiles.pushArray(e.children),this._allTilesDirty=!0,++this._performanceInfo.numSplit}_emitTileScaleChange(e,t=e.level){_t.spatialReference=this.spatialReference,_t.extent=e.extent,_t.scale=this._getLodBiasCorrectedScale(t),this.emit("scale-change",_t)}_createTile(e,t,i,r){Ee(!!r,"_createTile sanity check");const s=this._acquireTile(e,t,i,r);return s.updateClippingStatus(this.extent),s.updateScreenDepth(this._viewProjectionMatrix),this._shouldSplit(s)&&s.setPendingUpdate(Ge.SPLIT),s}get shortBatches(){return this.view.state.mode!==et.IDLE}_mergeTile(e){Ee(!e.hasPendingUpdate(Ge.SPLIT),"_mergeTile sanity check"),this._purgeDescendantTiles(e)&&(Ee(!e.renderData,"_mergeTile sanity check"),this._loadTile(e),this._markTileToUpdate(e),this._emitTileScaleChange(e),this.shortBatches&&this._batchUpdatePendingTileGeometries()),this._allTilesDirty=!0,++this._performanceInfo.numMerged}_loadChildren(e){Ee(e.rendered,"parent should be rendered"),this._unloadTile(e);const t=e.children;t.forEach((e=>this._loadTile(e))),t.forEach((e=>this._pendingTilesToUpdate.add(e))),this._markAllTileNeighborsForGeometryUpdate(e),this._emitTileScaleChange(e,e.level+1),this.shortBatches&&this._batchUpdatePendingTileGeometries()}_loadParent(e){const t=e.parent;this._unloadChildren(t),this._loadTile(t),this._markTileToUpdate(t),this._emitTileScaleChange(t,t.level),this.shortBatches&&this._batchUpdatePendingTileGeometries()}_unloadChildren(e){const t=e.children;if(t[0])for(let i=0;i<4;++i){const e=t[i];this._unloadChildren(e),this._unloadTile(e)}}_loadTile(e){e.load(),e.setPendingUpdate(Ge.RENDERDATA),this.requestUpdate(),this._allTilesDirty=!0,this.overlayManager&&this.overlayManager.hasOverlays&&this.overlayManager.setTileParameters(e)}_elevationDataArrived(e,t,i){const r=new ie(e.lij,e.extent,i);e.dataArrived(t,le.ELEVATION,r);const s=[e],a=e.level,n=this._iteratorPool.acquire();for(n.reset(s);!n.done;){const e=n.next();e.findElevationBoundsForLayer(t,a),e.computeElevationBounds()}0===a&&this._updateRootTileElevationBounds(),n.remove(),this._updateTilesVisibility(s)}_handleLayerViewChanges(e=rt){if(!this._layerViewsDirty)return;this._layerViewsDirty=!1;let t=!1;const i=new Set;let r=-1;for(const s of this.view.allLayerViews.items)if(i.add(s.uid),De(s)||Ce(s))if(this._basemapLayerViewHandles.has(s.uid)&&!Ce(s)){const e=this._layerClassFromLayerView(s),i=this._getLayerIdxByUID(e,s.uid);u(i)&&((i<r||p(r))&&(t=!0),r=i)}else this._registerTiledLayerView(s),s.layer.loaded&&(t=!0);this._basemapLayerViewHandles.forEach(((e,r)=>{i.has(r)||(this._unregisterTiledLayerView(r),t=!0)})),t&&this._updateTiledLayers(),this.hasCompositeBlendMode=this._hasCompositeBlendMode(),this._evaluateTransparency(),e.madeProgress()}_allSurfaceLayersTransparent(){let e=0===this.view.map?.ground?.opacity;for(const t of this.view.allLayerViews.items)if(Pe(t)&&!X(t.layer)&&0!==t.fullOpacity)return e=!1,e;return e}_hasCompositeBlendMode(){for(const e of this.view.allLayerViews.items)if((be(e)||Ce(e))&&Ke(Je[e.layer.blendMode]))return!0;return!1}_layerClassFromLayerView(e){return Ue(e)?le.ELEVATION:le.MAP}_registerTiledLayerView(e){const t=[];if((be(e)||Ce(e))&&t.push(y((()=>e.layer.blendMode),(()=>{this.hasCompositeBlendMode=this._hasCompositeBlendMode(),this._updateTileTextures(ne.UNFADED)}))),Ce(e))return;const i=this._layerClassFromLayerView(e);t.push(y((()=>e.suspended),(()=>this._updateTiledLayers()))),t.push(y((()=>e.fullOpacity),(()=>this._updateTileTextures(ne.UNFADED)))),t.push(y((()=>"effectiveScaleRange"in e.layer?e.layer.effectiveScaleRange:null),(()=>this._restartAllAgents(i)))),e.on("data-changed",(()=>{const t=this._getLayerIdxByUID(i,e.uid);u(t)&&this._invalidateLayerData(t,i)})),this._basemapLayerViewHandles.set(e.uid,t)}_unregisterTiledLayerView(e){const t=this._basemapLayerViewHandles.get(e);if(t){for(let e=0;e<t.length;e++)t[e].remove();this._basemapLayerViewHandles.delete(e)}}_updateTiledLayers(){if(!this.tilingScheme||this.view.suspended)return;const e=this.view.allLayerViews,t=[[],[]];let i=null;e.forEach((e=>{if(!e.layer||e.suspended||!De(e)||!e.fullExtent)return;const r=this._layerClassFromLayerView(e);if(r===le.MAP){const t=e.displayLevelRange.maxLevel;t!==1/0&&(null===i||t>i)&&(i=t)}t[r].push(e)}));for(const r of oe){const e=this._layerViews[r],i=t[r];i.reverse();const s=i.length;let a=e.length!==s;const n=new Array(s),l=new Array(e.length);this._layerIndexByUid[r].clear();for(let t=0;t<s;t++){const s=i[t].uid;this._layerIndexByUid[r].set(s,t);const o=e.indexOf(i[t]);n[t]=o,t!==o&&(a=!0),o>-1&&(l[o]=t)}if(a){const e=this._postorderIterator;for(e.reset(this._rootTiles);!e.done;)e.next().modifyLayers(l,n,r);this._layerViews[r]=i,this._restartAllAgents(r),this._updateTilesVisibility(this._rootTiles)}}this.tilingScheme.ensureMaxLod(i)&&this._viewChangeUpdate()}_restartAllAgents(e){const t=this._postorderIterator;for(t.reset(this._rootTiles);!t.done;){const i=t.next();i.restartAgents(e),e===le.ELEVATION&&i.computeElevationBounds()}this._updateRootTileElevationBounds()}layerViewByIndex(e,t){return this._layerViews[t][e]}numLayers(e){return this._layerViews[e].length}_updateTileTextures(e){this._allTiles.forAll((t=>{t.updateAgents(le.MAP),e===ne.IMMEDIATE?this.renderer.updateTileTexture(t,Ge.TEXTURE_NOFADING):t.updateRenderData(le.MAP,e)})),this._evaluateTransparency()}_invalidateLayerData(e,t){this._allTiles.forAll((i=>i.removeLayerAgent(e,t))),this._allTiles.forAll((i=>i.invalidateLayerData(e,t)))}setTileTreeDirty(){this._allTilesDirty=!0}requestRender(e=Ze.UPDATE){this.renderer.setNeedsRender(e)}requestUpdate(){1==++this._pendingUpdates&&(this._hasPendingUpdates=!0)}requestTileData(e,t,i,r){const s=this.layerViewByIndex(t,i),a=s.layer;return!a.tilemapCache||xe(s)?this._requestTileData(e,i,s,r):(++this._asyncWorkItems,a.tilemapCache.fetchAvailability(e.lij[0],e.lij[1],e.lij[2],{...r,timeout:6e3}).then((()=>--this._asyncWorkItems)).catch((t=>{throw--this._asyncWorkItems,g(r),m(t)||this._dataMissing(e,i,s,{notInTilemap:!0}),t})).then((()=>this._frameTask.schedule((()=>this._requestTileData(e,i,s,r)),r.signal))))}_requestTileData(e,t,i,r){return t===le.ELEVATION?Ue(i)?this._requestElevationTileData(e,i,r):Promise.reject():Pe(i)?this._requestMapTileData(e,i,r):Promise.reject()}_requestElevationTileData(e,t,i){++this._asyncWorkItems;const r=r=>{if(T(i))return;const s=this._layerIndexByUid[le.ELEVATION].get(t.uid);null!=s?(this._usedMemory=null,this.requestUpdate(),this._elevationDataArrived(e,s,r)):l.getLogger(this.declaredClass).warn("TerrainSurface: received data from unknown layer %d %s",le.ELEVATION,e.lij.toString())},s=i=>{m(i)||(this._dataMissing(e,le.ELEVATION,t,i),this.requestUpdate())};if(Re(t.layer))return t.layer.fetchTile(e.lij[0],e.lij[1],e.lij[2],{noDataValue:fe,signal:i.signal}).then((e=>{if(!T(i))return this._frameTask.schedule((()=>r(e)),i.signal,s);l.getLogger(this.declaredClass).warnOnce("A call to fetchTile resolved even though the request was aborted. fetchTile should not resolve if options.signal.aborted is true.")}),s).finally((()=>{--this._asyncWorkItems}));const a=t.getTileUrl(e.lij[0],e.lij[1],e.lij[2]);return this._elevationDataRequester.request(a,"binary",i).then((e=>this._lercDecoder.decode(e,{noDataValue:fe},i.signal))).then((e=>{e?r(new z(e)):s(new Error("LERC decoding failed"))}),s).finally((()=>{--this._asyncWorkItems}))}_requestMapTileData(e,t,i){++this._asyncWorkItems;const r=(r,s)=>{--this._asyncWorkItems,Ae(s),T(i)||(this._dataMissing(e,le.MAP,t,r),this.requestUpdate())},s=e=>t=>r(t,e),a=r=>this._frameTask.schedule((()=>{--this._asyncWorkItems,this.requestUpdate(),T(i)?Ae(r):this._mapTileDataArrived(e,t,r)}),i.signal,s(r)).catch(s(r)),n=(e,t=null)=>this._frameTask.schedule((()=>r(e,t)));if(xe(t)){const r=t.schemaHelper.getLevelRowColumn(e.lij);return t.fetchTile(r[0],r[1],r[2],i).then(a,n)}if(Me(t))return t.fetchTile(e.lij[0],e.lij[1],e.lij[2],i).then(a,n);if(je(t)&&Re(t.layer))return t.layer.fetchTile(e.lij[0],e.lij[1],e.lij[2],i).then((e=>{if(T(i))return l.getLogger(this.declaredClass).warnOnce("A call to fetchTile resolved even though the request was aborted. fetchTile should not resolve if options.signal.aborted is true."),void n(f());a(e)}),n);let o=t.getTileUrl(e.lij[0],e.lij[1],e.lij[2]);W(t.layer)&&t.layer.refreshTimestamp&&(o+=`${o.includes("?")?"&":"?"}_ts=${t.layer.refreshTimestamp}`);const h=t.hasMixedImageFormats?"image+type":"image";return this._mapDataRequester.request(o,h,i).then(a,n)}_mapTileDataArrived(e,t,i){const r=this._getLayerIdxByUID(le.MAP,t.uid);u(r)?e.dataArrived(r,le.MAP,i):(Ae(i),l.getLogger(this.declaredClass).warn("TerrainSurface: received data from unknown layer"))}_getLayerIdxByUID(e,t){return this._layerIndexByUid[e].get(t)}_dataMissing(e,t,i,r){const s=this._getLayerIdxByUID(t,i.uid);u(s)?e.dataMissing(s,t,r):l.getLogger(this.declaredClass).warn("TerrainSurface: received data from unknown layer")}updateTileOverlayParams(e){this._rootTiles&&this.overlayManager&&(this._allTiles.forAll((e=>{e.renderData&&this.overlayManager.setTileParameters(e)})),this._renderer.setNeedsRender(e))}get performanceInfo(){const e=this._performanceInfo;return e.numNodes=this._allTiles.length,e.numLeaves=e.numVisible=e.numRendered=e.numLoadedPerLevel.length=e.numRenderedPerLevel.length=0,this._allTiles.forAll((t=>{t.isLeaf&&e.numLeaves++;const i=t.level;t.renderData&&(e.numLoadedPerLevel[i]=(e.numLoadedPerLevel[i]||0)+1),t.visible&&(e.numVisible++,t.rendered&&(e.numRenderedPerLevel[i]=(e.numRenderedPerLevel[i]||0)+1,e.numRendered++))})),e}getUsedMemory(){return this.tilingScheme?(p(this._usedMemory)&&(this._usedMemory=this._recalculateUsedMemory()),u(this._usedMemory)?this._usedMemory:0):0}_recalculateUsedMemory(){return this.tilingScheme?this._allTiles.reduce(((e,t)=>e+t.usedMemory),0):null}getUsedMemoryForLayerView(e){let t=0;const i=this._layerClassFromLayerView(e),r=this._getLayerIdxByUID(i,e.uid);return u(r)&&this._allTiles.forAll((e=>t+=e.getUsedMemoryForLayer(i,r))),t}getTile(e){if(p(e)||p(this._rootTiles))return null;const t=e.split("/").map((e=>+e));if(0===t[0])return this._rootTiles.find((e=>e.lij[1]===t[1]&&e.lij[2]===t[2]));const i=2**t[0],r=Math.floor(t[1]/i),s=Math.floor(t[2]/i);let a;if(this._rootTiles.some((e=>e.lij[1]===r&&e.lij[2]===s&&(a=e,!0))),a){let e=1<<t[0]-1;for(;a.lij[0]<t[0];){let i=t[1]&e?2:0;if((t[2]&e)>0&&i++,!a.children[i])return null;a=a.children[i],e>>=1}return Ee(a.lij[0]===t[0]&&a.lij[1]===t[1]&&a.lij[2]===t[2],"not the right tile?"),a}return null}get renderPatchBorders(){return this._renderer.renderPatchBorders}set renderPatchBorders(e){this._renderer.renderPatchBorders=e}get visualizeNormals(){return this._renderer.visualizeNormals}set visualizeNormals(e){this._renderer.visualizeNormals=e}get renderingDisabled(){return this._renderer.renderingDisabled}set renderingDisabled(e){this._renderer.renderingDisabled=e}get test(){const e=this;return{renderer:e._renderer,lercDecoder:e._lercDecoder,forceReload:()=>{u(e._rootTiles)&&e._rootTiles.length>0&&(e._mergeTile(e._rootTiles[0]),e._viewChangeUpdate())},getTiles:()=>e._allTiles.toArray(),getRenderedTiles(){ut.clear(),e._allTiles.forAll((e=>{e.visible&&e.rendered&&ut.push(e)}));const t=ut.toArray();return Qe(e.renderOrder,t),t},lockTilingScheme(t,i){e._extentHelper.defaultTiledLayersExtent=i,e.tilingSchemeLogic.test.lockTilingScheme(t)}}}checkAllTilesWaterproofness(){if(!Ve)return;const e=this._rootTiles;if(p(e))return;const t=e=>e?.renderData?.geometryInfo?.indices?.length>0,i=(e,i)=>{t(e)&&console.error("Tile[",e.lij,"] has geometry although parent[",i.lij,"] has geom")},r=e=>{if(e.intersectsClippingArea)if(e.renderData&&!e.renderData.geometryState&&console.error("Tile[",e.lij,"] has renderData but not geometryState"),e.renderData&&!e.renderData.geometryInfo&&console.error("Tile[",e.lij,"] has renderData but not geometryInfo"),!e.renderData?.geometryInfo||(e.renderData.geometryInfo.indices?.length??0)>0||console.error("Tile[",e.lij,"] has renderData but no indices - geometryInfo: ",e.renderData.geometryInfo),t(e)){e.checkGeometryWaterproofness();for(const t of e.children)i(t,e)}else if(e.isLeaf)console.error("Tile[",e.lij,"] has no geometry and no children, from root to leaf");else for(const t of e.children)r(t)},s=e=>{const t=e.parent?.visible??!0,i=e.visible;e.computeVisibility();const r=e.visible;if(i!==r&&t&&console.error(" Tile[",e.lij,"] has out of date visibility: ",i," instead of ",r),!e.isLeaf)for(const a of e.children)s(a)};for(const a of e)r(a),s(a)}get isGlobal(){return this._isGlobal}get shading(){return this._shading}_updateShadingIfChanged(){const e=this.view?.map?.ground?.shading;e!==this._shading&&this._updateShading()}_updateShading(){const e=this.view?.map?.ground?.shading;this._shading=e,this.renderer&&(this.renderer.shading=e,this.renderer.setNeedsRender()),this._updateAllTileGeometries()}get isWebMercator(){return this._isWebMercator}get isWebMercatorOnPlateeCarree(){return this._isWebMercatorOnPlateeCarree}isEastEndWrap(e){return this.isGlobal&&e[2]===this.lijEastEnd(e[0])-1}isWestEndWrap(e){return this.isGlobal&&0===e[2]}lijEastEnd(e){return 2**(e+(u(this.spatialReference)&&this.spatialReference.isGeographic?1:0))}wrapEastWest(e){const t=this.lijEastEnd(e[0]),i=e[2];if(0<=i&&i<t)return e;if(!this.isGlobal)return null;const r=(i+(i<0?t:0))%t;return[e[0],e[1],r]}enableInternalChecks(e){ke(e)}enableWaterproofnessChecks(e){Be(e)}};e([S()],st.prototype,"_renderer",void 0),e([S()],st.prototype,"_hasPendingUpdates",void 0),e([S()],st.prototype,"_asyncWorkItems",void 0),e([S()],st.prototype,"_allTilesDirty",void 0),e([S()],st.prototype,"_allTilesSorted",void 0),e([S()],st.prototype,"_viewChanged",void 0),e([S({readOnly:!0})],st.prototype,"_watchUpdatingTracking",void 0),e([S()],st.prototype,"_frameTask",void 0),e([S({readOnly:!0})],st.prototype,"snapLevel",null),e([S({readOnly:!0})],st.prototype,"lodSnapping",null),e([S({constructOnly:!0})],st.prototype,"view",void 0),e([S()],st.prototype,"_userClippingExtent",null),e([S()],st.prototype,"_rootTilesExtent",void 0),e([S({readOnly:!0})],st.prototype,"extent",null),e([S({readOnly:!0})],st.prototype,"groundExtent",null),e([S({readOnly:!0})],st.prototype,"_tilingSchemeExtent",null),e([S({readOnly:!0})],st.prototype,"updating",null),e([S({readOnly:!0})],st.prototype,"running",null),e([S(ee)],st.prototype,"updatingProgress",void 0),e([S({readOnly:!0})],st.prototype,"updatingProgressValue",null),e([S()],st.prototype,"_maxNumUpdating",void 0),e([S()],st.prototype,"baseOpacity",null),e([S()],st.prototype,"hasCompositeBlendMode",void 0),e([S({readOnly:!0})],st.prototype,"overlayManager",void 0),e([S({readOnly:!0})],st.prototype,"viewingMode",null),e([S()],st.prototype,"maxTextureScale",void 0),e([S({readOnly:!0})],st.prototype,"ready",null),e([S({value:pe.FRONT_TO_BACK})],st.prototype,"renderOrder",null),e([S({readOnly:!0})],st.prototype,"rootTiles",null),e([S()],st.prototype,"_rootTiles",void 0),e([S({readOnly:!0})],st.prototype,"spatialReference",null),e([S({type:t})],st.prototype,"backgroundColor",null),e([S({value:!1})],st.prototype,"slicePlaneEnabled",null),e([S({readOnly:!0})],st.prototype,"tilingScheme",void 0),e([S({readOnly:!0})],st.prototype,"tilingSchemeLocked",null),e([S({readOnly:!0})],st.prototype,"tilingSchemeLogic",void 0),e([S({value:!0})],st.prototype,"velvetOverground",null),e([S()],st.prototype,"wireframe",null),e([S({value:!1})],st.prototype,"suspended",null),e([S()],st.prototype,"textureFadeDuration",null),e([S()],st.prototype,"visibleElevationBounds",void 0),e([S()],st.prototype,"rootTileElevationBounds",void 0),e([S()],st.prototype,"_layerViewsDirty",void 0),e([S()],st.prototype,"renderPatchBorders",null),e([S()],st.prototype,"visualizeNormals",null),e([S()],st.prototype,"renderingDisabled",null),st=e([L("esri.views.3d.terrain.TerrainSurface")],st);const at=st;function nt(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]}function lt(e){const t=e.children;if(!t[0])return!1;for(const i of t)if(i.shouldLoad)return!0;for(const i of t)if(lt(i))return!0;return!1}function ot(e){return e.isLeaf&&(e.parent?.shouldLoad??!1)}const ht=U(),dt=I(),pt=[0,0,0],ut=new _,ct={spatialReference:null,extent:I(),context:"ground"},_t={spatialReference:null,extent:null,scale:0};function gt(e,t,i){for(const r of e){if(!r.containsPointXY(t,i))continue;let e=r;for(;e&&!e.renderData;){const r=(t>e.extentMidX?1:0)+(i<e.extentMidY?2:0);e=e.children[r]}const s=e?.renderData?.geometryState.samplerData??null;return re(t,i,s)}return null}export{at as default};
|