עיון ב־API

כל export של @kkwaenggwari/animated-chorus עם ה־props, הטיפוסים וברירות המחדל שלו. אותם שמות עובדים באינטרנט וב־React Native.

17 API

מספרים וטקסט

MotionNumber

מספר שהספרות שלו מתגלגלות כמו גלגלים.

Propטיפוסברירת מחדלתיאור
valuenumber | bigint | string—חובההמספר, או טקסט מספרי שעוצב על ידיכם.
mode'replace' | 'roll''replace'replace מזיז כל ספרה שהשתנתה צעד אחד; roll עובר דרך הספרות שבאמצע.
direction'auto' | 'digit' | 'up' | 'down''auto'auto עוקב אחרי השינוי בגודל כך שנשיאות מתגלגלות לכיוון אחד; digit משווה כל ספרה בנפרד.
staggernumber45מילישניות בין ספרות שהשתנו, מהאחדות החוצה. כל הגל מוגבל בזמן.
format(value) => string | Intl.NumberFormatOptionsפונקציה שמחזירה את הטקסט להצגה, או אפשרויות Intl.NumberFormat (עם intl).
intlbooleanfalseשימוש ב־Intl.NumberFormat המובנה. כבוי כברירת מחדל כך שאף סביבת ריצה לא צריכה Intl.
localestring | string[]Locale עבור intl.
prefixstringטקסט לפני המספר.
suffixstringטקסט אחרי המספר.
transitionTransitionspringעקומת timing { duration, easing } או קפיץ { tempo: 'spring', spring }. קפיצים שומרים על התנופה שלהם כשמפריעים להם.
onMotionComplete(value) => voidרץ עם הערך ברגע שהספרות התייצבו.
עמוד הרכיב ושולחן העבודה

MotionText

טקסט שזז כשהוא משתנה: טקסט מספרי מתגלגל ספרה אחר ספרה, טקסט אחר מתחלף.

Propטיפוסברירת מחדלתיאור
childrenReactNodeהטקסט להצגה.
aselement'span'האלמנט לרינדור.
transitionTransitionspringעקומת timing { duration, easing } או קפיץ { tempo: 'spring', spring }. קפיצים שומרים על התנופה שלהם כשמפריעים להם.
onMotionComplete(text) => voidרץ כשהתנועה מתייצבת.
עמוד הרכיב ושולחן העבודה

MotionStream

טקסט בזרימה שנחשף בקצב קבוע שמדביק פרצים.

Propטיפוסברירת מחדלתיאור
textstring—חובההטקסט עד עכשיו. טקסט שגדל נחשף בקצב קבוע; שכתוב ממשיך מההתחלה המשותפת.
speednumber90קצב חשיפה בסיסי בתווים לשנייה.
catchUpnumber900צבר נחשף בתוך כמה מילישניות כאלה בעזרת האצה.
initialbooleanfalseלחשוף גם את הטקסט שקיים בהרכבה (אחרת הוא מוצג מיד).
effect'fade' | 'none''fade'fade מציג תווים חדשים בהדרגה; none מציג אותם ישירות.
children(visible: string) => ReactNodeפונקציה שמקבלת את הטקסט בקצב המכוון, למשל כדי לרנדר Markdown.
aselement'span'האלמנט לרינדור.
onMotionComplete(text) => voidרץ בכל פעם שהחשיפה מדביקה את text.
עמוד הרכיב ושולחן העבודה

תוכן וגודל

MotionSwap

תוכן שמתחלף בדעיכה צולבת בזמן שהאלמנט משנה גודל.

Propטיפוסברירת מחדלתיאור
valueunknownזהות התוכן; ערך חדש מחליף. ילדים של טקסט פשוט הם הזהות של עצמם.
childrenReactNodeהתוכן.
aselement'span'האלמנט לרינדור.
inlinebooleanas === 'span'true מתאים את הגודל לתוכן (תוויות, אייקונים); false ממלא את רוחב ההורה ומנפיש גובה.
align'start' | 'center' | 'end''center'איפה התוכן יושב בזמן שהגודל משתנה.
effect'fade' | 'up' | 'down' | 'scale''fade'איך התוכן נכנס ויוצא: up עולה, down יורד, scale גדל.
transitionTransitionspringעקומת timing { duration, easing } או קפיץ { tempo: 'spring', spring }. קפיצים שומרים על התנופה שלהם כשמפריעים להם.
onMotionComplete(value) => voidרץ כשהתנועה מתייצבת.
עמוד הרכיב ושולחן העבודה

MotionHeight

מנפיש גובה לפי התוכן: קיפול, פתיחה ושינויי תוכן.

Propטיפוסברירת מחדלתיאור
openbooleantruefalse מקפל לגובה אפס; התוכן נשאר מורכב אבל מוסתר ולא פעיל.
childrenReactNodeהתוכן.
aselement'div'האלמנט לרינדור.
transitionTransitionspringעקומת timing { duration, easing } או קפיץ { tempo: 'spring', spring }. קפיצים שומרים על התנופה שלהם כשמפריעים להם.
onMotionComplete(open) => voidרץ עם open ברגע שהגובה התייצב.
עמוד הרכיב ושולחן העבודה

MotionPresence

שומר תוכן מורכב בזמן שהוא נכנס ויוצא בתנועה.

Propטיפוסברירת מחדלתיאור
presentboolean—חובהלהציג או להסתיר את התוכן. שנו את זה במקום להסיר.
enterPose{ opacity: 1, translateY: 0 }ה־pose במנוחה.
exitPose{ opacity: 0, translateY: -12 }ה־pose שבו התוכן יוצא וממנו הוא נכנס.
aselement'div'האלמנט לרינדור.
transitionTransitionspringעקומת timing { duration, easing } או קפיץ { tempo: 'spring', spring }. קפיצים שומרים על התנופה שלהם כשמפריעים להם.
onExitComplete() => voidרץ אחרי שהתוכן יצא והוסר.
עמוד הרכיב ושולחן העבודה

בחירה ודפדוף

MotionHighlight

פריטים מנתונים עם הדגשה אחת שנודדת לפריט הנבחר.

Propטיפוסברירת מחדלתיאור
itemsreadonly T[]—חובהמערך הנתונים שלכם.
valuekey | null—חובההמפתח של הפריט המודגש; null מסתיר את ההדגשה.
onValueChange(key, item) => voidרץ עם המפתח והפריט כשלוחצים על פריט.
getKey(item) => string | numberitem.idמחזיר מפתח ייחודי ויציב לפריט. ברירת המחדל היא item.id, או הפריט עצמו למחרוזות ולמספרים.
renderItem(item, { selected, index }) => ReactNodeitem.labelמצייר פריט; מקבל אם הוא נבחר.
hoverbooleanfalseלעקוב אחרי הסמן מעל הפריטים ולחזור ל־value ביציאה (אינטרנט).
itemAselement'button'האלמנט לכל פריט.
itemClassNamestringclass לאלמנט של כל פריט; itemStyle מגדיר את הסגנון המוטבע שלו.
highlightClassNamestringclass להדגשה; highlightStyle מגדיר את הסגנון המוטבע שלה.
transitionTransitionspringעקומת timing { duration, easing } או קפיץ { tempo: 'spring', spring }. קפיצים שומרים על התנופה שלהם כשמפריעים להם.
עמוד הרכיב ושולחן העבודה

MotionPager

עמודים להחלקה מנתונים.

Propטיפוסברירת מחדלתיאור
itemsreadonly T[]—חובהמערך הנתונים שלכם.
indexnumberהעמוד המוצג. השמיטו אותו כדי שמחליף העמודים ינהל את שלו.
defaultIndexnumber0עמוד התחלה כש־index אינו מבוקר.
onIndexChange(index, item) => voidרץ עם האינדקס והפריט ברגע שהחלקה, מקש או מחוות גלגלת מתייצבים.
getKey(item) => string | numberitem.idמחזיר מפתח ייחודי ויציב לפריט. ברירת המחדל היא item.id, או הפריט עצמו למחרוזות ולמספרים.
renderItem(item, { index, active }) => ReactNodeitem.labelמצייר עמוד; מקבל את האינדקס שלו ואם הוא פעיל.
gapnumber0מרווח בין עמודים בפיקסלים.
itemClassNamestringclass לאלמנט של כל פריט; itemStyle מגדיר את הסגנון המוטבע שלו.
transitionTransitionspringעקומת timing { duration, easing } או קפיץ { tempo: 'spring', spring }. קפיצים שומרים על התנופה שלהם כשמפריעים להם.
עמוד הרכיב ושולחן העבודה

רשימות

MotionList

רשימה עם מפתחות מנתונים שמנפישה רק את מה שהשתנה.

Propטיפוסברירת מחדלתיאור
itemsreadonly T[]—חובהמערך הנתונים שלכם.
getKey(item) => string | numberitem.idמחזיר מפתח ייחודי ויציב לפריט. ברירת המחדל היא item.id, או הפריט עצמו למחרוזות ולמספרים.
renderItem(item, index) => ReactNodeitem.labelמצייר פריט.
aselement'div'האלמנט לרינדור.
itemAselement'li' | 'div'האלמנט לכל פריט.
itemClassNamestringclass לאלמנט של כל פריט; itemStyle מגדיר את הסגנון המוטבע שלו.
effect'rise' | 'fade' | 'scale' | 'slide''rise'איך פריטים נכנסים ויוצאים.
distancenumber16מרחק התנועה של rise ו־slide בפיקסלים.
staggernumber40מילישניות בין פריטים נכנסים.
order'forward' | 'reverse''forward'כיוון הדירוג.
presentbooleantruefalse מוציא את כל הפריטים בתנועה ושומר על הפריסה; true מחזיר אותם.
initialbooleantrueלנגן את הכניסה כשהרשימה מורכבת.
playKeystring | numberשינוי שלו מנגן מחדש את הכניסה.
transitionTransitionspringמעבר לפריטים נכנסים ויוצאים.
layoutTransitionTransitionspringמעבר לפריטים שגולשים למיקומים חדשים.
עמוד הרכיב ושולחן העבודה

MotionReorder

גררו כדי לסדר מחדש רשימה או רשת, עם תזוזות מקלדת.

Propטיפוסברירת מחדלתיאור
itemsreadonly T[]הפריטים, כשאתם שולטים בסדר.
defaultItemsreadonly T[][]פריטי התחלה, כשהרכיב מחזיק את הסדר.
onItemsChange(items, { reason, key }) => voidרץ עם הסדר החדש והאם הגיע מגרירה, משחרור או מהמקלדת.
getKey(item) => string | numberitemמחזיר מפתח ייחודי לפריט. ברירת המחדל היא הפריט עצמו.
renderItem(item, { index, dragging }) => ReactNodeitem.labelמצייר פריט; מקבל את האינדקס שלו ואם גוררים אותו.
reorder'live' | 'drop''live'live מזיז פריטים אחרים בזמן גרירה; drop ממתין לשחרור.
layout'list' | 'grid''grid'list או grid.
columnsnumber3עמודות ברשת.
gapnumber12מרווח בין פריטים בפיקסלים.
disabledbooleanfalseמכבה את הגרירה.
durationnumber260מילישניות לפריטים שמפנים מקום.
itemClassNamestringclass לאלמנט של כל פריט; itemStyle מגדיר את הסגנון המוטבע שלו.
עמוד הרכיב ושולחן העבודה

מחוות

MotionSwipe

שורה שחושפת פעולות בהחלקה אופקית ואפשר להחליק אותה הצידה.

Propטיפוסברירת מחדלתיאור
childrenReactNodeתוכן השורה.
startActionsReactNodeנחשפות בתחילת השורה כשגוררים אותה לכיוון הסוף.
endActionsReactNodeנחשפות בסוף השורה כשגוררים אותה לכיוון ההתחלה.
dismiss'start' | 'end' | 'both'צדדים שבהם החלקה ארוכה או זריקה מסירה את השורה.
onDismiss(side) => voidרץ אחרי שהשורה החליקה החוצה והתקפלה; הסירו כאן את הפריט מהנתונים שלכם.
onOpenChange(side | null) => voidרץ עם הצד הפתוח, או null כשהשורה נסגרת.
disabledbooleanfalseמכבה את ההחלקה.
contentClassNamestringclass לתוכן השורה; contentStyle מגדיר את הסגנון המוטבע שלו.
transitionTransitionspringעקומת timing { duration, easing } או קפיץ { tempo: 'spring', spring }. קפיצים שומרים על התנופה שלהם כשמפריעים להם.
עמוד הרכיב ושולחן העבודה

MotionHold

לחיצה ממושכת לאישור; שחרור מוקדם מחזיר אחורה.

Propטיפוסברירת מחדלתיאור
childrenReactNodeתווית הכפתור.
onConfirm() => voidרץ ברגע שההחזקה הושלמה.
durationnumber1200מילישניות שצריך להחזיק את הלחיצה.
disabledbooleanfalseמכבה את הכפתור.
fillClassNamestringclass למילוי שגדל; fillStyle מגדיר את הסגנון המוטבע שלו.
עמוד הרכיב ושולחן העבודה

שכבות־על

MotionSheet

גיליון תחתון, גיליון עליון או מגירה צדדית עם נקודות עצירה.

Propטיפוסברירת מחדלתיאור
openbooleanfalseהאם הגיליון מוצג.
onOpenChange(open) => voidרץ עם false כשהגיליון נסגר בגרירה, בהקשה או ב־Escape.
detents(number | 'content')[]['content']גדלי מנוחה: שבר מהמסך, פיקסלים, או 'content'.
detentnumberאינדקס נקודת עצירה מבוקר.
defaultDetentnumber0אינדקס נקודת העצירה שבשימוש בפתיחה בלי detent.
onDetentChange(index) => voidרץ עם האינדקס של נקודת העצירה שבה הגיליון מתייצב.
side'bottom' | 'top' | 'start' | 'end''bottom'הקצה שממנו הגיליון מגיע.
modalbooleantrueמוסיף רקע, שומר את הפוקוס בפנים והופך את העמוד ללא פעיל.
dismissiblebooleantrueגרירה מעבר לנקודת העצירה הקטנה ביותר, הרקע ו־Escape סוגרים אותו.
backdropClassNamestringclass לרקע; backdropStyle מגדיר את הסגנון המוטבע שלו.
transitionTransitionspringעקומת timing { duration, easing } או קפיץ { tempo: 'spring', spring }. קפיצים שומרים על התנופה שלהם כשמפריעים להם.
עמוד הרכיב ושולחן העבודה

MotionZoom

תמונה שמתקרבת מהמקום שלה עד שהיא ממלאת את המסך.

Propטיפוסברירת מחדלתיאור
srcstringהתמונה שמוצגת במקומה.
zoomSrcstringתמונה גדולה יותר שמוצגת ברגע שנטענה; שמרו על אותו יחס גובה־רוחב.
marginnumber24מרווח שנשמר סביב התמונה המוגדלת בפיקסלים.
disabledbooleanfalseמכבה את הזום.
onZoomChange(zoomed) => voidרץ עם true כשמוגדל ועם false כשנסגר.
backdropStyleCSSPropertiesסגנון מוטבע לרקע.
transitionTransitionspringעקומת timing { duration, easing } או קפיץ { tempo: 'spring', spring }. קפיצים שומרים על התנופה שלהם כשמפריעים להם.
עמוד הרכיב ושולחן העבודה

התקדמות

ProgressBar

קו התקדמות מבוקר עם מצב לא מוגדר.

Propטיפוסברירת מחדלתיאור
valuenumber | nullהתקדמות מ־0 עד max; null הוא לא מוגדר.
maxnumber100הערך שמשמעותו הושלם.
colorstring'currentColor'צבע המילוי.
trackColorstring'#e7ece9'צבע המסילה.
thicknessnumber8עובי הקו בפיקסלים.
direction'ltr' | 'rtl''ltr'מילוי משמאל (ltr) או מימין (rtl).
transitionTransitionspringעקומת timing { duration, easing } או קפיץ { tempo: 'spring', spring }. קפיצים שומרים על התנופה שלהם כשמפריעים להם.
עמוד הרכיב ושולחן העבודה

ProgressRing

טבעת התקדמות מבוקרת עם מצב לא מוגדר.

Propטיפוסברירת מחדלתיאור
valuenumber | nullהתקדמות מ־0 עד max; null הוא לא מוגדר.
maxnumber100הערך שמשמעותו הושלם.
sizenumber96קוטר בפיקסלים.
thicknessnumber8עובי הטבעת בפיקסלים.
colorstring'currentColor'צבע הקשת.
trackColorstring'#e7ece9'צבע המסילה.
childrenReactNodeתווית שמוצגת באמצע.
transitionTransitionspringעקומת timing { duration, easing } או קפיץ { tempo: 'spring', spring }. קפיצים שומרים על התנופה שלהם כשמפריעים להם.
עמוד הרכיב ושולחן העבודה

מעברים

motionTokens

ערכים מוכנים לכל prop של transition.

Propטיפוסברירת מחדלתיאור
duration{ instant, fast, normal, slow }0 · 140 · 280 · 520משכים במילישניות.
easing{ ease, easeOut, expoOut, backOut }Transitionמעברי timing עם משך ועקומה בעלת שם.
spring{ quick, basic, gentle, bouncy }Transitionמעברי קפיץ, ממהירים ונוקשים ועד רכים וקופצניים.
מעברים
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} />
    </>
  );
}

חיפוש

הקלידו כדי לחפש בתיעוד.