@decidables/detectable-elements 0.2.5 → 0.2.7
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/CHANGELOG.md +17 -0
- package/lib/detectableElements.esm.js +917 -1454
- package/lib/detectableElements.esm.js.map +1 -1
- package/lib/detectableElements.esm.min.js +225 -227
- package/lib/detectableElements.esm.min.js.map +1 -1
- package/lib/detectableElements.umd.js +917 -1454
- package/lib/detectableElements.umd.js.map +1 -1
- package/lib/detectableElements.umd.min.js +225 -227
- package/lib/detectableElements.umd.min.js.map +1 -1
- package/package.json +6 -6
- package/src/components/rdk-task.js +3 -45
- package/src/components/roc-space.js +2 -45
- package/src/components/sdt-model.js +2 -45
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@decidables/detectable-elements",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.7",
|
|
4
4
|
"description": "detectable-elements: Web Components for visualizing Signal Detection Theory",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"web component",
|
|
@@ -52,15 +52,15 @@
|
|
|
52
52
|
"build": "gulp build"
|
|
53
53
|
},
|
|
54
54
|
"devDependencies": {
|
|
55
|
-
"@web/test-runner": "^0.
|
|
55
|
+
"@web/test-runner": "^0.18.0",
|
|
56
56
|
"gulp": "^4.0.2"
|
|
57
57
|
},
|
|
58
58
|
"dependencies": {
|
|
59
|
-
"@decidables/decidables-elements": "^0.
|
|
60
|
-
"@decidables/detectable-math": "^0.1.
|
|
59
|
+
"@decidables/decidables-elements": "^0.4.1",
|
|
60
|
+
"@decidables/detectable-math": "^0.1.6",
|
|
61
61
|
"d3": "^7.8.5",
|
|
62
62
|
"jstat": "^1.9.6",
|
|
63
|
-
"lit": "^
|
|
63
|
+
"lit": "^3.1.0"
|
|
64
64
|
},
|
|
65
|
-
"gitHead": "
|
|
65
|
+
"gitHead": "84c6fb7df16db2086e9f20496f873e67e05c56b4"
|
|
66
66
|
}
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
import {html, css} from 'lit';
|
|
3
3
|
import * as d3 from 'd3';
|
|
4
4
|
|
|
5
|
+
import {DecidablesMixinResizeable} from '@decidables/decidables-elements';
|
|
6
|
+
|
|
5
7
|
import DetectableElement from '../detectable-element';
|
|
6
8
|
|
|
7
9
|
/*
|
|
@@ -12,7 +14,7 @@ import DetectableElement from '../detectable-element';
|
|
|
12
14
|
Dots; Coherence;
|
|
13
15
|
# Direction, Speed, Lifetime
|
|
14
16
|
*/
|
|
15
|
-
export default class RDKTask extends DetectableElement {
|
|
17
|
+
export default class RDKTask extends DecidablesMixinResizeable(DetectableElement) {
|
|
16
18
|
static get properties() {
|
|
17
19
|
return {
|
|
18
20
|
coherence: {
|
|
@@ -71,22 +73,6 @@ export default class RDKTask extends DetectableElement {
|
|
|
71
73
|
type: Number,
|
|
72
74
|
reflect: false,
|
|
73
75
|
},
|
|
74
|
-
|
|
75
|
-
width: {
|
|
76
|
-
attribute: false,
|
|
77
|
-
type: Number,
|
|
78
|
-
reflect: false,
|
|
79
|
-
},
|
|
80
|
-
height: {
|
|
81
|
-
attribute: false,
|
|
82
|
-
type: Number,
|
|
83
|
-
reflect: false,
|
|
84
|
-
},
|
|
85
|
-
rem: {
|
|
86
|
-
attribute: false,
|
|
87
|
-
type: Number,
|
|
88
|
-
reflect: false,
|
|
89
|
-
},
|
|
90
76
|
};
|
|
91
77
|
}
|
|
92
78
|
|
|
@@ -108,10 +94,6 @@ export default class RDKTask extends DetectableElement {
|
|
|
108
94
|
this.lifetime = 400; // Lifetime of each dot in milliseconds
|
|
109
95
|
this.speed = 50; // Rate of dot movement in pixels per second
|
|
110
96
|
|
|
111
|
-
this.width = NaN; // Width of component in pixels
|
|
112
|
-
this.height = NaN; // Height of component in pixels
|
|
113
|
-
this.rem = NaN; // Pixels per rem for component
|
|
114
|
-
|
|
115
97
|
// Private
|
|
116
98
|
this.firstUpdate = true;
|
|
117
99
|
this.COHERENT = 0; // "Constant" for index to coherent dots
|
|
@@ -192,30 +174,6 @@ export default class RDKTask extends DetectableElement {
|
|
|
192
174
|
return html``;
|
|
193
175
|
}
|
|
194
176
|
|
|
195
|
-
getDimensions() {
|
|
196
|
-
this.width = parseFloat(this.getComputedStyleValue('width'), 10);
|
|
197
|
-
this.height = parseFloat(this.getComputedStyleValue('height'), 10);
|
|
198
|
-
this.rem = parseFloat(getComputedStyle(document.documentElement).getPropertyValue('font-size'), 10);
|
|
199
|
-
// console.log(`rdk-task: width = ${this.width}, height = ${this.height}, rem = ${this.rem}`);
|
|
200
|
-
}
|
|
201
|
-
|
|
202
|
-
connectedCallback() {
|
|
203
|
-
super.connectedCallback();
|
|
204
|
-
window.addEventListener('resize', this.getDimensions.bind(this));
|
|
205
|
-
}
|
|
206
|
-
|
|
207
|
-
disconnectedCallback() {
|
|
208
|
-
window.removeEventListener('resize', this.getDimensions.bind(this));
|
|
209
|
-
super.disconnectedCallback();
|
|
210
|
-
}
|
|
211
|
-
|
|
212
|
-
firstUpdated(changedProperties) {
|
|
213
|
-
super.firstUpdated(changedProperties);
|
|
214
|
-
|
|
215
|
-
// Get the width and height after initial render/update has occurred
|
|
216
|
-
this.getDimensions();
|
|
217
|
-
}
|
|
218
|
-
|
|
219
177
|
update(changedProperties) {
|
|
220
178
|
super.update(changedProperties);
|
|
221
179
|
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
import {html, css} from 'lit';
|
|
3
3
|
import * as d3 from 'd3';
|
|
4
4
|
|
|
5
|
+
import {DecidablesMixinResizeable} from '@decidables/decidables-elements';
|
|
5
6
|
import SDTMath from '@decidables/detectable-math';
|
|
6
7
|
|
|
7
8
|
import DetectableElement from '../detectable-element';
|
|
@@ -23,7 +24,7 @@ import DetectableElement from '../detectable-element';
|
|
|
23
24
|
Styles:
|
|
24
25
|
??
|
|
25
26
|
*/
|
|
26
|
-
export default class ROCSpace extends DetectableElement {
|
|
27
|
+
export default class ROCSpace extends DecidablesMixinResizeable(DetectableElement) {
|
|
27
28
|
static get properties() {
|
|
28
29
|
return {
|
|
29
30
|
contour: {
|
|
@@ -79,22 +80,6 @@ export default class ROCSpace extends DetectableElement {
|
|
|
79
80
|
type: Number,
|
|
80
81
|
reflect: false,
|
|
81
82
|
},
|
|
82
|
-
|
|
83
|
-
width: {
|
|
84
|
-
attribute: false,
|
|
85
|
-
type: Number,
|
|
86
|
-
reflect: false,
|
|
87
|
-
},
|
|
88
|
-
height: {
|
|
89
|
-
attribute: false,
|
|
90
|
-
type: Number,
|
|
91
|
-
reflect: false,
|
|
92
|
-
},
|
|
93
|
-
rem: {
|
|
94
|
-
attribute: false,
|
|
95
|
-
type: Number,
|
|
96
|
-
reflect: false,
|
|
97
|
-
},
|
|
98
83
|
};
|
|
99
84
|
}
|
|
100
85
|
|
|
@@ -137,10 +122,6 @@ export default class ROCSpace extends DetectableElement {
|
|
|
137
122
|
this.isoDArray = [];
|
|
138
123
|
this.isoCArray = [];
|
|
139
124
|
|
|
140
|
-
this.width = NaN;
|
|
141
|
-
this.height = NaN;
|
|
142
|
-
this.rem = NaN;
|
|
143
|
-
|
|
144
125
|
this.alignState();
|
|
145
126
|
}
|
|
146
127
|
|
|
@@ -382,30 +363,6 @@ export default class ROCSpace extends DetectableElement {
|
|
|
382
363
|
`;
|
|
383
364
|
}
|
|
384
365
|
|
|
385
|
-
getDimensions() {
|
|
386
|
-
this.width = parseFloat(this.getComputedStyleValue('width'), 10);
|
|
387
|
-
this.height = parseFloat(this.getComputedStyleValue('height'), 10);
|
|
388
|
-
this.rem = parseFloat(getComputedStyle(document.documentElement).getPropertyValue('font-size'), 10);
|
|
389
|
-
// console.log(`roc-space: width = ${this.width}, height = ${this.height}, rem = ${this.rem}`);
|
|
390
|
-
}
|
|
391
|
-
|
|
392
|
-
connectedCallback() {
|
|
393
|
-
super.connectedCallback();
|
|
394
|
-
window.addEventListener('resize', this.getDimensions.bind(this));
|
|
395
|
-
}
|
|
396
|
-
|
|
397
|
-
disconnectedCallback() {
|
|
398
|
-
window.removeEventListener('resize', this.getDimensions.bind(this));
|
|
399
|
-
super.disconnectedCallback();
|
|
400
|
-
}
|
|
401
|
-
|
|
402
|
-
firstUpdated(changedProperties) {
|
|
403
|
-
super.firstUpdated(changedProperties);
|
|
404
|
-
|
|
405
|
-
// Get the width and height after initial render/update has occurred
|
|
406
|
-
this.getDimensions();
|
|
407
|
-
}
|
|
408
|
-
|
|
409
366
|
update(changedProperties) {
|
|
410
367
|
super.update(changedProperties);
|
|
411
368
|
|
|
@@ -3,6 +3,7 @@ import {html, css} from 'lit';
|
|
|
3
3
|
import * as d3 from 'd3';
|
|
4
4
|
import jStat from 'jstat';
|
|
5
5
|
|
|
6
|
+
import {DecidablesMixinResizeable} from '@decidables/decidables-elements';
|
|
6
7
|
import SDTMath from '@decidables/detectable-math';
|
|
7
8
|
|
|
8
9
|
import DetectableElement from '../detectable-element';
|
|
@@ -21,7 +22,7 @@ import DetectableElement from '../detectable-element';
|
|
|
21
22
|
Styles:
|
|
22
23
|
??
|
|
23
24
|
*/
|
|
24
|
-
export default class SDTModel extends DetectableElement {
|
|
25
|
+
export default class SDTModel extends DecidablesMixinResizeable(DetectableElement) {
|
|
25
26
|
static get properties() {
|
|
26
27
|
return {
|
|
27
28
|
color: {
|
|
@@ -100,22 +101,6 @@ export default class SDTModel extends DetectableElement {
|
|
|
100
101
|
type: Array,
|
|
101
102
|
reflect: false,
|
|
102
103
|
},
|
|
103
|
-
|
|
104
|
-
width: {
|
|
105
|
-
attribute: false,
|
|
106
|
-
type: Number,
|
|
107
|
-
reflect: false,
|
|
108
|
-
},
|
|
109
|
-
height: {
|
|
110
|
-
attribute: false,
|
|
111
|
-
type: Number,
|
|
112
|
-
reflect: false,
|
|
113
|
-
},
|
|
114
|
-
rem: {
|
|
115
|
-
attribute: false,
|
|
116
|
-
type: Number,
|
|
117
|
-
reflect: false,
|
|
118
|
-
},
|
|
119
104
|
};
|
|
120
105
|
}
|
|
121
106
|
|
|
@@ -144,10 +129,6 @@ export default class SDTModel extends DetectableElement {
|
|
|
144
129
|
this.responses = ['present', 'absent']; // Allowable values of trial.response
|
|
145
130
|
this.trials = []; // Array of simulated trials
|
|
146
131
|
|
|
147
|
-
this.width = NaN; // Width of component in pixels
|
|
148
|
-
this.height = NaN; // Height of component in pixels
|
|
149
|
-
this.rem = NaN; // Pixels per rem for component
|
|
150
|
-
|
|
151
132
|
// Private
|
|
152
133
|
this.muN = NaN; // Mean of noise distribution
|
|
153
134
|
this.muS = NaN; // Mean of signal distribution
|
|
@@ -496,30 +477,6 @@ export default class SDTModel extends DetectableElement {
|
|
|
496
477
|
}));
|
|
497
478
|
}
|
|
498
479
|
|
|
499
|
-
getDimensions() {
|
|
500
|
-
this.width = parseFloat(this.getComputedStyleValue('width'), 10);
|
|
501
|
-
this.height = parseFloat(this.getComputedStyleValue('height'), 10);
|
|
502
|
-
this.rem = parseFloat(getComputedStyle(document.documentElement).getPropertyValue('font-size'), 10);
|
|
503
|
-
// console.log(`sdt-model: width = ${this.width}, height = ${this.height}, rem = ${this.rem}`);
|
|
504
|
-
}
|
|
505
|
-
|
|
506
|
-
connectedCallback() {
|
|
507
|
-
super.connectedCallback();
|
|
508
|
-
window.addEventListener('resize', this.getDimensions.bind(this));
|
|
509
|
-
}
|
|
510
|
-
|
|
511
|
-
disconnectedCallback() {
|
|
512
|
-
window.removeEventListener('resize', this.getDimensions.bind(this));
|
|
513
|
-
super.disconnectedCallback();
|
|
514
|
-
}
|
|
515
|
-
|
|
516
|
-
firstUpdated(changedProperties) {
|
|
517
|
-
super.firstUpdated(changedProperties);
|
|
518
|
-
|
|
519
|
-
// Get the width and height after initial render/update has occurred
|
|
520
|
-
this.getDimensions();
|
|
521
|
-
}
|
|
522
|
-
|
|
523
480
|
update(changedProperties) {
|
|
524
481
|
super.update(changedProperties);
|
|
525
482
|
|