tooty/tests/Fixtures.elm
Vincent Jousse 69f0cfdc54 Closes #44: Autocomplete usernames. (#107)
* Get @mention in model

* Add autocomplete logic

* Get accounts to autocomplete from the server

* Add autocomplete css

* Check if we should show menu on account search

* Add keyboard events

* Update status with completed username

* Trigger autocomplete when getting accounts back

* Highlight choices on hover

* Put focus on textarea after updating it

* Fix clear draft

* Hit the server only on non empty query

* Lazzzzzzzzzzzzzzzzyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy

* Add missing lazy

* Add keyboard subscriptions

* Add images and display name

* Better menu visibility handling

* Add lazy to notifications

* Js formatting.

* Improve styles.

* Add unique keys to costly lists.

* Fix tests.

* Coding style nits.

* Use the encodeUrl helper in ApiUrl.

* Nanonit.

* Improve autocomplete box styling.

* CamelCase draft record

* Move all autocomplete stuff to Draft

* Send status to ports with the reply prefix.

* Clear draft after posting a status.

* Move ports setStatus call to a dedicated Command helper.

* Naming.

* Fix navigation with arrow keys in textarea

* Always autoselect the first item of the menu
2017-05-01 22:10:34 +02:00

261 lines
6.2 KiB
Elm

module Fixtures exposing (..)
import Mastodon.Model exposing (..)
accountSkro : Account
accountSkro =
{ acct = "SkroZoC"
, avatar = ""
, created_at = "2017-04-24T20:25:37.398Z"
, display_name = "Skro"
, followers_count = 77
, following_count = 80
, header = ""
, id = 1391
, locked = False
, note = "Skro note"
, statuses_count = 161
, url = "https://mamot.fr/@SkroZoC"
, username = "SkroZoC"
}
accountVjousse : Account
accountVjousse =
{ acct = "vjousse"
, avatar = ""
, created_at = "2017-04-20T14:31:05.751Z"
, display_name = "Vincent Jousse"
, followers_count = 68
, following_count = 31
, header = ""
, id = 26303
, locked = False
, note = "Vjousse note"
, statuses_count = 88
, url = "https://mamot.fr/@vjousse"
, username = "vjousse"
}
accountNico : Account
accountNico =
{ acct = "n1k0"
, avatar = ""
, created_at = "2017-04-14T08:28:59.706Z"
, display_name = "NiKo`"
, followers_count = 162
, following_count = 79
, header = ""
, id = 17784
, locked = False
, note = "Niko note"
, statuses_count = 358
, url = "https://mamot.fr/@n1k0"
, username = "n1k0"
}
accountPloum : Account
accountPloum =
{ acct = "ploum"
, avatar = ""
, created_at = "2017-04-08T09:37:34.931Z"
, display_name = "ploum"
, followers_count = 1129
, following_count = 91
, header = ""
, id = 6840
, locked = False
, note = "Ploum note"
, statuses_count = 601
, url = "https://mamot.fr/@ploum"
, username = "ploum"
}
statusNicoToVjousse : Status
statusNicoToVjousse =
{ account = accountNico
, content = "<p>@vjousse coucou</p>"
, created_at = "2017-04-24T20:16:20.922Z"
, favourited = Nothing
, favourites_count = 0
, id = 737932
, in_reply_to_account_id = Just 26303
, in_reply_to_id = Just 737425
, media_attachments = []
, mentions =
[ { id = 26303
, url = "https://mamot.fr/@vjousse"
, username = "vjousse"
, acct = "vjousse"
}
]
, reblog = Nothing
, reblogged = Nothing
, reblogs_count = 0
, sensitive = Just False
, spoiler_text = ""
, tags = []
, uri = "tag:mamot.fr,2017-04-24:objectId=737932:objectType=Status"
, url = "https://mamot.fr/@n1k0/737932"
, visibility = "public"
}
statusNicoToVjousseAgain : Status
statusNicoToVjousseAgain =
{ account = accountNico
, content = "<p>@vjousse recoucou</p>"
, created_at = "2017-04-25T07:41:23.492Z"
, favourited = Nothing
, favourites_count = 0
, id = 752169
, in_reply_to_account_id = Just 26303
, in_reply_to_id = Just 752153
, media_attachments = []
, mentions =
[ { id = 26303
, url = "https://mamot.fr/@vjousse"
, username = "vjousse"
, acct = "vjousse"
}
]
, reblog = Nothing
, reblogged = Nothing
, reblogs_count = 0
, sensitive = Just False
, spoiler_text = ""
, tags = []
, uri = "tag:mamot.fr,2017-04-25:objectId=752169:objectType=Status"
, url = "https://mamot.fr/@n1k0/752169"
, visibility = "public"
}
statusPloumToVjousse : Status
statusPloumToVjousse =
{ account = accountPloum
, content = "<p>hey @vjousse</p>"
, created_at = "2017-04-25T07:41:23.492Z"
, favourited = Nothing
, favourites_count = 0
, id = 752169
, in_reply_to_account_id = Nothing
, in_reply_to_id = Nothing
, media_attachments = []
, mentions =
[ { id = 26303
, url = "https://mamot.fr/@vjousse"
, username = "vjousse"
, acct = "vjousse"
}
]
, reblog = Nothing
, reblogged = Nothing
, reblogs_count = 0
, sensitive = Just False
, spoiler_text = ""
, tags = []
, uri = "tag:mamot.fr,2017-04-25:objectId=752169:objectType=Status"
, url = "https://mamot.fr/@n1k0/752169"
, visibility = "public"
}
statusReblogged : Status
statusReblogged =
{ account = accountVjousse
, content = "<p>fake post</p>"
, created_at = "2017-04-24T20:16:20.922Z"
, favourited = Nothing
, favourites_count = 0
, id = 737932
, in_reply_to_account_id = Nothing
, in_reply_to_id = Nothing
, media_attachments = []
, mentions = []
, reblog = Just (Reblog statusPloumToVjousse)
, reblogged = Nothing
, reblogs_count = 0
, sensitive = Just False
, spoiler_text = ""
, tags = []
, uri = "tag:mamot.fr,2017-04-24:objectId=737932:objectType=Status"
, url = "https://mamot.fr/@n1k0/737932"
, visibility = "public"
}
notificationNicoMentionVjousse : Notification
notificationNicoMentionVjousse =
{ id = 224284
, type_ = "mention"
, created_at = "2017-04-24T20:16:20.973Z"
, account = accountNico
, status = Just statusNicoToVjousse
}
notificationNicoMentionVjousseAgain : Notification
notificationNicoMentionVjousseAgain =
{ id = 226516
, type_ = "mention"
, created_at = "2017-04-25T07:41:23.546Z"
, account = accountNico
, status = Just statusNicoToVjousseAgain
}
notificationNicoFollowsVjousse : Notification
notificationNicoFollowsVjousse =
{ id = 224257
, type_ = "follow"
, created_at = "2017-04-24T20:13:47.431Z"
, account = accountNico
, status = Nothing
}
notificationSkroFollowsVjousse : Notification
notificationSkroFollowsVjousse =
{ id = 224
, type_ = "follow"
, created_at = "2017-04-24T19:12:47.431Z"
, account = accountSkro
, status = Nothing
}
notificationPloumFollowsVjousse : Notification
notificationPloumFollowsVjousse =
{ id = 220
, type_ = "follow"
, created_at = "2017-04-24T18:12:47.431Z"
, account = accountPloum
, status = Nothing
}
accounts : List Account
accounts =
[ accountSkro, accountVjousse, accountNico ]
notifications : List Notification
notifications =
[ notificationNicoMentionVjousse
, notificationNicoFollowsVjousse
, notificationSkroFollowsVjousse
]
duplicateAccountNotifications : List Notification
duplicateAccountNotifications =
[ notificationSkroFollowsVjousse
, notificationSkroFollowsVjousse
, notificationSkroFollowsVjousse
]