Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
evt.preventDefault();
if (!bookmarkInput.title || !bookmarkInput.url) return;
const bookmark = {
...bookmarkInput,
id: O.toUndefined(bookmarkInput.id),
flags: 0,
};
props.onSubmit(bookmark);
};
const isEditing = pipe(
props.bookmark,
O.chain(bm => O.fromNullable(bm.id)),
O.isSome,
);
return (
<header>
{isEditing ? 'Edit bookmark' : 'Add a bookmark'}
</header>
case ContextMenuEntry.SendAllTabs: return pipe(
getAllTabs,
T.map(flow(O.map(sufficientTabsExact), O.chain(NEA.fromArray))),
);
case ContextMenuEntry.SendActiveWindowTabs: return pipe(
getActiveWindowTabs,
T.map(flow(O.map(sufficientTabsExact), O.chain(NEA.fromArray))),
);
case ContextMenuEntry.SendActiveTab: return pipe(
getActiveTab,
T.map(flow(
O.chain(tab => OT.fromNullable(tab.title, tab.url)),
O.map(([title, url]) => [{ title, url }]),
O.chain(NEA.fromArray),
)),
);
case ContextMenuEntry.SendLink: return pipe(
u,
O.map(url => [{ url, title: url }]),
O.chain(NEA.fromArray),
TO.fromOption,
);
default: return TO.none;
}
};
function assembleBody(request?: IHttpOperationRequest): O.Option<{ body: string; mediaType: string }> {
return pipe(
O.fromNullable(request),
O.mapNullable(request => request.body),
O.mapNullable(body => body.contents),
O.chain(head),
O.chain(param =>
pipe(
param,
generateHttpParam,
O.map(body => ({ body, mediaType: param.mediaType }))
)
),
O.chain(({ body, mediaType }) =>
pipe(
E.stringifyJSON(body, () => undefined),
E.map(body => ({ body, mediaType })),
O.fromEither
)
)
);
}
const specs = pipe(
O.fromNullable(resource.request),
O.mapNullable(request => request.body),
O.mapNullable(body => body.contents),
O.getOrElse(() => [] as IMediaTypeContent[])
);
const encodedUriParams = splitUriParams(request.body as string);
if (specs.length < 1) {
return Object.assign(request, { body: encodedUriParams });
}
const content = pipe(
O.fromNullable(mediaType),
O.chain(mediaType => findContentByMediaTypeOrFirst(specs, mediaType)),
O.map(({ content }) => content),
O.getOrElse(() => specs[0] || {})
);
const encodings = get(content, 'encodings', []);
if (!content.schema) return Object.assign(request, { body: encodedUriParams });
return Object.assign(request, {
body: deserializeFormBody(content.schema, encodings, decodeUriEntities(encodedUriParams)),
});
}
function tryRequestQuery() {
return pipe(
isPart(1, 'query'),
O.chain(() => lookup(2, parts)),
O.chain(part =>
pipe(
O.fromNullable(request.url.query),
O.mapNullable(query => query[part])
)
)
);
}
public validate(target: any, specs: IMediaTypeContent[], mediaType?: string) {
const findContentByMediaType = pipe(
O.fromNullable(mediaType),
O.chain(mt => findContentByMediaTypeOrFirst(specs, mt)),
O.alt(() => O.some({ content: specs[0] || {}, mediaType: 'random' })),
O.chain(({ mediaType, content }) =>
pipe(
O.fromNullable(content.schema),
O.map(schema => ({ schema, mediaType, content }))
)
)
);
return pipe(
findContentByMediaType,
O.fold(
() => E.right(target),
({ content, mediaType: mt, schema }) =>
pipe(
mt,
O.fromPredicate(mediaType => mediaType === 'application/x-www-form-urlencoded'),
O.fold(
private findDecorationIdAndRanges(editorId: string, range: FlatRange): O.Option<[string, FlatRange[]]> {
return pipe(
this.recordMap.get(editorId),
O.chain(decorationMap => findFirst(([_decorationId, ranges]) => ranges.some(this.isPointingRange(range)))([...decorationMap.entries()]))
);
}
function assembleBody(request?: IHttpOperationRequest): O.Option<{ body: string; mediaType: string }> {
return pipe(
O.fromNullable(request),
O.mapNullable(request => request.body),
O.mapNullable(body => body.contents),
O.chain(head),
O.chain(param =>
pipe(
param,
generateHttpParam,
O.map(body => ({ body, mediaType: param.mediaType }))
)
),
O.chain(({ body, mediaType }) =>
pipe(
E.stringifyJSON(body, () => undefined),
E.map(body => ({ body, mediaType })),
O.fromEither
)
)
);
}
function assembleBody(request?: IHttpOperationRequest): O.Option<{ body: string; mediaType: string }> {
return pipe(
O.fromNullable(request),
O.mapNullable(request => request.body),
O.mapNullable(body => body.contents),
O.chain(head),
O.chain(param =>
pipe(
param,
generateHttpParam,
O.map(body => ({ body, mediaType: param.mediaType }))
)
),
O.chain(({ body, mediaType }) =>
pipe(
E.stringifyJSON(body, () => undefined),
E.map(body => ({ body, mediaType })),
O.fromEither
)
)
);
}