@elliemae/ds-uploader 3.5.0-rc.9 → 3.6.0-next.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/cjs/DSUploader.js +53 -16
- package/dist/cjs/DSUploader.js.map +2 -2
- package/dist/esm/DSUploader.js +53 -16
- package/dist/esm/DSUploader.js.map +2 -2
- package/package.json +7 -7
package/dist/cjs/DSUploader.js
CHANGED
|
@@ -30,7 +30,7 @@ __export(DSUploader_exports, {
|
|
|
30
30
|
});
|
|
31
31
|
module.exports = __toCommonJS(DSUploader_exports);
|
|
32
32
|
var React = __toESM(require("react"));
|
|
33
|
-
var
|
|
33
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
34
34
|
var import_ds_classnames = require("@elliemae/ds-classnames");
|
|
35
35
|
var import_ds_utilities = require("@elliemae/ds-utilities");
|
|
36
36
|
var import_ds_icons = require("@elliemae/ds-icons");
|
|
@@ -52,7 +52,7 @@ const UploaderActions = (0, import_ds_classnames.aggregatedClasses)("div")(block
|
|
|
52
52
|
const AcceptedTypes = (0, import_ds_classnames.aggregatedClasses)("div")(blockNameWrapper, "accepted-types");
|
|
53
53
|
const DividerVertical = (0, import_ds_classnames.aggregatedClasses)("div")("divider", null, ({ vertical }) => ({ vertical }));
|
|
54
54
|
function ActionButton({ labelText, ...otherProps }) {
|
|
55
|
-
return /* @__PURE__ */
|
|
55
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_button.default, {
|
|
56
56
|
...otherProps,
|
|
57
57
|
buttonType: "text",
|
|
58
58
|
labelText
|
|
@@ -81,7 +81,7 @@ const DSUploader = ({
|
|
|
81
81
|
const { getRootProps, getInputProps, isDragActive } = (0, import_react_dropzone.useDropzone)(dropzoneProps);
|
|
82
82
|
const { onClick: onOpenFile, ...rootProps } = getRootProps();
|
|
83
83
|
const disabledAll = disabledDefault && disabledAlt;
|
|
84
|
-
const delfaultActionButton = /* @__PURE__ */
|
|
84
|
+
const delfaultActionButton = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ActionButton, {
|
|
85
85
|
variant: disabledDefault && import_ds_button.BUTTON_VARIANT.DISABLED,
|
|
86
86
|
labelText: actions.defaultAction ? actions.defaultAction : defaultActionLabel,
|
|
87
87
|
onClick: (...args) => {
|
|
@@ -89,7 +89,7 @@ const DSUploader = ({
|
|
|
89
89
|
(0, import_ds_utilities.runAll)(onDefaultHandlerClick, onOpenFile)(...args);
|
|
90
90
|
}
|
|
91
91
|
});
|
|
92
|
-
const altActionButton = /* @__PURE__ */
|
|
92
|
+
const altActionButton = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ActionButton, {
|
|
93
93
|
variant: disabledAlt && import_ds_button.BUTTON_VARIANT.DISABLED,
|
|
94
94
|
labelText: actions.altAction ? actions.altAction : altActionLabel,
|
|
95
95
|
onClick: (...args) => {
|
|
@@ -97,29 +97,66 @@ const DSUploader = ({
|
|
|
97
97
|
onAltHandlerClick(...args);
|
|
98
98
|
}
|
|
99
99
|
});
|
|
100
|
-
const defaultAction = !defaultActionTooltipText ? delfaultActionButton : /* @__PURE__ */
|
|
100
|
+
const defaultAction = !defaultActionTooltipText ? delfaultActionButton : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_tooltip.default, {
|
|
101
101
|
containerProps: { id: "default-action-tooltip" },
|
|
102
102
|
interactionType: "hover",
|
|
103
103
|
title: defaultActionTooltipText,
|
|
104
104
|
triggerComponent: delfaultActionButton
|
|
105
105
|
});
|
|
106
|
-
const altAction = !altActionTooltipText ? altActionButton : /* @__PURE__ */
|
|
106
|
+
const altAction = !altActionTooltipText ? altActionButton : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_tooltip.default, {
|
|
107
107
|
containerProps: { id: "alt-action-tooltip" },
|
|
108
108
|
interactionType: "hover",
|
|
109
109
|
title: altActionTooltipText,
|
|
110
110
|
triggerComponent: altActionButton
|
|
111
111
|
});
|
|
112
|
-
return /* @__PURE__ */
|
|
112
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(UploaderWrapper, {
|
|
113
113
|
...containerProps,
|
|
114
|
-
classProps: { disabled: disabledAll }
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
114
|
+
classProps: { disabled: disabledAll },
|
|
115
|
+
children: [
|
|
116
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(Uploader, {
|
|
117
|
+
...rootProps,
|
|
118
|
+
classProps: { isDragActive },
|
|
119
|
+
children: [
|
|
120
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(UploaderIconArea, {
|
|
121
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(UploadFileIcon, {
|
|
122
|
+
size: "l"
|
|
123
|
+
})
|
|
124
|
+
}),
|
|
125
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(DividerVertical, {}),
|
|
126
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(UploaderInfo, {
|
|
127
|
+
children: [
|
|
128
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(InfoText, {
|
|
129
|
+
children: label
|
|
130
|
+
}),
|
|
131
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(UploaderActions, {
|
|
132
|
+
children: [
|
|
133
|
+
actions.defaultAction && defaultAction,
|
|
134
|
+
(actions.altAction || showAltAction) && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {
|
|
135
|
+
children: [
|
|
136
|
+
actions.defaultAction && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(DividerVertical, {}),
|
|
137
|
+
altAction
|
|
138
|
+
]
|
|
139
|
+
})
|
|
140
|
+
]
|
|
141
|
+
})
|
|
142
|
+
]
|
|
143
|
+
}),
|
|
144
|
+
!disabledAll && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(UploaderDragActive, {
|
|
145
|
+
children: [
|
|
146
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(DragActiveIcon, {}),
|
|
147
|
+
dragActiveInstructionalText
|
|
148
|
+
]
|
|
149
|
+
}),
|
|
150
|
+
!disabledAll && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("input", {
|
|
151
|
+
...getInputProps()
|
|
152
|
+
})
|
|
153
|
+
]
|
|
154
|
+
}),
|
|
155
|
+
typeof acceptedTypesText === "string" && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(AcceptedTypes, {
|
|
156
|
+
children: acceptedTypesText.toUpperCase()
|
|
157
|
+
})
|
|
158
|
+
]
|
|
159
|
+
});
|
|
123
160
|
};
|
|
124
161
|
DSUploader.actions = {
|
|
125
162
|
defaultAction: "LOCAL DRIVE",
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/DSUploader.tsx", "../../../../scripts/build/transpile/react-shim.js"],
|
|
4
4
|
"sourcesContent": ["/* eslint-disable max-lines */\n/* eslint-disable complexity */\nimport React from 'react';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport { describe, runAll } from '@elliemae/ds-utilities';\nimport { UploadFile } from '@elliemae/ds-icons';\nimport DSButton, { BUTTON_VARIANT } from '@elliemae/ds-button';\nimport { useDropzone } from 'react-dropzone';\nimport DSTooltip from '@elliemae/ds-tooltip';\nimport { propTypes } from './propTypes';\nimport type { DSUploaderPropsT, ActionButtonPropsT } from './index.d';\n\nconst blockName = 'uploader';\nconst blockNameInfo = `${blockName}-info`;\nconst blockNameDragActive = `${blockName}-drag-active`;\nconst blockNameWrapper = `${blockName}-wrapper`;\n\nconst UploaderWrapper = aggregatedClasses('div')(blockNameWrapper, null, ({ disabled }) => ({ disabled }));\nconst Uploader = aggregatedClasses('div')(blockName, null, ({ isDragActive }) => ({ 'drag-active': isDragActive }));\nconst UploaderDragActive = aggregatedClasses('div')(blockNameDragActive);\nconst UploaderIconArea = aggregatedClasses('div')(`${blockName}-icon-wrapper`);\nconst UploaderInfo = aggregatedClasses('div')(blockNameInfo);\nconst InfoText = aggregatedClasses('span')(blockNameInfo, 'text');\nconst UploaderActions = aggregatedClasses('div')(blockNameInfo, 'actions');\nconst AcceptedTypes = aggregatedClasses('div')(blockNameWrapper, 'accepted-types');\n\nconst DividerVertical = aggregatedClasses('div')('divider', null, ({ vertical }) => ({ vertical }));\n\nfunction ActionButton({ labelText, ...otherProps }: ActionButtonPropsT): React.ReactElement {\n return <DSButton {...otherProps} buttonType=\"text\" labelText={labelText} />;\n}\n\nconst noop = () => null;\n\nconst DSUploader = ({\n containerProps = {},\n label = 'Browse', // todo: i18n\n icon: UploadFileIcon = UploadFile,\n defaultActionLabel = 'LOCAL DRIVE', // todo: i18n\n dragActiveInstructionalText = 'DROP FILES HERE',\n dragActiveIcon: DragActiveIcon = UploadFile,\n altActionLabel = 'DOCUMENTS', // todo: i18n\n acceptedTypesText = 'JPG, JPEG, PNG, PDF',\n disabledDefault = false,\n disabledAlt = false,\n onDefaultHandlerClick = noop,\n onAltHandlerClick = noop,\n actions = { defaultAction: 'LOCAL DRIVE', altAction: 'DOCUMENTS' },\n showAltAction = false,\n defaultActionTooltipText,\n altActionTooltipText,\n ...dropzoneProps\n}: DSUploaderPropsT): JSX.Element => {\n const { getRootProps, getInputProps, isDragActive } = useDropzone(dropzoneProps);\n const { onClick: onOpenFile, ...rootProps } = getRootProps();\n const disabledAll = disabledDefault && disabledAlt;\n\n const delfaultActionButton = (\n <ActionButton\n variant={disabledDefault && BUTTON_VARIANT.DISABLED}\n labelText={actions.defaultAction ? (actions.defaultAction as string) : defaultActionLabel}\n onClick={(...args) => {\n if (!disabledDefault) runAll(onDefaultHandlerClick, onOpenFile)(...args);\n }}\n />\n );\n\n const altActionButton = (\n <ActionButton\n variant={disabledAlt && BUTTON_VARIANT.DISABLED}\n labelText={actions.altAction ? (actions.altAction as string) : altActionLabel}\n onClick={(...args) => {\n if (!disabledAlt) onAltHandlerClick(...args);\n }}\n />\n );\n\n const defaultAction = !defaultActionTooltipText ? (\n delfaultActionButton\n ) : (\n <DSTooltip\n containerProps={{ id: 'default-action-tooltip' }}\n interactionType=\"hover\"\n title={defaultActionTooltipText}\n triggerComponent={delfaultActionButton}\n />\n );\n\n const altAction = !altActionTooltipText ? (\n altActionButton\n ) : (\n <DSTooltip\n containerProps={{ id: 'alt-action-tooltip' }}\n interactionType=\"hover\"\n title={altActionTooltipText}\n triggerComponent={altActionButton}\n />\n );\n\n return (\n <UploaderWrapper {...containerProps} classProps={{ disabled: disabledAll }}>\n <Uploader {...rootProps} classProps={{ isDragActive }}>\n <UploaderIconArea>\n <UploadFileIcon size=\"l\" />\n </UploaderIconArea>\n <DividerVertical />\n <UploaderInfo>\n <InfoText>{label}</InfoText>\n <UploaderActions>\n {actions.defaultAction && defaultAction}\n {(actions.altAction || showAltAction) && (\n <>\n {actions.defaultAction && <DividerVertical />}\n {altAction}\n </>\n )}\n </UploaderActions>\n </UploaderInfo>\n {!disabledAll && (\n <UploaderDragActive>\n <DragActiveIcon />\n {dragActiveInstructionalText}\n </UploaderDragActive>\n )}\n {!disabledAll && <input {...getInputProps()} />}\n </Uploader>\n {typeof acceptedTypesText === 'string' && <AcceptedTypes>{acceptedTypesText.toUpperCase()}</AcceptedTypes>}\n </UploaderWrapper>\n );\n};\n\nDSUploader.actions = {\n defaultAction: 'LOCAL DRIVE',\n altAction: 'DOCUMENTS',\n};\n\nDSUploader.propTypes = propTypes;\nDSUploader.displayName = 'DSUploader';\nconst UploaderWithSchema = describe(DSUploader);\nUploaderWithSchema.propTypes = propTypes;\n\nexport { UploaderWithSchema, DSUploader };\nexport default DSUploader;\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;
|
|
6
|
-
"names": ["
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["DSButton", "DSTooltip"]
|
|
7
7
|
}
|
package/dist/esm/DSUploader.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
import
|
|
2
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { aggregatedClasses } from "@elliemae/ds-classnames";
|
|
4
4
|
import { describe, runAll } from "@elliemae/ds-utilities";
|
|
5
5
|
import { UploadFile } from "@elliemae/ds-icons";
|
|
@@ -21,7 +21,7 @@ const UploaderActions = aggregatedClasses("div")(blockNameInfo, "actions");
|
|
|
21
21
|
const AcceptedTypes = aggregatedClasses("div")(blockNameWrapper, "accepted-types");
|
|
22
22
|
const DividerVertical = aggregatedClasses("div")("divider", null, ({ vertical }) => ({ vertical }));
|
|
23
23
|
function ActionButton({ labelText, ...otherProps }) {
|
|
24
|
-
return /* @__PURE__ */
|
|
24
|
+
return /* @__PURE__ */ jsx(DSButton, {
|
|
25
25
|
...otherProps,
|
|
26
26
|
buttonType: "text",
|
|
27
27
|
labelText
|
|
@@ -50,7 +50,7 @@ const DSUploader = ({
|
|
|
50
50
|
const { getRootProps, getInputProps, isDragActive } = useDropzone(dropzoneProps);
|
|
51
51
|
const { onClick: onOpenFile, ...rootProps } = getRootProps();
|
|
52
52
|
const disabledAll = disabledDefault && disabledAlt;
|
|
53
|
-
const delfaultActionButton = /* @__PURE__ */
|
|
53
|
+
const delfaultActionButton = /* @__PURE__ */ jsx(ActionButton, {
|
|
54
54
|
variant: disabledDefault && BUTTON_VARIANT.DISABLED,
|
|
55
55
|
labelText: actions.defaultAction ? actions.defaultAction : defaultActionLabel,
|
|
56
56
|
onClick: (...args) => {
|
|
@@ -58,7 +58,7 @@ const DSUploader = ({
|
|
|
58
58
|
runAll(onDefaultHandlerClick, onOpenFile)(...args);
|
|
59
59
|
}
|
|
60
60
|
});
|
|
61
|
-
const altActionButton = /* @__PURE__ */
|
|
61
|
+
const altActionButton = /* @__PURE__ */ jsx(ActionButton, {
|
|
62
62
|
variant: disabledAlt && BUTTON_VARIANT.DISABLED,
|
|
63
63
|
labelText: actions.altAction ? actions.altAction : altActionLabel,
|
|
64
64
|
onClick: (...args) => {
|
|
@@ -66,29 +66,66 @@ const DSUploader = ({
|
|
|
66
66
|
onAltHandlerClick(...args);
|
|
67
67
|
}
|
|
68
68
|
});
|
|
69
|
-
const defaultAction = !defaultActionTooltipText ? delfaultActionButton : /* @__PURE__ */
|
|
69
|
+
const defaultAction = !defaultActionTooltipText ? delfaultActionButton : /* @__PURE__ */ jsx(DSTooltip, {
|
|
70
70
|
containerProps: { id: "default-action-tooltip" },
|
|
71
71
|
interactionType: "hover",
|
|
72
72
|
title: defaultActionTooltipText,
|
|
73
73
|
triggerComponent: delfaultActionButton
|
|
74
74
|
});
|
|
75
|
-
const altAction = !altActionTooltipText ? altActionButton : /* @__PURE__ */
|
|
75
|
+
const altAction = !altActionTooltipText ? altActionButton : /* @__PURE__ */ jsx(DSTooltip, {
|
|
76
76
|
containerProps: { id: "alt-action-tooltip" },
|
|
77
77
|
interactionType: "hover",
|
|
78
78
|
title: altActionTooltipText,
|
|
79
79
|
triggerComponent: altActionButton
|
|
80
80
|
});
|
|
81
|
-
return /* @__PURE__ */
|
|
81
|
+
return /* @__PURE__ */ jsxs(UploaderWrapper, {
|
|
82
82
|
...containerProps,
|
|
83
|
-
classProps: { disabled: disabledAll }
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
83
|
+
classProps: { disabled: disabledAll },
|
|
84
|
+
children: [
|
|
85
|
+
/* @__PURE__ */ jsxs(Uploader, {
|
|
86
|
+
...rootProps,
|
|
87
|
+
classProps: { isDragActive },
|
|
88
|
+
children: [
|
|
89
|
+
/* @__PURE__ */ jsx(UploaderIconArea, {
|
|
90
|
+
children: /* @__PURE__ */ jsx(UploadFileIcon, {
|
|
91
|
+
size: "l"
|
|
92
|
+
})
|
|
93
|
+
}),
|
|
94
|
+
/* @__PURE__ */ jsx(DividerVertical, {}),
|
|
95
|
+
/* @__PURE__ */ jsxs(UploaderInfo, {
|
|
96
|
+
children: [
|
|
97
|
+
/* @__PURE__ */ jsx(InfoText, {
|
|
98
|
+
children: label
|
|
99
|
+
}),
|
|
100
|
+
/* @__PURE__ */ jsxs(UploaderActions, {
|
|
101
|
+
children: [
|
|
102
|
+
actions.defaultAction && defaultAction,
|
|
103
|
+
(actions.altAction || showAltAction) && /* @__PURE__ */ jsxs(Fragment, {
|
|
104
|
+
children: [
|
|
105
|
+
actions.defaultAction && /* @__PURE__ */ jsx(DividerVertical, {}),
|
|
106
|
+
altAction
|
|
107
|
+
]
|
|
108
|
+
})
|
|
109
|
+
]
|
|
110
|
+
})
|
|
111
|
+
]
|
|
112
|
+
}),
|
|
113
|
+
!disabledAll && /* @__PURE__ */ jsxs(UploaderDragActive, {
|
|
114
|
+
children: [
|
|
115
|
+
/* @__PURE__ */ jsx(DragActiveIcon, {}),
|
|
116
|
+
dragActiveInstructionalText
|
|
117
|
+
]
|
|
118
|
+
}),
|
|
119
|
+
!disabledAll && /* @__PURE__ */ jsx("input", {
|
|
120
|
+
...getInputProps()
|
|
121
|
+
})
|
|
122
|
+
]
|
|
123
|
+
}),
|
|
124
|
+
typeof acceptedTypesText === "string" && /* @__PURE__ */ jsx(AcceptedTypes, {
|
|
125
|
+
children: acceptedTypesText.toUpperCase()
|
|
126
|
+
})
|
|
127
|
+
]
|
|
128
|
+
});
|
|
92
129
|
};
|
|
93
130
|
DSUploader.actions = {
|
|
94
131
|
defaultAction: "LOCAL DRIVE",
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/DSUploader.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\n/* eslint-disable complexity */\nimport React from 'react';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport { describe, runAll } from '@elliemae/ds-utilities';\nimport { UploadFile } from '@elliemae/ds-icons';\nimport DSButton, { BUTTON_VARIANT } from '@elliemae/ds-button';\nimport { useDropzone } from 'react-dropzone';\nimport DSTooltip from '@elliemae/ds-tooltip';\nimport { propTypes } from './propTypes';\nimport type { DSUploaderPropsT, ActionButtonPropsT } from './index.d';\n\nconst blockName = 'uploader';\nconst blockNameInfo = `${blockName}-info`;\nconst blockNameDragActive = `${blockName}-drag-active`;\nconst blockNameWrapper = `${blockName}-wrapper`;\n\nconst UploaderWrapper = aggregatedClasses('div')(blockNameWrapper, null, ({ disabled }) => ({ disabled }));\nconst Uploader = aggregatedClasses('div')(blockName, null, ({ isDragActive }) => ({ 'drag-active': isDragActive }));\nconst UploaderDragActive = aggregatedClasses('div')(blockNameDragActive);\nconst UploaderIconArea = aggregatedClasses('div')(`${blockName}-icon-wrapper`);\nconst UploaderInfo = aggregatedClasses('div')(blockNameInfo);\nconst InfoText = aggregatedClasses('span')(blockNameInfo, 'text');\nconst UploaderActions = aggregatedClasses('div')(blockNameInfo, 'actions');\nconst AcceptedTypes = aggregatedClasses('div')(blockNameWrapper, 'accepted-types');\n\nconst DividerVertical = aggregatedClasses('div')('divider', null, ({ vertical }) => ({ vertical }));\n\nfunction ActionButton({ labelText, ...otherProps }: ActionButtonPropsT): React.ReactElement {\n return <DSButton {...otherProps} buttonType=\"text\" labelText={labelText} />;\n}\n\nconst noop = () => null;\n\nconst DSUploader = ({\n containerProps = {},\n label = 'Browse', // todo: i18n\n icon: UploadFileIcon = UploadFile,\n defaultActionLabel = 'LOCAL DRIVE', // todo: i18n\n dragActiveInstructionalText = 'DROP FILES HERE',\n dragActiveIcon: DragActiveIcon = UploadFile,\n altActionLabel = 'DOCUMENTS', // todo: i18n\n acceptedTypesText = 'JPG, JPEG, PNG, PDF',\n disabledDefault = false,\n disabledAlt = false,\n onDefaultHandlerClick = noop,\n onAltHandlerClick = noop,\n actions = { defaultAction: 'LOCAL DRIVE', altAction: 'DOCUMENTS' },\n showAltAction = false,\n defaultActionTooltipText,\n altActionTooltipText,\n ...dropzoneProps\n}: DSUploaderPropsT): JSX.Element => {\n const { getRootProps, getInputProps, isDragActive } = useDropzone(dropzoneProps);\n const { onClick: onOpenFile, ...rootProps } = getRootProps();\n const disabledAll = disabledDefault && disabledAlt;\n\n const delfaultActionButton = (\n <ActionButton\n variant={disabledDefault && BUTTON_VARIANT.DISABLED}\n labelText={actions.defaultAction ? (actions.defaultAction as string) : defaultActionLabel}\n onClick={(...args) => {\n if (!disabledDefault) runAll(onDefaultHandlerClick, onOpenFile)(...args);\n }}\n />\n );\n\n const altActionButton = (\n <ActionButton\n variant={disabledAlt && BUTTON_VARIANT.DISABLED}\n labelText={actions.altAction ? (actions.altAction as string) : altActionLabel}\n onClick={(...args) => {\n if (!disabledAlt) onAltHandlerClick(...args);\n }}\n />\n );\n\n const defaultAction = !defaultActionTooltipText ? (\n delfaultActionButton\n ) : (\n <DSTooltip\n containerProps={{ id: 'default-action-tooltip' }}\n interactionType=\"hover\"\n title={defaultActionTooltipText}\n triggerComponent={delfaultActionButton}\n />\n );\n\n const altAction = !altActionTooltipText ? (\n altActionButton\n ) : (\n <DSTooltip\n containerProps={{ id: 'alt-action-tooltip' }}\n interactionType=\"hover\"\n title={altActionTooltipText}\n triggerComponent={altActionButton}\n />\n );\n\n return (\n <UploaderWrapper {...containerProps} classProps={{ disabled: disabledAll }}>\n <Uploader {...rootProps} classProps={{ isDragActive }}>\n <UploaderIconArea>\n <UploadFileIcon size=\"l\" />\n </UploaderIconArea>\n <DividerVertical />\n <UploaderInfo>\n <InfoText>{label}</InfoText>\n <UploaderActions>\n {actions.defaultAction && defaultAction}\n {(actions.altAction || showAltAction) && (\n <>\n {actions.defaultAction && <DividerVertical />}\n {altAction}\n </>\n )}\n </UploaderActions>\n </UploaderInfo>\n {!disabledAll && (\n <UploaderDragActive>\n <DragActiveIcon />\n {dragActiveInstructionalText}\n </UploaderDragActive>\n )}\n {!disabledAll && <input {...getInputProps()} />}\n </Uploader>\n {typeof acceptedTypesText === 'string' && <AcceptedTypes>{acceptedTypesText.toUpperCase()}</AcceptedTypes>}\n </UploaderWrapper>\n );\n};\n\nDSUploader.actions = {\n defaultAction: 'LOCAL DRIVE',\n altAction: 'DOCUMENTS',\n};\n\nDSUploader.propTypes = propTypes;\nDSUploader.displayName = 'DSUploader';\nconst UploaderWithSchema = describe(DSUploader);\nUploaderWithSchema.propTypes = propTypes;\n\nexport { UploaderWithSchema, DSUploader };\nexport default DSUploader;\n"],
|
|
5
|
-
"mappings": "AAAA,YAAY,WAAW;
|
|
6
|
-
"names": [
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
7
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@elliemae/ds-uploader",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.6.0-next.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "ICE MT - Dimsum - Uploader",
|
|
6
6
|
"files": [
|
|
@@ -43,12 +43,12 @@
|
|
|
43
43
|
"indent": 4
|
|
44
44
|
},
|
|
45
45
|
"dependencies": {
|
|
46
|
-
"@elliemae/ds-button": "3.
|
|
47
|
-
"@elliemae/ds-classnames": "3.
|
|
48
|
-
"@elliemae/ds-icons": "3.
|
|
49
|
-
"@elliemae/ds-system": "3.
|
|
50
|
-
"@elliemae/ds-tooltip": "3.
|
|
51
|
-
"@elliemae/ds-utilities": "3.
|
|
46
|
+
"@elliemae/ds-button": "3.6.0-next.0",
|
|
47
|
+
"@elliemae/ds-classnames": "3.6.0-next.0",
|
|
48
|
+
"@elliemae/ds-icons": "3.6.0-next.0",
|
|
49
|
+
"@elliemae/ds-system": "3.6.0-next.0",
|
|
50
|
+
"@elliemae/ds-tooltip": "3.6.0-next.0",
|
|
51
|
+
"@elliemae/ds-utilities": "3.6.0-next.0",
|
|
52
52
|
"react-dropzone": "~10.2.2"
|
|
53
53
|
},
|
|
54
54
|
"devDependencies": {
|