aport-tools 4.4.23 → 4.4.24
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/index.esm.js +46 -34
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +46 -34
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
/*! aport-tools v4.4.
|
1
|
+
/*! aport-tools v4.4.24 | ISC */
|
2
2
|
'use strict';
|
3
3
|
|
4
4
|
var React = require('react');
|
@@ -539,17 +539,19 @@ var Input = function Input(_a) {
|
|
539
539
|
label = _a.label,
|
540
540
|
inputType = _a.inputType,
|
541
541
|
firstValue = _a.firstValue,
|
542
|
+
_b = _a.editable,
|
543
|
+
editable = _b === void 0 ? true : _b,
|
542
544
|
style = _a.style,
|
543
|
-
rest = __rest(_a, ["name", "label", "inputType", "firstValue", "style"]);
|
544
|
-
var
|
545
|
-
formValues =
|
546
|
-
setFormValue =
|
547
|
-
formErrors =
|
545
|
+
rest = __rest(_a, ["name", "label", "inputType", "firstValue", "editable", "style"]);
|
546
|
+
var _c = useFormContext(),
|
547
|
+
formValues = _c.formValues,
|
548
|
+
setFormValue = _c.setFormValue,
|
549
|
+
formErrors = _c.errors;
|
548
550
|
var theme = React.useContext(aportThemes.ThemeContext).theme;
|
549
551
|
var colors = theme.colors;
|
550
|
-
var
|
551
|
-
internalValue =
|
552
|
-
setInternalValue =
|
552
|
+
var _d = React.useState(""),
|
553
|
+
internalValue = _d[0],
|
554
|
+
setInternalValue = _d[1];
|
553
555
|
var isFirstRender = React.useRef(true); // Track the first render
|
554
556
|
// Initialize the internal value when `firstValue` changes or on first render
|
555
557
|
React.useEffect(function () {
|
@@ -610,6 +612,7 @@ var Input = function Input(_a) {
|
|
610
612
|
value: internalValue,
|
611
613
|
onChangeText: handleChange,
|
612
614
|
placeholder: label,
|
615
|
+
editable: editable,
|
613
616
|
placeholderTextColor: colors.placeHolder.hex
|
614
617
|
}, rest)), formErrors[name] && formErrors[name].length > 0 && (/*#__PURE__*/React.createElement(ErrorList, {
|
615
618
|
errors: formErrors[name]
|
@@ -637,26 +640,32 @@ var TextArea = function TextArea(_a) {
|
|
637
640
|
label = _a.label;
|
638
641
|
_a.errors;
|
639
642
|
var firstValue = _a.firstValue,
|
643
|
+
_b = _a.editable,
|
644
|
+
editable = _b === void 0 ? true : _b,
|
640
645
|
style = _a.style,
|
641
|
-
rest = __rest(_a, ["name", "label", "errors", "firstValue", "style"]);
|
642
|
-
var
|
643
|
-
formValues =
|
644
|
-
setFormValue =
|
645
|
-
formErrors =
|
646
|
+
rest = __rest(_a, ["name", "label", "errors", "firstValue", "editable", "style"]);
|
647
|
+
var _c = useFormContext(),
|
648
|
+
formValues = _c.formValues,
|
649
|
+
setFormValue = _c.setFormValue,
|
650
|
+
formErrors = _c.errors;
|
646
651
|
var theme = React.useContext(aportThemes.ThemeContext).theme;
|
647
652
|
var colors = theme.colors;
|
648
|
-
var
|
649
|
-
internalValue =
|
650
|
-
setInternalValue =
|
651
|
-
|
653
|
+
var _d = React.useState(""),
|
654
|
+
internalValue = _d[0],
|
655
|
+
setInternalValue = _d[1];
|
656
|
+
var isFirstRender = React.useRef(true); // Track the first render
|
657
|
+
// Initialize the internal value when `firstValue` changes or on first render
|
652
658
|
React.useEffect(function () {
|
653
|
-
if (
|
654
|
-
|
655
|
-
|
656
|
-
|
657
|
-
|
659
|
+
if (isFirstRender.current) {
|
660
|
+
isFirstRender.current = false;
|
661
|
+
if (firstValue !== undefined) {
|
662
|
+
setInternalValue(firstValue);
|
663
|
+
setFormValue(name, firstValue);
|
664
|
+
} else {
|
665
|
+
setInternalValue(formValues[name] || "");
|
666
|
+
}
|
658
667
|
}
|
659
|
-
}, [firstValue
|
668
|
+
}, [firstValue]);
|
660
669
|
var handleChange = function handleChange(text) {
|
661
670
|
setInternalValue(text);
|
662
671
|
setFormValue(name, text);
|
@@ -678,6 +687,7 @@ var TextArea = function TextArea(_a) {
|
|
678
687
|
placeholder: label,
|
679
688
|
placeholderTextColor: colors.placeHolder.hex,
|
680
689
|
multiline: true,
|
690
|
+
editable: editable,
|
681
691
|
numberOfLines: 4,
|
682
692
|
textAlignVertical: "top"
|
683
693
|
}, rest)), formErrors[name] && formErrors[name].length > 0 && (/*#__PURE__*/React.createElement(ErrorList, {
|
@@ -781,16 +791,21 @@ var InputList = function InputList(_a) {
|
|
781
791
|
var _l = React.useState(multi ? initialSelections : initialSelections[0] || null),
|
782
792
|
selectedOptions = _l[0],
|
783
793
|
setSelectedOptions = _l[1];
|
784
|
-
// Update form value
|
794
|
+
// Update form value when firstValue changes
|
785
795
|
React.useEffect(function () {
|
786
|
-
if (
|
787
|
-
setSelectedOptions(
|
796
|
+
if (multi) {
|
797
|
+
setSelectedOptions(initialSelections);
|
798
|
+
setFormValue(name, initialSelections);
|
799
|
+
} else {
|
800
|
+
var singleValue = initialSelections[0] || null;
|
801
|
+
setSelectedOptions(singleValue);
|
802
|
+
setFormValue(name, singleValue);
|
788
803
|
}
|
789
|
-
}, [firstValue,
|
804
|
+
}, [firstValue, multi, initialSelections]);
|
805
|
+
// Handle option selection
|
790
806
|
var handleSelectOption = function handleSelectOption(option) {
|
791
807
|
var updatedSelections;
|
792
808
|
if (multi) {
|
793
|
-
// Ensure selectedOptions is treated as an array
|
794
809
|
var selectedArray = Array.isArray(selectedOptions) ? selectedOptions : [];
|
795
810
|
var alreadySelected = selectedArray.some(function (opt) {
|
796
811
|
return opt.id === option.id;
|
@@ -803,15 +818,12 @@ var InputList = function InputList(_a) {
|
|
803
818
|
}
|
804
819
|
setFormValue(name, updatedSelections);
|
805
820
|
} else {
|
806
|
-
// Handle single-selection case
|
807
821
|
updatedSelections = option;
|
808
822
|
setFormValue(name, option);
|
809
823
|
if (closeOnSelect) setIsDropdownVisible(false);
|
810
824
|
}
|
811
|
-
|
812
|
-
if (onChange)
|
813
|
-
onChange(updatedSelections);
|
814
|
-
}
|
825
|
+
setSelectedOptions(updatedSelections);
|
826
|
+
if (onChange) onChange(updatedSelections);
|
815
827
|
};
|
816
828
|
var isItemDisabled = function isItemDisabled(option) {
|
817
829
|
if (!multi) return false; // Disable check only applies for multi-select
|