Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,7 @@ Components come unstyled, so take a look at [demo.jsx](https://github.com/kaivi/
* **validate**: validator function, returning a boolean
* **shouldBlockWhileLoading**: disables editing until a new value is confirmed by parent
* **shouldRemainWhileInvalid**: remain in editing mode if validation fails
* **shouldStartEditOnDoubleClick**: start editing mode on click if `false` or on double click if `true`, default : `false`
* **defaultProps**: Additional props for idle component.

#### Customization
Expand Down
477 changes: 322 additions & 155 deletions demo/demo.js

Large diffs are not rendered by default.

50 changes: 34 additions & 16 deletions demo/demo.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ class Demo extends React.Component {
highlight: false,
showSource: false,
isDisabled: false,
editOnDoubleClick: false
};
}

Expand Down Expand Up @@ -92,6 +93,7 @@ class Demo extends React.Component {
<li>Highlight editable: <RIEToggle value={this.state.highlight} change={this.changeState} propName="highlight" textTrue="highlight" textFalse="don't" className="editable-pill" /></li>
<li><RIEToggle value={this.state.showSource} change={this.changeState} propName="showSource" textTrue="Source shown" textFalse="Source hidden" className="editable-pill"/></li>
<li><RIEToggle value={this.state.isDisabled} change={this.changeState} propName="isDisabled" textTrue="fields disabled" textFalse="fields not disabled" className="editable-pill" /></li>
<li><RIEToggle value={this.state.editOnDoubleClick} change={this.changeState} propName="editOnDoubleClick" textTrue="Edit on double click" textFalse="Edit on click" className="editable-pill" /></li>
</ul>
</div>
</div>
Expand All @@ -105,15 +107,17 @@ class Demo extends React.Component {
change={this.virtualServerCallback}
classLoading="loading"
propName="boolean"
isDisabled={this.state.isDisabled} />
isDisabled={this.state.isDisabled}
shouldStartEditOnDoubleClick={this.state.editOnDoubleClick} />
{this.state.showSource ? <Highlight className="jsx">
{`<RIEToggle
value={this.state.boolean}
className={this.state.highlight ? "editable" : ""}
change={this.virtualServerCallback}
classLoading="loading"
propName="boolean"
isDisabled={this.state.isDisabled} />`}
isDisabled={this.state.isDisabled}
shouldStartEditOnDoubleClick={this.state.editOnDoubleClick} />`}
</Highlight> : null}
<br />
<span>Custom labels: </span>
Expand All @@ -125,7 +129,8 @@ isDisabled={this.state.isDisabled} />`}
textFalse="deactivated"
classLoading="loading"
propName="boolean"
isDisabled={this.state.isDisabled} />
isDisabled={this.state.isDisabled}
shouldStartEditOnDoubleClick={this.state.editOnDoubleClick} />
{this.state.showSource ? <Highlight className="jsx">
{`<RIEToggle
value={this.state.boolean}
Expand All @@ -135,7 +140,8 @@ textTrue="activated"
textFalse="deactivated"
classLoading="loading"
propName="boolean"
isDisabled={this.state.isDisabled} />`}
isDisabled={this.state.isDisabled}
shouldStartEditOnDoubleClick={this.state.editOnDoubleClick} />`}
</Highlight> : null}
</div>
<hr />
Expand All @@ -149,7 +155,8 @@ isDisabled={this.state.isDisabled} />`}
className={this.state.highlight ? "editable" : ""}
classLoading="loading"
classInvalid="invalid"
isDisabled={this.state.isDisabled} />
isDisabled={this.state.isDisabled}
shouldStartEditOnDoubleClick={this.state.editOnDoubleClick} />
{this.state.showSource ? <Highlight className="jsx">
{`<RIEInput
value={this.state.text}
Expand All @@ -159,7 +166,8 @@ isDisabled={this.state.isDisabled} />`}
validate={this.isStringAcceptable}
classLoading="loading"
classInvalid="invalid"
isDisabled={this.state.isDisabled} />`}
isDisabled={this.state.isDisabled}
shouldStartEditOnDoubleClick={this.state.editOnDoubleClick} />`}
</Highlight> : null}
</div>
<hr />
Expand All @@ -174,7 +182,8 @@ isDisabled={this.state.isDisabled} />`}
validate={this.isStringAcceptable}
classLoading="loading"
classInvalid="invalid"
isDisabled={this.state.isDisabled} />
isDisabled={this.state.isDisabled}
shouldStartEditOnDoubleClick={this.state.editOnDoubleClick} />
{this.state.showSource ? <Highlight className="jsx">
{`<RIETextArea
value={this.state.textarea}
Expand All @@ -184,7 +193,8 @@ isDisabled={this.state.isDisabled} />`}
validate={this.isStringAcceptable}
classLoading="loading"
classInvalid="invalid"
isDisabled={this.state.isDisabled} />`}
isDisabled={this.state.isDisabled}
shouldStartEditOnDoubleClick={this.state.editOnDoubleClick} />`}
</Highlight> : null}
</div>
<hr />
Expand All @@ -198,7 +208,8 @@ isDisabled={this.state.isDisabled} />`}
className={this.state.highlight ? "editable" : ""}
classLoading="loading"
classInvalid="invalid"
isDisabled={this.state.isDisabled} />
isDisabled={this.state.isDisabled}
shouldStartEditOnDoubleClick={this.state.editOnDoubleClick} />
{this.state.showSource ? <Highlight className="jsx">
{`<RIENumber
value={this.state.number}
Expand All @@ -207,7 +218,8 @@ isDisabled={this.state.isDisabled} />`}
className={this.state.highlight ? "editable" : ""}
classLoading="loading"
classInvalid="invalid"
isDisabled={this.state.isDisabled} />`}
isDisabled={this.state.isDisabled}
shouldStartEditOnDoubleClick={this.state.editOnDoubleClick} />`}
</Highlight> : null}
<br />
<span>Only even, custom formatter: </span>
Expand All @@ -220,7 +232,8 @@ isDisabled={this.state.isDisabled} />`}
className={this.state.highlight ? "editable" : ""}
validate={this.isStringEvenNumber}
classInvalid="invalid"
isDisabled={this.state.isDisabled} />
isDisabled={this.state.isDisabled}
shouldStartEditOnDoubleClick={this.state.editOnDoubleClick} />
{this.state.showSource ? <Highlight className="jsx">
{`<RIENumber
value={this.state.number}
Expand All @@ -231,7 +244,8 @@ isDisabled={this.state.isDisabled} />`}
className={this.state.highlight ? "editable" : ""}
validate={this.isStringEvenNumber}
classInvalid="invalid"
isDisabled={this.state.isDisabled} />`}
isDisabled={this.state.isDisabled}
shouldStartEditOnDoubleClick={this.state.editOnDoubleClick} />`}
</Highlight> : null}
</div>
<hr />
Expand All @@ -247,7 +261,8 @@ isDisabled={this.state.isDisabled} />`}
placeholder="New"
className={this.state.highlight ? "tags editable" : "tags"}
classLoading="loading"
isDisabled={this.state.isDisabled} />
isDisabled={this.state.isDisabled}
shouldStartEditOnDoubleClick={this.state.editOnDoubleClick} />
{this.state.showSource ? <Highlight className="jsx">
{`<RIETags
value={this.state.tags}
Expand All @@ -258,7 +273,8 @@ isDisabled={this.state.isDisabled} />`}
placeholder="New"
className={this.state.highlight ? "tags editable" : "tags"}
classLoading="loading"
isDisabled={this.state.isDisabled} />`}
isDisabled={this.state.isDisabled}
shouldStartEditOnDoubleClick={this.state.editOnDoubleClick} />`}
</Highlight> : null}
</div>
<hr />
Expand All @@ -272,7 +288,8 @@ isDisabled={this.state.isDisabled} />`}
change={this.virtualServerCallback}
classLoading="loading"
propName="select"
isDisabled={this.state.isDisabled} />
isDisabled={this.state.isDisabled}
shouldStartEditOnDoubleClick={this.state.editOnDoubleClick} />
{this.state.showSource ? <Highlight className="jsx">
{`<RIESelect
value={this.state.select}
Expand All @@ -281,7 +298,8 @@ isDisabled={this.state.isDisabled} />`}
change={this.virtualServerCallback}
classLoading="loading"
propName="select"
isDisabled={this.state.isDisabled} />`}
isDisabled={this.state.isDisabled}
shouldStartEditOnDoubleClick={this.state.editOnDoubleClick} />`}
</Highlight> : null}
</div>
</div>
Expand Down
Loading