API-viite

Jokainen @kkwaenggwari/animated-chorus-paketin export props-arvoineen, tyyppeineen ja oletusarvoineen. Samat nimet toimivat webissä ja React Nativessa.

17 API-rajapintaa

Numerot ja teksti

MotionNumber

Luku, jonka numeropaikat pyörivät kuin rullat.

PropTyyppiOletusKuvaus
valuenumber | bigint | string—pakollinenLuku tai kutsujan muotoilema numeerinen teksti.
mode'replace' | 'roll''replace'replace siirtää jokaista muuttunutta numeropaikkaa yhden askeleen; roll kulkee välissä olevien numeroiden kautta.
direction'auto' | 'digit' | 'up' | 'down''auto'auto seuraa suuruuden muutosta, jotta muistinumerot pyörivät yhteen suuntaan; digit vertaa jokaista numeropaikkaa erikseen.
staggernumber45Millisekunnit muuttuneiden numeropaikkojen välillä ykkösistä ulospäin. Koko aalto on rajattu.
format(value) => string | Intl.NumberFormatOptionsFunktio, joka palauttaa näytettävän tekstin, tai Intl.NumberFormat-asetukset (intl-asetuksen kanssa).
intlbooleanfalseKäytä sisäänrakennettua Intl.NumberFormat-rajapintaa. Oletuksena pois päältä, jotta mikään ajoympäristö ei tarvitse Intl-rajapintaa.
localestring | string[]Lokaali intl-asetukselle.
prefixstringTeksti ennen lukua.
suffixstringTeksti luvun jälkeen.
transitionTransitionspringTiming-käyrä { duration, easing } tai jousi { tempo: 'spring', spring }. Jouset säilyttävät liikemääränsä keskeytettäessä.
onMotionComplete(value) => voidSuoritetaan arvon kanssa, kun numeropaikat ovat asettuneet.
Komponenttisivu ja työpöytä

MotionText

Muuttuessaan animoituva teksti: numeerinen teksti pyörii numeropaikoittain, muu teksti vaihtuu.

PropTyyppiOletusKuvaus
childrenReactNodeNäytettävä teksti.
aselement'span'Renderöitävä elementti.
transitionTransitionspringTiming-käyrä { duration, easing } tai jousi { tempo: 'spring', spring }. Jouset säilyttävät liikemääränsä keskeytettäessä.
onMotionComplete(text) => voidSuoritetaan, kun liike asettuu.
Komponenttisivu ja työpöytä

MotionStream

Tasaisella tahdilla näytettävä virtaava teksti, joka saa purskeet kiinni.

PropTyyppiOletusKuvaus
textstring—pakollinenTeksti tähän mennessä. Kasvava teksti näytetään tasaisella tahdilla; uudelleenkirjoitus jatkaa yhteisestä alusta.
speednumber90Perusnäyttönopeus merkkeinä sekunnissa.
catchUpnumber900Jäljessä oleva osa näytetään nopeuttamalla noin näin monessa millisekunnissa.
initialbooleanfalseNäytä asteittain myös kiinnityshetkellä olemassa oleva teksti (muuten se näkyy heti).
effect'fade' | 'none''fade'fade häivyttää uudet merkit esiin; none näyttää ne suoraan.
children(visible: string) => ReactNodeFunktio, joka saa tahdistetun tekstin, esimerkiksi Markdownin renderöimiseen.
aselement'span'Renderöitävä elementti.
onMotionComplete(text) => voidSuoritetaan aina, kun näyttäminen saavuttaa text-arvon.
Komponenttisivu ja työpöytä

Sisältö ja koko

MotionSwap

Sisältö, joka ristihäivyttyy elementin muuttaessa kokoaan.

PropTyyppiOletusKuvaus
valueunknownSisällön identiteetti; uusi arvo käynnistää vaihdon. Pelkkää tekstiä olevat lapset ovat oma identiteettinsä.
childrenReactNodeSisältö.
aselement'span'Renderöitävä elementti.
inlinebooleanas === 'span'true mitoittaa sisällön mukaan (nimikkeet, kuvakkeet); false täyttää vanhemman leveyden ja animoi korkeutta.
align'start' | 'center' | 'end''center'Missä sisältö on koon muuttuessa.
effect'fade' | 'up' | 'down' | 'scale''fade'Miten sisältö saapuu ja poistuu: up nousee, down laskee, scale kasvaa.
transitionTransitionspringTiming-käyrä { duration, easing } tai jousi { tempo: 'spring', spring }. Jouset säilyttävät liikemääränsä keskeytettäessä.
onMotionComplete(value) => voidSuoritetaan, kun liike asettuu.
Komponenttisivu ja työpöytä

MotionHeight

Animoi korkeuden sisältöön: tiivistäminen, laajentaminen ja sisällön muutokset.

PropTyyppiOletusKuvaus
openbooleantruefalse tiivistää nollakorkeuteen; sisältö pysyy kiinnitettynä mutta piilotettuna ja passiivisena.
childrenReactNodeSisältö.
aselement'div'Renderöitävä elementti.
transitionTransitionspringTiming-käyrä { duration, easing } tai jousi { tempo: 'spring', spring }. Jouset säilyttävät liikemääränsä keskeytettäessä.
onMotionComplete(open) => voidSuoritetaan open-arvon kanssa, kun korkeus on asettunut.
Komponenttisivu ja työpöytä

MotionPresence

Pitää sisällön kiinnitettynä, kun se animoituu sisään ja ulos.

PropTyyppiOletusKuvaus
presentboolean—pakollinenNäyttää tai piilottaa sisällön. Muuta tätä irrottamisen sijaan.
enterPose{ opacity: 1, translateY: 0 }Asento levossa.
exitPose{ opacity: 0, translateY: -12 }Asento, jolla sisältö poistuu ja josta se saapuu.
aselement'div'Renderöitävä elementti.
transitionTransitionspringTiming-käyrä { duration, easing } tai jousi { tempo: 'spring', spring }. Jouset säilyttävät liikemääränsä keskeytettäessä.
onExitComplete() => voidSuoritetaan, kun sisältö on poistunut ja se on poistettu.
Komponenttisivu ja työpöytä

Valinta ja sivutus

MotionHighlight

Kohteet datasta ja yksi korostus, joka siirtyy valittuun kohteeseen.

PropTyyppiOletusKuvaus
itemsreadonly T[]—pakollinenDatataulukkosi.
valuekey | null—pakollinenKorostetun kohteen key; null piilottaa korostuksen.
onValueChange(key, item) => voidSuoritetaan keyn ja kohteen kanssa, kun kohdetta painetaan.
getKey(item) => string | numberitem.idPalauttaa kohteelle yksilöllisen, vakaan keyn. Oletuksena item.id, merkkijonoille ja luvuille kohde itse.
renderItem(item, { selected, index }) => ReactNodeitem.labelPiirtää kohteen; saa tiedon, onko se valittu.
hoverbooleanfalseSeuraa osoitinta kohteiden yllä ja palaa poistuttaessa value-arvoon (web).
itemAselement'button'Kunkin kohteen elementti.
itemClassNamestringLuokka kullekin kohde-elementille; itemStyle asettaa sen inline-tyylin.
highlightClassNamestringLuokka korostukselle; highlightStyle asettaa sen inline-tyylin.
transitionTransitionspringTiming-käyrä { duration, easing } tai jousi { tempo: 'spring', spring }. Jouset säilyttävät liikemääränsä keskeytettäessä.
Komponenttisivu ja työpöytä

MotionPager

Pyyhkäistävät sivut datasta.

PropTyyppiOletusKuvaus
itemsreadonly T[]—pakollinenDatataulukkosi.
indexnumberNäytettävä sivu. Jätä pois, jotta sivuttaja pitää omansa.
defaultIndexnumber0Aloitussivu, kun index ei ole ohjattu.
onIndexChange(index, item) => voidSuoritetaan indeksin ja kohteen kanssa heti, kun pyyhkäisy, näppäin tai rullaele asettuu.
getKey(item) => string | numberitem.idPalauttaa kohteelle yksilöllisen, vakaan keyn. Oletuksena item.id, merkkijonoille ja luvuille kohde itse.
renderItem(item, { index, active }) => ReactNodeitem.labelPiirtää sivun; saa sen indeksin ja tiedon, onko se aktiivinen.
gapnumber0Sivujen välinen tila pikseleinä.
itemClassNamestringLuokka kullekin kohde-elementille; itemStyle asettaa sen inline-tyylin.
transitionTransitionspringTiming-käyrä { duration, easing } tai jousi { tempo: 'spring', spring }. Jouset säilyttävät liikemääränsä keskeytettäessä.
Komponenttisivu ja työpöytä

Listat

MotionList

Keyllinen lista datasta, joka animoi vain muuttuneen.

PropTyyppiOletusKuvaus
itemsreadonly T[]—pakollinenDatataulukkosi.
getKey(item) => string | numberitem.idPalauttaa kohteelle yksilöllisen, vakaan keyn. Oletuksena item.id, merkkijonoille ja luvuille kohde itse.
renderItem(item, index) => ReactNodeitem.labelPiirtää kohteen.
aselement'div'Renderöitävä elementti.
itemAselement'li' | 'div'Kunkin kohteen elementti.
itemClassNamestringLuokka kullekin kohde-elementille; itemStyle asettaa sen inline-tyylin.
effect'rise' | 'fade' | 'scale' | 'slide''rise'Miten kohteet saapuvat ja poistuvat.
distancenumber16rise- ja slide-liikkeen matka pikseleinä.
staggernumber40Millisekunnit saapuvien kohteiden välillä.
order'forward' | 'reverse''forward'Porrastuksen suunta.
presentbooleantruefalse animoi jokaisen kohteen ulos asettelun säilyttäen; true tuo ne takaisin.
initialbooleantrueToista saapuminen, kun lista kiinnitetään.
playKeystring | numberSen muuttaminen toistaa saapumisen uudelleen.
transitionTransitionspringSiirtymä saapuville ja poistuville kohteille.
layoutTransitionTransitionspringSiirtymä uusiin sijainteihin liukuville kohteille.
Komponenttisivu ja työpöytä

MotionReorder

Listan tai ruudukon järjestäminen vetämällä, näppäimistösiirroin.

PropTyyppiOletusKuvaus
itemsreadonly T[]Kohteet, kun ohjaat järjestystä itse.
defaultItemsreadonly T[][]Aloituskohteet, kun komponentti pitää järjestyksen.
onItemsChange(items, { reason, key }) => voidSuoritetaan uuden järjestyksen kanssa ja kertoo, tuliko se vedosta, pudotuksesta vai näppäimistöltä.
getKey(item) => string | numberitemPalauttaa kohteelle yksilöllisen keyn. Oletuksena kohde itse.
renderItem(item, { index, dragging }) => ReactNodeitem.labelPiirtää kohteen; saa sen indeksin ja tiedon, vedetäänkö sitä.
reorder'live' | 'drop''live'live siirtää muita kohteita vedon aikana; drop odottaa pudotusta.
layout'list' | 'grid''grid'list tai grid.
columnsnumber3Ruudukon sarakkeet.
gapnumber12Kohteiden välinen tila pikseleinä.
disabledbooleanfalsePoistaa vetämisen käytöstä.
durationnumber260Millisekunnit väistäville kohteille.
itemClassNamestringLuokka kullekin kohde-elementille; itemStyle asettaa sen inline-tyylin.
Komponenttisivu ja työpöytä

Eleet

MotionSwipe

Rivi, joka paljastaa toiminnot vaakapyyhkäisyllä ja voidaan pyyhkäistä pois.

PropTyyppiOletusKuvaus
childrenReactNodeRivin sisältö.
startActionsReactNodePaljastuvat rivin alussa, kun riviä vedetään loppua kohti.
endActionsReactNodePaljastuvat rivin lopussa, kun riviä vedetään alkua kohti.
dismiss'start' | 'end' | 'both'Puolet, joilla pitkä pyyhkäisy tai heitto poistaa rivin.
onDismiss(side) => voidSuoritetaan, kun rivi on liukunut ulos ja tiivistynyt; poista kohde datastasi tässä.
onOpenChange(side | null) => voidSuoritetaan avatun puolen kanssa tai null-arvolla, kun rivi sulkeutuu.
disabledbooleanfalsePoistaa pyyhkäisyn käytöstä.
contentClassNamestringLuokka rivin sisällölle; contentStyle asettaa sen inline-tyylin.
transitionTransitionspringTiming-käyrä { duration, easing } tai jousi { tempo: 'spring', spring }. Jouset säilyttävät liikemääränsä keskeytettäessä.
Komponenttisivu ja työpöytä

MotionHold

Vahvista painamalla pitkään; liian aikainen irrotus kelaa takaisin.

PropTyyppiOletusKuvaus
childrenReactNodePainikkeen nimike.
onConfirm() => voidSuoritetaan, kun pitkä painallus on valmis.
durationnumber1200Millisekunnit, joiden ajan painallusta on pidettävä.
disabledbooleanfalsePoistaa painikkeen käytöstä.
fillClassNamestringLuokka kasvavalle täytölle; fillStyle asettaa sen inline-tyylin.
Komponenttisivu ja työpöytä

Peitot

MotionSheet

Alasheet, yläsheet tai sivulaatikko pysähdyskohdilla.

PropTyyppiOletusKuvaus
openbooleanfalseNäytetäänkö sheet.
onOpenChange(open) => voidSuoritetaan false-arvolla, kun sheet suljetaan vetämällä, napauttamalla tai Escillä.
detents(number | 'content')[]['content']Lepokoot: näytön osuus, pikselit tai 'content'.
detentnumberOhjattu pysähdyskohdan indeksi.
defaultDetentnumber0Pysähdyskohdan indeksi, jota käytetään avattaessa ilman detent-arvoa.
onDetentChange(index) => voidSuoritetaan sen pysähdyskohdan indeksillä, johon sheet asettuu.
side'bottom' | 'top' | 'start' | 'end''bottom'Reuna, jolta sheet tulee.
modalbooleantrueLisää taustan, pitää kohdistuksen sisällä ja tekee sivusta passiivisen.
dismissiblebooleantrueVetäminen pienimmän pysähdyskohdan ohi, tausta ja Esc sulkevat sen.
backdropClassNamestringLuokka taustalle; backdropStyle asettaa sen inline-tyylin.
transitionTransitionspringTiming-käyrä { duration, easing } tai jousi { tempo: 'spring', spring }. Jouset säilyttävät liikemääränsä keskeytettäessä.
Komponenttisivu ja työpöytä

MotionZoom

Kuva, joka zoomautuu paikaltaan täyttämään näytön.

PropTyyppiOletusKuvaus
srcstringPaikallaan näytettävä kuva.
zoomSrcstringSuurempi kuva, joka näytetään latauduttuaan; säilytä sama kuvasuhde.
marginnumber24Zoomatun kuvan ympärille jätettävä tila pikseleinä.
disabledbooleanfalsePoistaa zoomauksen käytöstä.
onZoomChange(zoomed) => voidSuoritetaan true-arvolla zoomattaessa ja false-arvolla suljettaessa.
backdropStyleCSSPropertiesTaustan inline-tyyli.
transitionTransitionspringTiming-käyrä { duration, easing } tai jousi { tempo: 'spring', spring }. Jouset säilyttävät liikemääränsä keskeytettäessä.
Komponenttisivu ja työpöytä

Edistyminen

ProgressBar

Ohjattu edistymisviiva määrittämättömällä tilalla.

PropTyyppiOletusKuvaus
valuenumber | nullEdistyminen väliltä 0–max; null on määrittämätön.
maxnumber100Arvo, joka tarkoittaa valmista.
colorstring'currentColor'Täytön väri.
trackColorstring'#e7ece9'Raidan väri.
thicknessnumber8Viivan paksuus pikseleinä.
direction'ltr' | 'rtl''ltr'Täyttö vasemmalta (ltr) tai oikealta (rtl).
transitionTransitionspringTiming-käyrä { duration, easing } tai jousi { tempo: 'spring', spring }. Jouset säilyttävät liikemääränsä keskeytettäessä.
Komponenttisivu ja työpöytä

ProgressRing

Ohjattu edistymisrengas määrittämättömällä tilalla.

PropTyyppiOletusKuvaus
valuenumber | nullEdistyminen väliltä 0–max; null on määrittämätön.
maxnumber100Arvo, joka tarkoittaa valmista.
sizenumber96Halkaisija pikseleinä.
thicknessnumber8Renkaan paksuus pikseleinä.
colorstring'currentColor'Kaaren väri.
trackColorstring'#e7ece9'Raidan väri.
childrenReactNodeKeskellä näytettävä nimike.
transitionTransitionspringTiming-käyrä { duration, easing } tai jousi { tempo: 'spring', spring }. Jouset säilyttävät liikemääränsä keskeytettäessä.
Komponenttisivu ja työpöytä

Siirtymät

motionTokens

Valmiit arvot mille tahansa transition-propsille.

PropTyyppiOletusKuvaus
duration{ instant, fast, normal, slow }0 · 140 · 280 · 520Kestot millisekunteina.
easing{ ease, easeOut, expoOut, backOut }TransitionTiming-siirtymät kestolla ja nimetyllä käyrällä.
spring{ quick, basic, gentle, bouncy }TransitionJousisiirtymät nopeista ja jämäköistä pehmeisiin ja pomppiviin.
Siirtymät
App.jsx
// Web and React Native: the same import.
import { MotionNumber, MotionList } from '@kkwaenggwari/animated-chorus';

export function Score({ points, players }) {
  return (
    <>
      <MotionNumber value={points} />
      <MotionList items={players} renderItem={(player) => player.name} />
    </>
  );
}

Haku

Kirjoita hakeaksesi dokumentaatiosta.