@elliemae/ds-imagelibrarymodal 3.4.3-rc.1 → 3.4.3

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.
@@ -17,7 +17,10 @@ var __copyProps = (to, from, except, desc) => {
17
17
  }
18
18
  return to;
19
19
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
+ mod
23
+ ));
21
24
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
22
25
  var DSImageLibraryModal_exports = {};
23
26
  __export(DSImageLibraryModal_exports, {
@@ -26,7 +29,7 @@ __export(DSImageLibraryModal_exports, {
26
29
  });
27
30
  module.exports = __toCommonJS(DSImageLibraryModal_exports);
28
31
  var React = __toESM(require("react"));
29
- var import_react = __toESM(require("react"));
32
+ var import_jsx_runtime = require("react/jsx-runtime");
30
33
  var import_prop_types = __toESM(require("prop-types"));
31
34
  var import_ds_modal = require("@elliemae/ds-modal");
32
35
  var import_ds_shared = require("@elliemae/ds-shared");
@@ -52,7 +55,7 @@ const DSImageLibraryModal = ({
52
55
  ],
53
56
  onSelect = () => null,
54
57
  ...rest
55
- }) => /* @__PURE__ */ import_react.default.createElement(import_ImageLibraryModalImpl.default, {
58
+ }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ImageLibraryModalImpl.default, {
56
59
  confirmLabel,
57
60
  containerProps,
58
61
  disableDoubleClick,
@@ -68,10 +71,12 @@ const DSImageLibraryModal = ({
68
71
  });
69
72
  DSImageLibraryModal.propTypes = {
70
73
  containerProps: import_prop_types.default.shape({}),
71
- imagesData: import_prop_types.default.arrayOf(import_prop_types.default.shape({
72
- url: import_prop_types.default.string,
73
- name: import_prop_types.default.string
74
- })),
74
+ imagesData: import_prop_types.default.arrayOf(
75
+ import_prop_types.default.shape({
76
+ url: import_prop_types.default.string,
77
+ name: import_prop_types.default.string
78
+ })
79
+ ),
75
80
  onSelect: import_prop_types.default.func
76
81
  };
77
82
  var DSImageLibraryModal_default = DSImageLibraryModal;
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/DSImageLibraryModal.tsx", "../../../../scripts/build/transpile/react-shim.js"],
4
4
  "sourcesContent": ["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { MODAL_TYPE } from '@elliemae/ds-modal';\nimport { sizeOptions } from '@elliemae/ds-shared';\nimport ImageLibraryModalImpl from './components/ImageLibraryModalImpl';\n\nconst modalTypes = Object.values(MODAL_TYPE);\n\nconst DSImageLibraryModal = ({\n containerProps = {},\n confirmLabel = 'Add',\n disableDoubleClick = false,\n isOpen = true,\n modalTitle = 'Add Image',\n modalType = modalTypes[2],\n rejectLabel = 'Cancel',\n shouldCloseOnOverlayClick = true,\n size = sizeOptions[3],\n imagesData = [\n {\n url: 'https://www.freeiconspng.com/minicovers/no-image-icon-6.png',\n name: 'no image',\n createdBy: 'user:John Doe',\n createdDate: '0000-01-01 00:00 AM UTC',\n },\n ],\n onSelect = () => null,\n ...rest\n}) => (\n <ImageLibraryModalImpl\n confirmLabel={confirmLabel}\n containerProps={containerProps}\n disableDoubleClick={disableDoubleClick}\n imagesData={imagesData}\n isOpen={isOpen}\n modalTitle={modalTitle}\n modalType={modalType}\n onSelect={onSelect}\n rejectLabel={rejectLabel}\n shouldCloseOnOverlayClick={shouldCloseOnOverlayClick}\n size={size}\n {...rest}\n />\n);\n\n/** Inherits DSModal props */\nDSImageLibraryModal.propTypes = {\n containerProps: PropTypes.shape({}),\n /** List of images src */\n imagesData: PropTypes.arrayOf(\n PropTypes.shape({\n url: PropTypes.string,\n name: PropTypes.string,\n }),\n ),\n /** Handler when user selects an image */\n onSelect: PropTypes.func,\n};\n\nexport { DSImageLibraryModal };\nexport default DSImageLibraryModal;\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,mBAAkB;AAClB,wBAAsB;AACtB,sBAA2B;AAC3B,uBAA4B;AAC5B,mCAAkC;AAElC,MAAM,aAAa,OAAO,OAAO,0BAAU;AAE3C,MAAM,sBAAsB,CAAC;AAAA,EAC3B,iBAAiB,CAAC;AAAA,EAClB,eAAe;AAAA,EACf,qBAAqB;AAAA,EACrB,SAAS;AAAA,EACT,aAAa;AAAA,EACb,YAAY,WAAW;AAAA,EACvB,cAAc;AAAA,EACd,4BAA4B;AAAA,EAC5B,OAAO,6BAAY;AAAA,EACnB,aAAa;AAAA,IACX;AAAA,MACE,KAAK;AAAA,MACL,MAAM;AAAA,MACN,WAAW;AAAA,MACX,aAAa;AAAA,IACf;AAAA,EACF;AAAA,EACA,WAAW,MAAM;AAAA,KACd;AAAA,MAEH,mDAAC;AAAA,EACC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACC,GAAG;AAAA,CACN;AAIF,oBAAoB,YAAY;AAAA,EAC9B,gBAAgB,0BAAU,MAAM,CAAC,CAAC;AAAA,EAElC,YAAY,0BAAU,QACpB,0BAAU,MAAM;AAAA,IACd,KAAK,0BAAU;AAAA,IACf,MAAM,0BAAU;AAAA,EAClB,CAAC,CACH;AAAA,EAEA,UAAU,0BAAU;AACtB;AAGA,IAAO,8BAAQ;",
6
- "names": []
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB;AACA,wBAAsB;AACtB,sBAA2B;AAC3B,uBAA4B;AAC5B,mCAAkC;AAElC,MAAM,aAAa,OAAO,OAAO,0BAAU;AAE3C,MAAM,sBAAsB,CAAC;AAAA,EAC3B,iBAAiB,CAAC;AAAA,EAClB,eAAe;AAAA,EACf,qBAAqB;AAAA,EACrB,SAAS;AAAA,EACT,aAAa;AAAA,EACb,YAAY,WAAW;AAAA,EACvB,cAAc;AAAA,EACd,4BAA4B;AAAA,EAC5B,OAAO,6BAAY;AAAA,EACnB,aAAa;AAAA,IACX;AAAA,MACE,KAAK;AAAA,MACL,MAAM;AAAA,MACN,WAAW;AAAA,MACX,aAAa;AAAA,IACf;AAAA,EACF;AAAA,EACA,WAAW,MAAM;AAAA,KACd;AACL,MACE,4CAAC,6BAAAA,SAAA;AAAA,EACC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACC,GAAG;AAAA,CACN;AAIF,oBAAoB,YAAY;AAAA,EAC9B,gBAAgB,kBAAAC,QAAU,MAAM,CAAC,CAAC;AAAA,EAElC,YAAY,kBAAAA,QAAU;AAAA,IACpB,kBAAAA,QAAU,MAAM;AAAA,MACd,KAAK,kBAAAA,QAAU;AAAA,MACf,MAAM,kBAAAA,QAAU;AAAA,IAClB,CAAC;AAAA,EACH;AAAA,EAEA,UAAU,kBAAAA,QAAU;AACtB;AAGA,IAAO,8BAAQ;",
6
+ "names": ["ImageLibraryModalImpl", "PropTypes"]
7
7
  }
@@ -17,7 +17,10 @@ var __copyProps = (to, from, except, desc) => {
17
17
  }
18
18
  return to;
19
19
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
+ mod
23
+ ));
21
24
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
22
25
  var ImageLibraryModalImpl_exports = {};
23
26
  __export(ImageLibraryModalImpl_exports, {
@@ -25,6 +28,7 @@ __export(ImageLibraryModalImpl_exports, {
25
28
  });
26
29
  module.exports = __toCommonJS(ImageLibraryModalImpl_exports);
27
30
  var React = __toESM(require("react"));
31
+ var import_jsx_runtime = require("react/jsx-runtime");
28
32
  var import_react = __toESM(require("react"));
29
33
  var import_ds_modal = __toESM(require("@elliemae/ds-modal"));
30
34
  var import_ds_spinner = __toESM(require("@elliemae/ds-spinner"));
@@ -77,24 +81,25 @@ class ImageLibraryModalImpl extends import_react.default.PureComponent {
77
81
  } else if (selected && name === selected.name) {
78
82
  extras.ref = (element) => element && element.focus();
79
83
  }
80
- return /* @__PURE__ */ import_react.default.createElement("div", {
81
- key: id || `${name}_${idx}`,
84
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
82
85
  className: elementClassName,
83
86
  onClick: (e) => this.handleElementClick(e, image),
84
87
  onKeyUp: (e) => this.handleElementClick(e, image),
85
88
  role: "button",
86
89
  tabIndex: 0,
87
- ...extras
88
- }, /* @__PURE__ */ import_react.default.createElement("div", {
89
- className: "content"
90
- }, name));
90
+ ...extras,
91
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
92
+ className: "content",
93
+ children: name
94
+ })
95
+ }, id || `${name}_${idx}`);
91
96
  });
92
97
  };
93
- this.renderSpinner = () => /* @__PURE__ */ import_react.default.createElement(import_ds_spinner.default, {
98
+ this.renderSpinner = () => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_spinner.default, {
94
99
  message: "Loading...",
95
100
  size: "m"
96
101
  });
97
- this.renderError = () => /* @__PURE__ */ import_react.default.createElement(import_ds_icons.ImageMissing, {
102
+ this.renderError = () => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_icons.ImageMissing, {
98
103
  color: import_ds_icon.DSIconColors.NEUTRAL,
99
104
  size: import_ds_icon.DSIconSizes.M
100
105
  });
@@ -142,41 +147,66 @@ class ImageLibraryModalImpl extends import_react.default.PureComponent {
142
147
  };
143
148
  }
144
149
  drawDiv(className, content) {
145
- return /* @__PURE__ */ import_react.default.createElement("div", {
146
- className
147
- }, content);
150
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
151
+ className,
152
+ children: content
153
+ });
148
154
  }
149
155
  drawLabel(className, label, value) {
150
- return /* @__PURE__ */ import_react.default.createElement("div", {
151
- className
152
- }, /* @__PURE__ */ import_react.default.createElement("span", {
153
- className: "label"
154
- }, label), /* @__PURE__ */ import_react.default.createElement("span", {
155
- className: "value"
156
- }, value));
156
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
157
+ className,
158
+ children: [
159
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
160
+ className: "label",
161
+ children: label
162
+ }),
163
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", {
164
+ className: "value",
165
+ children: value
166
+ })
167
+ ]
168
+ });
157
169
  }
158
170
  render() {
159
171
  const { selected, user } = this.state;
160
172
  const { containerProps, imagesData, onSelect, disableDoubleClick, ...modalProps } = this.props;
161
- return /* @__PURE__ */ import_react.default.createElement(import_ds_modal.default, {
173
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_modal.default, {
162
174
  containerProps,
163
175
  ...modalProps,
164
176
  className: "em-ds-modal-image-library",
165
- onReject: this.onReject
166
- }, /* @__PURE__ */ import_react.default.createElement("div", {
167
- className: "wrapper"
168
- }, /* @__PURE__ */ import_react.default.createElement("div", {
169
- className: "col-1"
170
- }, this.drawDiv("title", "Company Images"), this.renderElements()), /* @__PURE__ */ import_react.default.createElement("div", {
171
- className: "col-2"
172
- }, this.drawDiv("title", selected ? selected.name : ""), /* @__PURE__ */ import_react.default.createElement(import_react_loading_image.default, {
173
- className: "image-loader",
174
- error: this.renderError,
175
- loading: this.renderSpinner,
176
- src: selected ? selected.url : ""
177
- }), selected && /* @__PURE__ */ import_react.default.createElement("div", {
178
- className: "info"
179
- }, this.drawLabel("info-element", "Created Date:", selected.createdDate), this.drawLabel("info-element", "Created By:", user)))));
177
+ onReject: this.onReject,
178
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
179
+ className: "wrapper",
180
+ children: [
181
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
182
+ className: "col-1",
183
+ children: [
184
+ this.drawDiv("title", "Company Images"),
185
+ this.renderElements()
186
+ ]
187
+ }),
188
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
189
+ className: "col-2",
190
+ children: [
191
+ this.drawDiv("title", selected ? selected.name : ""),
192
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_loading_image.default, {
193
+ className: "image-loader",
194
+ error: this.renderError,
195
+ loading: this.renderSpinner,
196
+ src: selected ? selected.url : ""
197
+ }),
198
+ selected && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
199
+ className: "info",
200
+ children: [
201
+ this.drawLabel("info-element", "Created Date:", selected.createdDate),
202
+ this.drawLabel("info-element", "Created By:", user)
203
+ ]
204
+ })
205
+ ]
206
+ })
207
+ ]
208
+ })
209
+ });
180
210
  }
181
211
  }
182
212
  //# sourceMappingURL=ImageLibraryModalImpl.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/ImageLibraryModalImpl.tsx", "../../../../../scripts/build/transpile/react-shim.js"],
4
4
  "sourcesContent": ["/* eslint-disable max-lines */\nimport React from 'react';\nimport DSModal from '@elliemae/ds-modal';\nimport DSSpinner from '@elliemae/ds-spinner';\nimport { DSIconSizes as ICONS_SIZES, DSIconColors as ICONS_COLORS } from '@elliemae/ds-icon';\nimport { includes } from 'lodash';\nimport ImageLoader from 'react-loading-image';\nimport { ImageMissing } from '@elliemae/ds-icons';\n\nconst elementClassName = 'imglibmodal-element';\n\nexport default class ImageLibraryModalImpl extends React.PureComponent {\n constructor(props) {\n super(props);\n this.state = {\n selected: undefined,\n user: undefined,\n };\n this.preventSpacebarScroll();\n }\n\n componentDidMount() {\n const { imagesData } = this.props;\n if (imagesData) {\n this.handleElementClick({}, imagesData[0]);\n this.focusFirst = true;\n }\n }\n\n getDerivedStateFromProps(nextProps) {\n const { imagesData } = this.props;\n if (!imagesData && nextProps.imagesData) {\n this.setState({ selected: imagesData[0] });\n }\n }\n\n onReject = () => {\n const { onReject, onClose } = this.props;\n if (onReject) {\n onReject();\n } else {\n onClose();\n }\n };\n\n getUser(selected) {\n if (!selected) {\n return '';\n }\n const index = selected.createdBy.lastIndexOf('user:');\n if (index === -1) {\n return selected.createdBy;\n }\n return selected.createdBy.substring(index + 5);\n }\n\n handleElementClick = (e, image) => {\n if (e.key && e.key !== ' ') {\n return;\n }\n const { selected } = this.state;\n const { disableDoubleClick, onConfirm, onSelect } = this.props;\n if (image === selected && onConfirm && !disableDoubleClick) {\n onConfirm();\n return;\n }\n this.setState({\n selected: image,\n user: this.getUser(image),\n });\n if (onSelect) {\n onSelect(image);\n }\n };\n\n preventSpacebarScroll() {\n document.onkeypress = function (e) {\n if (!includes(e.target.className, elementClassName)) {\n return true;\n }\n e = e || window.event;\n const charCode = e.keyCode || e.which;\n if (charCode === 32) {\n e.preventDefault();\n return false;\n }\n return true;\n };\n }\n\n drawDiv(className, content) {\n return <div className={className}>{content}</div>;\n }\n\n drawLabel(className, label, value) {\n return (\n <div className={className}>\n <span className=\"label\">{label}</span>\n <span className=\"value\">{value}</span>\n </div>\n );\n }\n\n renderElements = () => {\n const { imagesData } = this.props;\n if (!imagesData) {\n return 'Empty';\n }\n const { selected } = this.state;\n return imagesData.map((image, idx) => {\n const extras = {};\n const { name, id } = image;\n if (this.focusFirst && idx === 0) {\n extras.ref = (element) => element && element.focus();\n this.focusFirst = undefined;\n } else if (selected && name === selected.name) {\n extras.ref = (element) => element && element.focus();\n }\n return (\n <div\n key={id || `${name}_${idx}`}\n className={elementClassName}\n onClick={(e) => this.handleElementClick(e, image)}\n onKeyUp={(e) => this.handleElementClick(e, image)}\n role=\"button\"\n tabIndex={0}\n {...extras}\n >\n <div className=\"content\">{name}</div>\n </div>\n );\n });\n };\n\n renderSpinner = () => <DSSpinner message=\"Loading...\" size=\"m\" />;\n\n renderError = () => <ImageMissing color={ICONS_COLORS.NEUTRAL} size={ICONS_SIZES.M} />;\n\n render() {\n const { selected, user } = this.state;\n const { containerProps, imagesData, onSelect, disableDoubleClick, ...modalProps } = this.props;\n return (\n <DSModal\n containerProps={containerProps}\n {...modalProps}\n className=\"em-ds-modal-image-library\"\n onReject={this.onReject}\n >\n <div className=\"wrapper\">\n <div className=\"col-1\">\n {this.drawDiv('title', 'Company Images')}\n {this.renderElements()}\n </div>\n <div className=\"col-2\">\n {this.drawDiv('title', selected ? selected.name : '')}\n <ImageLoader\n className=\"image-loader\"\n error={this.renderError}\n loading={this.renderSpinner}\n src={selected ? selected.url : ''}\n />\n {selected && (\n <div className=\"info\">\n {this.drawLabel('info-element', 'Created Date:', selected.createdDate)}\n {this.drawLabel('info-element', 'Created By:', user)}\n </div>\n )}\n </div>\n </div>\n </DSModal>\n );\n }\n}\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": "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",
6
- "names": []
5
+ "mappings": "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",
6
+ "names": ["React", "DSSpinner", "ICONS_COLORS", "ICONS_SIZES", "DSModal", "ImageLoader"]
7
7
  }
package/dist/cjs/index.js CHANGED
@@ -17,7 +17,10 @@ var __copyProps = (to, from, except, desc) => {
17
17
  }
18
18
  return to;
19
19
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
+ mod
23
+ ));
21
24
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
22
25
  var src_exports = {};
23
26
  __export(src_exports, {
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/index.tsx", "../../../../scripts/build/transpile/react-shim.js"],
4
4
  "sourcesContent": ["export { default, DSImageLibraryModal } from './DSImageLibraryModal';\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,iCAA6C;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,iCAA6C;",
6
6
  "names": []
7
7
  }
@@ -1,5 +1,5 @@
1
1
  import * as React from "react";
2
- import React2 from "react";
2
+ import { jsx } from "react/jsx-runtime";
3
3
  import PropTypes from "prop-types";
4
4
  import { MODAL_TYPE } from "@elliemae/ds-modal";
5
5
  import { sizeOptions } from "@elliemae/ds-shared";
@@ -25,7 +25,7 @@ const DSImageLibraryModal = ({
25
25
  ],
26
26
  onSelect = () => null,
27
27
  ...rest
28
- }) => /* @__PURE__ */ React2.createElement(ImageLibraryModalImpl, {
28
+ }) => /* @__PURE__ */ jsx(ImageLibraryModalImpl, {
29
29
  confirmLabel,
30
30
  containerProps,
31
31
  disableDoubleClick,
@@ -41,10 +41,12 @@ const DSImageLibraryModal = ({
41
41
  });
42
42
  DSImageLibraryModal.propTypes = {
43
43
  containerProps: PropTypes.shape({}),
44
- imagesData: PropTypes.arrayOf(PropTypes.shape({
45
- url: PropTypes.string,
46
- name: PropTypes.string
47
- })),
44
+ imagesData: PropTypes.arrayOf(
45
+ PropTypes.shape({
46
+ url: PropTypes.string,
47
+ name: PropTypes.string
48
+ })
49
+ ),
48
50
  onSelect: PropTypes.func
49
51
  };
50
52
  var DSImageLibraryModal_default = DSImageLibraryModal;
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/DSImageLibraryModal.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport PropTypes from 'prop-types';\nimport { MODAL_TYPE } from '@elliemae/ds-modal';\nimport { sizeOptions } from '@elliemae/ds-shared';\nimport ImageLibraryModalImpl from './components/ImageLibraryModalImpl';\n\nconst modalTypes = Object.values(MODAL_TYPE);\n\nconst DSImageLibraryModal = ({\n containerProps = {},\n confirmLabel = 'Add',\n disableDoubleClick = false,\n isOpen = true,\n modalTitle = 'Add Image',\n modalType = modalTypes[2],\n rejectLabel = 'Cancel',\n shouldCloseOnOverlayClick = true,\n size = sizeOptions[3],\n imagesData = [\n {\n url: 'https://www.freeiconspng.com/minicovers/no-image-icon-6.png',\n name: 'no image',\n createdBy: 'user:John Doe',\n createdDate: '0000-01-01 00:00 AM UTC',\n },\n ],\n onSelect = () => null,\n ...rest\n}) => (\n <ImageLibraryModalImpl\n confirmLabel={confirmLabel}\n containerProps={containerProps}\n disableDoubleClick={disableDoubleClick}\n imagesData={imagesData}\n isOpen={isOpen}\n modalTitle={modalTitle}\n modalType={modalType}\n onSelect={onSelect}\n rejectLabel={rejectLabel}\n shouldCloseOnOverlayClick={shouldCloseOnOverlayClick}\n size={size}\n {...rest}\n />\n);\n\n/** Inherits DSModal props */\nDSImageLibraryModal.propTypes = {\n containerProps: PropTypes.shape({}),\n /** List of images src */\n imagesData: PropTypes.arrayOf(\n PropTypes.shape({\n url: PropTypes.string,\n name: PropTypes.string,\n }),\n ),\n /** Handler when user selects an image */\n onSelect: PropTypes.func,\n};\n\nexport { DSImageLibraryModal };\nexport default DSImageLibraryModal;\n"],
5
- "mappings": "AAAA;ACAA;AACA;AACA;AACA;AACA;AAEA,MAAM,aAAa,OAAO,OAAO,UAAU;AAE3C,MAAM,sBAAsB,CAAC;AAAA,EAC3B,iBAAiB,CAAC;AAAA,EAClB,eAAe;AAAA,EACf,qBAAqB;AAAA,EACrB,SAAS;AAAA,EACT,aAAa;AAAA,EACb,YAAY,WAAW;AAAA,EACvB,cAAc;AAAA,EACd,4BAA4B;AAAA,EAC5B,OAAO,YAAY;AAAA,EACnB,aAAa;AAAA,IACX;AAAA,MACE,KAAK;AAAA,MACL,MAAM;AAAA,MACN,WAAW;AAAA,MACX,aAAa;AAAA,IACf;AAAA,EACF;AAAA,EACA,WAAW,MAAM;AAAA,KACd;AAAA,MAEH,qCAAC;AAAA,EACC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACC,GAAG;AAAA,CACN;AAIF,oBAAoB,YAAY;AAAA,EAC9B,gBAAgB,UAAU,MAAM,CAAC,CAAC;AAAA,EAElC,YAAY,UAAU,QACpB,UAAU,MAAM;AAAA,IACd,KAAK,UAAU;AAAA,IACf,MAAM,UAAU;AAAA,EAClB,CAAC,CACH;AAAA,EAEA,UAAU,UAAU;AACtB;AAGA,IAAO,8BAAQ;",
5
+ "mappings": "AAAA,YAAY,WAAW;ACAvB;AACA,OAAO,eAAe;AACtB,SAAS,kBAAkB;AAC3B,SAAS,mBAAmB;AAC5B,OAAO,2BAA2B;AAElC,MAAM,aAAa,OAAO,OAAO,UAAU;AAE3C,MAAM,sBAAsB,CAAC;AAAA,EAC3B,iBAAiB,CAAC;AAAA,EAClB,eAAe;AAAA,EACf,qBAAqB;AAAA,EACrB,SAAS;AAAA,EACT,aAAa;AAAA,EACb,YAAY,WAAW;AAAA,EACvB,cAAc;AAAA,EACd,4BAA4B;AAAA,EAC5B,OAAO,YAAY;AAAA,EACnB,aAAa;AAAA,IACX;AAAA,MACE,KAAK;AAAA,MACL,MAAM;AAAA,MACN,WAAW;AAAA,MACX,aAAa;AAAA,IACf;AAAA,EACF;AAAA,EACA,WAAW,MAAM;AAAA,KACd;AACL,MACE,oBAAC;AAAA,EACC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACC,GAAG;AAAA,CACN;AAIF,oBAAoB,YAAY;AAAA,EAC9B,gBAAgB,UAAU,MAAM,CAAC,CAAC;AAAA,EAElC,YAAY,UAAU;AAAA,IACpB,UAAU,MAAM;AAAA,MACd,KAAK,UAAU;AAAA,MACf,MAAM,UAAU;AAAA,IAClB,CAAC;AAAA,EACH;AAAA,EAEA,UAAU,UAAU;AACtB;AAGA,IAAO,8BAAQ;",
6
6
  "names": []
7
7
  }
@@ -1,4 +1,5 @@
1
1
  import * as React from "react";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
2
3
  import React2 from "react";
3
4
  import DSModal from "@elliemae/ds-modal";
4
5
  import DSSpinner from "@elliemae/ds-spinner";
@@ -51,24 +52,25 @@ class ImageLibraryModalImpl extends React2.PureComponent {
51
52
  } else if (selected && name === selected.name) {
52
53
  extras.ref = (element) => element && element.focus();
53
54
  }
54
- return /* @__PURE__ */ React2.createElement("div", {
55
- key: id || `${name}_${idx}`,
55
+ return /* @__PURE__ */ jsx("div", {
56
56
  className: elementClassName,
57
57
  onClick: (e) => this.handleElementClick(e, image),
58
58
  onKeyUp: (e) => this.handleElementClick(e, image),
59
59
  role: "button",
60
60
  tabIndex: 0,
61
- ...extras
62
- }, /* @__PURE__ */ React2.createElement("div", {
63
- className: "content"
64
- }, name));
61
+ ...extras,
62
+ children: /* @__PURE__ */ jsx("div", {
63
+ className: "content",
64
+ children: name
65
+ })
66
+ }, id || `${name}_${idx}`);
65
67
  });
66
68
  };
67
- this.renderSpinner = () => /* @__PURE__ */ React2.createElement(DSSpinner, {
69
+ this.renderSpinner = () => /* @__PURE__ */ jsx(DSSpinner, {
68
70
  message: "Loading...",
69
71
  size: "m"
70
72
  });
71
- this.renderError = () => /* @__PURE__ */ React2.createElement(ImageMissing, {
73
+ this.renderError = () => /* @__PURE__ */ jsx(ImageMissing, {
72
74
  color: ICONS_COLORS.NEUTRAL,
73
75
  size: ICONS_SIZES.M
74
76
  });
@@ -116,41 +118,66 @@ class ImageLibraryModalImpl extends React2.PureComponent {
116
118
  };
117
119
  }
118
120
  drawDiv(className, content) {
119
- return /* @__PURE__ */ React2.createElement("div", {
120
- className
121
- }, content);
121
+ return /* @__PURE__ */ jsx("div", {
122
+ className,
123
+ children: content
124
+ });
122
125
  }
123
126
  drawLabel(className, label, value) {
124
- return /* @__PURE__ */ React2.createElement("div", {
125
- className
126
- }, /* @__PURE__ */ React2.createElement("span", {
127
- className: "label"
128
- }, label), /* @__PURE__ */ React2.createElement("span", {
129
- className: "value"
130
- }, value));
127
+ return /* @__PURE__ */ jsxs("div", {
128
+ className,
129
+ children: [
130
+ /* @__PURE__ */ jsx("span", {
131
+ className: "label",
132
+ children: label
133
+ }),
134
+ /* @__PURE__ */ jsx("span", {
135
+ className: "value",
136
+ children: value
137
+ })
138
+ ]
139
+ });
131
140
  }
132
141
  render() {
133
142
  const { selected, user } = this.state;
134
143
  const { containerProps, imagesData, onSelect, disableDoubleClick, ...modalProps } = this.props;
135
- return /* @__PURE__ */ React2.createElement(DSModal, {
144
+ return /* @__PURE__ */ jsx(DSModal, {
136
145
  containerProps,
137
146
  ...modalProps,
138
147
  className: "em-ds-modal-image-library",
139
- onReject: this.onReject
140
- }, /* @__PURE__ */ React2.createElement("div", {
141
- className: "wrapper"
142
- }, /* @__PURE__ */ React2.createElement("div", {
143
- className: "col-1"
144
- }, this.drawDiv("title", "Company Images"), this.renderElements()), /* @__PURE__ */ React2.createElement("div", {
145
- className: "col-2"
146
- }, this.drawDiv("title", selected ? selected.name : ""), /* @__PURE__ */ React2.createElement(ImageLoader, {
147
- className: "image-loader",
148
- error: this.renderError,
149
- loading: this.renderSpinner,
150
- src: selected ? selected.url : ""
151
- }), selected && /* @__PURE__ */ React2.createElement("div", {
152
- className: "info"
153
- }, this.drawLabel("info-element", "Created Date:", selected.createdDate), this.drawLabel("info-element", "Created By:", user)))));
148
+ onReject: this.onReject,
149
+ children: /* @__PURE__ */ jsxs("div", {
150
+ className: "wrapper",
151
+ children: [
152
+ /* @__PURE__ */ jsxs("div", {
153
+ className: "col-1",
154
+ children: [
155
+ this.drawDiv("title", "Company Images"),
156
+ this.renderElements()
157
+ ]
158
+ }),
159
+ /* @__PURE__ */ jsxs("div", {
160
+ className: "col-2",
161
+ children: [
162
+ this.drawDiv("title", selected ? selected.name : ""),
163
+ /* @__PURE__ */ jsx(ImageLoader, {
164
+ className: "image-loader",
165
+ error: this.renderError,
166
+ loading: this.renderSpinner,
167
+ src: selected ? selected.url : ""
168
+ }),
169
+ selected && /* @__PURE__ */ jsxs("div", {
170
+ className: "info",
171
+ children: [
172
+ this.drawLabel("info-element", "Created Date:", selected.createdDate),
173
+ this.drawLabel("info-element", "Created By:", user)
174
+ ]
175
+ })
176
+ ]
177
+ })
178
+ ]
179
+ })
180
+ });
154
181
  }
155
182
  }
156
183
  export {
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/components/ImageLibraryModalImpl.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\nimport React from 'react';\nimport DSModal from '@elliemae/ds-modal';\nimport DSSpinner from '@elliemae/ds-spinner';\nimport { DSIconSizes as ICONS_SIZES, DSIconColors as ICONS_COLORS } from '@elliemae/ds-icon';\nimport { includes } from 'lodash';\nimport ImageLoader from 'react-loading-image';\nimport { ImageMissing } from '@elliemae/ds-icons';\n\nconst elementClassName = 'imglibmodal-element';\n\nexport default class ImageLibraryModalImpl extends React.PureComponent {\n constructor(props) {\n super(props);\n this.state = {\n selected: undefined,\n user: undefined,\n };\n this.preventSpacebarScroll();\n }\n\n componentDidMount() {\n const { imagesData } = this.props;\n if (imagesData) {\n this.handleElementClick({}, imagesData[0]);\n this.focusFirst = true;\n }\n }\n\n getDerivedStateFromProps(nextProps) {\n const { imagesData } = this.props;\n if (!imagesData && nextProps.imagesData) {\n this.setState({ selected: imagesData[0] });\n }\n }\n\n onReject = () => {\n const { onReject, onClose } = this.props;\n if (onReject) {\n onReject();\n } else {\n onClose();\n }\n };\n\n getUser(selected) {\n if (!selected) {\n return '';\n }\n const index = selected.createdBy.lastIndexOf('user:');\n if (index === -1) {\n return selected.createdBy;\n }\n return selected.createdBy.substring(index + 5);\n }\n\n handleElementClick = (e, image) => {\n if (e.key && e.key !== ' ') {\n return;\n }\n const { selected } = this.state;\n const { disableDoubleClick, onConfirm, onSelect } = this.props;\n if (image === selected && onConfirm && !disableDoubleClick) {\n onConfirm();\n return;\n }\n this.setState({\n selected: image,\n user: this.getUser(image),\n });\n if (onSelect) {\n onSelect(image);\n }\n };\n\n preventSpacebarScroll() {\n document.onkeypress = function (e) {\n if (!includes(e.target.className, elementClassName)) {\n return true;\n }\n e = e || window.event;\n const charCode = e.keyCode || e.which;\n if (charCode === 32) {\n e.preventDefault();\n return false;\n }\n return true;\n };\n }\n\n drawDiv(className, content) {\n return <div className={className}>{content}</div>;\n }\n\n drawLabel(className, label, value) {\n return (\n <div className={className}>\n <span className=\"label\">{label}</span>\n <span className=\"value\">{value}</span>\n </div>\n );\n }\n\n renderElements = () => {\n const { imagesData } = this.props;\n if (!imagesData) {\n return 'Empty';\n }\n const { selected } = this.state;\n return imagesData.map((image, idx) => {\n const extras = {};\n const { name, id } = image;\n if (this.focusFirst && idx === 0) {\n extras.ref = (element) => element && element.focus();\n this.focusFirst = undefined;\n } else if (selected && name === selected.name) {\n extras.ref = (element) => element && element.focus();\n }\n return (\n <div\n key={id || `${name}_${idx}`}\n className={elementClassName}\n onClick={(e) => this.handleElementClick(e, image)}\n onKeyUp={(e) => this.handleElementClick(e, image)}\n role=\"button\"\n tabIndex={0}\n {...extras}\n >\n <div className=\"content\">{name}</div>\n </div>\n );\n });\n };\n\n renderSpinner = () => <DSSpinner message=\"Loading...\" size=\"m\" />;\n\n renderError = () => <ImageMissing color={ICONS_COLORS.NEUTRAL} size={ICONS_SIZES.M} />;\n\n render() {\n const { selected, user } = this.state;\n const { containerProps, imagesData, onSelect, disableDoubleClick, ...modalProps } = this.props;\n return (\n <DSModal\n containerProps={containerProps}\n {...modalProps}\n className=\"em-ds-modal-image-library\"\n onReject={this.onReject}\n >\n <div className=\"wrapper\">\n <div className=\"col-1\">\n {this.drawDiv('title', 'Company Images')}\n {this.renderElements()}\n </div>\n <div className=\"col-2\">\n {this.drawDiv('title', selected ? selected.name : '')}\n <ImageLoader\n className=\"image-loader\"\n error={this.renderError}\n loading={this.renderSpinner}\n src={selected ? selected.url : ''}\n />\n {selected && (\n <div className=\"info\">\n {this.drawLabel('info-element', 'Created Date:', selected.createdDate)}\n {this.drawLabel('info-element', 'Created By:', user)}\n </div>\n )}\n </div>\n </div>\n </DSModal>\n );\n }\n}\n"],
5
- "mappings": "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",
6
- "names": []
5
+ "mappings": "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",
6
+ "names": ["React"]
7
7
  }
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/index.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export { default, DSImageLibraryModal } from './DSImageLibraryModal';\n"],
5
- "mappings": "AAAA;ACAA;",
6
- "names": []
5
+ "mappings": "AAAA,YAAY,WAAW;ACAvB,SAAS,WAAAA,UAAS,2BAA2B;",
6
+ "names": ["default"]
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elliemae/ds-imagelibrarymodal",
3
- "version": "3.4.3-rc.1",
3
+ "version": "3.4.3",
4
4
  "license": "MIT",
5
5
  "description": "ICE MT - Dimsum - Image Library Modal",
6
6
  "files": [
@@ -43,11 +43,11 @@
43
43
  "indent": 4
44
44
  },
45
45
  "dependencies": {
46
- "@elliemae/ds-icon": "3.4.3-rc.1",
47
- "@elliemae/ds-icons": "3.4.3-rc.1",
48
- "@elliemae/ds-modal": "3.4.3-rc.1",
49
- "@elliemae/ds-shared": "3.4.3-rc.1",
50
- "@elliemae/ds-spinner": "3.4.3-rc.1",
46
+ "@elliemae/ds-icon": "3.4.3",
47
+ "@elliemae/ds-icons": "3.4.3",
48
+ "@elliemae/ds-modal": "3.4.3",
49
+ "@elliemae/ds-shared": "3.4.3",
50
+ "@elliemae/ds-spinner": "3.4.3",
51
51
  "prop-types": "~15.8.1",
52
52
  "react-loading-image": "~0.5.0"
53
53
  },