Commit Graph

313 Commits

Author SHA1 Message Date
bjoluc
3855b5d86d
Allow trial on_finish methods to be async (#3182) 2023-11-08 18:37:32 +01:00
Josh de Leeuw
d296962c7e mock the audioplayer module and add tests 2023-11-08 09:55:02 -05:00
Josh de Leeuw
1229ed35f9 initial draft of AudioPlayer class 2023-11-02 16:12:37 -04:00
Josh de Leeuw
7b1ae24f4e add abortTimelineByName() 2023-10-30 13:01:55 -04:00
Josh de Leeuw
6f9d01b2ae added record_data parameter 2023-10-30 09:48:07 -04:00
Josh de Leeuw
5b8a00085d remove hardware API 2023-10-27 09:41:49 -04:00
Josh de Leeuw
c4ccc9aa49 remove exlcusions parameter from initJsPsych() 2023-10-27 09:39:01 -04:00
Josh de Leeuw
2a32590f2c remove max-width on .jspsych-content 2023-10-24 11:13:20 -04:00
Josh de Leeuw
4998825980 change how rows and cols are calculated, change css layout, add example 2023-10-18 14:42:46 -04:00
Josh de Leeuw
dec9bef382 Add grid option, make it default 2023-10-16 11:56:46 -04:00
bjoluc
715a9d130e Upgrade @jspsych/config dependencies 2023-09-05 22:31:04 +02:00
bjoluc
9cac68a140 Merge branch 'main' into core-rewrite 2023-07-13 17:38:45 +02:00
github-actions[bot]
be2f69382c chore(release): version packages 2023-05-17 20:01:29 +00:00
Josh de Leeuw
545ecbaa76 update test case 2023-05-17 15:42:39 -04:00
Josh de Leeuw
c5d3925a17 fix #2859 2023-05-17 12:11:04 -04:00
Josh de Leeuw
7dd439fdcc fix test case, need to pressKey because not simulation 2023-05-17 12:10:43 -04:00
Josh de Leeuw
e0026a3f87 add failing test for #2859 2023-05-17 11:38:05 -04:00
Josh de Leeuw
1032c71eef fix #2862 2023-05-17 11:11:56 -04:00
Josh de Leeuw
5f2b049763 add failing test for #2862 2023-05-17 10:47:54 -04:00
Josh de Leeuw
b6d4b18278 add test case for #2912 2023-05-17 10:30:56 -04:00
Josh de Leeuw
a5e5a21cab fix #2911 2023-05-16 21:35:58 -04:00
Josh de Leeuw
236cac8a21 add deepMerge utility function 2023-05-16 21:35:20 -04:00
Josh de Leeuw
d0a6839ac2 add a test for #2911 2023-05-16 17:45:23 -04:00
Josh de Leeuw
464b0d2387 fix #3008 2023-05-16 12:27:14 -04:00
Josh de Leeuw
831fe2e39f merge 2023-05-16 12:24:51 -04:00
Josh de Leeuw
a72a455fb4 add test case for #3008 2023-05-16 12:22:25 -04:00
Josh de Leeuw
3e8f66f262 ignore undefined / null values for mean() - #2905 2023-05-10 09:43:37 -04:00
dependabot[bot]
9ec358623b
Bump webpack from 5.72.1 to 5.76.0
Bumps [webpack](https://github.com/webpack/webpack) from 5.72.1 to 5.76.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.72.1...v5.76.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-15 01:18:09 +00:00
github-actions[bot]
9a89940c73 chore(release): version packages 2023-03-06 15:42:53 +00:00
Josh de Leeuw
1324361835 Fix defaults for COMPLEX parameter types 2023-03-06 10:09:24 -05:00
bjoluc
0b55a324f2 Fix duplicate on_load invocations in simulation mode 2022-11-24 20:50:58 +01:00
bjoluc
bbdf158564 Fix a typo in a test comment 2022-11-24 17:05:48 +01:00
bjoluc
ab8dbb156d Make getNaiveTrialCount() sample-aware 2022-11-21 13:11:41 +01:00
bjoluc
931a54b57a Misc refactoring in JsPsych.ts 2022-11-21 12:33:39 +01:00
bjoluc
1375339f63 Let TypeScript resolve JSON files in jspsych package 2022-11-21 09:25:51 +01:00
bjoluc
48a5a315fd Replace the lodash-based parameter cache with a custom caching class 2022-11-20 19:43:55 +01:00
bjoluc
810ed7a3d1 Migrate to esbuild 2022-11-18 21:56:30 +01:00
bjoluc
76e7508024 Upgrade Jest to v29 and replace ts-jest with @sucrase/jest-plugin 2022-11-17 21:28:44 +01:00
bjoluc
91f7b681f4 Fix plugin tests 2022-11-15 19:52:59 +01:00
bjoluc
47d98470b7 Update getLatestNode() unit test using toBe() 2022-11-15 18:41:52 +01:00
bjoluc
1b7c318551 Implement a trial-level save_timeline_variables parameter 2022-11-09 17:59:04 +01:00
bjoluc
b80017351c Add changeset 2022-11-09 16:28:31 +01:00
bjoluc
b9d58a67fb Merge branch 'main' into core-rewrite 2022-11-09 15:17:53 +01:00
bjoluc
8318d380c1 Merge branch 'main' into core-rewrite 2022-11-09 15:13:58 +01:00
bjoluc
61ec10779c Run on_timeline_start and on_timeline_finish only once per timeline 2022-11-09 11:12:38 +01:00
bjoluc
f9f99b5c32 Fix skipped tests 2022-11-09 10:10:27 +01:00
bjoluc
2092d12a60 Rename jsPsych.end... functions to jsPsych.abort... and implement abortCurrentTimeline 2022-11-08 22:27:32 +01:00
bjoluc
b6e096a1cc Add missing css_classes unit test 2022-11-08 16:49:36 +01:00
bjoluc
46a3b65cb6 Make absolute import paths relative 2022-11-07 20:51:23 +01:00
bjoluc
7ab7b20f52 Implement simulation mode 2022-11-07 20:40:27 +01:00
bjoluc
677333e6fa Add missing awaits in functions-as-parameters.test.ts 2022-10-28 20:10:38 +02:00
bjoluc
efb31c9078 Fix pluginapi.test.ts 2022-10-28 15:18:40 +02:00
bjoluc
b3eff611d2 Implement extension support by integrating ExtensionManager 2022-10-28 11:28:37 +02:00
bjoluc
6e45aff804 Implement ExtensionManager 2022-10-27 19:44:48 +02:00
bjoluc
5aa986ef0e Implement save_trial_parameters 2022-10-27 14:25:02 +02:00
bjoluc
ed860ac545 Merge TimelineNode interface into abstract TimelineNode base class 2022-10-26 20:36:57 +02:00
bjoluc
89dbfa9875 Adapt implementation to dataparameter.test.ts and fix more data test suites 2022-10-26 20:16:25 +02:00
bjoluc
b9d1eac623 Fix more data test suites 2022-10-26 17:33:12 +02:00
bjoluc
088a974deb Adapt implementation to datamodule.test.ts 2022-10-26 15:43:49 +02:00
bjoluc
f211f6bc53 Enhance progress bar implementation 2022-10-14 20:59:48 +02:00
bjoluc
45a218291b Extract ProgressBar class 2022-10-12 17:43:15 +02:00
github-actions[bot]
0f5181adb6 chore(release): version packages 2022-10-12 14:35:29 +00:00
Josh de Leeuw
dd8f3be5d9
Merge pull request #2754 from javidalpe/main
Fix preload plugin onerror callback
2022-10-12 10:32:25 -04:00
bjoluc
c536be1a05 Remove old timeline node implementation 2022-10-12 15:41:50 +02:00
bjoluc
06d87d0c81 Update more core test files 2022-10-12 11:01:24 +02:00
Josh de Leeuw
a3523ad2a5 fixes #2810 2022-10-11 18:07:24 -04:00
bjoluc
53f5dcac2c Remove getLastResult()
It was based on a misconception on my end
2022-10-11 22:07:51 +02:00
bjoluc
bdaff4aefc Adapt implementation to timelines.test.ts 2022-10-11 21:49:10 +02:00
bjoluc
668fd0edf5 Fix TimelineNodeDependencies integration with JsPsych class 2022-10-11 18:07:19 +02:00
bjoluc
771ee6671e Remove JsPsych dependency from timeline nodes 2022-10-11 17:07:36 +02:00
bjoluc
a45941ad95 Rename randomziation.test.ts => randomization.test.ts
On second thought, I like randomziation. It sounds much more random!
2022-10-11 15:11:17 +02:00
bjoluc
c9326e32bf Add test case for #2808 2022-10-11 14:59:35 +02:00
bjoluc
f23fb33a53 Enhance TestPlugin implementation to slim down unit tests 2022-10-11 14:24:04 +02:00
bjoluc
5f405ce2f7 Rename activeChild to currentChild 2022-10-10 21:28:48 +02:00
bjoluc
530b83e33c Replace some occurrences of toBe() with toEqual() 2022-10-10 21:25:54 +02:00
bjoluc
1220f5c593 Make getParameterValue() respect explicitly undefined object members again 2022-10-10 21:20:41 +02:00
bjoluc
d7f29da8f5 Adapt Timeline tests and implementation according to timeline-variables.test.ts 2022-10-10 20:00:24 +02:00
bjoluc
5b50a92150 Evaluate complex (array) parameter functions 2022-10-10 13:43:05 +02:00
bjoluc
035d2aa1dd Implement global event handlers 2022-10-06 21:59:20 +02:00
bjoluc
deaa602c56 Fix some old core tests and implement endExperiment() 2022-09-30 17:36:35 +02:00
bjoluc
79d2ec3bcd Fix validation of COMPLEX array parameters 2022-09-21 19:13:57 +02:00
bjoluc
a0ef528f3d Implement css_classes and display element focusing via the JsPsych class 2022-09-21 18:16:31 +02:00
Javier Vidal
89e2360073 Implement arrow functions on video and audio preload 2022-08-27 20:21:01 -07:00
Javier Vidal
334e320c9a Fix preload plugin error callback variable scope 2022-08-27 19:45:13 -07:00
github-actions[bot]
e715546aa1 chore(release): version packages 2022-07-20 13:24:31 +00:00
Josh de Leeuw
bac71fcf72
Merge pull request #2649 from jspsych/video-recording
Video Recording Features
2022-07-19 19:43:43 -04:00
Josh de Leeuw
5ddd28cb83 remove .only test 2022-07-14 11:15:25 -04:00
Josh de Leeuw
ac1c2c5477 add test case for fixed-repetitions method (verify #2708) 2022-07-14 11:00:39 -04:00
Josh de Leeuw
936f589ed7 check if video buffer is already a blob when getting buffer (fixes #2704) 2022-07-13 09:28:16 -04:00
Josh de Leeuw
1381f575f5 option to turn on audio for video recordings 2022-07-12 10:33:27 -04:00
Josh de Leeuw
cc9f98d040 Merge branch 'main' into video-recording 2022-07-11 15:25:41 -04:00
Josh de Leeuw
3f53f795bd
Merge pull request #2664 from jspsych/feature-extensions-async-on-finish
Allow asynchronous `on_finish` methods in extensions
2022-07-11 15:25:14 -04:00
Josh de Leeuw
f992f78cd8 don't evaluate functions or timeline varaibles in trials parameter of preload plugin 2022-07-11 15:02:46 -04:00
Josh de Leeuw
ce03ed99d5 skip test that throws an error 2022-07-01 10:21:28 -04:00
Josh de Leeuw
ce55e29f6f use console.warn instead of throwing error 2022-07-01 10:19:09 -04:00
Josh de Leeuw
13be1ef4ef timelineVariable() throws an error when the variable doesn't exist (fixes #2680) 2022-06-24 10:01:31 -04:00
bjoluc
57f2ae4c69 Allow asynchronous on_finish methods in extensions 2022-06-13 21:51:19 +02:00
Josh de Leeuw
d36ab98f04 add getCameraStream to get the stream directly 2022-05-31 16:21:03 -04:00
Josh de Leeuw
7466fc6ee2 add mime type 2022-05-28 14:31:34 -04:00
Josh de Leeuw
ad3dcee9ff add camera recorder to pluginAPI 2022-05-27 16:25:53 -04:00
github-actions[bot]
16fac08078 chore(release): version packages 2022-05-23 18:13:04 +00:00
bjoluc
dc00566142 Include regenerator-runtime in the jspsych Babel build 2022-05-23 19:46:07 +02:00
Josh de Leeuw
4f49a58c09 remove console.log from test 2022-05-19 13:44:06 -04:00
github-actions[bot]
f1fa90eb2c chore(release): version packages 2022-05-19 13:10:19 +00:00
Vijay Marupudi
c84492c87e Use a more efficient method to access the most recent trial 2022-05-15 10:45:01 -05:00
github-actions[bot]
b38a8b94f0 chore(release): version packages 2022-03-13 15:31:28 +00:00
bjoluc
f26d2762d2 Use Math.random() to generate the default seed 2022-03-13 16:14:26 +01:00
bjoluc
bad26ebb08 Use alea PRNG for setSeed() 2022-03-13 15:14:25 +01:00
github-actions[bot]
90c844f890 chore(release): version packages 2022-03-12 23:29:17 +00:00
Josh de Leeuw
c10f21e442 fix for #2497 2022-03-12 18:13:47 -05:00
bjoluc
62b131efae Merge branch 'main' into patch-inline-fonts 2022-03-12 11:26:41 +01:00
Josh de Leeuw
6c216e0d34 fix seed type in test file 2022-03-11 15:19:20 -05:00
bjoluc
05091997db Fix circular dev dependency 🧐 🤯 2022-03-11 20:20:22 +01:00
bjoluc
887c247af2 Merge branch 'main' into feature-seed-rng 2022-03-11 19:34:31 +01:00
Josh de Leeuw
2cea5640f7 use string as seed 2022-03-11 12:31:47 -05:00
Josh de Leeuw
f2f9a00ae0 Merge branch 'main' into feature-seed-rng 2022-03-11 12:26:53 -05:00
Josh de Leeuw
b39b2f8671
Merge pull request #2407 from jspsych/feature-filterColumns
Add `filterColumns`, the opposite of `ignore()`.
2022-03-11 12:22:17 -05:00
Josh de Leeuw
594a7708f9
Update packages/jspsych/tests/data/datacollection.test.ts
Co-authored-by: bjoluc <mail@bjoluc.de>
2022-03-11 12:10:02 -05:00
Josh de Leeuw
4eb61c3e19
Update packages/jspsych/tests/data/datacollection.test.ts
Co-authored-by: bjoluc <mail@bjoluc.de>
2022-03-11 12:09:51 -05:00
Josh de Leeuw
9180ab9671
Update packages/jspsych/src/modules/data/DataCollection.ts
Co-authored-by: bjoluc <mail@bjoluc.de>
2022-03-11 12:09:26 -05:00
bjoluc
60f4d86835 Switch to Sass for jsPsych styles and inline fonts 2022-02-08 16:45:23 +01:00
bjoluc
9ab889f38e Integrate timeline draft with JsPsych class 2022-01-27 23:33:33 +01:00
bjoluc
76a02685d8 Implement basic result data handling 2022-01-13 21:54:09 +01:00
bjoluc
a876d215c0 Implement basic parameter handling 2022-01-13 14:39:21 +01:00
bjoluc
e0b94c3d23 Initial timeline and trial drafts, missing parameter and result handling 2022-01-10 14:01:00 +01:00
Josh de Leeuw
ab1f3214cd add test case for filterColumns 2021-12-17 12:04:04 -05:00
Josh de Leeuw
1cdbcf145b add return value 2021-12-17 12:02:14 -05:00
Josh de Leeuw
aa4acc4152 remove #s 2021-12-17 11:59:11 -05:00
Josh de Leeuw
d56d246a22 add filterColumns method 2021-12-17 11:58:58 -05:00
bjoluc
6f2613cc5c Setup turborepo 2021-12-11 23:28:07 +01:00
bjoluc
eed3e04833 add seedrandom types as a dev dependency 2021-12-11 17:59:49 +01:00
github-actions[bot]
1eef7219e1 chore(release): version packages 2021-12-08 14:24:49 +00:00
Josh de Leeuw
d9b92da1ac fix case where simulation_options is a function that evals to a string 2021-12-07 14:40:22 -05:00
Josh de Leeuw
83b1ba291f add setSeed to randomization 2021-12-07 11:03:48 -05:00
Josh de Leeuw
512ea0115e add seedable as dependency 2021-12-07 10:35:37 -05:00
Josh de Leeuw
e030ece054 remove # 2021-12-07 10:35:15 -05:00
github-actions[bot]
60e6fdf4ca chore(release): version packages 2021-12-06 19:32:29 +00:00
Josh de Leeuw
03375f66a3 fix bug where default simulation mode of data-only didn't work 2021-12-06 13:40:24 -05:00
github-actions[bot]
8f2eee87d0 chore(release): version packages 2021-11-29 20:50:45 +00:00
Josh de Leeuw
308a791a8a add timing test for audio input 2021-11-27 16:30:01 -05:00
bjoluc
7dbc303f90 add MediaRecorder types, polyfill ResizeObserver 2021-11-24 16:51:57 +01:00
Josh de Leeuw
aa0d28f990 make default null 2021-11-23 15:24:17 -05:00
Josh de Leeuw
fdd2ebb0b6 Merge branch 'main' into plugin-audio-input-plugins 2021-11-23 15:13:27 -05:00
Josh de Leeuw
522aa2cdbf
Adding a simulation mode (#2287)
Implements simulation mode in the core library, supporting API features, and plugin support in most plugins.
2021-11-23 15:12:30 -05:00
Josh de Leeuw
3a3d32971c start work on audio-input plugins 2021-11-19 17:00:10 -05:00
Josh de Leeuw
2922bc5dad
Merge pull request #2209 from jspsych/plugin-exclusions
New Plugin: Browser Check
2021-11-05 18:28:14 -04:00
Josh de Leeuw
c7c755efe7 add deprecation warning 2021-10-19 21:57:04 -04:00
bjoluc
1216ace2a3 Implement migration errors
Closes  #2217
2021-10-19 21:57:34 +02:00
Josh de Leeuw
ea3feaa47e allow endExperiment to save data to the final trial 2021-10-18 22:09:57 -04:00
github-actions[bot]
6840b932ad chore(release): version packages 2021-10-01 22:45:10 +00:00