@openchemistry/utils
Advanced tools
Comparing version 0.0.2 to 0.1.0
@@ -6,2 +6,19 @@ # Change Log | ||
<a name="0.1.0"></a> | ||
# [0.1.0](https://github.com/OpenChemistry/oc-web-components/compare/@openchemistry/utils@0.0.2...@openchemistry/utils@0.1.0) (2018-07-25) | ||
### Bug Fixes | ||
* **utils:** Scale colors between 0 and 1 instead of 0 and 255 ([f84ae11](https://github.com/OpenChemistry/oc-web-components/commit/f84ae11)) | ||
### Features | ||
* **utils:** Add default volume display options ([ec113ca](https://github.com/OpenChemistry/oc-web-components/commit/ec113ca)) | ||
* **utils:** Add helper functions for color conversion and array ordering ([2c7177d](https://github.com/OpenChemistry/oc-web-components/commit/2c7177d)) | ||
<a name="0.0.2"></a> | ||
@@ -8,0 +25,0 @@ ## [0.0.2](https://github.com/OpenChemistry/oc-web-components/compare/@openchemistry/utils@0.0.1...@openchemistry/utils@0.0.2) (2018-07-05) |
@@ -39,6 +39,24 @@ var __assign = (this && this.__assign) || Object.assign || function(t) { | ||
}; | ||
var defaultVolumeOptions = { | ||
colors: [ | ||
[1, 0, 0], | ||
[1, 1, 1], | ||
[0, 0, 1] | ||
], | ||
opacity: [ | ||
1, | ||
0, | ||
1 | ||
] | ||
}; | ||
var defaultVisibilityOptions = { | ||
volume: false, | ||
isoSurfaces: true | ||
}; | ||
var defaultDisplayOptions = { | ||
isoSurfaces: defaultIsoSurfaces, | ||
style: defaultStyleOptions, | ||
normalMode: defaultNormalModeOptions | ||
normalMode: defaultNormalModeOptions, | ||
volume: defaultVolumeOptions, | ||
visibility: defaultVisibilityOptions | ||
}; | ||
@@ -63,2 +81,16 @@ function composeIsoSurfaces(isoSurfaces) { | ||
} | ||
function composeVolumeOptions(volumeOptions) { | ||
if (isUndefined(volumeOptions)) { | ||
return defaultVolumeOptions; | ||
} | ||
return __assign({}, defaultVolumeOptions, volumeOptions); | ||
} | ||
function composeVisibilityOptions(visibilityOptions) { | ||
if (isUndefined(visibilityOptions)) { | ||
return defaultVisibilityOptions; | ||
} | ||
else { | ||
return __assign({}, defaultVisibilityOptions, visibilityOptions); | ||
} | ||
} | ||
function composeDisplayOptions(displayOptions) { | ||
@@ -71,5 +103,7 @@ if (isUndefined(displayOptions)) { | ||
style: composeStyleOptions(displayOptions.style), | ||
normalMode: composeNormalModeOptions(displayOptions.normalMode) | ||
normalMode: composeNormalModeOptions(displayOptions.normalMode), | ||
volume: composeVolumeOptions(displayOptions.volume), | ||
visibility: composeVisibilityOptions(displayOptions.visibility) | ||
}; | ||
return optionsOut; | ||
} |
export * from './validation'; | ||
export * from './cjsonToMoljs'; | ||
export * from './display-options'; | ||
export * from './arrays'; | ||
export * from './colors'; |
export * from './validation'; | ||
export * from './cjsonToMoljs'; | ||
export * from './display-options'; | ||
export * from './arrays'; | ||
export * from './colors'; |
{ | ||
"name": "@openchemistry/utils", | ||
"version": "0.0.2", | ||
"version": "0.1.0", | ||
"description": "Utilities to validate and convert cjson chemical data", | ||
@@ -25,3 +25,3 @@ "main": "dist/index.js", | ||
"devDependencies": { | ||
"@openchemistry/types": "^0.3.0", | ||
"@openchemistry/types": "^0.4.0", | ||
"@types/lodash-es": "^4.17.0", | ||
@@ -28,0 +28,0 @@ "typescript": "^2.9.2" |
@@ -1,2 +0,2 @@ | ||
import { IDisplayOptions, IIsoSurfaceOptions, IStyleOptions, INormalModeOptions } from '@openchemistry/types'; | ||
import { IDisplayOptions, IIsoSurfaceOptions, IStyleOptions, INormalModeOptions, IVolumeOptions, IVisibilityOptions } from '@openchemistry/types'; | ||
@@ -38,6 +38,26 @@ export { defaultDisplayOptions, defaultStyleOptions, defaultIsoSurfaces, defaultNormalModeOptions }; | ||
const defaultVolumeOptions: IVolumeOptions = { | ||
colors: [ | ||
[1, 0, 0], | ||
[1, 1, 1], | ||
[0, 0 ,1] | ||
], | ||
opacity: [ | ||
1, | ||
0, | ||
1 | ||
] | ||
}; | ||
const defaultVisibilityOptions: IVisibilityOptions = { | ||
volume: false, | ||
isoSurfaces: true | ||
} | ||
const defaultDisplayOptions: IDisplayOptions = { | ||
isoSurfaces: defaultIsoSurfaces, | ||
style: defaultStyleOptions, | ||
normalMode: defaultNormalModeOptions | ||
normalMode: defaultNormalModeOptions, | ||
volume: defaultVolumeOptions, | ||
visibility: defaultVisibilityOptions | ||
}; | ||
@@ -66,2 +86,17 @@ | ||
function composeVolumeOptions(volumeOptions: IVolumeOptions | undefined) : IVolumeOptions { | ||
if (isUndefined(volumeOptions)) { | ||
return defaultVolumeOptions; | ||
} | ||
return { ...defaultVolumeOptions, ...volumeOptions }; | ||
} | ||
function composeVisibilityOptions(visibilityOptions: IVisibilityOptions | undefined) { | ||
if (isUndefined(visibilityOptions)) { | ||
return defaultVisibilityOptions; | ||
} else { | ||
return { ...defaultVisibilityOptions, ...visibilityOptions}; | ||
} | ||
} | ||
function composeDisplayOptions(displayOptions: IDisplayOptions | undefined) : IDisplayOptions { | ||
@@ -74,5 +109,7 @@ if (isUndefined(displayOptions)) { | ||
style: composeStyleOptions(displayOptions.style), | ||
normalMode: composeNormalModeOptions(displayOptions.normalMode) | ||
normalMode: composeNormalModeOptions(displayOptions.normalMode), | ||
volume: composeVolumeOptions(displayOptions.volume), | ||
visibility: composeVisibilityOptions(displayOptions.visibility) | ||
} | ||
return optionsOut; | ||
} |
export * from './validation'; | ||
export * from './cjsonToMoljs'; | ||
export * from './display-options'; | ||
export * from './arrays'; | ||
export * from './colors'; |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
28410
21
693