Facebook atvērtā koda Lexical — bibliotēka teksta redaktoru izveidei

Facebook (Krievijas Federācijā aizliegts) ir atvēris Lexical JavaScript bibliotēkas pirmkodu, kas piedāvā komponentus teksta redaktoru izveidei un uzlabotas tīmekļa formas teksta rediģēšanai vietnēm un tīmekļa lietojumprogrammām. Bibliotēkas atšķirīgās īpašības ietver vieglu integrāciju vietnēs, kompaktu dizainu, modularitāti un atbalstu cilvēkiem ar invaliditāti paredzētiem rīkiem, piemēram, ekrāna lasītājiem. Kods ir rakstīts JavaScript un tiek izplatīts saskaņā ar MIT licenci. Ir sagatavoti vairāki interaktīvi demonstrējumi, lai iepazītos ar bibliotēkas iespējām.

Bibliotēka ir paredzēta savienojuma ērtībai un nav atkarīga no ārējiem tīmekļa ietvariem, bet tajā pašā laikā nodrošina gatavus saistījumus, lai vienkāršotu integrāciju ar React ietvaru. Lai izmantotu Lexical, pietiek ar rediģēšanas elementa saistīšanu ar redaktora gadījumu, pēc kura rediģēšanas procesa laikā varat kontrolēt redaktora stāvokli, apstrādājot notikumus un komandas. Bibliotēka ļauj jebkurā laikā izsekot redaktora stāvokļus un atspoguļot izmaiņas DOM, pamatojoties uz atšķirību aprēķināšanu starp stāvokļiem.

Ir iespējams izveidot gan veidlapas vienkārša teksta ievadīšanai bez marķējuma, gan veidot saskarnes dokumentu vizuālai rediģēšanai, kas atgādina tekstapstrādes programmas un nodrošina tādas iespējas kā tabulu, attēlu un sarakstu ievietošana, manipulācijas ar fontiem un teksta izlīdzināšanas kontrole. Izstrādātājam ir iespēja ignorēt redaktora darbību vai savienot apdarinātājus, lai ieviestu netipisku funkcionalitāti.

Bibliotēkas pamata ietvars satur minimāli nepieciešamo komponentu komplektu, kura funkcionalitāte tiek paplašināta, savienojot spraudņus. Piemēram, izmantojot spraudņus, varat savienot papildu interfeisa elementus, paneļus, rīkus vizuālai rediģēšanai WYSIWYG režīmā, atzīmes formāta atbalstu vai komponentus darbam ar noteikta veida saturu, piemēram, sarakstus un tabulas. Spraudņu veidā ir pieejamas arī tādas funkcijas kā ievades automātiskā pabeigšana, ievades datu maksimālā izmēra ierobežošana, failu atvēršana un saglabāšana, piezīmju/komentāru pievienošana, balss ievade u.c.

Avots: opennet.ru

Pievieno komentāru