Users can interact with an AE timeline in the following ways:
This drop-down menu is used to filter serious events in the data set. The default is set to include all events, but can be manipulated to include events that are only marked as serious or events that are only marked as non-serious. An open-ended black circle marks serious events so they can be viewed in the timeline at a glance.
This drop-down menu displays a listing of the adverse event severity levels in the data set. The default is to display all severity levels. The current severity levels captured are mild, moderate, and severe, which are color coded and displayed in a legend above the timeline.
This drop-down menu displays a list of all of the subject identifiers included in the data set. Each participant is assigned a unique identifier that is associated with their adverse event data. Filtering to view a particular subject ID will only show data for that subject. The default for this filter is set to show data for all subjects.
The chart can be configured to have any number of data filters. Each specified filter has a drop-down menu that is used to filter the visit data that is displayed in the chart.
This drop-down menu can sort the subject IDs included in the timeline data set. This option can sort the data by the participants with the earliest occurring adverse event(s) or the participants that appear first alphabetically in descending order. This option defaults to the earliest occurring events and their related participants.
Displayed in the top right corner of the page, this statement provides the total number of participants in the data set in integers as well as the percentage of participants shown to one decimal place. In the default view, all participant data is included in the chart, or 100%, unless the project team requests otherwise. When filters are used, the data shown in the histogram is manipulated and the number of participant records shown at the top of the page may increase or decrease, depending on the variable selected.
By moving a mouse cursor over a bar in the chart, users can display metadata for some variables. Hovering the cursor over a particular bar will display the reported term of an event, the day the event started, and the day the event stopped. More information about the event can be accessed by clicking on the Subject ID.
Clicking on the Subject ID seen to the left of the bar will load a more detailed view. This view displays the raw data for a participant's adverse events. This view shows the sequence number for the event, the day the event started, the day the event stopped, the reported term, the event's severity/intensity, and if the event is classified as serious or not.
The Back button is only visible if users have clicked on the detailed view for a given participant. Clicking on this button returns users to the default AE Timelines view.
AE Timelines are initialized using JSON data files that match the format created by d3.csv(). The chart requires a data set with one record per adverse event with placeholder rows added for participants who didn't experience any adverse events over the course of the study. The chart uses column names from the AdAM data standard by default, but can be customized to work with any column names as long as the data structure is as expected.
The following columns are expected in a data file used to create an instance of AE Timelines. A sample chart using this configuration is found here.
Settings Variable | Description | Default | Required? |
---|---|---|---|
id_col | Unique Subject Identifier | USUBJID | Y |
seq_col | Sequence Number | AESEQ | Y |
stdy_col | Analysis Start Relative Day | ASTDY | Y |
endy_col | Analysis End Relative Day | AENDY | Y |
term_col | Reported Term | AETERM | Y |
color.value_col | Severity/Intensity | AESEV | Y * |
highlight.value_col | Serious Event | AESER | |
* a coloring variable of some sort is required but it does not have to be AESEV |
No customization is needed to initialize a chart when the data
object contains all default variables above.
Just pass an empty object ({}
) for settings
and initialize the chart like so: aeTimelines('body', {}).init(data)
.
The following data specs and chart settings can be used to create a chart with several custom filters, including Sex, Race and Query Status. The chart also highlights severe AEs and events under query. A sample chart using this configuration is found here.
Settings Variable | Description | Default | Required? |
---|---|---|---|
id_col | Unique Subject Identifier | USUBJID | Y |
seq_col | Sequence Number | AESEQ | Y |
stdy_col | Analysis Start Relative Day | ASTDY | Y |
endy_col | Analysis End Relative Day | AENDY | Y |
term_col | Reported Term | AETERM | Y |
color.value_col | Severity/Intensity | AESEV | Y * |
highlight.value_col | Serious Event | AESER | |
filter | AE Seriousness | AESER | Y |
filter | AE Severity | AESEV | Y |
filter | AE Relationship | AEREL | Y |
filter | AE Outcome | AEOUT | Y |
filter | Site ID | SITEID | Y |
filter | Treatment Arm | ARM | Y |
filter | Sex | SEX | Y |
filter | Race | RACE | Y |
filter | Query Flag ("Y" for yes) | QUERYFL | Y |
* a coloring variable of some sort is required but it does not have to be AESEV |
var settings =
{color:
{value_col: 'AEREL'
,label: 'Relationship'
,values:
['NOT RELATED'
,'UNLIKELY RELATED'
,'POSSIBLY RELATED'
,'PROBABLY RELATED'
,'DEFINITELY RELATED']}
,highlight:
{value_col: 'QUERYFL'
,label: 'Open Query'
,value: 'Y'
,detail_col: 'QUERY'
,attributes:
{'stroke': 'black'
,'stroke-width': '8'
,'fill': 'none'
,'stroke-opacity':"0.2"}}
,custom_marks:
[
{type: 'circle'
,per: ['USUBJID', 'AESEQ', 'wc_value']
,tooltip: 'Serious Adverse Event'
,radius: 6
,attributes:
{'fill-opacity': .5
,'fill': 'None'
,'stroke': 'Red'}
,values: {"AESER": ['Y'] ,"wc_category":["ASTDY"]}}
]
,filters:
[ {value_col: 'AESER', label: 'Serious Event'}
, {value_col: 'AEREL', label: 'Relationship'}
, {value_col: 'AESEV', label: 'Severity/Intensity'}
, {value_col: 'USUBJID', label: 'Subject Identifier'}
, {value_col: 'ARM', label: 'Arm'}
, {value_col: 'SITEID', label: 'Site ID'}
, {value_col: 'SEX', label: 'Sex'}
, {value_col: 'RACE', label: 'Race'}
, {value_col: 'QUERYFL', label: 'Has query?'}
]};
a factory to create a custom Webcharts chart object
returns: chart
Param | Type | Description |
---|---|---|
element | string |
CSS selector identifying the element in which to create the chart |
settings | object |
settings object specifying options for how the chart is to appear and behave. Options defined here overwrite default values; see Configuration |
The custom participantsSelected
event is dispatched to the overall chart wrapper (chart.wrap
) whenever the details for a given participant are viewed (or cleared) by clicking on the y-axis labels in the chart. The event has a custom data
property holding an array with the selected ID when a new participant is selected (["123-456-7"]
) or an empty array when participant details are cleared.
The most straightforward way to customize the AE Timelines is by using a configuration object whose properties describe the behavior and appearance of the chart. Since the AE Timelines is a Webcharts chart
object, many default Webcharts settings are set in the defaultSettings.js file as described below. Refer to the Webcharts documentation for more details on these settings.
In addition to the standard Webcharts settings several custom settings not available in the base Webcharts library have been added to the AE Timelines to facilitate data mapping and other custom functionality. These custom settings are described in detail below. All defaults can be overwritten by users.
The sections below describe each ae-timelines setting as of version 2.1.0.
string
unique identifier variable name
default: "USUBJID"
string
event sequence number variable name
default: "AESEQ"
string
event start day variable name
default: "ASTDY"
string
event end day variable name
default: "AENDY"
string
verbatim adverse event text variable name
default: "AETERM"
object
an object that defines the event color stratification variable, its label, its levels, and their corresponding colors
string
color stratification variable name, usually set to event severity
default: "AESEV"
string
color stratification variable label
default: "Severity/Intensity"
array
an array of stratification values
default:
[
"MILD",
"MODERATE",
"SEVERE"
]
array
an array of stratification colors
default:
[
"#66bd63",
"#fdae61",
"#d73027",
"#377eb8",
"#984ea3",
"#ff7f00",
"#a65628",
"#f781bf",
"#999999"
]
object
an object that defines what events to highlight and how to highlight them
string
event highlighting variable name
default: "AESER"
string
a description of the highlighted event
default: "Serious Event"
string
value of highlight.value_col
that identifies events to highlight
default: "Y"
string
detail of highlighted event variable name
default: none
object
an object of attributes that define highlighted marks
array
an array of filter variables and associated metadata
default: none
string
the name of the filter variable
default: none
string
a description of the filter variable
default: none
array
an array of detail listing variables and associated metadata
default: none
string
the name of the detail variable
default: none
string
a description of the detail variable
default: none
array
an array of custom Webcharts marks
default: none
string
a Webcharts mark type: point, bar, line, or text
default: none
array
an array of variables for each value combination of which a mark is drawn
default: none
string
the tooltip of the custom mark
default: none
object
the attributes of the custom mark
The object below contains each Webcharts setting as of version 2.1.0.
{
x: {
column: 'wc_value',
type: 'linear',
label: null
},
y: {
column: null, // set in syncSettings()
type: 'ordinal',
label: '',
sort: 'earliest',
behavior: 'flex'
},
marks: [
{
type: 'line',
per: null, // set in syncSettings()
tooltip: null, // set in syncSettings()
attributes: {
'stroke-width': 5,
'stroke-opacity': 0.5
}
},
{
type: 'circle',
per: null, // set in syncSettings()
tooltip: null, // set in syncSettings()
attributes: {
'fill-opacity': 0.5,
'stroke-opacity': 0.5
}
}
],
legend: { location: 'top' },
gridlines: 'y',
range_band: 15,
margin: { top: 50 }, // for second x-axis
resizable: true
}
PullRequest | Requester | DateRequested | Branch | Target | Title | ReviewID | Reviewer | ReviewDate | ReviewStatus | MergedBy | DateMerged | ReviewComments | ||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0006 | jwildfire | 2016-04-12T16:42:02Z | reorg | master | Reorg | NONE | jwildfire | 2016-04-13T12:45:53Z | ||||||||
0014 | jwildfire | 2016-05-25T19:38:02Z | reorg-backup | master | Reorg backup | NONE | Nathan Bryant | 2016-06-08T14:47:19Z | ||||||||
0017 | jwildfire | 2016-06-22T20:27:11Z | v1.2.0 | master | V1.2.0 | NONE | jwildfire | 2016-06-22T20:27:22Z | ||||||||
0018 | jwildfire | 2016-06-22T22:03:17Z | v1.2.1 | master | removing custom filter labels for now (creates issues in some situati… | NONE | jwildfire | 2016-06-22T22:03:26Z | ||||||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15230562 | jwildfire | 2017-01-05T00:54:22Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | Is `AESER` required now? If so, does this break backwards compatibility with v1.2.0? | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15230684 | jwildfire | 2017-01-05T00:55:52Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | Adding the marks like this is an elegant solution. 👍👍 | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15231313 | jwildfire | 2017-01-05T01:02:09Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | After reading through the rest of this and reviewing the discussion on #12, I do think we're breaking backwards compatibility. Not a huge deal, we'll just need to go through and update milestones and update package.json. Agree? | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15231888 | jwildfire | 2017-01-05T01:07:35Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | We're going to have to argue about this leading comma insanity eventually 😱 | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15232032 | jwildfire | 2017-01-05T01:09:01Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | Just noting that `sev_vals` is new here for reference. | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15232130 | jwildfire | 2017-01-05T01:10:08Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | comment is out of place. | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15232229 | jwildfire | 2017-01-05T01:11:04Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | note: class:serious is new | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15232370 | jwildfire | 2017-01-05T01:12:41Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | So if the user doesn't provide filters we use the defaults ... seems reasonable ... | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15232474 | jwildfire | 2017-01-05T01:13:56Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | Any specific reason for removing the SOC from the tooltip? Not a huge deal, but I'd lean towards keeping it. | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15232876 | jwildfire | 2017-01-05T01:19:04Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | so `sev_vals` sets the order of axis. default is ['MILD','MODERATE','SEVERE'], which is reasonable, but we probably won't get close to 100% compliance there. What happens if there are other values or the formatting is different ("Mild" instead of "MILD")? Guessing they'll just get tacked on to the legend in alpha order? | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15233006 | jwildfire | 2017-01-05T01:20:26Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | This is only a problem if we don't support the edge case - if rows with AESER="Mild" won't render at all in the chart, and give "Mild" in the legend we have a problem. | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15233090 | jwildfire | 2017-01-05T01:21:23Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | The more I see it the more I like this simplified approach to filters :+1:;; | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15233318 | jwildfire | 2017-01-05T01:23:43Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | is the the ES6 way to clone an object? I like! | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15233501 | jwildfire | 2017-01-05T01:25:24Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | Note: Not going to code review the chunk below since it is fairly low priority and also fairly complex. We can always debug (or just take out the functionality) if it becomes problematic. | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15233899 | jwildfire | 2017-01-05T01:29:28Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | Nice. good call to do this in a separate file. | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15233984 | jwildfire | 2017-01-05T01:30:22Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | skipping code review. can look later if needed. | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15234225 | jwildfire | 2017-01-05T01:33:31Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | Why'd you decide to use this instead of just sticking with:;; ```;; var currentObs = d3.set(chart.filtered_data.map(function (d) { | ;; return d[id_col]; | ;; })).values().length;;; ``` | ||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15234314 | jwildfire | 2017-01-05T01:34:41Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | In other words, why rederive `filtered_data` here instead of just using `chart.filtered_data`? | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15234534 | jwildfire | 2017-01-05T01:37:08Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | Is the class used anywhere? Doesn't hurt either way, I suppose? | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15235070 | jwildfire | 2017-01-05T01:43:07Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | So basically, if these `value_cols` are included in `settings.details_cols` they get a custom `label`. Items in `settings.details_cols` that aren't listed below, just don't get a custom label. Yes? | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15235075 | jwildfire | 2017-01-05T01:43:12Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | This is nice. | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15235113 | jwildfire | 2017-01-05T01:43:37Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | What's this doing? | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15235325 | jwildfire | 2017-01-05T01:46:24Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | The more I think about this the less sure I am it makes sense ... I'll put a comment on the issue. | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15322217 | samussiah | 2017-01-05T15:16:30Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | All my insane formatting gets gets roll'd up and babel'd in the end. But for me it's a matter of aligning everything that can be logically aligned. Plus leading commas make it easier to add items and properties and spot syntax errors (arguably): https://gist.github.com/isaacs/357981 | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15322346 | samussiah | 2017-01-05T15:17:05Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | Yeah, I added that at some point but didn't use it in the end. | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15324654 | samussiah | 2017-01-05T15:27:51Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | It would be nice to be able plot uncoded adverse events, such as early on in the study lifecycle. Alternatively we could modify the tooltip when the user specifies coding terms. | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15325396 | samussiah | 2017-01-05T15:31:13Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | I went with that terminology because it's "controlled" in SDTM. But the user can just specify `sev_vals`. Are you suggesting to just ignore the case of the values? | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15325404 | jwildfire | 2017-01-05T15:31:16Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | 🤔 | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15326252 | samussiah | 2017-01-05T15:35:30Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | You know, I'm still not entirely sure how to deep clone an object, like down into arrays and objects and arrays of objects and so on. But I hate manually syncing multiple settings objects so I like this approach. But as you can see I couldn't get the `marks` to clone :crying_cat_face: | ||||
0022 | jwildfire | 2016-12-17T17:21:44Z | v1.3.0 | master | AE Timelines 2.0.0 | 15326619 | samussiah | 2017-01-05T15:37:23Z | COMMENTED | jwildfire | 2017-02-21T17:08:49Z | Because as far as I can tell, in webCharts `filtered_data` corresponds to the last mark defined, which in this renderer is the SAE marks. So I had to redefine `filtered_data`. | ||||
0023 | jwildfire | 2016-12-17T17:23:50Z | SAEs | v1.3.0 | Visual tweaks for SAEs | NONE | Spencer Childress | 2017-01-04T16:40:45Z | ||||||||
0027 | samussiah | 2017-01-19T22:40:41Z | custom-marks | v1.3.0 | Custom marks. | 18033449 | jwildfire | 2017-01-23T21:47:29Z | COMMENTED | jwildfire | 2017-01-23T21:56:21Z | Can this be used to add multiple "highlight" marks to the legend? | ||||
0027 | samussiah | 2017-01-19T22:40:41Z | custom-marks | v1.3.0 | Custom marks. | 18033931 | jwildfire | 2017-01-23T21:49:52Z | APPROVED | jwildfire | 2017-01-23T21:56:21Z | Looks great. Lines up perfectly with our plan to use arrays of marks for highlighting points of special interest. | ||||
0027 | samussiah | 2017-01-19T22:40:41Z | custom-marks | v1.3.0 | Custom marks. | 18039587 | samussiah | 2017-01-23T22:16:35Z | COMMENTED | jwildfire | 2017-01-23T21:56:21Z | I don't see why the `highlight` parameter couldn't be extended as an array... | ||||
0030 | jwildfire | 2017-03-07T02:10:51Z | v2.0.1 | master | don't render filters with 0 or 1 values. resolves #29 | 25649545 | samussiah | 2017-03-07T22:27:18Z | COMMENTED | jwildfire | 2017-03-13T23:22:50Z | stray | ||||
0030 | jwildfire | 2017-03-07T02:10:51Z | v2.0.1 | master | don't render filters with 0 or 1 values. resolves #29 | 25649591 | samussiah | 2017-03-07T22:27:29Z | COMMENTED | jwildfire | 2017-03-13T23:22:50Z | another stray | ||||
0030 | jwildfire | 2017-03-07T02:10:51Z | v2.0.1 | master | don't render filters with 0 or 1 values. resolves #29 | 25649754 | samussiah | 2017-03-07T22:28:06Z | APPROVED | jwildfire | 2017-03-13T23:22:50Z | Outstanding! Couple stray `console.log()`s in there. | ||||
0038 | jwildfire | 2017-10-16T18:16:05Z | v2.0.3-dev | master | V2.0.3 dev | 69664233 | samussiah | 2017-10-16T19:00:04Z | COMMENTED | jwildfire | 2017-10-16T20:21:18Z | stray log | ||||
0038 | jwildfire | 2017-10-16T18:16:05Z | v2.0.3-dev | master | V2.0.3 dev | 69664409 | samussiah | 2017-10-16T19:00:37Z | APPROVED | jwildfire | 2017-10-16T20:21:18Z | |||||
0042 | samussiah | 2017-12-04T17:49:28Z | v2.0.4-dev | master | v2.0.4-dev | NONE | jwildfire | 2017-12-15T15:50:39Z | ||||||||
0043 | samussiah | 2017-12-04T18:52:06Z | listing-bug | v2.0.4-dev | update to hide detail listing initially | 83024903 | jwildfire | 2017-12-13T00:02:30Z | APPROVED | jwildfire | 2017-12-13T00:02:41Z | 👍 | ||||
0050 | samussiah | 2018-04-02T14:16:03Z | v2.1.0-dev | master | AE Timelines v2.1.0 | NONE | samussiah | 2018-04-24T15:04:40Z | ||||||||
0051 | samussiah | 2018-04-03T18:11:24Z | test-page | master | Test page | 109484680 | pburnsdata | 2018-04-04T20:21:27Z | APPROVED | Spencer Childress | 2018-04-24T15:04:39Z | fantestic | ||||
0052 | samussiah | 2018-04-03T19:15:45Z | settings-schema | v2.1.0-dev | Settings schema | 110110465 | pburnsdata | 2018-04-06T15:35:40Z | APPROVED | Spencer Childress | 2018-04-24T15:04:46Z | |||||
0053 | samussiah | 2018-04-03T19:36:52Z | italicize-population-annotation | v2.1.0-dev | Italicize population annotation | 109107567 | pburnsdata | 2018-04-03T20:37:21Z | APPROVED | Spencer Childress | 2018-04-24T15:04:54Z | |||||
0053 | samussiah | 2018-04-03T19:36:52Z | italicize-population-annotation | v2.1.0-dev | Italicize population annotation | 112545124 | tmbarald | 2018-04-16T18:55:49Z | APPROVED | Spencer Childress | 2018-04-24T15:04:54Z | Fixed on all browsers. | ||||
0054 | samussiah | 2018-04-03T19:46:13Z | fix-color-domain | v2.1.0-dev | Fix color domain | 110112843 | pburnsdata | 2018-04-06T15:42:32Z | APPROVED | Spencer Childress | 2018-04-24T15:05:00Z | |||||
0055 | samussiah | 2018-04-03T20:52:19Z | add-settings-merge | v2.1.0-dev | Add settings merge | 110116071 | pburnsdata | 2018-04-06T15:52:00Z | APPROVED | Spencer Childress | 2018-04-24T15:05:08Z | |||||
0058 | samussiah | 2018-04-24T15:31:39Z | v2.1.0-dev | master | AE Timelines v2.1.0 | 115232688 | tmbarald | 2018-04-25T15:32:35Z | APPROVED | Spencer Childress | 2018-04-27T19:38:36Z | Since we cleared up the sorting issue today, everything is good! | ||||
0059 | samussiah | 2018-04-24T15:32:07Z | test-page | v2.1.0-dev | Test page | NONE | Spencer Childress | 2018-04-24T15:32:49Z | ||||||||
0060 | brittsikora | 2018-04-27T18:19:31Z | brittsikora-patch-1 | master | Updating links | 116058776 | samussiah | 2018-04-27T19:34:43Z | APPROVED | Spencer Childress | 2018-04-27T19:34:48Z | |||||
0061 | rtbailey | 2018-08-09T19:45:12Z | rtbailey-patch-1 | master | Update LICENSE.md | 167535243 | samussiah | 2018-10-23T17:07:07Z | APPROVED | Spencer Childress | 2018-10-23T17:13:13Z | |||||
0065 | samussiah | 2018-12-18T15:56:04Z | dev-v2.1.3 | master | AE Timelines v2.1.3 | 194177632 | rchronowic | 2019-01-18T16:28:19Z | APPROVED | Spencer Childress | 2019-01-18T16:32:25Z | Approved! | ||||
0066 | samussiah | 2018-12-18T15:56:54Z | security-vulnerabilities | dev-v2.1.3 | fix #64 | 186726845 | pburnsdata | 2018-12-19T20:07:24Z | APPROVED | Spencer Childress | 2019-01-18T16:21:46Z | very secure | ||||
0066 | samussiah | 2018-12-18T15:56:54Z | security-vulnerabilities | dev-v2.1.3 | fix #64 | 194090092 | rchronowic | 2019-01-18T13:18:23Z | APPROVED | Spencer Childress | 2019-01-18T16:21:46Z | Approved | ||||
0067 | samussiah | 2018-12-18T15:57:43Z | fix-test-page | dev-v2.1.3 | Fix test page | 186727616 | pburnsdata | 2018-12-19T20:09:28Z | APPROVED | Spencer Childress | 2019-01-18T16:21:58Z | jsdelivrd | ||||
0067 | samussiah | 2018-12-18T15:57:43Z | fix-test-page | dev-v2.1.3 | Fix test page | 194161626 | rchronowic | 2019-01-18T15:55:37Z | APPROVED | Spencer Childress | 2019-01-18T16:21:58Z | Approved | ||||
0068 | samussiah | 2018-12-18T15:58:13Z | scale-y-axis | dev-v2.1.3 | Scale y axis | 186730543 | pburnsdata | 2018-12-19T20:17:12Z | APPROVED | Spencer Childress | 2019-01-18T16:22:05Z | Change made in webcharts | ||||
0068 | samussiah | 2018-12-18T15:58:13Z | scale-y-axis | dev-v2.1.3 | Scale y axis | 194089772 | rchronowic | 2019-01-18T13:17:20Z | APPROVED | Spencer Childress | 2019-01-18T16:22:05Z | |||||
0069 | samussiah | 2018-12-18T15:58:38Z | ignore-placeholder-rows | dev-v2.1.3 | Ignore placeholder rows | 186732906 | pburnsdata | 2018-12-19T20:23:34Z | COMMENTED | Spencer Childress | 2019-01-18T16:22:16Z | nice touch | ||||
0069 | samussiah | 2018-12-18T15:58:38Z | ignore-placeholder-rows | dev-v2.1.3 | Ignore placeholder rows | 186733152 | pburnsdata | 2018-12-19T20:48:32Z | APPROVED | Spencer Childress | 2019-01-18T16:22:16Z | Spencer, is everything in your life modular? | ||||
0069 | samussiah | 2018-12-18T15:58:38Z | ignore-placeholder-rows | dev-v2.1.3 | Ignore placeholder rows | 186750738 | samussiah | 2018-12-19T21:12:22Z | COMMENTED | Spencer Childress | 2019-01-18T16:22:16Z | just my home | ||||
0069 | samussiah | 2018-12-18T15:58:38Z | ignore-placeholder-rows | dev-v2.1.3 | Ignore placeholder rows | 194148862 | rchronowic | 2019-01-18T15:29:56Z | APPROVED | Spencer Childress | 2019-01-18T16:22:16Z | Passed testing in both Firefox and Chrome | ||||
0071 | jwildfire | 2019-03-27T19:48:24Z | dev-v2.1.4 | master | dev-v2.1.4 | 220061748 | samussiah | 2019-03-28T14:37:08Z | APPROVED | Spencer Childress | 2019-03-28T14:37:14Z | |||||
0073 | samussiah | 2019-04-30T17:24:15Z | dev-v2.1.5 | master | Avoid filtering out negative study days. | 232401841 | pburnsdata | 2019-04-30T20:56:37Z | APPROVED | Spencer Childress | 2019-05-01T14:07:54Z | no time indeed -nice regex! | ||||
0075 | dependabot[bot] | 2019-07-12T04:09:52Z | dependabot/npm_and_yarn/lodash-4.17.14 | master | Bump lodash from 4.17.11 to 4.17.14 | 261295934 | samussiah | 2019-07-12T14:36:12Z | APPROVED | Spencer Childress | 2019-07-12T14:37:33Z | |||||
0077 | jwildfire | 2019-08-09T16:50:12Z | dev-v2.1.6 | master | Dev v2.1.6 | 274932957 | pburnsdata | 2019-08-14T14:38:23Z | APPROVED | jwildfire | 2019-08-19T19:39:28Z | Looks good - just need to merge in the changes! | ||||
0078 | jwildfire | 2019-08-09T16:50:44Z | addCustomEvent | dev-v2.1.6 | add participantSelected event. Fix #76 | 274931798 | pburnsdata | 2019-08-14T14:36:46Z | APPROVED | jwildfire | 2019-08-19T19:38:51Z | |||||