Commit Graph

8443 Commits

Author SHA1 Message Date
Liam Fitzgerald
89f63ac443
virtualscroller: ios viable 2021-03-01 12:56:40 +10:00
Philip Monk
413413b70c
zuse: traverse always delete 2021-02-26 21:03:20 -08:00
Philip Monk
5ac70ec974
ames: reset num-live to actual number of live packets 2021-02-26 20:53:27 -08:00
Ted Blackman
4c190eb2e9 zuse: ordered-map minor cleanup 2021-02-26 22:39:41 -05:00
Ted Blackman
ccc704b22e zuse: remove unused +nup:ordered-map 2021-02-26 22:38:04 -05:00
Ted Blackman
fcbb70de9e zuse: actually fix ordered-map +traverse this time 2021-02-26 22:37:11 -05:00
Ted Blackman
2442f9bb93 zuse: fix ordered-map delete many 2021-02-26 21:42:22 -05:00
fang
c7d86015aa
dbug: assume new lane encoding 2021-02-27 01:41:16 +01:00
J
c66c197936 interface: fix regression in canUpload 2021-02-27 00:25:17 +00:00
J
d8a7ee56e1 interface: fix field name that broke GCP support
Tests would be great, wouldn't they...
2021-02-27 00:08:51 +00:00
J
c1b259af5b interface, gcp: don't spam the console with 500s
Options here were: make the get-token thread try to return a unit, or
write a different thread to check whether GCP Storage seemed to be
configured and poll on that thread, or move the whole thing into a Gall
app.

The compromise between time-to-implement and overall cleanliness seemed
to be to write a different thread that just checks whether the settings
fields have been poked. Unfortunately this means GcpManager is now a
somewhat hefty JavaScript state machine.

Took out the logic to check whether S3 was configured in GcpManager,
since it was really only there to prevent spamming the console with
500s. If you have both S3 and GCP Storage configured for some reason,
you will now use GCP per the logic in useStorage.
2021-02-26 23:42:57 +00:00
Matilde Park
b1cac1fca9 hark-fe: remove former preferences nav
Fixes urbit/landscape#494
2021-02-26 17:35:05 -05:00
Matilde Park
e3f195870f settings: format for mobile
Fixes urbit/landscape#496
2021-02-26 17:32:54 -05:00
J
040d8c06ae interface: fix S3 canUpload logic
s3.credentials is always set, but the fields are all '' if s3 is not
configured. So prior to this change, if the user had configured an
active bucket, they would always be shown an upload dialog even if they
had no storage configured.
2021-02-26 22:12:52 +00:00
J
347d51fde9 interface: cleaner API, robust GcpManager retry
GcpApi now acts like other APIs.

Since GcpManager can no longer get at the token exipry by inspecting the
raw update, it must depend on the global store instead. This also means
it can check whether the user has configured S3, and not try to refresh
the token in that case.

In the case where no storage is configured, this will spam the console
with request failures since the thread returns 500 if there is no token.
Perhaps this is a good argument for making  the thread return a unit.
2021-02-26 22:10:15 +00:00
Matilde Park
409d07d1f4 pkg/interface: force api build on prod 2021-02-26 16:45:48 -05:00
J
723a5a050e interface: check accessKey !== undefined
Also make it type-level optional rather than using explicit null.

Perhaps one day we will want to use undefined to denote "the thread
hasn't returned yet" and null for "GCP Storage is not configured."
Perhaps.
2021-02-26 20:29:05 +00:00
J
6b3397bd9f interface: supports both S3 and GCP Storage
The S3 client has another layer of indirection we missed. To support it
expediently, we just make the promise() method on GcpUpload do all the
work in GcpClient.
2021-02-26 20:18:40 +00:00
J
6ec574d32b interface: GcpManager fixes 2021-02-26 20:18:07 +00:00
Matilde Park
6081b63c4b settings: fix typos 2021-02-26 14:29:39 -05:00
Matilde Park
356d517b4a CalmEngine: add "hideUnreads" and "hideGroups" 2021-02-26 14:12:24 -05:00
Matilde Park
622c3c3547 Merge branch 'release/next-js' into lf/settings 2021-02-26 13:45:33 -05:00
Matilde Park
b4d82a9e8a leap, settings: store leap settings as array 2021-02-26 13:41:40 -05:00
Matilde Park
2db485705e npm/api: add array type to settings value 2021-02-26 13:41:12 -05:00
matildepark
b5d5e32c98
Merge pull request #4430 from mirtyl-wacdec/patch-2
landscape: ignore punctuation tokenizing URLs
2021-02-26 13:30:09 -05:00
Matilde Park
26788d9998 leap: "Profile and Settings" -> "profile" 2021-02-26 13:26:32 -05:00
Matilde Park
9f64db52c1 settings: replace calm icon 2021-02-26 13:25:57 -05:00
Matilde Park
f0e1a24b42 SidebarItem: centre icons 2021-02-26 13:25:50 -05:00
Matilde Park
e266273ff1 ChatMessage, Sidebar: use new hideAvatars import 2021-02-26 13:21:27 -05:00
Matilde Park
9841e92325 settings: switch to multipage layout 2021-02-26 13:07:09 -05:00
Matilde Park
639372e58f leap: add missing import 2021-02-26 13:06:48 -05:00
mirtyl-wacdec
3206cfdb4d landscape: ignore punctuation tokenizing URLs
Tiny fix to the URL regex so that it doesn't store punctuation marks (e.g. ",") inside the urls, breaking the links.
2021-02-27 00:56:45 +07:00
Matilde Park
288cf1d0ad NewChannel: hide "<- Back" mobile nav on dms 2021-02-26 12:27:00 -05:00
Matilde Park
0030d0d834 ResourceSkeleton: set flex-shrink priority, mobile
On mobile devices, long channel names can push the menu offscreen.

However, we don't want the title to be shrunk by a long description.
We want the description to shrink first.
So we set flex-shrink priorities, and also don't let the title shrink
on desktop.
2021-02-26 12:22:46 -05:00
janeway
6bcbbf8f1a
glob: update to 0v5.ip41o.9jcdb.4jb1f.sd508.fdssj 2021-02-26 17:07:59 +10:00
Liam Fitzgerald
8c6f43f10e
Merge remote-tracking branch 'origin/release/next-js' 2021-02-26 16:57:19 +10:00
Liam Fitzgerald
76733e1072
Merge branch 'lf/read-all-fix' 2021-02-26 16:56:58 +10:00
Liam Fitzgerald
4f62de33a3
Merge remote-tracking branch 'origin/ixv/settings-type' 2021-02-26 16:56:15 +10:00
Ted Blackman
04ea4c78b2
ames: +on-hear-shut remove dead code 2021-02-26 16:55:26 +10:00
Ted Blackman
ccea39f865
ames: fix comet handshake 2021-02-26 16:55:24 +10:00
matildepark
285a8a9173
Merge pull request #4503 from urbit/mp/links/double-validate
links: enforce valid URI on render
2021-02-25 22:22:48 -05:00
matildepark
29b4d2bbd4
Merge pull request #4501 from urbit/mp/leap/status-truncate
leap: truncate statuses
2021-02-25 22:22:32 -05:00
matildepark
ec483143f8
Merge pull request #4500 from urbit/revert-4224-mp/landscape/patp-punctuation
Revert "landscape: allow most patp punctation in tokenize"
2021-02-25 22:22:15 -05:00
matildepark
ef3601e9be
Merge pull request #4499 from urbit/mp/dms/render-groups
ResourceSkeleton: render group DM members
2021-02-25 22:21:59 -05:00
matildepark
0744f6ecab
Merge pull request #4498 from urbit/mp/groups/truncate-description
ResourceSkeleton: flex and truncate description
2021-02-25 22:21:41 -05:00
matildepark
322d6e9a41
Merge pull request #4507 from urbit/mp/landscape/misc
landscape: grabbag
2021-02-25 22:20:12 -05:00
Liam Fitzgerald
6fa0cd29e2
settings: migrate 2021-02-26 13:05:31 +10:00
matildepark
72aa7f5aee
Merge pull request #4496 from tylershuster/api-parity
api: brought to parity with livenet
2021-02-25 20:30:57 -05:00
Liam Fitzgerald
32b17d6def
interface: bump indigo 2021-02-26 11:30:23 +10:00
matildepark
79d7653cf5
Merge pull request #4497 from tylershuster/http-api-eventsource
http-api: changed eventsource tool
2021-02-25 20:29:08 -05:00
Liam Fitzgerald
034fc30173
Merge remote-tracking branch 'origin/release/next-js' into lf/tutorial-revive 2021-02-26 11:26:17 +10:00
Liam Fitzgerald
a323d0c3fc
tutorial: show notification on skip 2021-02-26 11:23:11 +10:00
James Acklin
7f36be4ef0 profile: submit profile from outside form bounds
Fixes urbit/landscape#444
2021-02-25 20:19:59 -05:00
Tyler Brown Cifu Shuster
7a8b8ec718 npm/http-api: ignore build examples 2021-02-25 17:17:07 -08:00
Tyler Brown Cifu Shuster
20c6ecae41 ignore example js 2021-02-25 17:16:27 -08:00
Liam Fitzgerald
4964b44601
omnibox: hide tutorial from initial 2021-02-26 11:04:04 +10:00
J
92dd46b176 GcpClient: remove unused BASE_URL 2021-02-26 00:49:57 +00:00
J
1c0d8e524e interface: thread gcp through props
Basically just a grep for 's3', and I added gcp wherever it looked like
I ought to.
2021-02-26 00:38:01 +00:00
Matilde Park
fef99fcf21 GroupSearch, ShipSearch: use cursor: pointer 2021-02-25 19:20:26 -05:00
Matilde Park
2ed7759864 ChannelPopoverRoutes: add rootUrl type 2021-02-25 19:19:10 -05:00
Matilde Park
f8d8e250c9 GroupPane: description defaults to regular font size 2021-02-25 19:18:48 -05:00
Matilde Park
75c90ea4a5 landscape: add border prop to loading
Prevents borders showing when loading channels.

Also spaces the text beside the spinner.
2021-02-25 19:18:29 -05:00
Matilde Park
8ba29acc15 landscape: redirect properly on channel archive
Previously landed on a crash.
2021-02-25 19:17:45 -05:00
J
11a58115b0 interface: implement useStorage and withStorage
useS3 and withS3 are now gone. Storage should work with both GCP and S3,
preferring GCP if available and falling back.
2021-02-26 00:07:15 +00:00
Liam Fitzgerald
86bc8b9444
hark-store: bunt cache before rebuilding
Previously, rebuilding the cache in any scenario other than on-load would add
missing notifications but not remove read or dismissed notifications

Fixes urbit/landscape#479
2021-02-26 09:58:48 +10:00
J
4814d61c48 interface: unnecessary const 2021-02-25 23:08:41 +00:00
J
a6d4c3a431 interface: proof-of-concept GCP upload
As of this commit, the Links app uploads files to GCP storage.

(Note that it no longer uploads to S3. Still need to support both.)
2021-02-25 22:52:18 +00:00
J
c718894eb3 interface: explicitly depend on querystring
It will be used by GcpClient.
2021-02-25 22:50:50 +00:00
Matilde Park
75d811d298 groups: reduce added member from pending
Fixes urbit/landscape#490
2021-02-25 14:46:08 -05:00
Matilde Park
52e5d4a011 links: enforce valid URI on render
Fixes urbit/landscape#280
2021-02-25 14:30:50 -05:00
Matilde Park
6efa47b6cc leap: truncate statuses
Fixes urbit/landscape#487
2021-02-25 13:41:17 -05:00
Matilde Park
e8bbc56c48 leap: cite patps 2021-02-25 13:40:53 -05:00
matildepark
c63ffbdb73
Revert "landscape: allow most patp punctation in tokenize" 2021-02-25 13:24:05 -05:00
Matilde Park
a666ce902b ResourceSkeleton: render group DM members 2021-02-25 13:22:13 -05:00
Matilde Park
be88d60329 ResourceSkeleton: dynamically truncate description 2021-02-25 13:11:03 -05:00
Tyler Brown Cifu Shuster
99d04500c5 npm/api: changed metadata app property 2021-02-25 07:13:32 -08:00
Tyler Brown Cifu Shuster
ece8836a7e http-api: changed eventsource tool 2021-02-24 19:58:32 -08:00
Tyler Brown Cifu Shuster
d7bbf3b54b api: brought to parity with livenet 2021-02-24 19:54:00 -08:00
James Acklin
a59944937f profile: base header tweaks
Partially fixes urbit/landscape#444
2021-02-24 21:34:55 -05:00
Liam Fitzgerald
a960234e2c
LinkWindow: update for new scroll virtualisation 2021-02-25 12:02:09 +10:00
Liam Fitzgerald
f669dc48be
virtualscroller: fix iOS bounce 2021-02-25 11:57:18 +10:00
Isaac Visintainer
c0849f2c0b settings: add array type 2021-02-24 17:28:26 -08:00
Liam Fitzgerald
e81920b43b
Merge remote-tracking branch 'origin/release/next-js' into lf/virtual-graph 2021-02-25 11:25:11 +10:00
Liam Fitzgerald
355c22b564
virtualscroller: teleport scroll manipulation 2021-02-25 11:05:40 +10:00
J
efea38f842 interface: GcpReducer
Now we are correctly storing the GCP accessKey in state.
2021-02-25 00:41:47 +00:00
J
9fa086e0d3 interface: extract GcpManager
Now the API is just an API. (I did still have it produce an expiry time,
since it makes the refresh loop easier to do.)

Not yet storing the token now.
2021-02-25 00:31:39 +00:00
J
3c2ce636e7 interface: storing the gcp token 2021-02-25 00:31:16 +00:00
Liam Fitzgerald
8d49723dee
virtualscroller: performance tweaks 2021-02-25 10:25:29 +10:00
janeway-bot
cc6adb3ffd
Merge 8c84de618d into release/next-js 2021-02-25 02:35:17 +04:00
Matilde Park
d0d50f1aee launch: overlap responsive colors on white box 2021-02-24 17:12:13 -05:00
Logan Allen
6228bc42a6 graph-push-hook: deny imposters even if we have %yes permission 2021-02-24 16:09:56 -06:00
Matilde Park
68271b7947 launch: force black base hash 2021-02-24 16:27:03 -05:00
J
0a23c0f4a4 -get-gcp-token: docs, formatting
Correct expiry from @da -> @dr, and set max cols to 72.
2021-02-24 21:26:59 +00:00
J
a80c3504a8 interface: refresh loop
Still not actually storing the token anywhere...
2021-02-24 21:22:28 +00:00
Matilde Park
94eca8172f launch: fix modal backgrounds 2021-02-24 16:21:56 -05:00
J
d0bb1cc849 gcp: camel-case json key names
Now we can do ({accessKey, expiresIn}) => {...} in JavaScript.
2021-02-24 21:20:39 +00:00
Matilde Park
16bd217d60 launch: update for 1.7 2021-02-24 15:56:16 -05:00
J
d60c3183f7 gcp: lib spacing 2021-02-24 20:55:40 +00:00
J
94556ce936 interface: GCP skeleton 2021-02-24 20:42:57 +00:00
J
2a82da55ca -get-gcp-token: error messages
Don't dump extra console output on thread failure. Say 'gcp' in failures
to aid debugging.
2021-02-24 20:37:37 +00:00
J
03e99f52c9 gcp: make expiry relative
This indeed makes it easier on the Landscape side. It also makes it
easier to coerce from the JSON Google gives us, so a win all around.
2021-02-24 20:35:24 +00:00
Ted Blackman
9636b889aa clay: speed up +checkout-changes 2021-02-24 14:43:35 -05:00
J
713954a8bb gcp: mark for tokens, token-to-json 2021-02-24 19:30:49 +00:00
Ted Blackman
0452eb92f2 Merge branch 'release/next-sys' into HEAD 2021-02-24 13:26:51 -05:00
Ted Blackman
4297082966 language-server: fix parser 2021-02-24 13:07:45 -05:00
Ted Blackman
68e1d92fb4 clay: fix tests 2021-02-24 13:07:27 -05:00
Ted Blackman
ce61d49ef9 clay: fix |mass; some renaming 2021-02-24 12:59:13 -05:00
Ted Blackman
19bf227428 clay: remove debug artifacts 2021-02-24 12:44:08 -05:00
Ted Blackman
d447e70b09 clay: fix /% parser; clean up unit tests 2021-02-24 12:18:50 -05:00
Liam Fitzgerald
6b30a6c47d
glob: update to 0v3.10f5l.mmsef.76usq.9a3gk.0rmog 2021-02-24 14:25:45 +10:00
Liam Fitzgerald
7a8e16a2f2
Merge branch 'lf/not-your-mate' 2021-02-24 14:07:54 +10:00
Liam Fitzgerald
491c1b4698
Merge branch 'lf/neg-notifications' 2021-02-24 14:07:45 +10:00
Liam Fitzgerald
56337c953b
VirtualScroller: change virtualisation method
We now virtualize 'treadmill' style i.e. by rendering a subset of the
list into a window. When the scroll position gets close to an edge, we
save our scroll position, adjust the subset and then restore our scroll
position
2021-02-24 13:25:59 +10:00
Jimmy Young
a62dd1c752 fix spacing on all modals complete 2021-02-23 18:35:24 -08:00
Liam Fitzgerald
6f4c089250
Merge pull request #4479 from urbit/mp/landscape/ship-contacts
ShipSearch: update for flattened contacts
2021-02-24 11:19:19 +10:00
matildepark
fb4f786339
Merge pull request #4488 from urbit/mp/landscape/metadata-hidden
MetadataIcon: hide image overflow
2021-02-23 20:18:30 -05:00
matildepark
b4333c711e
Merge pull request #4486 from urbit/mp/landscape/authors
links, publish, notifications: work with flattened contacts
2021-02-23 20:18:14 -05:00
matildepark
d7337ed1d2
MetadataIcon: hide image overflow
Prevents visible cutoff given we have border-radius.
2021-02-23 20:02:33 -05:00
J
328159da67 -get-gcp-token: renamed from -get-gcp-jwt 2021-02-24 00:49:47 +00:00
J
d94f35aa5c gcp: add token type
Also use it in -get-gcp-jwt.
2021-02-24 00:49:47 +00:00
matildepark
a89f509a2c
Merge pull request #4487 from urbit/mp/landscape/change-groupsearch-method
GroupSearch: use includes, not startsWith
2021-02-23 19:46:45 -05:00
matildepark
3bc6737c6e
Merge pull request #4485 from urbit/mp/landscape/group-join-placeholders
landscape: bring placeholder group joins to parity
2021-02-23 19:44:08 -05:00
matildepark
244f290924
Merge pull request #4480 from urbit/mp/landscape/timestamp-size
chat: set timestamp size to 1 in unread-notice
2021-02-23 19:41:29 -05:00
J
a8113182a8 -get-gcp-jwt: vertical 2021-02-23 23:48:50 +00:00
J
6a07130f0d -get-gcp-jwt: correct scope, clean up call
It turns out 'devstorage.read_write' also gives us an access token
instead of a JWT, and is probably more the thing that we want.

Took the opportunity to make scope a macro to clean up the make-jwt call
site.
2021-02-23 23:12:48 +00:00
Matilde Park
e0b30165da hark-fe: fix for flattened contacts
Fixes urbit/landscape#458
2021-02-23 18:10:27 -05:00
J
aa93ac49c1 -get-gcp-jwt: sot -> jot, moar vertical
Since we only have one JWT (the thing we produce is an "access token",
not a JWT), we can just call it jot.
2021-02-23 23:03:07 +00:00
J
61d8030ec9 -get-gcp-jwt: documentation, clearer return faces 2021-02-23 22:53:42 +00:00
J
9f43fef85d -get-gcp-jwt: returns time of expiry
Couldn't bring myself to pass in a relative date without a base, so we
instead pass now into get-access-token, and return the time of expiry.
2021-02-23 22:40:05 +00:00
J
b0bb659f12 -get-gcp-jwt: @dr expires_in, cleanup
The expiry field we get from Google is not a timestamp, but a count of
seconds after which the token is invalid (hence, 'expires_in'). We
represent this as a @dr by multiplying the integer we get from Google by
~1s. (Perhaps it will wind up being easier on the Landscape side to
consume the raw integer, but we may as well start off more
type-correct.)

Also cleans up some names now that I'm less confused about how the token
API works, and makes some syntax more vertical.
2021-02-23 22:34:48 +00:00
Matilde Park
9758ec635c GroupSearch: use includes, not startsWith
Loosely searches for group titles.

Fixes urbit/landscape#477
2021-02-23 17:26:27 -05:00
J
d978e6a551 -get-gcp-jwt: produces an access token
The correct scope to ask for is not devstorage.editor, but
cloud-platform. This will, rather than returning a signed JWT from
Google that looks like it works but doesn't, return a JSON object
containing an access token and expiration time.
2021-02-23 22:18:59 +00:00
Matilde Park
d3467e6961 GroupLink: address #4485 design review 2021-02-23 17:16:06 -05:00
Matilde Park
fbc7e51a8e links, publish: work with flattened contacts
Fixes urbit/landscape#457
2021-02-23 17:06:03 -05:00
Matilde Park
f77e1da331 landscape: bring placeholder group joins to parity
Fixes urbit/landscape#478
2021-02-23 16:31:15 -05:00
J
860343e3d4 -get-gcp-jwt: clean up references, use +ot
Moves =, closer to call sites so it's clearer what's coming from where.
Also uses +ot, allowing a less horrifying +sign-jwt. This also seems to
not jump back and forth between tapes and cords as much, for what that's
worth.
2021-02-23 21:14:35 +00:00
Jōshin
ac40b5cf24 -get-gcp-jwt: produce a JWT for use in GCP Storage 2021-02-23 21:13:30 +00:00
matildepark
859fc6422a
Merge pull request #4481 from urbit/james/daybreak-padding
chat: correctly pad daybreak divider
2021-02-23 15:12:59 -05:00
Jōshin
92a0b5eadf zuse: simplify +di/du:dejs:format 2021-02-23 19:46:21 +00:00
Jōshin
9e69892631 zuse: time conversion fixes
State before: in chrono:userlib, there were second-resolution
@da-to-unix and unix-to-@da functions. In en/dejs:format, there were
millisecond-resolution @da-to-unix and unix-to-@da functions. The
@da-to-unix path in time:enjs confusingly rounded to the nearest
millisecond, meaning millisecond n was a label for [n-0.5, n+0.5) rather
than [n, n+1).

This adds a millisecond-resolution @da-to-unix and unix-to-@da to
chrono:userlib, and a second-resolution conversion to en/dejs:format.
It makes use of the chrono:userlib functions in en/dejs, and doesn't do
any rounding.

Backwards-incompatible changes:

- made unt:chrono:userlib take a @da rather than @.
2021-02-23 19:46:21 +00:00
James Acklin
a68f929eed chat: pad message, not daybreak
Fixes urbit/landscape#475
2021-02-23 13:33:07 -05:00
janeway-bot
7be3a8445f
Merge 50d45b0703 into release/next-js 2021-02-23 21:35:58 +04:00
fang
50d45b0703
gen: ensure +tally can run successfully
Apparently the group-store scry interface was changed recently.
2021-02-23 18:33:15 +01:00
Liam Fitzgerald
3147625d6d
Merge remote-tracking branch 'origin/release/next-js' into lf/settings 2021-02-23 13:52:18 +10:00
Liam Fitzgerald
13f0ea755b
settings: sidebar layout 2021-02-23 13:32:41 +10:00
Matilde Park
4ac0a001bd chat: set timestamp size to 1 in unread-notice 2021-02-22 16:23:11 -05:00
matildepark
390a17b706
Merge pull request #4477 from urbit/james/blockquote-spacing
chat: blockquote spacing
2021-02-22 15:52:48 -05:00
James Acklin
97a6298889 chat: address PR comments
Fixes urbit/landscape#473
2021-02-22 15:29:24 -05:00
Matilde Park
fc2dd935b5 ShipSearch: update for flattened contacts 2021-02-22 15:22:15 -05:00
matildepark
e202a6425b
Merge pull request #4470 from urbit/james/miniprofile
interface: fixes miniprofile layout, restores actions
2021-02-22 14:43:14 -05:00