diff --git a/demo/src/js/components/Demo.js b/demo/src/js/components/Demo.js
index bd4592de..45577591 100644
--- a/demo/src/js/components/Demo.js
+++ b/demo/src/js/components/Demo.js
@@ -27,6 +27,7 @@ export default class extends React.PureComponent {
onDelete: true,
displayObjectSize: true,
enableClipboard: true,
+ disableArrayIndicies: true,
indentWidth: 4,
displayDataTypes: true,
iconStyle: "triangle"
@@ -40,6 +41,7 @@ export default class extends React.PureComponent {
onDelete,
displayObjectSize,
enableClipboard,
+ disableArrayIndicies,
theme,
iconStyle,
collapsed,
@@ -107,6 +109,7 @@ export default class extends React.PureComponent {
}
displayObjectSize={displayObjectSize}
enableClipboard={enableClipboard}
+ disableArrayIndicies={disableArrayIndicies}
indentWidth={indentWidth}
displayDataTypes={displayDataTypes}
iconStyle={iconStyle}
diff --git a/index.d.ts b/index.d.ts
index 4a91dc29..690859e0 100644
--- a/index.d.ts
+++ b/index.d.ts
@@ -94,6 +94,14 @@ export interface ReactJsonViewProps {
*
* Default: false
*/
+
+ disableArrayIndicies?: boolean;
+ /**
+ * Whether or not the indicies/indexes for an array should be disable when JSON is displayed.
+ *
+ *
+ * Default: false
+ */
onEdit?: ((edit: InteractionProps) => false | any) | false;
/**
* When a callback function is passed in, add functionality is enabled.
diff --git a/src/js/components/ObjectName.js b/src/js/components/ObjectName.js
index 05124dbc..f7a646f5 100644
--- a/src/js/components/ObjectName.js
+++ b/src/js/components/ObjectName.js
@@ -3,18 +3,16 @@ import Theme from './../themes/getStyle';
export default function getObjectName(props) {
const {
- parent_type, namespace, theme, jsvRoot, name
+ parent_type, namespace, theme, jsvRoot, name, disableArrayIndicies
} = props;
const display_name = props.name ? props.name : '';
if (jsvRoot && (name === false || name === null)) {
return ();
- } else if (parent_type == 'array') {
+ } else if (parent_type == 'array' && disableArrayIndicies) {
return (
-
- {display_name}
- :
+
);
} else {
diff --git a/src/js/components/VariableEditor.js b/src/js/components/VariableEditor.js
index 60497bac..a1d6ab89 100644
--- a/src/js/components/VariableEditor.js
+++ b/src/js/components/VariableEditor.js
@@ -51,6 +51,7 @@ class VariableEditor extends React.PureComponent {
namespace,
indentWidth,
enableClipboard,
+ disableArrayIndicies,
onEdit,
onDelete,
onSelect,
@@ -58,6 +59,8 @@ class VariableEditor extends React.PureComponent {
} = this.props;
const { editMode } = this.state;
+
+
return (
- {type == 'array' ? (
-
- {variable.name}
- :
+ {type == 'array' && disableArrayIndicies? (
+
) : (
diff --git a/src/js/index.js b/src/js/index.js
index 64773a3a..41079a62 100644
--- a/src/js/index.js
+++ b/src/js/index.js
@@ -51,6 +51,7 @@ class ReactJsonView extends React.PureComponent {
enableClipboard: true,
displayObjectSize: true,
displayDataTypes: true,
+ disableArrayIndicies: true,
onEdit: false,
onDelete: false,
onAdd: false,