@elliemae/ds-portal 3.22.0-next.8 → 3.22.0-rc.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.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/DSPortal.tsx", "../../../../scripts/build/transpile/react-shim.js"],
3
+ "sources": ["../../src/DSPortal.tsx", "../../../../../scripts/build/transpile/react-shim.js"],
4
4
  "sourcesContent": ["/* eslint-disable react/prop-types */\nimport React, { Component } from 'react';\nimport ReactDOM from 'react-dom';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { isFunction, DOCUMENT } from '@elliemae/ds-utilities';\n\nconst blockName = 'portal';\n\nconst canRenderPortal = isFunction(ReactDOM.createPortal);\n\n// TODO: If this is rendered on server, is going to break\n\nclass DSPortal extends Component {\n // eslint-disable-next-line react/static-property-placement\n static defaultProps = { onRender: () => null };\n\n constructor(props) {\n super(props);\n\n this.createPortalContainer = this.createPortalContainer.bind(this);\n this.renderNoPortal = this.renderNoPortal.bind(this);\n }\n\n // eslint-disable-next-line react/state-in-constructor\n state = { isMounted: false };\n\n componentDidMount() {\n const { onRender } = this.props;\n this.portalEl = this.createPortalContainer();\n if (DOCUMENT && this.portalEl) {\n DOCUMENT.body.appendChild(this.portalEl);\n onRender();\n this.setState({ isMounted: true });\n }\n }\n\n componentDidUpdate() {\n if (!canRenderPortal) {\n this.renderNoPortal();\n }\n }\n\n componentWillUnmount() {\n if (this.portalEl) {\n this.portalEl.parentNode.removeChild(this.portalEl);\n }\n }\n\n createPortalContainer() {\n if (!DOCUMENT) return null;\n\n const { className } = this.props;\n const { cssClassName } = convertPropToCssClassName(blockName, className);\n const container = DOCUMENT.createElement('div');\n container.classList.add(cssClassName);\n container.setAttribute('data-testid', 'portal');\n\n return container;\n }\n\n renderNoPortal() {\n const { children } = this.props;\n ReactDOM.unstable_renderSubtreeIntoContainer(this, <div>{children}</div>, this.portalEl);\n }\n\n render() {\n const { children } = this.props;\n const { isMounted } = this.state;\n return !canRenderPortal || !isMounted ? null : ReactDOM.createPortal(children, this.portalEl);\n }\n}\nexport { DSPortal };\nexport default DSPortal;\n", "import * as React from 'react';\nexport { React };\n"],
5
5
  "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;AD8DgC;AA7DvD,mBAAiC;AACjC,uBAAqB;AACrB,2BAA0C;AAC1C,0BAAqC;AAErC,MAAM,YAAY;AAElB,MAAM,sBAAkB,gCAAW,iBAAAA,QAAS,YAAY;AAIxD,MAAM,iBAAiB,uBAAU;AAAA,EAI/B,YAAY,OAAO;AACjB,UAAM,KAAK;AAOb;AAAA,iBAAQ,EAAE,WAAW,MAAM;AALzB,SAAK,wBAAwB,KAAK,sBAAsB,KAAK,IAAI;AACjE,SAAK,iBAAiB,KAAK,eAAe,KAAK,IAAI;AAAA,EACrD;AAAA,EAKA,oBAAoB;AAClB,UAAM,EAAE,SAAS,IAAI,KAAK;AAC1B,SAAK,WAAW,KAAK,sBAAsB;AAC3C,QAAI,gCAAY,KAAK,UAAU;AAC7B,mCAAS,KAAK,YAAY,KAAK,QAAQ;AACvC,eAAS;AACT,WAAK,SAAS,EAAE,WAAW,KAAK,CAAC;AAAA,IACnC;AAAA,EACF;AAAA,EAEA,qBAAqB;AACnB,QAAI,CAAC,iBAAiB;AACpB,WAAK,eAAe;AAAA,IACtB;AAAA,EACF;AAAA,EAEA,uBAAuB;AACrB,QAAI,KAAK,UAAU;AACjB,WAAK,SAAS,WAAW,YAAY,KAAK,QAAQ;AAAA,IACpD;AAAA,EACF;AAAA,EAEA,wBAAwB;AACtB,QAAI,CAAC;AAAU,aAAO;AAEtB,UAAM,EAAE,UAAU,IAAI,KAAK;AAC3B,UAAM,EAAE,aAAa,QAAI,gDAA0B,WAAW,SAAS;AACvE,UAAM,YAAY,6BAAS,cAAc,KAAK;AAC9C,cAAU,UAAU,IAAI,YAAY;AACpC,cAAU,aAAa,eAAe,QAAQ;AAE9C,WAAO;AAAA,EACT;AAAA,EAEA,iBAAiB;AACf,UAAM,EAAE,SAAS,IAAI,KAAK;AAC1B,qBAAAA,QAAS,oCAAoC,MAAM,4CAAC,SAAK,UAAS,GAAQ,KAAK,QAAQ;AAAA,EACzF;AAAA,EAEA,SAAS;AACP,UAAM,EAAE,SAAS,IAAI,KAAK;AAC1B,UAAM,EAAE,UAAU,IAAI,KAAK;AAC3B,WAAO,CAAC,mBAAmB,CAAC,YAAY,OAAO,iBAAAA,QAAS,aAAa,UAAU,KAAK,QAAQ;AAAA,EAC9F;AACF;AAAA;AA1DM,SAEG,eAAe,EAAE,UAAU,MAAM,KAAK;AA0D/C,IAAO,mBAAQ;",
6
6
  "names": ["ReactDOM"]
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/index.tsx", "../../../../scripts/build/transpile/react-shim.js"],
3
+ "sources": ["../../src/index.tsx", "../../../../../scripts/build/transpile/react-shim.js"],
4
4
  "sourcesContent": ["export * from './DSPortal.js';\nexport { default } from './DSPortal.js';\n", "import * as React from 'react';\nexport { React };\n"],
5
5
  "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,wBAAc,0BAAd;AACA,sBAAwB;",
6
6
  "names": []
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/DSPortal.tsx"],
3
+ "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../src/DSPortal.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react/prop-types */\nimport React, { Component } from 'react';\nimport ReactDOM from 'react-dom';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { isFunction, DOCUMENT } from '@elliemae/ds-utilities';\n\nconst blockName = 'portal';\n\nconst canRenderPortal = isFunction(ReactDOM.createPortal);\n\n// TODO: If this is rendered on server, is going to break\n\nclass DSPortal extends Component {\n // eslint-disable-next-line react/static-property-placement\n static defaultProps = { onRender: () => null };\n\n constructor(props) {\n super(props);\n\n this.createPortalContainer = this.createPortalContainer.bind(this);\n this.renderNoPortal = this.renderNoPortal.bind(this);\n }\n\n // eslint-disable-next-line react/state-in-constructor\n state = { isMounted: false };\n\n componentDidMount() {\n const { onRender } = this.props;\n this.portalEl = this.createPortalContainer();\n if (DOCUMENT && this.portalEl) {\n DOCUMENT.body.appendChild(this.portalEl);\n onRender();\n this.setState({ isMounted: true });\n }\n }\n\n componentDidUpdate() {\n if (!canRenderPortal) {\n this.renderNoPortal();\n }\n }\n\n componentWillUnmount() {\n if (this.portalEl) {\n this.portalEl.parentNode.removeChild(this.portalEl);\n }\n }\n\n createPortalContainer() {\n if (!DOCUMENT) return null;\n\n const { className } = this.props;\n const { cssClassName } = convertPropToCssClassName(blockName, className);\n const container = DOCUMENT.createElement('div');\n container.classList.add(cssClassName);\n container.setAttribute('data-testid', 'portal');\n\n return container;\n }\n\n renderNoPortal() {\n const { children } = this.props;\n ReactDOM.unstable_renderSubtreeIntoContainer(this, <div>{children}</div>, this.portalEl);\n }\n\n render() {\n const { children } = this.props;\n const { isMounted } = this.state;\n return !canRenderPortal || !isMounted ? null : ReactDOM.createPortal(children, this.portalEl);\n }\n}\nexport { DSPortal };\nexport default DSPortal;\n"],
5
5
  "mappings": "AAAA,YAAY,WAAW;AC8DgC;AA7DvD,SAAgB,iBAAiB;AACjC,OAAO,cAAc;AACrB,SAAS,iCAAiC;AAC1C,SAAS,YAAY,gBAAgB;AAErC,MAAM,YAAY;AAElB,MAAM,kBAAkB,WAAW,SAAS,YAAY;AAIxD,MAAM,iBAAiB,UAAU;AAAA,EAI/B,YAAY,OAAO;AACjB,UAAM,KAAK;AAOb;AAAA,iBAAQ,EAAE,WAAW,MAAM;AALzB,SAAK,wBAAwB,KAAK,sBAAsB,KAAK,IAAI;AACjE,SAAK,iBAAiB,KAAK,eAAe,KAAK,IAAI;AAAA,EACrD;AAAA,EAKA,oBAAoB;AAClB,UAAM,EAAE,SAAS,IAAI,KAAK;AAC1B,SAAK,WAAW,KAAK,sBAAsB;AAC3C,QAAI,YAAY,KAAK,UAAU;AAC7B,eAAS,KAAK,YAAY,KAAK,QAAQ;AACvC,eAAS;AACT,WAAK,SAAS,EAAE,WAAW,KAAK,CAAC;AAAA,IACnC;AAAA,EACF;AAAA,EAEA,qBAAqB;AACnB,QAAI,CAAC,iBAAiB;AACpB,WAAK,eAAe;AAAA,IACtB;AAAA,EACF;AAAA,EAEA,uBAAuB;AACrB,QAAI,KAAK,UAAU;AACjB,WAAK,SAAS,WAAW,YAAY,KAAK,QAAQ;AAAA,IACpD;AAAA,EACF;AAAA,EAEA,wBAAwB;AACtB,QAAI,CAAC;AAAU,aAAO;AAEtB,UAAM,EAAE,UAAU,IAAI,KAAK;AAC3B,UAAM,EAAE,aAAa,IAAI,0BAA0B,WAAW,SAAS;AACvE,UAAM,YAAY,SAAS,cAAc,KAAK;AAC9C,cAAU,UAAU,IAAI,YAAY;AACpC,cAAU,aAAa,eAAe,QAAQ;AAE9C,WAAO;AAAA,EACT;AAAA,EAEA,iBAAiB;AACf,UAAM,EAAE,SAAS,IAAI,KAAK;AAC1B,aAAS,oCAAoC,MAAM,oBAAC,SAAK,UAAS,GAAQ,KAAK,QAAQ;AAAA,EACzF;AAAA,EAEA,SAAS;AACP,UAAM,EAAE,SAAS,IAAI,KAAK;AAC1B,UAAM,EAAE,UAAU,IAAI,KAAK;AAC3B,WAAO,CAAC,mBAAmB,CAAC,YAAY,OAAO,SAAS,aAAa,UAAU,KAAK,QAAQ;AAAA,EAC9F;AACF;AAAA;AA1DM,SAEG,eAAe,EAAE,UAAU,MAAM,KAAK;AA0D/C,IAAO,mBAAQ;",
6
6
  "names": []
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/index.tsx"],
3
+ "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../src/index.tsx"],
4
4
  "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export * from './DSPortal.js';\nexport { default } from './DSPortal.js';\n"],
5
5
  "mappings": "AAAA,YAAY,WAAW;ACAvB,cAAc;AACd,SAAS,WAAAA,gBAAe;",
6
6
  "names": ["default"]
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elliemae/ds-portal",
3
- "version": "3.22.0-next.8",
3
+ "version": "3.22.0-rc.0",
4
4
  "license": "MIT",
5
5
  "description": "ICE MT - Dimsum - Portal",
6
6
  "files": [
@@ -43,12 +43,17 @@
43
43
  "indent": 4
44
44
  },
45
45
  "dependencies": {
46
- "@elliemae/ds-classnames": "3.22.0-next.8",
47
- "@elliemae/ds-utilities": "3.22.0-next.8"
46
+ "@elliemae/ds-classnames": "3.22.0-rc.0",
47
+ "@elliemae/ds-utilities": "3.22.0-rc.0"
48
48
  },
49
49
  "devDependencies": {
50
- "@elliemae/pui-cli": "~9.0.0-next.17",
51
- "@elliemae/ds-monorepo-devops": "3.22.0-next.8"
50
+ "@elliemae/pui-cli": "~9.0.0-next.22",
51
+ "@testing-library/jest-dom": "~5.16.5",
52
+ "@testing-library/react": "~12.1.3",
53
+ "@testing-library/user-event": "~13.5.0",
54
+ "jest-axe": "^7.0.1",
55
+ "styled-components": "~5.3.9",
56
+ "@elliemae/ds-monorepo-devops": "3.22.0-rc.0"
52
57
  },
53
58
  "peerDependencies": {
54
59
  "react": "^17.0.2",
@@ -59,14 +64,14 @@
59
64
  "typeSafety": false
60
65
  },
61
66
  "scripts": {
62
- "dev": "cross-env NODE_ENV=development node ../../scripts/build/build.mjs --watch",
67
+ "dev": "cross-env NODE_ENV=development node ../../../scripts/build/build.mjs --watch",
63
68
  "test": "pui-cli test --passWithNoTests",
64
- "lint": "node ../../scripts/lint.mjs",
65
- "eslint:fix": "eslint --ext='.js,.jsx,.test.js,.ts,.tsx' --fix --config='../../.eslintrc.js' src/",
66
- "dts": "node ../../scripts/dts.mjs",
67
- "build": "cross-env NODE_ENV=production node ../../scripts/build/build.mjs",
69
+ "lint": "node ../../../scripts/lint.mjs",
70
+ "eslint:fix": "eslint --ext='.js,.jsx,.test.js,.ts,.tsx' --fix --config='../../../.eslintrc.js' src/",
71
+ "dts": "node ../../../scripts/dts.mjs",
72
+ "build": "cross-env NODE_ENV=production node ../../../scripts/build/build.mjs",
68
73
  "dev:build": "pnpm --filter {.}... build",
69
74
  "dev:install": "pnpm --filter {.}... i --no-lockfile && pnpm run dev:build",
70
- "checkDeps": "npm exec ../ds-codemods -- check-missing-packages --projectFolderPath=\"./\" --ignorePackagesGlobPattern=\"\" --ignoreFilesGlobPattern=\"**/test-ables/*,**/tests/*\""
75
+ "checkDeps": "npm exec ../../util/ds-codemods -- check-missing-packages --projectFolderPath=\"./\" --ignorePackagesGlobPattern=\"\" --ignoreFilesGlobPattern=\"**/test-ables/*,**/tests/*\""
71
76
  }
72
77
  }