@activecollab/components 1.0.360 → 1.0.361
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/EditableText/EditableText.js +4 -3
- package/dist/cjs/components/EditableText/EditableText.js.map +1 -1
- package/dist/esm/components/EditableText/EditableText.d.ts +2 -0
- package/dist/esm/components/EditableText/EditableText.d.ts.map +1 -1
- package/dist/esm/components/EditableText/EditableText.js +4 -3
- package/dist/esm/components/EditableText/EditableText.js.map +1 -1
- package/dist/index.js +4 -3
- package/dist/index.js.map +1 -1
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +1 -1
- package/package.json +1 -1
|
@@ -8,7 +8,7 @@ exports.EditableText = void 0;
|
|
|
8
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
9
|
var _EditableContent = require("../EditableContent/EditableContent");
|
|
10
10
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
11
|
-
var _excluded = ["onSave", "onCancel", "value", "inputProps"];
|
|
11
|
+
var _excluded = ["onSave", "onCancel", "value", "inputProps", "allowEmptyString"];
|
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
13
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
14
14
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -29,6 +29,7 @@ var EditableText = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
|
29
29
|
onCancel = _ref.onCancel,
|
|
30
30
|
value = _ref.value,
|
|
31
31
|
inputProps = _ref.inputProps,
|
|
32
|
+
allowEmptyString = _ref.allowEmptyString,
|
|
32
33
|
props = _objectWithoutProperties(_ref, _excluded);
|
|
33
34
|
var _useState = (0, _react.useState)(value),
|
|
34
35
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -56,10 +57,10 @@ var EditableText = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
|
56
57
|
setCurrentValue(e.target.value);
|
|
57
58
|
typeof onSave === "function" && onSave(e);
|
|
58
59
|
} else {
|
|
59
|
-
setCurrentValue(prevValue);
|
|
60
|
+
!allowEmptyString && setCurrentValue(prevValue);
|
|
60
61
|
}
|
|
61
62
|
}
|
|
62
|
-
}, [onSave, prevValue]);
|
|
63
|
+
}, [allowEmptyString, onSave, prevValue]);
|
|
63
64
|
var handleKeyDown = (0, _react.useCallback)(function (e) {
|
|
64
65
|
if (e.key === "Enter") {
|
|
65
66
|
e.target.blur();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EditableText.js","names":["EditableText","forwardRef","ref","onSave","onCancel","value","inputProps","props","useState","currentValue","setCurrentValue","prevValue","setPrevValue","escapeRef","useRef","useEffect","handleBlur","useCallback","e","current","target","trim","length","handleKeyDown","key","blur","handleChange","onBlur","onKeyDown","onChange","type","className","classNames","displayName"],"sources":["../../../../src/components/EditableText/EditableText.tsx"],"sourcesContent":["import React, {\n ChangeEvent,\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport {\n EditableContent,\n EditableContentInterface,\n} from \"../EditableContent/EditableContent\";\nimport classNames from \"classnames\";\n\nexport interface EditableTextInterface extends EditableContentInterface {\n /** Value to display. */\n value: string;\n /** Optional callback called on enter, click outside and tab. */\n onSave?: (e: ChangeEvent<HTMLInputElement>) => void;\n /** Optional callback called on input reset. */\n onCancel?: () => void;\n}\n\nexport const EditableText = forwardRef<HTMLDivElement, EditableTextInterface>(\n ({ onSave, onCancel, value, inputProps, ...props }
|
|
1
|
+
{"version":3,"file":"EditableText.js","names":["EditableText","forwardRef","ref","onSave","onCancel","value","inputProps","allowEmptyString","props","useState","currentValue","setCurrentValue","prevValue","setPrevValue","escapeRef","useRef","useEffect","handleBlur","useCallback","e","current","target","trim","length","handleKeyDown","key","blur","handleChange","onBlur","onKeyDown","onChange","type","className","classNames","displayName"],"sources":["../../../../src/components/EditableText/EditableText.tsx"],"sourcesContent":["import React, {\n ChangeEvent,\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport {\n EditableContent,\n EditableContentInterface,\n} from \"../EditableContent/EditableContent\";\nimport classNames from \"classnames\";\n\nexport interface EditableTextInterface extends EditableContentInterface {\n /** Value to display. */\n value: string;\n /** Optional callback called on enter, click outside and tab. */\n onSave?: (e: ChangeEvent<HTMLInputElement>) => void;\n /** Optional callback called on input reset. */\n onCancel?: () => void;\n /** If true, setting empty value will save it, instead of revert to previous value. */\n allowEmptyString?: boolean;\n}\n\nexport const EditableText = forwardRef<HTMLDivElement, EditableTextInterface>(\n (\n { onSave, onCancel, value, inputProps, allowEmptyString, ...props },\n ref\n ) => {\n const [currentValue, setCurrentValue] = useState(value);\n const [prevValue, setPrevValue] = useState(value);\n const escapeRef = useRef(false);\n\n useEffect(() => {\n if (currentValue !== value) {\n setCurrentValue(value);\n setPrevValue(value);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value]);\n\n const handleBlur = useCallback(\n (e) => {\n if (escapeRef.current) {\n setCurrentValue(prevValue);\n escapeRef.current = false;\n } else {\n if (\n e.target.value.trim().length > 0 &&\n prevValue !== e.target.value\n ) {\n setPrevValue(e.target.value);\n setCurrentValue(e.target.value);\n typeof onSave === \"function\" && onSave(e);\n } else {\n !allowEmptyString && setCurrentValue(prevValue);\n }\n }\n },\n [allowEmptyString, onSave, prevValue]\n );\n\n const handleKeyDown = useCallback(\n (e) => {\n if (e.key === \"Enter\") {\n e.target.blur();\n }\n if (e.key === \"Escape\") {\n escapeRef.current = true;\n e.target.blur();\n typeof onCancel === \"function\" && onCancel();\n }\n },\n [onCancel]\n );\n\n const handleChange = useCallback((e) => {\n setCurrentValue(e.target.value);\n }, []);\n\n return (\n <EditableContent\n {...props}\n ref={ref}\n inputProps={{\n ...inputProps,\n value: currentValue,\n onBlur: handleBlur,\n onKeyDown: handleKeyDown,\n onChange: handleChange,\n type: \"text\",\n className: classNames(\"c-input\", inputProps?.className),\n }}\n />\n );\n }\n);\n\nEditableText.displayName = \"EditableText\";\n"],"mappings":"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"}
|
|
@@ -7,6 +7,8 @@ export interface EditableTextInterface extends EditableContentInterface {
|
|
|
7
7
|
onSave?: (e: ChangeEvent<HTMLInputElement>) => void;
|
|
8
8
|
/** Optional callback called on input reset. */
|
|
9
9
|
onCancel?: () => void;
|
|
10
|
+
/** If true, setting empty value will save it, instead of revert to previous value. */
|
|
11
|
+
allowEmptyString?: boolean;
|
|
10
12
|
}
|
|
11
13
|
export declare const EditableText: React.ForwardRefExoticComponent<EditableTextInterface & React.RefAttributes<HTMLDivElement>>;
|
|
12
14
|
//# sourceMappingURL=EditableText.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EditableText.d.ts","sourceRoot":"","sources":["../../../../src/components/EditableText/EditableText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,WAAW,EAMZ,MAAM,OAAO,CAAC;AACf,OAAO,EAEL,wBAAwB,EACzB,MAAM,oCAAoC,CAAC;AAG5C,MAAM,WAAW,qBAAsB,SAAQ,wBAAwB;IACrE,wBAAwB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,gEAAgE;IAChE,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IACpD,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"EditableText.d.ts","sourceRoot":"","sources":["../../../../src/components/EditableText/EditableText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,WAAW,EAMZ,MAAM,OAAO,CAAC;AACf,OAAO,EAEL,wBAAwB,EACzB,MAAM,oCAAoC,CAAC;AAG5C,MAAM,WAAW,qBAAsB,SAAQ,wBAAwB;IACrE,wBAAwB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,gEAAgE;IAChE,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IACpD,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,sFAAsF;IACtF,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,eAAO,MAAM,YAAY,8FAwExB,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
|
-
var _excluded = ["onSave", "onCancel", "value", "inputProps"];
|
|
3
|
+
var _excluded = ["onSave", "onCancel", "value", "inputProps", "allowEmptyString"];
|
|
4
4
|
import React, { forwardRef, useCallback, useEffect, useRef, useState } from "react";
|
|
5
5
|
import { EditableContent } from "../EditableContent/EditableContent";
|
|
6
6
|
import classNames from "classnames";
|
|
@@ -9,6 +9,7 @@ export var EditableText = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
9
9
|
onCancel = _ref.onCancel,
|
|
10
10
|
value = _ref.value,
|
|
11
11
|
inputProps = _ref.inputProps,
|
|
12
|
+
allowEmptyString = _ref.allowEmptyString,
|
|
12
13
|
props = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
13
14
|
var _useState = useState(value),
|
|
14
15
|
currentValue = _useState[0],
|
|
@@ -34,10 +35,10 @@ export var EditableText = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
34
35
|
setCurrentValue(e.target.value);
|
|
35
36
|
typeof onSave === "function" && onSave(e);
|
|
36
37
|
} else {
|
|
37
|
-
setCurrentValue(prevValue);
|
|
38
|
+
!allowEmptyString && setCurrentValue(prevValue);
|
|
38
39
|
}
|
|
39
40
|
}
|
|
40
|
-
}, [onSave, prevValue]);
|
|
41
|
+
}, [allowEmptyString, onSave, prevValue]);
|
|
41
42
|
var handleKeyDown = useCallback(function (e) {
|
|
42
43
|
if (e.key === "Enter") {
|
|
43
44
|
e.target.blur();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EditableText.js","names":["React","forwardRef","useCallback","useEffect","useRef","useState","EditableContent","classNames","EditableText","ref","onSave","onCancel","value","inputProps","props","currentValue","setCurrentValue","prevValue","setPrevValue","escapeRef","handleBlur","e","current","target","trim","length","handleKeyDown","key","blur","handleChange","onBlur","onKeyDown","onChange","type","className","displayName"],"sources":["../../../../src/components/EditableText/EditableText.tsx"],"sourcesContent":["import React, {\n ChangeEvent,\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport {\n EditableContent,\n EditableContentInterface,\n} from \"../EditableContent/EditableContent\";\nimport classNames from \"classnames\";\n\nexport interface EditableTextInterface extends EditableContentInterface {\n /** Value to display. */\n value: string;\n /** Optional callback called on enter, click outside and tab. */\n onSave?: (e: ChangeEvent<HTMLInputElement>) => void;\n /** Optional callback called on input reset. */\n onCancel?: () => void;\n}\n\nexport const EditableText = forwardRef<HTMLDivElement, EditableTextInterface>(\n ({ onSave, onCancel, value, inputProps, ...props }
|
|
1
|
+
{"version":3,"file":"EditableText.js","names":["React","forwardRef","useCallback","useEffect","useRef","useState","EditableContent","classNames","EditableText","ref","onSave","onCancel","value","inputProps","allowEmptyString","props","currentValue","setCurrentValue","prevValue","setPrevValue","escapeRef","handleBlur","e","current","target","trim","length","handleKeyDown","key","blur","handleChange","onBlur","onKeyDown","onChange","type","className","displayName"],"sources":["../../../../src/components/EditableText/EditableText.tsx"],"sourcesContent":["import React, {\n ChangeEvent,\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport {\n EditableContent,\n EditableContentInterface,\n} from \"../EditableContent/EditableContent\";\nimport classNames from \"classnames\";\n\nexport interface EditableTextInterface extends EditableContentInterface {\n /** Value to display. */\n value: string;\n /** Optional callback called on enter, click outside and tab. */\n onSave?: (e: ChangeEvent<HTMLInputElement>) => void;\n /** Optional callback called on input reset. */\n onCancel?: () => void;\n /** If true, setting empty value will save it, instead of revert to previous value. */\n allowEmptyString?: boolean;\n}\n\nexport const EditableText = forwardRef<HTMLDivElement, EditableTextInterface>(\n (\n { onSave, onCancel, value, inputProps, allowEmptyString, ...props },\n ref\n ) => {\n const [currentValue, setCurrentValue] = useState(value);\n const [prevValue, setPrevValue] = useState(value);\n const escapeRef = useRef(false);\n\n useEffect(() => {\n if (currentValue !== value) {\n setCurrentValue(value);\n setPrevValue(value);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value]);\n\n const handleBlur = useCallback(\n (e) => {\n if (escapeRef.current) {\n setCurrentValue(prevValue);\n escapeRef.current = false;\n } else {\n if (\n e.target.value.trim().length > 0 &&\n prevValue !== e.target.value\n ) {\n setPrevValue(e.target.value);\n setCurrentValue(e.target.value);\n typeof onSave === \"function\" && onSave(e);\n } else {\n !allowEmptyString && setCurrentValue(prevValue);\n }\n }\n },\n [allowEmptyString, onSave, prevValue]\n );\n\n const handleKeyDown = useCallback(\n (e) => {\n if (e.key === \"Enter\") {\n e.target.blur();\n }\n if (e.key === \"Escape\") {\n escapeRef.current = true;\n e.target.blur();\n typeof onCancel === \"function\" && onCancel();\n }\n },\n [onCancel]\n );\n\n const handleChange = useCallback((e) => {\n setCurrentValue(e.target.value);\n }, []);\n\n return (\n <EditableContent\n {...props}\n ref={ref}\n inputProps={{\n ...inputProps,\n value: currentValue,\n onBlur: handleBlur,\n onKeyDown: handleKeyDown,\n onChange: handleChange,\n type: \"text\",\n className: classNames(\"c-input\", inputProps?.className),\n }}\n />\n );\n }\n);\n\nEditableText.displayName = \"EditableText\";\n"],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -15816,12 +15816,13 @@
|
|
|
15816
15816
|
});
|
|
15817
15817
|
EditableContent.displayName = "EditableContent";
|
|
15818
15818
|
|
|
15819
|
-
var _excluded$c = ["onSave", "onCancel", "value", "inputProps"];
|
|
15819
|
+
var _excluded$c = ["onSave", "onCancel", "value", "inputProps", "allowEmptyString"];
|
|
15820
15820
|
var EditableText = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
15821
15821
|
var onSave = _ref.onSave,
|
|
15822
15822
|
onCancel = _ref.onCancel,
|
|
15823
15823
|
value = _ref.value,
|
|
15824
15824
|
inputProps = _ref.inputProps,
|
|
15825
|
+
allowEmptyString = _ref.allowEmptyString,
|
|
15825
15826
|
props = _objectWithoutProperties(_ref, _excluded$c);
|
|
15826
15827
|
var _useState = React.useState(value),
|
|
15827
15828
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -15849,10 +15850,10 @@
|
|
|
15849
15850
|
setCurrentValue(e.target.value);
|
|
15850
15851
|
typeof onSave === "function" && onSave(e);
|
|
15851
15852
|
} else {
|
|
15852
|
-
setCurrentValue(prevValue);
|
|
15853
|
+
!allowEmptyString && setCurrentValue(prevValue);
|
|
15853
15854
|
}
|
|
15854
15855
|
}
|
|
15855
|
-
}, [onSave, prevValue]);
|
|
15856
|
+
}, [allowEmptyString, onSave, prevValue]);
|
|
15856
15857
|
var handleKeyDown = React.useCallback(function (e) {
|
|
15857
15858
|
if (e.key === "Enter") {
|
|
15858
15859
|
e.target.blur();
|