Get rid of casts

This commit is contained in:
Joey Yakimowich-Payne 2020-02-15 18:41:59 -07:00
commit 85ea229f7f
9 changed files with 20 additions and 11 deletions

View file

@ -1,6 +1,7 @@
when defined(js):
import sugar, httpcore, options, json, strutils, algorithm
import dom except Event
import jsffi except `&`
include karax/prelude
import karax / [kajax, kdom, vstyles, vdom]
@ -108,7 +109,7 @@ when defined(js):
let form = dom.document.getElementById("add-category-form")
let formData = newFormData(form)
ajaxPost(uri, @[], cast[cstring](formData),
ajaxPost(uri, @[], formData.to(cstring),
(s: int, r: kstring) => onAddCategoryPost(s, r, state))
proc onClose(ev: Event, n: VNode, state: CategoryPicker) =

View file

@ -1,6 +1,7 @@
when defined(js):
import sugar, httpcore, options, json
import dom except Event
import jsffi except `&`
include karax/prelude
import karax / [kajax, kdom]
@ -59,7 +60,7 @@ when defined(js):
formData.append("id", $state.post.id)
of DeleteThread:
formData.append("id", $state.thread.id)
ajaxPost(uri, @[], cast[cstring](formData),
ajaxPost(uri, @[], formData.to(cstring),
(s: int, r: kstring) => onDeletePost(s, r, state))
proc onClose(ev: Event, n: VNode, state: DeleteModal) =

View file

@ -1,5 +1,6 @@
when defined(js):
import httpcore, options, sugar, json
import jsffi except `&`
include karax/prelude
import karax/kajax
@ -54,7 +55,7 @@ when defined(js):
formData.append("postId", $state.post.id)
# TODO: Subject
let uri = makeUri("/updatePost")
ajaxPost(uri, @[], cast[cstring](formData),
ajaxPost(uri, @[], formData.to(cstring),
(s: int, r: kstring) => onEditPost(s, r, state))
proc render*(state: EditBox, post: Post): VNode =

View file

@ -1,6 +1,7 @@
when defined(js):
import sugar, httpcore, options, json
import dom except Event, KeyboardEvent
import jsffi except `&`
include karax/prelude
import karax / [kajax, kdom]
@ -30,7 +31,7 @@ when defined(js):
let form = dom.document.getElementById("login-form")
# TODO: This is a hack, karax should support this.
let formData = newFormData(form)
ajaxPost(uri, @[], cast[cstring](formData),
ajaxPost(uri, @[], formData.to(cstring),
(s: int, r: kstring) => onLogInPost(s, r, state))
proc onClose(ev: Event, n: VNode, state: LoginModal) =

View file

@ -7,6 +7,7 @@ import options, httpcore, json, sugar, sequtils, strutils
when defined(js):
include karax/prelude
import karax/[kajax, kdom]
import jsffi except `&`
import error, karaxutils, post, user, threadlist
@ -116,7 +117,7 @@ when defined(js):
makeUri("/unlike")
else:
makeUri("/like")
ajaxPost(uri, @[], cast[cstring](formData),
ajaxPost(uri, @[], formData.to(cstring),
(s: int, r: kstring) =>
onPost(s, r, state, post, currentUser.get()))
@ -172,7 +173,7 @@ when defined(js):
makeUri("/unlock")
else:
makeUri("/lock")
ajaxPost(uri, @[], cast[cstring](formData),
ajaxPost(uri, @[], formData.to(cstring),
(s: int, r: kstring) =>
onPost(s, r, state, thread))

View file

@ -1,5 +1,6 @@
when defined(js):
import httpcore, options, sugar, json, strutils, strformat
import jsffi except `&`
include karax/prelude
import karax/[kajax, kdom]
@ -68,7 +69,7 @@ when defined(js):
formData.append("rank", $state.rank)
formData.append("username", $state.profile.user.name)
let uri = makeUri("/saveProfile")
ajaxPost(uri, @[], cast[cstring](formData),
ajaxPost(uri, @[], formData.to(cstring),
(s: int, r: kstring) => onProfilePost(s, r, state))
proc needsSave(state: ProfileSettings): bool =

View file

@ -1,5 +1,6 @@
when defined(js):
import strformat, options, httpcore, json, sugar
import jsffi except `&`
from dom import getElementById, scrollIntoView, setTimeout
@ -56,7 +57,7 @@ when defined(js):
let formData = newFormData()
formData.append("msg", state.text)
let uri = makeUri("/preview")
ajaxPost(uri, @[], cast[cstring](formData),
ajaxPost(uri, @[], formData.to(cstring),
(s: int, r: kstring) => onPreviewPost(s, r, state))
proc onMessageClick(e: Event, n: VNode, state: ReplyBox) =
@ -80,7 +81,7 @@ when defined(js):
if replyingTo.isSome:
formData.append("replyingTo", $replyingTo.get().id)
let uri = makeUri("/createPost")
ajaxPost(uri, @[], cast[cstring](formData),
ajaxPost(uri, @[], formData.to(cstring),
(s: int, r: kstring) => onReplyPost(s, r, state))
proc onCancelClick(e: Event, n: VNode, state: ReplyBox) =

View file

@ -1,6 +1,7 @@
when defined(js):
import sugar, httpcore, options, json
import dom except Event, KeyboardEvent
import jsffi except `&`
include karax/prelude
import karax / [kajax, kdom]
@ -86,7 +87,7 @@ when defined(js):
let form = dom.document.getElementById("resetpassword-form")
# TODO: This is a hack, karax should support this.
let formData = newFormData(form)
ajaxPost(uri, @[], cast[cstring](formData),
ajaxPost(uri, @[], formData.to(cstring),
(s: int, r: kstring) => onPost(s, r, state))
ev.preventDefault()

View file

@ -1,6 +1,7 @@
when defined(js):
import sugar, httpcore, options, json
import dom except Event
import jsffi except `&`
include karax/prelude
import karax / [kajax, kdom]
@ -28,7 +29,7 @@ when defined(js):
let form = dom.document.getElementById("signup-form")
# TODO: This is a hack, karax should support this.
let formData = newFormData(form)
ajaxPost(uri, @[], cast[cstring](formData),
ajaxPost(uri, @[], formData.to(cstring),
(s: int, r: kstring) => onSignUpPost(s, r, state))
proc onClose(ev: Event, n: VNode, state: SignupModal) =