@wix/form-public 0.521.0 → 0.523.0
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.cjs +101 -48
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +0 -58
- package/dist/index.css.map +1 -1
- package/dist/index.js +102 -49
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/dist/index.cjs
CHANGED
|
@@ -258,7 +258,7 @@ function deriveError(validation, error, options) {
|
|
|
258
258
|
if (!error) {
|
|
259
259
|
return error;
|
|
260
260
|
}
|
|
261
|
-
return derivePatternError(error) ?? deriveCharacterLengthError(validation, error) ?? deriveItemsCountError(validation, error) ?? deriveNumericValueError(validation, error) ??
|
|
261
|
+
return derivePatternError(error) ?? deriveCharacterLengthError(validation, error) ?? deriveItemsCountError(validation, error) ?? deriveNumericValueError(validation, error) ?? deriveDateTimeFieldError(validation, error, options?.value) ?? deriveDateFieldError(validation, error, options?.value) ?? error;
|
|
262
262
|
}
|
|
263
263
|
function derivePatternError(error) {
|
|
264
264
|
if (!error || error.errorType !== types.ErrorType.PATTERN_ERROR) {
|
|
@@ -61275,6 +61275,18 @@ var SignaturePad = class _SignaturePad extends SignatureEventTarget {
|
|
|
61275
61275
|
}
|
|
61276
61276
|
};
|
|
61277
61277
|
var useId2 = typeof React173__default.default.useId === "function" ? React173__default.default.useId : () => React173.useRef(generateUUID()).current;
|
|
61278
|
+
var hasUploadTab = ({ properties }) => properties.uploadEnabled === true;
|
|
61279
|
+
var isForceableSignature = (field, mode) => field.fieldType === FIELD_TYPES.SIGNATURE && !field.properties.hidden && !field.properties.disabled && !field.properties.readOnly && (mode !== "upload" || hasUploadTab(field));
|
|
61280
|
+
var byLayoutPosition2 = (first2, second) => first2.layout.row - second.layout.row || first2.layout.column - second.layout.column;
|
|
61281
|
+
var useForcedSignatureMode = (fieldId) => {
|
|
61282
|
+
const forcedMode = useElementProps().signatureContainer?.signatureMode;
|
|
61283
|
+
const formView = React173.useContext(FormViewContext);
|
|
61284
|
+
const firstSignatureId = React173.useMemo(() => formView && !formView.parentId && forcedMode ? formView.fields.filter((field) => isForceableSignature(field, forcedMode)).sort(byLayoutPosition2)[0]?.id : void 0, [
|
|
61285
|
+
formView,
|
|
61286
|
+
forcedMode
|
|
61287
|
+
]);
|
|
61288
|
+
return firstSignatureId === fieldId ? forcedMode : void 0;
|
|
61289
|
+
};
|
|
61278
61290
|
|
|
61279
61291
|
// ../form-fields/dist/esm/ui/signature-field/signature-types.js
|
|
61280
61292
|
var SignatureFormat = /* @__PURE__ */ (function(SignatureFormat2) {
|
|
@@ -61805,8 +61817,14 @@ var Signature = ({ children }) => {
|
|
|
61805
61817
|
renderDescription: () => /* @__PURE__ */ React173__default.default.createElement(React173__default.default.Fragment, null, errorElement, descriptionElement)
|
|
61806
61818
|
});
|
|
61807
61819
|
};
|
|
61808
|
-
var
|
|
61809
|
-
|
|
61820
|
+
var VIEW_BY_FORCED_MODE = {
|
|
61821
|
+
[SignatureMode.DRAW]: SignatureView.DRAW,
|
|
61822
|
+
[SignatureMode.TYPE]: SignatureView.TYPE,
|
|
61823
|
+
[SignatureMode.UPLOAD]: SignatureView.UPLOAD
|
|
61824
|
+
};
|
|
61825
|
+
var Input14 = ({ children, className }) => {
|
|
61826
|
+
const { id: id6, value, onChange, target, readOnly } = useFieldPropsV2();
|
|
61827
|
+
const forcedMode = useForcedSignatureMode(id6);
|
|
61810
61828
|
const { signatureMode, setSignatureMode, handleClear, clearable, signatureView, signatureValueForView, handleChange, handleBeforeChange } = useSignatureField({
|
|
61811
61829
|
target,
|
|
61812
61830
|
value,
|
|
@@ -61815,16 +61833,19 @@ var Input14 = ({ children }) => {
|
|
|
61815
61833
|
const headerElement = findChildOfType(children, Input14.Header);
|
|
61816
61834
|
const valueElement = findChildOfType(children, Input14.Value);
|
|
61817
61835
|
const internalProps = {
|
|
61818
|
-
signatureMode,
|
|
61836
|
+
signatureMode: forcedMode ?? signatureMode,
|
|
61819
61837
|
setSignatureMode,
|
|
61820
61838
|
handleClear,
|
|
61821
61839
|
clearable,
|
|
61822
|
-
signatureView,
|
|
61823
|
-
signatureValueForView,
|
|
61840
|
+
signatureView: forcedMode ? VIEW_BY_FORCED_MODE[forcedMode] : signatureView,
|
|
61841
|
+
signatureValueForView: forcedMode ? void 0 : signatureValueForView,
|
|
61824
61842
|
handleChange,
|
|
61825
61843
|
handleBeforeChange
|
|
61826
61844
|
};
|
|
61827
|
-
return /* @__PURE__ */ React173__default.default.createElement(
|
|
61845
|
+
return /* @__PURE__ */ React173__default.default.createElement("div", {
|
|
61846
|
+
className,
|
|
61847
|
+
"data-hook": "signature-container"
|
|
61848
|
+
}, !readOnly && applyInternalProps(headerElement, internalProps), applyInternalProps(valueElement, internalProps));
|
|
61828
61849
|
};
|
|
61829
61850
|
var Header = ({ children, className, ...internal }) => {
|
|
61830
61851
|
const { signatureMode, setSignatureMode, clearable, handleClear } = internal;
|
|
@@ -62127,51 +62148,67 @@ var TypeValue = ({ className, placeholder, ...internal }) => {
|
|
|
62127
62148
|
className
|
|
62128
62149
|
});
|
|
62129
62150
|
};
|
|
62130
|
-
var
|
|
62131
|
-
display: "none"
|
|
62132
|
-
};
|
|
62133
|
-
var Upload = ({ children, className, imageAlt, ...internal }) => {
|
|
62151
|
+
var Upload = ({ children, className, ...internal }) => {
|
|
62134
62152
|
const { value, onChange, disabled, readOnly, onBlur, onFocus } = internal;
|
|
62135
|
-
const {
|
|
62136
|
-
const surfaceProps = useSurfaceProps();
|
|
62153
|
+
const { labelId, ariaDescribedBy } = useFieldAttributes();
|
|
62137
62154
|
const buttonElement = findChildOfType(children, Upload.Button);
|
|
62138
|
-
const
|
|
62139
|
-
const
|
|
62140
|
-
const
|
|
62141
|
-
if (!
|
|
62155
|
+
const previewElement = findChildOfType(children, Upload.Preview);
|
|
62156
|
+
const handleFiles = React173.useCallback((files) => {
|
|
62157
|
+
const file = files[0];
|
|
62158
|
+
if (!file) {
|
|
62142
62159
|
onChange(null);
|
|
62143
62160
|
return;
|
|
62144
62161
|
}
|
|
62145
|
-
const file = files[0];
|
|
62146
62162
|
const fileReader = new FileReader();
|
|
62147
|
-
fileReader.onload =
|
|
62148
|
-
onChange(dataUrlToWixFile(
|
|
62163
|
+
fileReader.onload = () => {
|
|
62164
|
+
onChange(dataUrlToWixFile(fileReader.result, file.name));
|
|
62149
62165
|
};
|
|
62150
62166
|
fileReader.readAsDataURL(file);
|
|
62151
62167
|
}, [
|
|
62152
62168
|
onChange
|
|
62153
62169
|
]);
|
|
62154
62170
|
const hasUploadedImage = value && isExternalImage(value);
|
|
62155
|
-
|
|
62171
|
+
if (hasUploadedImage) {
|
|
62172
|
+
return applyInternalProps(previewElement, {
|
|
62173
|
+
value
|
|
62174
|
+
}) ?? null;
|
|
62175
|
+
}
|
|
62176
|
+
return /* @__PURE__ */ React173__default.default.createElement(reactAriaComponents.DropZone, {
|
|
62156
62177
|
className,
|
|
62157
|
-
|
|
62158
|
-
|
|
62159
|
-
|
|
62160
|
-
|
|
62161
|
-
|
|
62162
|
-
|
|
62163
|
-
|
|
62164
|
-
|
|
62165
|
-
|
|
62166
|
-
|
|
62167
|
-
|
|
62168
|
-
|
|
62169
|
-
|
|
62178
|
+
isDisabled: disabled || readOnly,
|
|
62179
|
+
"aria-labelledby": labelId,
|
|
62180
|
+
"aria-describedby": ariaDescribedBy,
|
|
62181
|
+
"data-hook": "signature-upload-drop-zone",
|
|
62182
|
+
onDrop: async (event) => {
|
|
62183
|
+
for (const item of event.items) {
|
|
62184
|
+
if (item.kind === "file" && item.type.startsWith("image/")) {
|
|
62185
|
+
const file = await item.getFile();
|
|
62186
|
+
if (file) {
|
|
62187
|
+
handleFiles([
|
|
62188
|
+
file
|
|
62189
|
+
]);
|
|
62190
|
+
return;
|
|
62191
|
+
}
|
|
62192
|
+
}
|
|
62193
|
+
}
|
|
62194
|
+
}
|
|
62195
|
+
}, applyInternalProps(buttonElement, {
|
|
62196
|
+
onSelectFiles: handleFiles,
|
|
62170
62197
|
disabled,
|
|
62171
62198
|
readOnly,
|
|
62172
62199
|
onBlur,
|
|
62173
62200
|
onFocus
|
|
62174
|
-
})
|
|
62201
|
+
}));
|
|
62202
|
+
};
|
|
62203
|
+
var UploadPreview = ({ className, imageAlt, ...internal }) => {
|
|
62204
|
+
const { value } = internal;
|
|
62205
|
+
const { inputId } = useFieldAttributes();
|
|
62206
|
+
const surfaceProps = useSurfaceProps();
|
|
62207
|
+
return /* @__PURE__ */ React173__default.default.createElement("div", {
|
|
62208
|
+
className,
|
|
62209
|
+
"data-has-value": true,
|
|
62210
|
+
...surfaceProps
|
|
62211
|
+
}, value.url ? /* @__PURE__ */ React173__default.default.createElement("img", {
|
|
62175
62212
|
id: inputId,
|
|
62176
62213
|
src: value.url,
|
|
62177
62214
|
alt: value.displayName || imageAlt,
|
|
@@ -62179,30 +62216,44 @@ var Upload = ({ children, className, imageAlt, ...internal }) => {
|
|
|
62179
62216
|
}) : /* @__PURE__ */ React173__default.default.createElement("span", {
|
|
62180
62217
|
id: inputId,
|
|
62181
62218
|
"data-hook": "signature-image"
|
|
62182
|
-
}, value.displayName || imageAlt))
|
|
62219
|
+
}, value.displayName || imageAlt));
|
|
62183
62220
|
};
|
|
62184
|
-
var UploadButton = ({ children, className, ...internal }) => {
|
|
62185
|
-
const {
|
|
62221
|
+
var UploadButton = ({ children, className, onHoverStart, onHoverEnd, ...internal }) => {
|
|
62222
|
+
const { onSelectFiles, disabled, readOnly, onBlur, onFocus } = internal;
|
|
62186
62223
|
const { inputId, ariaDescribedBy, labelId } = useFieldAttributes();
|
|
62187
62224
|
const textId = useId2();
|
|
62188
|
-
const
|
|
62189
|
-
|
|
62190
|
-
|
|
62191
|
-
|
|
62192
|
-
|
|
62193
|
-
|
|
62225
|
+
const hasTextElement = Boolean(findChildOfType(children, UploadButton.Text));
|
|
62226
|
+
const content = hasTextElement ? React173.Children.map(children, (child) => /* @__PURE__ */ React173.isValidElement(child) && child.type === UploadButton.Text ? applyInternalProps(child, {
|
|
62227
|
+
textId
|
|
62228
|
+
}) : child) : /* @__PURE__ */ React173__default.default.createElement("span", {
|
|
62229
|
+
id: textId
|
|
62230
|
+
}, children);
|
|
62231
|
+
return /* @__PURE__ */ React173__default.default.createElement(reactAriaComponents.FileTrigger, {
|
|
62232
|
+
acceptedFileTypes: [
|
|
62233
|
+
"image/*"
|
|
62234
|
+
],
|
|
62235
|
+
onSelect: (fileList) => {
|
|
62236
|
+
onSelectFiles(fileList ? Array.from(fileList) : []);
|
|
62237
|
+
}
|
|
62238
|
+
}, /* @__PURE__ */ React173__default.default.createElement(reactAriaComponents.Button, {
|
|
62194
62239
|
id: inputId,
|
|
62195
|
-
onPress: handlePress,
|
|
62196
62240
|
onBlur,
|
|
62197
62241
|
onFocus,
|
|
62198
62242
|
isDisabled: disabled || readOnly,
|
|
62199
62243
|
"aria-labelledby": `${labelId} ${textId}`,
|
|
62200
62244
|
"aria-describedby": ariaDescribedBy,
|
|
62201
62245
|
"data-hook": "signature-upload",
|
|
62246
|
+
className,
|
|
62247
|
+
onHoverStart,
|
|
62248
|
+
onHoverEnd
|
|
62249
|
+
}, content));
|
|
62250
|
+
};
|
|
62251
|
+
var UploadButtonText = ({ children, className, ...internal }) => {
|
|
62252
|
+
const { textId } = internal;
|
|
62253
|
+
return /* @__PURE__ */ React173__default.default.createElement("span", {
|
|
62254
|
+
id: textId,
|
|
62202
62255
|
className
|
|
62203
|
-
},
|
|
62204
|
-
id: textId
|
|
62205
|
-
}, children));
|
|
62256
|
+
}, children);
|
|
62206
62257
|
};
|
|
62207
62258
|
Signature.Label = Label;
|
|
62208
62259
|
Signature.Input = Input14;
|
|
@@ -62219,7 +62270,9 @@ Value2.Canvas = Canvas;
|
|
|
62219
62270
|
Value2.Type = Type4;
|
|
62220
62271
|
Value2.Upload = Upload;
|
|
62221
62272
|
Type4.Value = TypeValue;
|
|
62273
|
+
Upload.Preview = UploadPreview;
|
|
62222
62274
|
Upload.Button = UploadButton;
|
|
62275
|
+
UploadButton.Text = UploadButtonText;
|
|
62223
62276
|
function ProgressCircle(props2) {
|
|
62224
62277
|
const strokeWidth = 4;
|
|
62225
62278
|
const radius = `calc(50% - ${strokeWidth / 2}px)`;
|