File tree Expand file tree Collapse file tree 7 files changed +34
-13
lines changed
Expand file tree Collapse file tree 7 files changed +34
-13
lines changed Original file line number Diff line number Diff line change @@ -22,7 +22,7 @@ export type GridProps<
2222 * This component will receive an `index` and `style` prop by default.
2323 * Additionally it will receive prop values passed to `cellProps`.
2424 *
25- * ⚠️ The prop types for this component are exported as `CellComponentProps`
25+ * ℹ️ The prop types for this component are exported as `CellComponentProps`
2626 */
2727 cellComponent : (
2828 props : {
@@ -94,7 +94,7 @@ export type GridProps<
9494 *
9595 * This API has imperative methods for scrolling and a getter for the outermost DOM element.
9696 *
97- * ⚠️ The `useGridRef` and `useGridCallbackRef` hooks are exported for convenience use in TypeScript projects.
97+ * ℹ️ The `useGridRef` and `useGridCallbackRef` hooks are exported for convenience use in TypeScript projects.
9898 */
9999 gridRef ?: Ref < {
100100 get element ( ) : HTMLDivElement | null ;
Original file line number Diff line number Diff line change @@ -45,7 +45,7 @@ export type ListProps<
4545 *
4646 * This API has imperative methods for scrolling and a getter for the outermost DOM element.
4747 *
48- * ⚠️ The `useListRef` and `useListCallbackRef` hooks are exported for convenience use in TypeScript projects.
48+ * ℹ️ The `useListRef` and `useListCallbackRef` hooks are exported for convenience use in TypeScript projects.
4949 */
5050 listRef ?: Ref < {
5151 get element ( ) : HTMLDivElement | null ;
@@ -86,7 +86,7 @@ export type ListProps<
8686 * This component will receive an `index` and `style` prop by default.
8787 * Additionally it will receive prop values passed to `rowProps`.
8888 *
89- * ⚠️ The prop types for this component are exported as `RowComponentProps`
89+ * ℹ️ The prop types for this component are exported as `RowComponentProps`
9090 */
9191 rowComponent : (
9292 props : {
Original file line number Diff line number Diff line change 2929 "cellComponent" : {
3030 "description" : " React component responsible for rendering a cell.<br/><br/>This component will receive an <code>index</code> and <code>style</code> prop by default.\n Additionally it will receive prop values passed to <code>cellProps</code>." ,
3131 "html": "<div style=\"min-height: 1rem; padding-left: 2ch; text-indent: -2ch;\"><span class=\"tok-labelName\"><span class=\"tok-propertyName\">cellComponent</span></span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-punctuation\">(</span><span class=\"tok-variableName tok-definition\">props</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-punctuation\">{</span><span class=\"\"> </span><span class=\"tok-propertyName tok-definition\">ariaAttributes</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-punctuation\">{</span><span class=\"\"> </span><span class=\"tok-string\">\"aria-colindex\"</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-typeName\">number</span><span class=\"tok-punctuation\">;</span><span class=\"\"> </span><span class=\"tok-propertyName tok-definition\">role</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-string\">\"gridcell\"</span><span class=\"tok-punctuation\">;</span><span class=\"\"> </span><span class=\"tok-punctuation\">}</span><span class=\"tok-punctuation\">;</span><span class=\"\"> </span><span class=\"tok-propertyName tok-definition\">columnIndex</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-typeName\">number</span><span class=\"tok-punctuation\">;</span><span class=\"\"> </span><span class=\"tok-propertyName tok-definition\">rowIndex</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-typeName\">number</span><span class=\"tok-punctuation\">;</span><span class=\"\"> </span><span class=\"tok-propertyName tok-definition\">style</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-typeName\">CSSProperties</span><span class=\"tok-punctuation\">;</span><span class=\"\"> </span><span class=\"tok-punctuation\">}</span><span class=\"\"> </span><span class=\"tok-operator\">&</span><span class=\"\"> </span><span class=\"tok-typeName\">CellProps</span><span class=\"tok-punctuation\">)</span><span class=\"\"> </span><span class=\"tok-punctuation\">=></span><span class=\"\"> </span><span class=\"tok-variableName\">ReactNode</span></div>",
32+ "info" : " The prop types for this component are exported as <code>CellComponentProps</code>" ,
3233 "name" : " cellComponent" ,
33- "required" : true ,
34- "warning" : " The prop types for this component are exported as <code>CellComponentProps</code>"
34+ "required" : true
3535 },
3636 "cellProps" : {
3737 "description" : " Additional props to be passed to the cell-rendering component.\n Grid will automatically re-render cells when values in this object change." ,
6767 "gridRef" : {
6868 "description" : " Ref used to interact with this component's imperative API.<br/><br/>This API has imperative methods for scrolling and a getter for the outermost DOM element." ,
6969 "html": "<div style=\"min-height: 1rem; padding-left: 2ch; text-indent: -2ch;\"><span class=\"tok-variableName\"><span class=\"tok-propertyName\">gridRef</span></span><span class=\"tok-operator\">?</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-variableName\">Ref</span><span class=\"\"><</span><span class=\"tok-punctuation\">{</span><span class=\"\"> </span><span class=\"tok-keyword\">readonly</span><span class=\"\"> </span><span class=\"tok-propertyName tok-definition\">element</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-typeName\">HTMLDivElement</span><span class=\"\"> </span><span class=\"tok-operator\">|</span><span class=\"\"> </span><span class=\"tok-keyword\">null</span><span class=\"tok-punctuation\">;</span><span class=\"\"> </span><span class=\"tok-propertyName tok-definition\">scrollToCell</span><span class=\"tok-punctuation\">(</span><span class=\"tok-variableName tok-definition\">config</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-punctuation\">{</span><span class=\"\"> </span><span class=\"tok-propertyName tok-definition\">behavior</span><span class=\"\">?</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-string\">\"auto\"</span><span class=\"\"> </span><span class=\"tok-operator\">|</span><span class=\"\"> </span><span class=\"tok-string\">\"instant\"</span><span class=\"\"> </span><span class=\"tok-operator\">|</span><span class=\"\"> </span><span class=\"tok-string\">\"smooth\"</span><span class=\"\"> </span><span class=\"tok-operator\">|</span><span class=\"\"> </span><span class=\"tok-typeName\">undefined</span><span class=\"tok-punctuation\">;</span><span class=\"\"> </span><span class=\"tok-propertyName tok-definition\">columnAlign</span><span class=\"\">?</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-string\">\"auto\"</span><span class=\"\"> </span><span class=\"tok-operator\">|</span><span class=\"\"> </span><span class=\"tok-string\">\"center\"</span><span class=\"\"> </span><span class=\"tok-operator\">|</span><span class=\"\"> </span><span class=\"tok-string\">\"end\"</span><span class=\"\"> </span><span class=\"tok-operator\">|</span><span class=\"\"> </span><span class=\"tok-string\">\"smart\"</span><span class=\"\"> </span><span class=\"tok-operator\">|</span><span class=\"\"> </span><span class=\"tok-string\">\"start\"</span><span class=\"\"> </span><span class=\"tok-operator\">|</span><span class=\"\"> </span><span class=\"tok-typeName\">undefined</span><span class=\"tok-punctuation\">;</span><span class=\"\"> </span><span class=\"tok-propertyName tok-definition\">columnIndex</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-typeName\">number</span><span class=\"tok-punctuation\">;</span><span class=\"\"> </span><span class=\"tok-propertyName tok-definition\">rowAlign</span><span class=\"\">?</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-string\">\"auto\"</span><span class=\"\"> </span><span class=\"tok-operator\">|</span><span class=\"\"> </span><span class=\"tok-operator\">.</span><span class=\"tok-operator\">.</span><span class=\"tok-operator\">.</span><span class=\"\"> </span><span class=\"tok-number\">4</span><span class=\"\"> </span><span class=\"tok-typeName\">more</span><span class=\"\"> </span><span class=\"tok-operator\">.</span><span class=\"tok-operator\">.</span><span class=\"tok-operator\">.</span><span class=\"\"> </span><span class=\"tok-operator\">|</span><span class=\"\"> </span><span class=\"tok-typeName\">undefined</span><span class=\"tok-punctuation\">;</span><span class=\"\"> </span><span class=\"tok-propertyName tok-definition\">rowIndex</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-typeName\">number</span><span class=\"tok-punctuation\">;</span><span class=\"\"> </span><span class=\"tok-punctuation\">}</span><span class=\"tok-punctuation\">)</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-keyword\">void</span><span class=\"tok-punctuation\">;</span><span class=\"\"> </span><span class=\"tok-propertyName tok-definition\">scrollToColumn</span><span class=\"tok-punctuation\">(</span><span class=\"tok-variableName tok-definition\">config</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-operator\">.</span><span class=\"tok-operator\">.</span><span class=\"tok-operator\">.</span></div>",
70+ "info" : " The <code>useGridRef</code> and <code>useGridCallbackRef</code> hooks are exported for convenience use in TypeScript projects." ,
7071 "name" : " gridRef" ,
71- "required" : false ,
72- "warning" : " The <code>useGridRef</code> and <code>useGridCallbackRef</code> hooks are exported for convenience use in TypeScript projects."
72+ "required" : false
7373 },
7474 "onCellsRendered" : {
7575 "description" : " Callback notified when the range of rendered cells changes." ,
Original file line number Diff line number Diff line change 2929 "listRef" : {
3030 "description" : " Ref used to interact with this component's imperative API.<br/><br/>This API has imperative methods for scrolling and a getter for the outermost DOM element." ,
3131 "html": "<div style=\"min-height: 1rem; padding-left: 2ch; text-indent: -2ch;\"><span class=\"tok-variableName\"><span class=\"tok-propertyName\">listRef</span></span><span class=\"tok-operator\">?</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-variableName\">Ref</span><span class=\"\"><</span><span class=\"tok-punctuation\">{</span><span class=\"\"> </span><span class=\"tok-keyword\">readonly</span><span class=\"\"> </span><span class=\"tok-propertyName tok-definition\">element</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-typeName\">HTMLDivElement</span><span class=\"\"> </span><span class=\"tok-operator\">|</span><span class=\"\"> </span><span class=\"tok-keyword\">null</span><span class=\"tok-punctuation\">;</span><span class=\"\"> </span><span class=\"tok-propertyName tok-definition\">scrollToRow</span><span class=\"tok-punctuation\">(</span><span class=\"tok-variableName tok-definition\">config</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-punctuation\">{</span><span class=\"\"> </span><span class=\"tok-propertyName tok-definition\">align</span><span class=\"\">?</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-string\">\"auto\"</span><span class=\"\"> </span><span class=\"tok-operator\">|</span><span class=\"\"> </span><span class=\"tok-string\">\"center\"</span><span class=\"\"> </span><span class=\"tok-operator\">|</span><span class=\"\"> </span><span class=\"tok-string\">\"end\"</span><span class=\"\"> </span><span class=\"tok-operator\">|</span><span class=\"\"> </span><span class=\"tok-string\">\"smart\"</span><span class=\"\"> </span><span class=\"tok-operator\">|</span><span class=\"\"> </span><span class=\"tok-string\">\"start\"</span><span class=\"\"> </span><span class=\"tok-operator\">|</span><span class=\"\"> </span><span class=\"tok-typeName\">undefined</span><span class=\"tok-punctuation\">;</span><span class=\"\"> </span><span class=\"tok-propertyName tok-definition\">behavior</span><span class=\"\">?</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-string\">\"auto\"</span><span class=\"\"> </span><span class=\"tok-operator\">|</span><span class=\"\"> </span><span class=\"tok-string\">\"instant\"</span><span class=\"\"> </span><span class=\"tok-operator\">|</span><span class=\"\"> </span><span class=\"tok-string\">\"smooth\"</span><span class=\"\"> </span><span class=\"tok-operator\">|</span><span class=\"\"> </span><span class=\"tok-typeName\">undefined</span><span class=\"tok-punctuation\">;</span><span class=\"\"> </span><span class=\"tok-propertyName tok-definition\">index</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-typeName\">number</span><span class=\"tok-punctuation\">;</span><span class=\"\"> </span><span class=\"tok-punctuation\">}</span><span class=\"tok-punctuation\">)</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-keyword\">void</span><span class=\"tok-punctuation\">;</span><span class=\"\"> </span><span class=\"tok-punctuation\">}</span><span class=\"\">> </span><span class=\"tok-operator\">|</span><span class=\"\"> </span><span class=\"tok-variableName\">undefined</span></div>",
32+ "info" : " The <code>useListRef</code> and <code>useListCallbackRef</code> hooks are exported for convenience use in TypeScript projects." ,
3233 "name" : " listRef" ,
33- "required" : false ,
34- "warning" : " The <code>useListRef</code> and <code>useListCallbackRef</code> hooks are exported for convenience use in TypeScript projects."
34+ "required" : false
3535 },
3636 "onResize" : {
3737 "description" : " Callback notified when the List's outermost HTMLElement resizes.\n This may be used to (re)scroll a row into view." ,
5454 "rowComponent" : {
5555 "description" : " React component responsible for rendering a row.<br/><br/>This component will receive an <code>index</code> and <code>style</code> prop by default.\n Additionally it will receive prop values passed to <code>rowProps</code>." ,
5656 "html": "<div style=\"min-height: 1rem; padding-left: 2ch; text-indent: -2ch;\"><span class=\"tok-labelName\"><span class=\"tok-propertyName\">rowComponent</span></span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-punctuation\">(</span><span class=\"tok-variableName tok-definition\">props</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-punctuation\">{</span><span class=\"\"> </span><span class=\"tok-propertyName tok-definition\">ariaAttributes</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-punctuation\">{</span><span class=\"\"> </span><span class=\"tok-string\">\"aria-posinset\"</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-typeName\">number</span><span class=\"tok-punctuation\">;</span><span class=\"\"> </span><span class=\"tok-string\">\"aria-setsize\"</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-typeName\">number</span><span class=\"tok-punctuation\">;</span><span class=\"\"> </span><span class=\"tok-propertyName tok-definition\">role</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-string\">\"listitem\"</span><span class=\"tok-punctuation\">;</span><span class=\"\"> </span><span class=\"tok-punctuation\">}</span><span class=\"tok-punctuation\">;</span><span class=\"\"> </span><span class=\"tok-propertyName tok-definition\">index</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-typeName\">number</span><span class=\"tok-punctuation\">;</span><span class=\"\"> </span><span class=\"tok-propertyName tok-definition\">style</span><span class=\"tok-punctuation\">:</span><span class=\"\"> </span><span class=\"tok-typeName\">CSSProperties</span><span class=\"tok-punctuation\">;</span><span class=\"\"> </span><span class=\"tok-punctuation\">}</span><span class=\"\"> </span><span class=\"tok-operator\">&</span><span class=\"\"> </span><span class=\"tok-typeName\">RowProps</span><span class=\"tok-punctuation\">)</span><span class=\"\"> </span><span class=\"tok-punctuation\">=></span><span class=\"\"> </span><span class=\"tok-variableName\">ReactNode</span></div>",
57+ "info" : " The prop types for this component are exported as <code>RowComponentProps</code>" ,
5758 "name" : " rowComponent" ,
58- "required" : true ,
59- "warning" : " The prop types for this component are exported as <code>RowComponentProps</code>"
59+ "required" : true
6060 },
6161 "rowCount" : {
6262 "description" : " Number of items to be rendered in the list." ,
Original file line number Diff line number Diff line change @@ -84,11 +84,26 @@ async function run() {
8484 `<span class="tok-propertyName">${ name } </span>`
8585 ) ;
8686
87- const [ description , warning = "" ] = prop . description . split ( "⚠️" ) ;
87+ let description = "" ;
88+ let info = "" ;
89+ let warning = "" ;
90+
91+ if ( prop . description . includes ( "⚠️" ) ) {
92+ const pieces = prop . description . split ( "⚠️" ) ;
93+ description = pieces [ 0 ] ;
94+ warning = pieces [ 1 ] ?? "" ;
95+ } else if ( prop . description . includes ( "ℹ️" ) ) {
96+ const pieces = prop . description . split ( "ℹ️" ) ;
97+ description = pieces [ 0 ] ;
98+ info = pieces [ 1 ] ?? "" ;
99+ } else {
100+ description = prop . description ;
101+ }
88102
89103 componentMetadata . props [ name ] = {
90104 description : formatDescriptionText ( description . trim ( ) ) ,
91105 html,
106+ info : info ? formatDescriptionText ( info . trim ( ) ) : undefined ,
92107 name,
93108 required : prop . required ,
94109 warning : warning ? formatDescriptionText ( warning . trim ( ) ) : undefined
Original file line number Diff line number Diff line change @@ -31,6 +31,11 @@ export function ComponentPropsSection({
3131 __html : prop . description
3232 } }
3333 > </ div >
34+ { prop . info && (
35+ < Callout className = "mt-4" html intent = "primary" minimal >
36+ { prop . info }
37+ </ Callout >
38+ ) }
3439 { prop . warning && (
3540 < Callout className = "mt-4" html intent = "warning" minimal >
3641 { prop . warning }
Original file line number Diff line number Diff line change @@ -3,6 +3,7 @@ export type Intent = "danger" | "none" | "primary" | "success" | "warning";
33export type ComponentPropMetadata = {
44 description : string ;
55 html : string ;
6+ info ?: string ;
67 name : string ;
78 required : boolean ;
89 warning ?: string ;
You can’t perform that action at this time.
0 commit comments