aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlonkaars <loek@pipeframe.xyz>2021-07-25 12:06:34 +0200
committerlonkaars <loek@pipeframe.xyz>2021-07-25 12:06:34 +0200
commit3d396c2a11784a755fa96bb5031250c5d3d52e9e (patch)
tree0a28850259eb76d035c93b8ac4633be1c7779c8a
parentda26ec8a8cec5406850a2529b861201148592835 (diff)
mostly working?
-rw-r--r--components/videosourcesettings.tsx3
-rw-r--r--pages/editor.tsx73
-rw-r--r--yarn.lock115
3 files changed, 45 insertions, 146 deletions
diff --git a/components/videosourcesettings.tsx b/components/videosourcesettings.tsx
index 35e180c..345aea1 100644
--- a/components/videosourcesettings.tsx
+++ b/components/videosourcesettings.tsx
@@ -33,7 +33,8 @@ export function LocalVideoSettings(props: VideoSourceSettings) {
var reader = new FileReader();
reader.addEventListener('load', ev => {
var video = ev.target.result as ArrayBuffer;
- props.settings.load(video);
+ props.settings.source = video;
+ props.settings.getVideoInfo();
props.settings.mimetype = file.type;
props.player.loadVideo(arrayBufferToBase64(video, file.type));
props.global.update.refreshLiveTimeline.value();
diff --git a/pages/editor.tsx b/pages/editor.tsx
index 1ae1587..c8de635 100644
--- a/pages/editor.tsx
+++ b/pages/editor.tsx
@@ -61,7 +61,8 @@ var keyframeInAnimations: { [key: string]: { x: number; y: number; }; } = {};
var slideAPIs: { [key: string]: any; }[] = [];
var player = new TimedVideoPlayer();
-var projectFile = new Project();
+var project = new Project();
+player.project = project;
export interface globalState {
timeline: {
@@ -140,7 +141,7 @@ var global = createState<globalState>({
type: 'default',
clickThroughBehaviour: 'ImmediatelySkip',
};
- projectFile.timeline = player.timeline;
+ project.timeline = player.timeline;
},
},
});
@@ -497,7 +498,7 @@ function TimelineSelection(props: { selectionDragArea: Ref<ReactNode>; }) {
selectionPosAPI.start({ visibility: 0 });
} else {
var endingFrame = startingFrame + frameWidth;
- var expandedTimeline = new Array(...projectFile.timeline);
+ var expandedTimeline = new Array(...project.timeline);
for (let i = 0; i < expandedTimeline.length; i++) {
var slide = expandedTimeline[i];
if (slide.type != 'loop') continue;
@@ -656,7 +657,7 @@ function divs(int: number) {
function getMarkerSpacing() {
var zoom = global.timeline.zoom.value;
var frameWidth = zoomToPx(zoom);
- var divvable = divs(Math.round(projectFile?.video?.framerate));
+ var divvable = divs(Math.round(project?.video?.framerate));
if (divvable.length == 0) return 30;
var minSpacing = 120;
var multiply = 1;
@@ -709,7 +710,7 @@ function TimelineEditor() {
useMousetrap(['.'], () => { // TODO: dry
if (!global.ready.timeline.value) return;
- var frame = Math.min(projectFile?.video?.framecount, global.timeline.frame.value + 1);
+ var frame = Math.min(project?.video?.framecount, global.timeline.frame.value + 1);
global.timeline.frame.set(frame);
scrubberSpring.start({ frame });
});
@@ -919,7 +920,7 @@ function TimelineEditor() {
</animated.div>
<div
className='keyframes'
- style={{ '--total-frames': projectFile?.video?.framecount } as CSSProperties}
+ style={{ '--total-frames': project?.video?.framecount } as CSSProperties}
>
<div className='selectionarea posabs v0' ref={selectionDragArea} />
{workingTimeline.map(slide =>
@@ -960,9 +961,9 @@ function DefaultSettings() {
<div className='sidebyside'>
<span className='body'>Allow remote control during presentation</span>
<Switch
- value={projectFile.settings.remotes.AllowRemotes}
+ value={project.settings.remotes.AllowRemotes}
onChange={() => {
- projectFile.settings.remotes.AllowRemotes = !projectFile.settings.remotes.AllowRemotes;
+ project.settings.remotes.AllowRemotes = !project.settings.remotes.AllowRemotes;
rerender();
}}
/>
@@ -970,9 +971,9 @@ function DefaultSettings() {
<FormControl variant='filled'>
<InputLabel>On-screen controls</InputLabel>
<Select
- value={projectFile.settings.controls.ControlType}
+ value={project.settings.controls.ControlType}
onChange={e => {
- projectFile.settings.controls.ControlType = e.target
+ project.settings.controls.ControlType = e.target
.value as PresentationSettings['controls']['ControlType'];
rerender();
}}
@@ -1025,25 +1026,25 @@ function DefaultSettings() {
<span className='title'>Keybindings</span>
<KeybindSelector
label='Next slide'
- value={projectFile.settings.keybindings.NextSlide}
+ value={project.settings.keybindings.NextSlide}
onChange={e => {
- projectFile.settings.keybindings.NextSlide = e;
+ project.settings.keybindings.NextSlide = e;
rerender();
}}
/>
<KeybindSelector
label='Previous slide'
- value={projectFile.settings.keybindings.PreviousSlide}
+ value={project.settings.keybindings.PreviousSlide}
onChange={e => {
- projectFile.settings.keybindings.PreviousSlide = e;
+ project.settings.keybindings.PreviousSlide = e;
rerender();
}}
/>
<KeybindSelector
label='Show menu'
- value={projectFile.settings.keybindings.ShowMenu}
+ value={project.settings.keybindings.ShowMenu}
onChange={e => {
- projectFile.settings.keybindings.ShowMenu = e;
+ project.settings.keybindings.ShowMenu = e;
rerender();
}}
/>
@@ -1053,9 +1054,9 @@ function DefaultSettings() {
<FormControl variant='filled'>
<InputLabel>Video source</InputLabel>
<Select
- value={projectFile.video?.type || ''}
+ value={project.video?.type || ''}
onChange={e => {
- projectFile.video = new (VideoSources.find(s =>
+ project.video = new (VideoSources.find(s =>
s.type == e.target.value as VideoSourceType
).class)();
rerender();
@@ -1066,9 +1067,9 @@ function DefaultSettings() {
</Select>
</FormControl>
{(() => {
- if (!projectFile.video) return null;
- var SourceSettings = VideoSources.find(s => s.type == projectFile.video.type).settings;
- return <SourceSettings settings={projectFile.video} player={player} global={global} />;
+ if (!project.video) return null;
+ var SourceSettings = VideoSources.find(s => s.type == project.video.type).settings;
+ return <SourceSettings settings={project.video} player={player} global={global} />;
})()}
</div>
<div className={'section ' + (ready.timeline.value ? '' : 'disabled')}>
@@ -1076,9 +1077,9 @@ function DefaultSettings() {
<div className='sidebyside'>
<span className='body'>Allow anonymous remotes</span>
<Switch
- value={projectFile.settings.remotes.AllowQRRemotes}
+ value={project.settings.remotes.AllowQRRemotes}
onChange={() => {
- projectFile.settings.remotes.AllowQRRemotes = !projectFile.settings.remotes.AllowQRRemotes;
+ project.settings.remotes.AllowQRRemotes = !project.settings.remotes.AllowQRRemotes;
rerender();
}}
/>
@@ -1096,15 +1097,15 @@ function DefaultSettings() {
if (!file) return;
var reader = new FileReader();
reader.addEventListener('load', async ev => {
- await projectFile.openProject(ev.target.result as ArrayBuffer);
+ await project.openProject(ev.target.result as ArrayBuffer);
- player.loadSlides(projectFile.timeline);
- projectFile.timeline = player.timeline;
+ player.loadSlides(project.timeline);
+ project.timeline = player.timeline;
global.timeline.workingTimeline.set(player.timeline);
global.update.refreshLiveTimeline.value();
global.ready.timeline.set(true);
- player.loadVideo(arrayBufferToBase64(projectFile.video.source, projectFile.video.mimetype));
+ player.loadVideo(arrayBufferToBase64(project.video.source, project.video.mimetype));
global.ready.video.available.set(true);
player.player.addEventListener(
@@ -1131,9 +1132,9 @@ function DefaultSettings() {
children='Download .prspr'
startIcon={<DescriptionRoundedIcon />}
onClick={async () => {
- projectFile.timeline = player.timeline;
- projectFile.saveProject();
- projectFile.downloadProjectFile();
+ project.timeline = player.timeline;
+ project.saveProject();
+ project.downloadProjectFile();
}}
/>
<Button
@@ -1142,8 +1143,8 @@ function DefaultSettings() {
children='New project'
onClick={() => {
player.loadSlides([]);
- projectFile.timeline = player.timeline;
- projectFile.name = 'New project';
+ project.timeline = player.timeline;
+ project.name = 'New project';
global.timeline.workingTimeline.set(player.timeline);
global.update.refreshLiveTimeline.value();
global.ready.timeline.set(true);
@@ -1279,11 +1280,9 @@ function Tools() {
useMousetrap(['e'], switchToTool('delay'));
useMousetrap(['s'], switchToTool('speedChange'));
- // ! TODO: read fps from projectFile
-
return <div className='tools'>
<div className={'time posrel ' + (ready.timeline.get() ? '' : 'disabled')}>
- <span className='framerate numbers posabs l0 t0'>@{projectFile?.video?.framerate}fps</span>
+ <span className='framerate numbers posabs l0 t0'>@{project?.video?.framerate}fps</span>
<h2 className='timecode numbers posabs r0 t0'>
{player.frameToTimestampString(frame.get(), false)}
</h2>
@@ -1433,8 +1432,8 @@ function TitleBar() {
contentEditable
spellCheck={false}
ref={nameRef}
- onBlur={() => projectFile.name = (nameRef.current as HTMLSpanElement).textContent.trim()}
- children={projectFile.name}
+ onBlur={() => project.name = (nameRef.current as HTMLSpanElement).textContent.trim()}
+ children={project.name}
/>
</div>
</Toolbar>
diff --git a/yarn.lock b/yarn.lock
index 842521e..cbc4a16 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -311,11 +311,6 @@
"@react-spring/shared" "~9.2.0"
"@react-spring/types" "~9.2.0"
-"@types/json-schema@^7.0.7":
- version "7.0.7"
- resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.7.tgz#98a993516c859eb0d5c4c8f098317a9ea68db9ad"
- integrity sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA==
-
"@types/json-schema@^7.0.8":
version "7.0.8"
resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.8.tgz#edf1bf1dbf4e04413ca8e5b17b3b7d7d54b59818"
@@ -472,11 +467,6 @@ babel-plugin-syntax-jsx@6.18.0:
resolved "https://registry.yarnpkg.com/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz#0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946"
integrity sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY=
-balanced-match@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"
- integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==
-
base64-js@^1.0.2:
version "1.5.1"
resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a"
@@ -502,14 +492,6 @@ bn.js@^5.0.0, bn.js@^5.1.1:
resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.0.tgz#358860674396c6997771a9d051fcc1b57d4ae002"
integrity sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==
-brace-expansion@^1.1.7:
- version "1.1.11"
- resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
- integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==
- dependencies:
- balanced-match "^1.0.0"
- concat-map "0.0.1"
-
braces@^3.0.1, braces@~3.0.2:
version "3.0.2"
resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"
@@ -727,21 +709,11 @@ colorette@^1.2.2:
resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.2.tgz#cbcc79d5e99caea2dbf10eb3a26fd8b3e6acfa94"
integrity sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==
-commander@^7.2.0:
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7"
- integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==
-
commondir@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b"
integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=
-concat-map@0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
- integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=
-
console-browserify@^1.1.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336"
@@ -1048,7 +1020,7 @@ fast-glob@^3.1.1, fast-glob@^3.2.5:
merge2 "^1.3.0"
micromatch "^4.0.4"
-fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0:
+fast-json-stable-stringify@^2.0.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
@@ -1089,11 +1061,6 @@ foreach@^2.0.5:
resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99"
integrity sha1-C+4AUBiusmDQo6865ljdATbsG5k=
-fs.realpath@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
- integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8=
-
fsevents@~2.3.1:
version "2.3.2"
resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a"
@@ -1144,18 +1111,6 @@ glob-to-regexp@^0.4.1:
resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e"
integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==
-glob@^7.1.7:
- version "7.1.7"
- resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90"
- integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==
- dependencies:
- fs.realpath "^1.0.0"
- inflight "^1.0.4"
- inherits "2"
- minimatch "^3.0.4"
- once "^1.3.0"
- path-is-absolute "^1.0.0"
-
globby@^11.0.3:
version "11.0.4"
resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.4.tgz#2cbaff77c2f2a62e71e9b2813a67b97a3a3001a5"
@@ -1302,19 +1257,6 @@ indefinite-observable@^2.0.1:
dependencies:
symbol-observable "1.2.0"
-inflight@^1.0.4:
- version "1.0.6"
- resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
- integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=
- dependencies:
- once "^1.3.0"
- wrappy "1"
-
-inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3, inherits@~2.0.4:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
- integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
-
inherits@2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1"
@@ -1325,6 +1267,11 @@ inherits@2.0.3:
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=
+inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3, inherits@~2.0.4:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
+ integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
+
is-arguments@^1.0.4:
version "1.1.0"
resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.1.0.tgz#62353031dfbee07ceb34656a6bde59efecae8dd9"
@@ -1471,13 +1418,6 @@ json-schema-traverse@^1.0.0:
resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2"
integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==
-json-stable-stringify@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af"
- integrity sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=
- dependencies:
- jsonify "~0.0.0"
-
json5@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe"
@@ -1485,11 +1425,6 @@ json5@^1.0.1:
dependencies:
minimist "^1.2.0"
-jsonify@~0.0.0:
- version "0.0.0"
- resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73"
- integrity sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=
-
jss-plugin-camel-case@^10.5.1:
version "10.6.0"
resolved "https://registry.yarnpkg.com/jss-plugin-camel-case/-/jss-plugin-camel-case-10.6.0.tgz#93d2cd704bf0c4af70cc40fb52d74b8a2554b170"
@@ -1677,13 +1612,6 @@ minimalistic-crypto-utils@^1.0.1:
resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a"
integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=
-minimatch@^3.0.4:
- version "3.0.4"
- resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
- integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==
- dependencies:
- brace-expansion "^1.1.7"
-
minimist@^1.2.0:
version "1.2.5"
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602"
@@ -1851,13 +1779,6 @@ object.assign@^4.1.2:
has-symbols "^1.0.1"
object-keys "^1.1.1"
-once@^1.3.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
- integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E=
- dependencies:
- wrappy "1"
-
os-browserify@0.3.0, os-browserify@^0.3.0:
version "0.3.0"
resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27"
@@ -1920,11 +1841,6 @@ path-exists@^4.0.0:
resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3"
integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==
-path-is-absolute@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
- integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18=
-
path-type@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b"
@@ -2504,18 +2420,6 @@ tr46@^1.0.1:
dependencies:
punycode "^2.1.0"
-ts-json-schema-generator@^0.93.0:
- version "0.93.0"
- resolved "https://registry.yarnpkg.com/ts-json-schema-generator/-/ts-json-schema-generator-0.93.0.tgz#3d6adf99446a1b3d0887dbad7cca015a49394d3a"
- integrity sha512-JYacSIgw4KqsOXF/zRSY4pE/v6jUk7aMDXhwK5MdopN0UeKH58TRZHrQADy9uxTf78jqUfFLzARQKNOb9H+jVQ==
- dependencies:
- "@types/json-schema" "^7.0.7"
- commander "^7.2.0"
- fast-json-stable-stringify "^2.1.0"
- glob "^7.1.7"
- json-stable-stringify "^1.0.1"
- typescript "~4.3.2"
-
ts-pnp@^1.1.6:
version "1.2.0"
resolved "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.2.0.tgz#a500ad084b0798f1c3071af391e65912c86bca92"
@@ -2536,7 +2440,7 @@ type-fest@^0.7.1:
resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.7.1.tgz#8dda65feaf03ed78f0a3f9678f1869147f7c5c48"
integrity sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==
-typescript@^4.2.4, typescript@~4.3.2:
+typescript@^4.2.4:
version "4.3.4"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.3.4.tgz#3f85b986945bcf31071decdd96cf8bfa65f9dcbc"
integrity sha512-uauPG7XZn9F/mo+7MrsRjyvbxFpzemRjKEZXS4AK83oP2KKOJPvb+9cO/gmnv8arWZvhnjVOXz7B49m1l0e9Ew==
@@ -2694,11 +2598,6 @@ wrap-ansi@^7.0.0:
string-width "^4.1.0"
strip-ansi "^6.0.0"
-wrappy@1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
- integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
-
xtend@^4.0.0, xtend@^4.0.2:
version "4.0.2"
resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54"