@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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@decidables/detectable-elements",
3
- "version": "0.2.5",
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.17.1",
55
+ "@web/test-runner": "^0.18.0",
56
56
  "gulp": "^4.0.2"
57
57
  },
58
58
  "dependencies": {
59
- "@decidables/decidables-elements": "^0.3.5",
60
- "@decidables/detectable-math": "^0.1.5",
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": "^2.8.0"
63
+ "lit": "^3.1.0"
64
64
  },
65
- "gitHead": "071d7fb4aa5d4fcf826f76d9a1452f1730ee558e"
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