@elliemae/ds-zoom 3.1.0-next.2 → 3.1.0-next.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.
@@ -53,7 +53,7 @@ __export(DSZoom_exports, {
53
53
  module.exports = __toCommonJS(DSZoom_exports);
54
54
  var React = __toESM(require("react"));
55
55
  var import_react = __toESM(require("react"));
56
- var import_react_desc = require("react-desc");
56
+ var import_ds_utilities = require("@elliemae/ds-utilities");
57
57
  var import_ds_classnames = require("@elliemae/ds-classnames");
58
58
  var import_ds_form = require("@elliemae/ds-form");
59
59
  var import_zoomOptions = __toESM(require("./components/zoomOptions"));
@@ -126,20 +126,20 @@ const DSZoom = (_a) => {
126
126
  }));
127
127
  };
128
128
  const zoomProps = {
129
- className: import_react_desc.PropTypes.string.description("html class attribute"),
130
- containerProps: import_react_desc.PropTypes.object.description("Set of Properties attached to the main container"),
131
- disabled: import_react_desc.PropTypes.bool.description("disable component").defaultValue(false),
132
- value: import_react_desc.PropTypes.oneOfType([import_react_desc.PropTypes.string, import_react_desc.PropTypes.number, import_react_desc.PropTypes.object]).description("current value"),
133
- onChange: import_react_desc.PropTypes.func.description("function called when a new value is selected"),
134
- zoomOptions: import_react_desc.PropTypes.shape({
135
- label: import_react_desc.PropTypes.oneOfType([import_react_desc.PropTypes.string, import_react_desc.PropTypes.number]),
136
- value: import_react_desc.PropTypes.oneOfType([import_react_desc.PropTypes.string, import_react_desc.PropTypes.number]),
137
- default: import_react_desc.PropTypes.bool
129
+ className: import_ds_utilities.PropTypes.string.description("html class attribute"),
130
+ containerProps: import_ds_utilities.PropTypes.object.description("Set of Properties attached to the main container"),
131
+ disabled: import_ds_utilities.PropTypes.bool.description("disable component").defaultValue(false),
132
+ value: import_ds_utilities.PropTypes.oneOfType([import_ds_utilities.PropTypes.string, import_ds_utilities.PropTypes.number, import_ds_utilities.PropTypes.object]).description("current value"),
133
+ onChange: import_ds_utilities.PropTypes.func.description("function called when a new value is selected"),
134
+ zoomOptions: import_ds_utilities.PropTypes.shape({
135
+ label: import_ds_utilities.PropTypes.oneOfType([import_ds_utilities.PropTypes.string, import_ds_utilities.PropTypes.number]),
136
+ value: import_ds_utilities.PropTypes.oneOfType([import_ds_utilities.PropTypes.string, import_ds_utilities.PropTypes.number]),
137
+ default: import_ds_utilities.PropTypes.bool
138
138
  }).description("list of options to display in the select menu")
139
139
  };
140
140
  DSZoom.propTypes = zoomProps;
141
141
  DSZoom.displayName = "DSZoom";
142
- const ZoomWithSchema = (0, import_react_desc.describe)(DSZoom);
142
+ const ZoomWithSchema = (0, import_ds_utilities.describe)(DSZoom);
143
143
  ZoomWithSchema.propTypes = zoomProps;
144
144
  var DSZoom_default = DSZoom;
145
145
  //# sourceMappingURL=DSZoom.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/DSZoom.tsx", "../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["/* eslint-disable indent */\nimport React, { useState } from 'react';\nimport { describe, PropTypes } from 'react-desc';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { DSComboBox } from '@elliemae/ds-form';\nimport zoomDefaultOptions from './components/zoomOptions';\nimport { clean } from './components/utils';\n\nconst DSZoom = ({\n className = '',\n disabled = false,\n value = undefined,\n onChange = () => null,\n containerProps = {},\n zoomOptions = zoomDefaultOptions,\n ...otherProps\n}) => {\n const { cssClassName } = convertPropToCssClassName('zoom-resize', className, {\n disabled,\n });\n const defaultOption = zoomOptions.find((option) => option.default);\n const [menuIsOpen, setMenuIsOpen] = useState(false);\n const [selectedOption, setSelectedOption] = useState(defaultOption);\n const [custom, setCustom] = useState(\n !value\n ? defaultOption\n : {\n label: `${clean(value)}%`,\n value: clean(value),\n id: 'custom',\n },\n );\n const options = [custom, ...zoomOptions.filter((option) => !option.default)];\n\n const currentValue = value || selectedOption?.value || custom?.value || defaultOption?.value;\n\n return (\n <div className={`${cssClassName}`} {...containerProps} {...otherProps}>\n <DSComboBox\n searchable\n disabled={disabled}\n menuIsOpen={menuIsOpen}\n onChange={(valueChange, { action }) => {\n const op = options.find((option) => option.value === valueChange);\n setSelectedOption(op);\n onChange(op);\n setMenuIsOpen(false);\n if (action === 'select-option') {\n document.activeElement.blur();\n }\n }}\n onClickDropdownIndicator={() => setMenuIsOpen(!menuIsOpen)}\n onInputChange={(valueInput, action) => {\n if (valueInput || action.action === 'input-change') {\n if (!valueInput) {\n setCustom(defaultOption);\n onChange(defaultOption);\n } else if (!Number.isNaN(parseInt(valueInput, 10))) {\n const cleanValue = parseInt(valueInput, 10);\n const newOption = {\n label: `${cleanValue}%`,\n value: `${cleanValue}%`,\n id: 'custom',\n };\n setCustom(newOption);\n onChange(newOption);\n }\n }\n setMenuIsOpen(false);\n }}\n options={options}\n value={currentValue}\n />\n </div>\n );\n};\n\nconst zoomProps = {\n className: PropTypes.string.description('html class attribute'),\n containerProps: PropTypes.object.description('Set of Properties attached to the main container'),\n disabled: PropTypes.bool.description('disable component').defaultValue(false),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.object]).description('current value'),\n onChange: PropTypes.func.description('function called when a new value is selected'),\n zoomOptions: PropTypes.shape({\n label: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n default: PropTypes.bool,\n }).description('list of options to display in the select menu'),\n};\n\nDSZoom.propTypes = zoomProps;\nDSZoom.displayName = 'DSZoom';\nconst ZoomWithSchema = describe(DSZoom);\nZoomWithSchema.propTypes = zoomProps;\n\nexport { DSZoom, ZoomWithSchema };\nexport default DSZoom;\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/* eslint-disable indent */\nimport React, { useState } from 'react';\nimport { describe, PropTypes } from '@elliemae/ds-utilities';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { DSComboBox } from '@elliemae/ds-form';\nimport zoomDefaultOptions from './components/zoomOptions';\nimport { clean } from './components/utils';\n\nconst DSZoom = ({\n className = '',\n disabled = false,\n value = undefined,\n onChange = () => null,\n containerProps = {},\n zoomOptions = zoomDefaultOptions,\n ...otherProps\n}) => {\n const { cssClassName } = convertPropToCssClassName('zoom-resize', className, {\n disabled,\n });\n const defaultOption = zoomOptions.find((option) => option.default);\n const [menuIsOpen, setMenuIsOpen] = useState(false);\n const [selectedOption, setSelectedOption] = useState(defaultOption);\n const [custom, setCustom] = useState(\n !value\n ? defaultOption\n : {\n label: `${clean(value)}%`,\n value: clean(value),\n id: 'custom',\n },\n );\n const options = [custom, ...zoomOptions.filter((option) => !option.default)];\n\n const currentValue = value || selectedOption?.value || custom?.value || defaultOption?.value;\n\n return (\n <div className={`${cssClassName}`} {...containerProps} {...otherProps}>\n <DSComboBox\n searchable\n disabled={disabled}\n menuIsOpen={menuIsOpen}\n onChange={(valueChange, { action }) => {\n const op = options.find((option) => option.value === valueChange);\n setSelectedOption(op);\n onChange(op);\n setMenuIsOpen(false);\n if (action === 'select-option') {\n document.activeElement.blur();\n }\n }}\n onClickDropdownIndicator={() => setMenuIsOpen(!menuIsOpen)}\n onInputChange={(valueInput, action) => {\n if (valueInput || action.action === 'input-change') {\n if (!valueInput) {\n setCustom(defaultOption);\n onChange(defaultOption);\n } else if (!Number.isNaN(parseInt(valueInput, 10))) {\n const cleanValue = parseInt(valueInput, 10);\n const newOption = {\n label: `${cleanValue}%`,\n value: `${cleanValue}%`,\n id: 'custom',\n };\n setCustom(newOption);\n onChange(newOption);\n }\n }\n setMenuIsOpen(false);\n }}\n options={options}\n value={currentValue}\n />\n </div>\n );\n};\n\nconst zoomProps = {\n className: PropTypes.string.description('html class attribute'),\n containerProps: PropTypes.object.description('Set of Properties attached to the main container'),\n disabled: PropTypes.bool.description('disable component').defaultValue(false),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.object]).description('current value'),\n onChange: PropTypes.func.description('function called when a new value is selected'),\n zoomOptions: PropTypes.shape({\n label: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n default: PropTypes.bool,\n }).description('list of options to display in the select menu'),\n};\n\nDSZoom.propTypes = zoomProps;\nDSZoom.displayName = 'DSZoom';\nconst ZoomWithSchema = describe(DSZoom);\nZoomWithSchema.propTypes = zoomProps;\n\nexport { DSZoom, ZoomWithSchema };\nexport default DSZoom;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -28,7 +28,7 @@ var __objRest = (source, exclude) => {
28
28
  };
29
29
  import * as React from "react";
30
30
  import React2, { useState } from "react";
31
- import { describe, PropTypes } from "react-desc";
31
+ import { describe, PropTypes } from "@elliemae/ds-utilities";
32
32
  import { convertPropToCssClassName } from "@elliemae/ds-classnames";
33
33
  import { DSComboBox } from "@elliemae/ds-form";
34
34
  import zoomDefaultOptions from "./components/zoomOptions";
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/DSZoom.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable indent */\nimport React, { useState } from 'react';\nimport { describe, PropTypes } from 'react-desc';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { DSComboBox } from '@elliemae/ds-form';\nimport zoomDefaultOptions from './components/zoomOptions';\nimport { clean } from './components/utils';\n\nconst DSZoom = ({\n className = '',\n disabled = false,\n value = undefined,\n onChange = () => null,\n containerProps = {},\n zoomOptions = zoomDefaultOptions,\n ...otherProps\n}) => {\n const { cssClassName } = convertPropToCssClassName('zoom-resize', className, {\n disabled,\n });\n const defaultOption = zoomOptions.find((option) => option.default);\n const [menuIsOpen, setMenuIsOpen] = useState(false);\n const [selectedOption, setSelectedOption] = useState(defaultOption);\n const [custom, setCustom] = useState(\n !value\n ? defaultOption\n : {\n label: `${clean(value)}%`,\n value: clean(value),\n id: 'custom',\n },\n );\n const options = [custom, ...zoomOptions.filter((option) => !option.default)];\n\n const currentValue = value || selectedOption?.value || custom?.value || defaultOption?.value;\n\n return (\n <div className={`${cssClassName}`} {...containerProps} {...otherProps}>\n <DSComboBox\n searchable\n disabled={disabled}\n menuIsOpen={menuIsOpen}\n onChange={(valueChange, { action }) => {\n const op = options.find((option) => option.value === valueChange);\n setSelectedOption(op);\n onChange(op);\n setMenuIsOpen(false);\n if (action === 'select-option') {\n document.activeElement.blur();\n }\n }}\n onClickDropdownIndicator={() => setMenuIsOpen(!menuIsOpen)}\n onInputChange={(valueInput, action) => {\n if (valueInput || action.action === 'input-change') {\n if (!valueInput) {\n setCustom(defaultOption);\n onChange(defaultOption);\n } else if (!Number.isNaN(parseInt(valueInput, 10))) {\n const cleanValue = parseInt(valueInput, 10);\n const newOption = {\n label: `${cleanValue}%`,\n value: `${cleanValue}%`,\n id: 'custom',\n };\n setCustom(newOption);\n onChange(newOption);\n }\n }\n setMenuIsOpen(false);\n }}\n options={options}\n value={currentValue}\n />\n </div>\n );\n};\n\nconst zoomProps = {\n className: PropTypes.string.description('html class attribute'),\n containerProps: PropTypes.object.description('Set of Properties attached to the main container'),\n disabled: PropTypes.bool.description('disable component').defaultValue(false),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.object]).description('current value'),\n onChange: PropTypes.func.description('function called when a new value is selected'),\n zoomOptions: PropTypes.shape({\n label: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n default: PropTypes.bool,\n }).description('list of options to display in the select menu'),\n};\n\nDSZoom.propTypes = zoomProps;\nDSZoom.displayName = 'DSZoom';\nconst ZoomWithSchema = describe(DSZoom);\nZoomWithSchema.propTypes = zoomProps;\n\nexport { DSZoom, ZoomWithSchema };\nexport default DSZoom;\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable indent */\nimport React, { useState } from 'react';\nimport { describe, PropTypes } from '@elliemae/ds-utilities';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { DSComboBox } from '@elliemae/ds-form';\nimport zoomDefaultOptions from './components/zoomOptions';\nimport { clean } from './components/utils';\n\nconst DSZoom = ({\n className = '',\n disabled = false,\n value = undefined,\n onChange = () => null,\n containerProps = {},\n zoomOptions = zoomDefaultOptions,\n ...otherProps\n}) => {\n const { cssClassName } = convertPropToCssClassName('zoom-resize', className, {\n disabled,\n });\n const defaultOption = zoomOptions.find((option) => option.default);\n const [menuIsOpen, setMenuIsOpen] = useState(false);\n const [selectedOption, setSelectedOption] = useState(defaultOption);\n const [custom, setCustom] = useState(\n !value\n ? defaultOption\n : {\n label: `${clean(value)}%`,\n value: clean(value),\n id: 'custom',\n },\n );\n const options = [custom, ...zoomOptions.filter((option) => !option.default)];\n\n const currentValue = value || selectedOption?.value || custom?.value || defaultOption?.value;\n\n return (\n <div className={`${cssClassName}`} {...containerProps} {...otherProps}>\n <DSComboBox\n searchable\n disabled={disabled}\n menuIsOpen={menuIsOpen}\n onChange={(valueChange, { action }) => {\n const op = options.find((option) => option.value === valueChange);\n setSelectedOption(op);\n onChange(op);\n setMenuIsOpen(false);\n if (action === 'select-option') {\n document.activeElement.blur();\n }\n }}\n onClickDropdownIndicator={() => setMenuIsOpen(!menuIsOpen)}\n onInputChange={(valueInput, action) => {\n if (valueInput || action.action === 'input-change') {\n if (!valueInput) {\n setCustom(defaultOption);\n onChange(defaultOption);\n } else if (!Number.isNaN(parseInt(valueInput, 10))) {\n const cleanValue = parseInt(valueInput, 10);\n const newOption = {\n label: `${cleanValue}%`,\n value: `${cleanValue}%`,\n id: 'custom',\n };\n setCustom(newOption);\n onChange(newOption);\n }\n }\n setMenuIsOpen(false);\n }}\n options={options}\n value={currentValue}\n />\n </div>\n );\n};\n\nconst zoomProps = {\n className: PropTypes.string.description('html class attribute'),\n containerProps: PropTypes.object.description('Set of Properties attached to the main container'),\n disabled: PropTypes.bool.description('disable component').defaultValue(false),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.object]).description('current value'),\n onChange: PropTypes.func.description('function called when a new value is selected'),\n zoomOptions: PropTypes.shape({\n label: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n default: PropTypes.bool,\n }).description('list of options to display in the select menu'),\n};\n\nDSZoom.propTypes = zoomProps;\nDSZoom.displayName = 'DSZoom';\nconst ZoomWithSchema = describe(DSZoom);\nZoomWithSchema.propTypes = zoomProps;\n\nexport { DSZoom, ZoomWithSchema };\nexport default DSZoom;\n"],
5
5
  "mappings": "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",
6
6
  "names": []
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elliemae/ds-zoom",
3
- "version": "3.1.0-next.2",
3
+ "version": "3.1.0-next.3",
4
4
  "license": "MIT",
5
5
  "description": "ICE MT - Dimsum - Zoom",
6
6
  "files": [
@@ -46,17 +46,10 @@
46
46
  "reportFile": "tests.xml",
47
47
  "indent": 4
48
48
  },
49
- "scripts": {
50
- "dev": "cross-env NODE_ENV=development node ../../scripts/build/build.mjs --watch",
51
- "test": "node ../../scripts/testing/test.mjs",
52
- "lint": "node ../../scripts/lint.mjs",
53
- "dts": "node ../../scripts/dts.mjs",
54
- "build": "cross-env NODE_ENV=production node ../../scripts/build/build.mjs"
55
- },
56
49
  "dependencies": {
57
- "@elliemae/ds-classnames": "3.1.0-next.2",
58
- "@elliemae/ds-form": "3.1.0-next.2",
59
- "react-desc": "~4.1.3"
50
+ "@elliemae/ds-classnames": "3.1.0-next.3",
51
+ "@elliemae/ds-form": "3.1.0-next.3",
52
+ "@elliemae/ds-utilities": "3.1.0-next.3"
60
53
  },
61
54
  "devDependencies": {
62
55
  "@testing-library/jest-dom": "~5.16.2",
@@ -69,5 +62,13 @@
69
62
  "publishConfig": {
70
63
  "access": "public",
71
64
  "typeSafety": false
65
+ },
66
+ "scripts": {
67
+ "dev": "cross-env NODE_ENV=development node ../../scripts/build/build.mjs --watch",
68
+ "test": "node ../../scripts/testing/test.mjs",
69
+ "lint": "node ../../scripts/lint.mjs",
70
+ "dts": "node ../../scripts/dts.mjs",
71
+ "build": "cross-env NODE_ENV=production node ../../scripts/build/build.mjs",
72
+ "checkDeps": "npx -yes ../ds-codemods check-missing-packages --projectFolderPath=\"./\" --ignorePackagesGlobPattern=\"\" --ignoreFilesGlobPattern=\"**/test-ables/*,**/tests/*\""
72
73
  }
73
- }
74
+ }