mirror of
https://github.com/standardnotes/server
synced 2026-01-17 05:04:27 -05:00
Compare commits
1422 Commits
@standardn
...
@standardn
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
18dae26b8e | ||
|
|
5bc8157d4d | ||
|
|
f29826e917 | ||
|
|
ba7cbb989b | ||
|
|
d4579ce21e | ||
|
|
ed14d2dfb7 | ||
|
|
64f1fe59c2 | ||
|
|
207ef9f3e5 | ||
|
|
3ea0435459 | ||
|
|
7668713dd6 | ||
|
|
f6bc1c3084 | ||
|
|
4203ff9a0c | ||
|
|
0281724196 | ||
|
|
94bd319279 | ||
|
|
373cfad1f7 | ||
|
|
59107f8553 | ||
|
|
e066b6a126 | ||
|
|
a0e4926135 | ||
|
|
b1b244a2cf | ||
|
|
b4a38d9dcc | ||
|
|
71e2a4187e | ||
|
|
c94f9c1a60 | ||
|
|
b9907924be | ||
|
|
d4c188c096 | ||
|
|
2ccaf490df | ||
|
|
cd893b41d7 | ||
|
|
3838358081 | ||
|
|
1a388f00c3 | ||
|
|
bd71422fab | ||
|
|
3e1697f47f | ||
|
|
032cde7723 | ||
|
|
34b956b482 | ||
|
|
681e0378ae | ||
|
|
609e85f926 | ||
|
|
e4ca310707 | ||
|
|
d606493356 | ||
|
|
5ef6c5c14a | ||
|
|
0188f290f9 | ||
|
|
676cf36f8d | ||
|
|
f8aef6c8ef | ||
|
|
5bf8cf49c1 | ||
|
|
51cd0a4dad | ||
|
|
1d06ffe9d5 | ||
|
|
dbf532f55e | ||
|
|
ca6dbc0053 | ||
|
|
1bb5980b45 | ||
|
|
a02a28774b | ||
|
|
2d9b3578b6 | ||
|
|
3d5e747590 | ||
|
|
94467747ac | ||
|
|
cebab59a02 | ||
|
|
09e1a892ca | ||
|
|
7b1eec21e5 | ||
|
|
a58262d584 | ||
|
|
a8f03e157b | ||
|
|
a401962bcd | ||
|
|
9759814f63 | ||
|
|
c7cf53722c | ||
|
|
8cb33dc906 | ||
|
|
1d73e4f072 | ||
|
|
0a0f82ea3d | ||
|
|
f9b1f40ddf | ||
|
|
0562b0a621 | ||
|
|
15ed1fd789 | ||
|
|
5001496c7b | ||
|
|
0a1080ce2a | ||
|
|
4802d7e876 | ||
|
|
bcd95cdbe9 | ||
|
|
d50c4440c2 | ||
|
|
921c30f641 | ||
|
|
22540ee834 | ||
|
|
4f4443a882 | ||
|
|
80dbacf933 | ||
|
|
dc77ff3e45 | ||
|
|
6515dcf487 | ||
|
|
d0fd6b98df | ||
|
|
345efacb44 | ||
|
|
d0dba1b66d | ||
|
|
da119af8b2 | ||
|
|
a5da42bddd | ||
|
|
12767237d2 | ||
|
|
230c96dcf1 | ||
|
|
e2696fcd1a | ||
|
|
a621cf1e3b | ||
|
|
db35b9fcab | ||
|
|
880db1038a | ||
|
|
414b090efb | ||
|
|
41e2136bc0 | ||
|
|
378ecedfcc | ||
|
|
06d4200909 | ||
|
|
22a8cc90f1 | ||
|
|
5cf84e31b0 | ||
|
|
31e7aaf253 | ||
|
|
8ec3d37c18 | ||
|
|
857c6af946 | ||
|
|
de081fe786 | ||
|
|
0aeeb2d1cf | ||
|
|
e589029722 | ||
|
|
b265a39b63 | ||
|
|
ed5cfd86db | ||
|
|
a1a3e9f586 | ||
|
|
a40b17b141 | ||
|
|
18181ed9df | ||
|
|
0ae028db73 | ||
|
|
79971be672 | ||
|
|
e4fcd738c3 | ||
|
|
6827e5e218 | ||
|
|
b91cd7e232 | ||
|
|
735d89cdaa | ||
|
|
e8db412bc2 | ||
|
|
bf855bb26e | ||
|
|
41cd377145 | ||
|
|
d798864caf | ||
|
|
cef1998f0e | ||
|
|
c2cbf44594 | ||
|
|
de2e167582 | ||
|
|
547a79e231 | ||
|
|
5a3afb3b17 | ||
|
|
66ef4be656 | ||
|
|
c5d0d63ddd | ||
|
|
36f07c691a | ||
|
|
ac0390e7c3 | ||
|
|
0477507a6a | ||
|
|
3e7856c895 | ||
|
|
6778a80f21 | ||
|
|
d4d49454a6 | ||
|
|
04b52e6773 | ||
|
|
2a1859e4be | ||
|
|
dd9a9c68cb | ||
|
|
9147ff5d49 | ||
|
|
503b84531b | ||
|
|
fe8ca828fb | ||
|
|
03a4a3f2ab | ||
|
|
3a8607d146 | ||
|
|
93b6e65554 | ||
|
|
5984e4c3e7 | ||
|
|
b4257c10ea | ||
|
|
c164bde847 | ||
|
|
883df939dd | ||
|
|
c7807d0f9e | ||
|
|
fc90343aaa | ||
|
|
fbcb45c3a2 | ||
|
|
179d8eaaa1 | ||
|
|
38685c1861 | ||
|
|
cdf42fbe2d | ||
|
|
9be4c002b7 | ||
|
|
a16c5307a0 | ||
|
|
d5536f5430 | ||
|
|
b1d88b15be | ||
|
|
ff78285e43 | ||
|
|
1a26221385 | ||
|
|
54113abe2a | ||
|
|
afe385aed4 | ||
|
|
f055e52e06 | ||
|
|
fab5d18064 | ||
|
|
a1e654a0d0 | ||
|
|
aa835268ea | ||
|
|
74b4312928 | ||
|
|
e91a832152 | ||
|
|
4f95bbee3f | ||
|
|
b9c9f74d0c | ||
|
|
e535cd504c | ||
|
|
db0360860a | ||
|
|
aa2b5f3b74 | ||
|
|
6241661e27 | ||
|
|
25047bf46d | ||
|
|
a1820ed212 | ||
|
|
0a1d1624e8 | ||
|
|
7367de6832 | ||
|
|
f0abfe89fc | ||
|
|
d1244d165a | ||
|
|
106d8f9192 | ||
|
|
1d86ba8fcb | ||
|
|
f20a947f8a | ||
|
|
19b9de05ae | ||
|
|
1d751c0fbe | ||
|
|
fa2564e164 | ||
|
|
330bff0124 | ||
|
|
ca57c8e7b5 | ||
|
|
a82b9a0c8a | ||
|
|
ea7e9d73c4 | ||
|
|
117b7b4b99 | ||
|
|
b4bf11d9da | ||
|
|
0306e10469 | ||
|
|
0ab47013f2 | ||
|
|
836883b82d | ||
|
|
ed671be9c5 | ||
|
|
9676a2586c | ||
|
|
e95ba61c7f | ||
|
|
a0718aea26 | ||
|
|
156fa7a618 | ||
|
|
8d006ece30 | ||
|
|
037c994040 | ||
|
|
a164ba291d | ||
|
|
610fba2601 | ||
|
|
398338c8f8 | ||
|
|
34be157d8e | ||
|
|
76372fe357 | ||
|
|
46879c336b | ||
|
|
aef9e936bd | ||
|
|
8cb92d9678 | ||
|
|
52db89de81 | ||
|
|
c5af8dfc05 | ||
|
|
27ad8e6959 | ||
|
|
c4a1502f70 | ||
|
|
d1d6c753c4 | ||
|
|
3bd63f7674 | ||
|
|
376466d9b2 | ||
|
|
e100c52bbc | ||
|
|
d4830dec01 | ||
|
|
7e11821021 | ||
|
|
4715e019a2 | ||
|
|
794cd8734a | ||
|
|
14d42b26bb | ||
|
|
6bb44afd91 | ||
|
|
c82345aeeb | ||
|
|
72ab08a0d0 | ||
|
|
f2d1b47e40 | ||
|
|
d9ee2c5be2 | ||
|
|
eb59902cf7 | ||
|
|
002074e4d1 | ||
|
|
45b55068f9 | ||
|
|
157eee5d93 | ||
|
|
d5f2b4f6eb | ||
|
|
a7a93497e8 | ||
|
|
8f96f0ed7a | ||
|
|
3f064176f2 | ||
|
|
c7b0c7dfa8 | ||
|
|
df20dd46db | ||
|
|
6dfd09989e | ||
|
|
fc821709e2 | ||
|
|
e986abaab5 | ||
|
|
a006fb3119 | ||
|
|
2af812eaf1 | ||
|
|
d13c975f94 | ||
|
|
1f7e4dd184 | ||
|
|
8b04216998 | ||
|
|
27ff25b70e | ||
|
|
dc3a41e4bb | ||
|
|
94448bb5d8 | ||
|
|
9a568b0f73 | ||
|
|
a1ee491dc5 | ||
|
|
e5c118c262 | ||
|
|
1bef1279e6 | ||
|
|
c511f259c7 | ||
|
|
f77ed8ef94 | ||
|
|
a4929af2ee | ||
|
|
095811dda9 | ||
|
|
480d5879ba | ||
|
|
c0722b173b | ||
|
|
f07c8e4bd4 | ||
|
|
baf4b2c1d2 | ||
|
|
a6039bd99a | ||
|
|
7c0010c902 | ||
|
|
596a0f1a02 | ||
|
|
efda3df09b | ||
|
|
ec35f46d45 | ||
|
|
c64fa2f47c | ||
|
|
6ce42a0101 | ||
|
|
d40c74c072 | ||
|
|
d722206916 | ||
|
|
19e4c8bf5e | ||
|
|
ee656b868b | ||
|
|
5e79d28bbf | ||
|
|
25ffd6b803 | ||
|
|
a08fe8087f | ||
|
|
fe273a9107 | ||
|
|
06170d8d7d | ||
|
|
62d231ae41 | ||
|
|
4a72097921 | ||
|
|
23b8cdc4a1 | ||
|
|
2646b756a9 | ||
|
|
28e058c6e8 | ||
|
|
8dea171115 | ||
|
|
aef9254713 | ||
|
|
31b7396006 | ||
|
|
be0a2649da | ||
|
|
bf8f91f83d | ||
|
|
effdfebc19 | ||
|
|
f4816e6c9a | ||
|
|
152a5cbd27 | ||
|
|
1488763115 | ||
|
|
bbb35d16fc | ||
|
|
ef07045ee9 | ||
|
|
3ba673b424 | ||
|
|
9c4032ebea | ||
|
|
05bb12c978 | ||
|
|
df957f07e3 | ||
|
|
b510284e01 | ||
|
|
205a1ed637 | ||
|
|
2073c735a5 | ||
|
|
34085ac6fb | ||
|
|
3d6559921b | ||
|
|
15a7f0e71a | ||
|
|
3e56243d6f | ||
|
|
032fcb938d | ||
|
|
e98393452b | ||
|
|
302b624504 | ||
|
|
e00d9d2ca0 | ||
|
|
9ab4601c8d | ||
|
|
19e43bdb1a | ||
|
|
49832e7944 | ||
|
|
916e98936a | ||
|
|
31d1eef7f7 | ||
|
|
2648d9a813 | ||
|
|
b24b576209 | ||
|
|
faee38bffd | ||
|
|
65f3503fe8 | ||
|
|
054023b791 | ||
|
|
383c3a68fa | ||
|
|
7d22b1c15c | ||
|
|
c71e7cd926 | ||
|
|
83ad069c5d | ||
|
|
081108d9ba | ||
|
|
8f3df56a2b | ||
|
|
d02124f4e5 | ||
|
|
09e351fedb | ||
|
|
ad4b85b095 | ||
|
|
0bf7d8beae | ||
|
|
1ae7cca394 | ||
|
|
bc1c7a8ae1 | ||
|
|
c22c5e4584 | ||
|
|
ac3646836c | ||
|
|
7a31ab75d6 | ||
|
|
c49dc35ab5 | ||
|
|
06cedd11d8 | ||
|
|
f496376fb3 | ||
|
|
091e2a57e8 | ||
|
|
0d40ef6796 | ||
|
|
1be33ba4c3 | ||
|
|
aaeb311928 | ||
|
|
a7a38c07ac | ||
|
|
56f49752b4 | ||
|
|
892d8b6fe2 | ||
|
|
cec2005436 | ||
|
|
0eb86c0096 | ||
|
|
b8e39d76c1 | ||
|
|
1c3ff526b7 | ||
|
|
373767248c | ||
|
|
d7965b2748 | ||
|
|
cbcd2ec87a | ||
|
|
c74d37fc48 | ||
|
|
66f9352a06 | ||
|
|
e5eef3aba0 | ||
|
|
d261c81cd0 | ||
|
|
634e3bbb67 | ||
|
|
f8c9e67063 | ||
|
|
18eddea6f8 | ||
|
|
c6d655c5f5 | ||
|
|
46867c1a4d | ||
|
|
d29903bab6 | ||
|
|
3415cae093 | ||
|
|
408fd5a0c6 | ||
|
|
0a16ee64fe | ||
|
|
22b00479b4 | ||
|
|
5311e74266 | ||
|
|
5be7db7788 | ||
|
|
3bd1547ce3 | ||
|
|
a1fe15f7a9 | ||
|
|
19b8921f28 | ||
|
|
6b7879ba15 | ||
|
|
bd5f492a73 | ||
|
|
67311cc002 | ||
|
|
f39d3aca5b | ||
|
|
8e47491e3c | ||
|
|
0036d527bd | ||
|
|
f565f1d950 | ||
|
|
8e35dfa4b7 | ||
|
|
f911473be9 | ||
|
|
71624f1897 | ||
|
|
17de6ea7e1 | ||
|
|
6aad7cd207 | ||
|
|
63af335877 | ||
|
|
8cd7a138ab | ||
|
|
f69cdc7b03 | ||
|
|
2ca649cf31 | ||
|
|
f2ada08201 | ||
|
|
54ba1f69e5 | ||
|
|
f13a99f5fd | ||
|
|
e9bba6fd3a | ||
|
|
f0d1a70c87 | ||
|
|
56f0aef21d | ||
|
|
75e266cb9e | ||
|
|
b9bb83c0ce | ||
|
|
da645c5ab3 | ||
|
|
318af5757d | ||
|
|
b1cc156a25 | ||
|
|
79d71ca161 | ||
|
|
cedd50b366 | ||
|
|
0d5dcdd8ec | ||
|
|
d2b0fb144b | ||
|
|
053852b46c | ||
|
|
6ad349d379 | ||
|
|
f7d33c7164 | ||
|
|
b53b67328f | ||
|
|
573ffbfcf3 | ||
|
|
501ac0e99f | ||
|
|
959a11293a | ||
|
|
fee1f1a3a7 | ||
|
|
b0fbe0bb58 | ||
|
|
0087c70007 | ||
|
|
36e496dd7c | ||
|
|
f2e2030e85 | ||
|
|
0c3737dc19 | ||
|
|
f7471119e1 | ||
|
|
9bd97b95e9 | ||
|
|
b7400c198f | ||
|
|
f87036e3a8 | ||
|
|
a43e5ef724 | ||
|
|
913ced70b0 | ||
|
|
6ffce30a36 | ||
|
|
f5a57d886c | ||
|
|
e8ba49ecca | ||
|
|
c79a5dc94b | ||
|
|
4db83ae678 | ||
|
|
84ceb7ffd2 | ||
|
|
e215ac4343 | ||
|
|
bc8048790f | ||
|
|
886ccf84c1 | ||
|
|
c067cb9fe4 | ||
|
|
6b2389cdc3 | ||
|
|
d93916b159 | ||
|
|
c34f548e45 | ||
|
|
6fcd56cc86 | ||
|
|
8f88a87c93 | ||
|
|
f8c2f84322 | ||
|
|
46c4947871 | ||
|
|
64759ec2da | ||
|
|
5f7e768e64 | ||
|
|
4bc189f1c5 | ||
|
|
71721ab198 | ||
|
|
5536a48966 | ||
|
|
f77e29d3c9 | ||
|
|
4b1fc718a2 | ||
|
|
1708c3f8a0 | ||
|
|
352e02028d | ||
|
|
1bbb639c83 | ||
|
|
c14265f103 | ||
|
|
c030a6b3d8 | ||
|
|
af997ea658 | ||
|
|
efa4d7fc60 | ||
|
|
f714aaa0e9 | ||
|
|
aee6e60583 | ||
|
|
4e602687d5 | ||
|
|
d026152ac8 | ||
|
|
3f21a358d2 | ||
|
|
dc55e47c98 | ||
|
|
3b804e2321 | ||
|
|
b32f851a90 | ||
|
|
479d20e76f | ||
|
|
fae4553fc8 | ||
|
|
cb74b23e45 | ||
|
|
af8f12c33a | ||
|
|
a148c4d1f6 | ||
|
|
f7190c0c9c | ||
|
|
c00d7765a9 | ||
|
|
2b651d86e2 | ||
|
|
9be3517093 | ||
|
|
fcfedaf7e7 | ||
|
|
0b82794e9c | ||
|
|
2a52e398cb | ||
|
|
c31e882ad2 | ||
|
|
2f0903e0eb | ||
|
|
2396053bc1 | ||
|
|
17fd12305e | ||
|
|
425ea4374d | ||
|
|
c076c3c74a | ||
|
|
547cdfd8ec | ||
|
|
a0af8f0025 | ||
|
|
c970b1ea68 | ||
|
|
4d1e2dec26 | ||
|
|
108408a944 | ||
|
|
18d07d431f | ||
|
|
cbc024f67a | ||
|
|
55ec5970da | ||
|
|
58bdca6659 | ||
|
|
ef49b0d3f8 | ||
|
|
9cb691e5ad | ||
|
|
04d09582d4 | ||
|
|
8f90dc172b | ||
|
|
f759261919 | ||
|
|
2606f6d929 | ||
|
|
c288e5d8dc | ||
|
|
4b76d4b71e | ||
|
|
72310130d2 | ||
|
|
f9e51ef06e | ||
|
|
92a5eb0d98 | ||
|
|
77d2ea1a1f | ||
|
|
92f96ddb84 | ||
|
|
15a914e25e | ||
|
|
912a29d091 | ||
|
|
b2c32ce70e | ||
|
|
ed1a708c40 | ||
|
|
e905128d45 | ||
|
|
fd598f372a | ||
|
|
7a3946a9e2 | ||
|
|
cbdd2584d0 | ||
|
|
f3161c2712 | ||
|
|
148542dd5a | ||
|
|
d2b2c339f2 | ||
|
|
d2578c48f0 | ||
|
|
fecfd54728 | ||
|
|
17e4162d3e | ||
|
|
742209d773 | ||
|
|
1fa4b7cf27 | ||
|
|
5dc5507039 | ||
|
|
3035a20b9f | ||
|
|
04b3bb034f | ||
|
|
bf84be0136 | ||
|
|
890cf48749 | ||
|
|
2b3436c6ce | ||
|
|
4df8c3b2e5 | ||
|
|
25a2696c32 | ||
|
|
52f879f842 | ||
|
|
4f70fa156d | ||
|
|
38e77f04be | ||
|
|
060206ddd4 | ||
|
|
0bc0909386 | ||
|
|
667d528a8c | ||
|
|
fa7fbe26e7 | ||
|
|
ba422a29d0 | ||
|
|
d220ec5bf7 | ||
|
|
7baf5492bc | ||
|
|
d5a8409bb5 | ||
|
|
f58f90667c | ||
|
|
a388e1a802 | ||
|
|
8811d10a73 | ||
|
|
c7a394cd1a | ||
|
|
b7615a7f2e | ||
|
|
1ca70c1e50 | ||
|
|
253cbb1d0c | ||
|
|
e38a16404c | ||
|
|
f17a1f875c | ||
|
|
2237e0f5df | ||
|
|
0df471585f | ||
|
|
95aac1a7bf | ||
|
|
c078bc958d | ||
|
|
49c27924ea | ||
|
|
c9dd8e7338 | ||
|
|
5ef90cc75b | ||
|
|
063c61d96c | ||
|
|
0cb5e36b20 | ||
|
|
319bab5b34 | ||
|
|
90a4f2111f | ||
|
|
3aba202970 | ||
|
|
c8974b7fa2 | ||
|
|
3654a19586 | ||
|
|
5f0929c1aa | ||
|
|
c0fa83bce6 | ||
|
|
c201ee42a0 | ||
|
|
e6a4cc3098 | ||
|
|
39f2fe2ba1 | ||
|
|
72ce190996 | ||
|
|
527dd1b61b | ||
|
|
af8feaadfe | ||
|
|
3164f76662 | ||
|
|
d6e531d4b6 | ||
|
|
af76878dad | ||
|
|
28cce39fe7 | ||
|
|
a8b806af08 | ||
|
|
fa0b0294b4 | ||
|
|
58ab410b0a | ||
|
|
51c8b20506 | ||
|
|
1e62a3760e | ||
|
|
2f569d4104 | ||
|
|
f23e444ed0 | ||
|
|
e6e9a32f03 | ||
|
|
8237df33a7 | ||
|
|
624b574013 | ||
|
|
d762bc89d1 | ||
|
|
f0cbec07b8 | ||
|
|
8c1f583968 | ||
|
|
b28636fa73 | ||
|
|
092054fd44 | ||
|
|
9391917d08 | ||
|
|
5cf008f53d | ||
|
|
231194bd53 | ||
|
|
2707e87554 | ||
|
|
4b40c59e7e | ||
|
|
f2e8579f95 | ||
|
|
57118c85e3 | ||
|
|
8ddc7b0a58 | ||
|
|
bc63d0aeea | ||
|
|
9def26e809 | ||
|
|
74ac709bb5 | ||
|
|
1f749fad49 | ||
|
|
13c85d4331 | ||
|
|
77d2099cdb | ||
|
|
56a312f217 | ||
|
|
aa2b3dac49 | ||
|
|
1a8daef79d | ||
|
|
a83d133f93 | ||
|
|
b0d01dffd9 | ||
|
|
b74e7ce86d | ||
|
|
671f7a7074 | ||
|
|
55fd873b37 | ||
|
|
32c667b22d | ||
|
|
a6b062f638 | ||
|
|
f9183b4c62 | ||
|
|
c7d575a0ff | ||
|
|
a575e62519 | ||
|
|
3761d60f41 | ||
|
|
fd629d43ba | ||
|
|
76b1cb0f5a | ||
|
|
2f94abc9f7 | ||
|
|
c70040fe5d | ||
|
|
4b8a9e448a | ||
|
|
1e4c7d0f31 | ||
|
|
ec75795a02 | ||
|
|
ad26b64b28 | ||
|
|
9e4715ebbd | ||
|
|
cc612296d0 | ||
|
|
1148b3948c | ||
|
|
c7e605fd60 | ||
|
|
4ab32c670e | ||
|
|
2d810568a8 | ||
|
|
b8353aa817 | ||
|
|
7924f63e28 | ||
|
|
b3b617ea0b | ||
|
|
18a5071618 | ||
|
|
fea58029b9 | ||
|
|
e748723209 | ||
|
|
8a47d81936 | ||
|
|
7ae9f5694d | ||
|
|
9031379469 | ||
|
|
dc71e6777f | ||
|
|
89eb798fa8 | ||
|
|
4304e068b9 | ||
|
|
126bc6de6a | ||
|
|
c2b9107f13 | ||
|
|
1471f4a839 | ||
|
|
b0b3c6671d | ||
|
|
6ddb8fb6c2 | ||
|
|
66da49b0df | ||
|
|
750cd26c36 | ||
|
|
4c15589663 | ||
|
|
62a0e89748 | ||
|
|
b9603240d0 | ||
|
|
85d87bb45e | ||
|
|
3193308d8d | ||
|
|
7fe90c2a1a | ||
|
|
e917b19f22 | ||
|
|
7d47d6a752 | ||
|
|
8fbb94d15a | ||
|
|
9fcadf8fbb | ||
|
|
f5ac8ac5e9 | ||
|
|
0a0b8aafaf | ||
|
|
097a7eae7e | ||
|
|
c0e43a0cf0 | ||
|
|
d7926dd9d1 | ||
|
|
da474741e6 | ||
|
|
a1e16031e0 | ||
|
|
a229093b60 | ||
|
|
1a64a1c34d | ||
|
|
b8f49d2d45 | ||
|
|
990140c392 | ||
|
|
542b296018 | ||
|
|
c6122d33b9 | ||
|
|
8c71066660 | ||
|
|
a748164bf2 | ||
|
|
c427fa8790 | ||
|
|
093cc07c39 | ||
|
|
30f14820c6 | ||
|
|
c8ea2ab199 | ||
|
|
d56bbacc0b | ||
|
|
bb468a8b7e | ||
|
|
7e99f4b078 | ||
|
|
14ce6dd818 | ||
|
|
063a3e425d | ||
|
|
0900dc75ac | ||
|
|
aa8bd1f8dc | ||
|
|
c71f7ff8ad | ||
|
|
fe18420913 | ||
|
|
97124928df | ||
|
|
c108bfb12f | ||
|
|
5fe6ed1462 | ||
|
|
df5fcce769 | ||
|
|
8f57ece7b8 | ||
|
|
8a10d201c5 | ||
|
|
9d7e63a7a7 | ||
|
|
87c1ae2ac0 | ||
|
|
56c922e715 | ||
|
|
a29ac8e68f | ||
|
|
03f9c6039c | ||
|
|
73d81df8cb | ||
|
|
484f554339 | ||
|
|
2ad864e68e | ||
|
|
723ff44151 | ||
|
|
04e11cbbf7 | ||
|
|
3aef5998df | ||
|
|
34018ae7eb | ||
|
|
2f9d8e776f | ||
|
|
9503f0d963 | ||
|
|
32aff3e3f4 | ||
|
|
9b9f10d4ca | ||
|
|
e4f0cc6b37 | ||
|
|
d211249086 | ||
|
|
0fc5db8aee | ||
|
|
0a2abef979 | ||
|
|
8242f13aff | ||
|
|
7516ba7028 | ||
|
|
3417407cbe | ||
|
|
720d046c00 | ||
|
|
b88f560b07 | ||
|
|
51b264ca13 | ||
|
|
0309aeab34 | ||
|
|
aca8d2948d | ||
|
|
09596d2181 | ||
|
|
e87f7e1674 | ||
|
|
4ad1cccc33 | ||
|
|
5d12648669 | ||
|
|
7e989720bf | ||
|
|
f8a2892811 | ||
|
|
eaab23ec19 | ||
|
|
36dcdf256f | ||
|
|
10a596db65 | ||
|
|
c76302cf98 | ||
|
|
176cf608ef | ||
|
|
f69073ba02 | ||
|
|
09ecf9262a | ||
|
|
a3fc0d9120 | ||
|
|
0d5c3283d3 | ||
|
|
7b486348ef | ||
|
|
25f752d6b5 | ||
|
|
74e35a2d65 | ||
|
|
3532289575 | ||
|
|
7db9ba03f3 | ||
|
|
b0baaf9ea6 | ||
|
|
b7c6dab3ad | ||
|
|
2daa145867 | ||
|
|
4bd5fb22b4 | ||
|
|
78533a6045 | ||
|
|
e1c533a15e | ||
|
|
b6c2bb8023 | ||
|
|
c45653a50a | ||
|
|
d827513b73 | ||
|
|
ad183ca621 | ||
|
|
1d11c5a186 | ||
|
|
e84e78ec55 | ||
|
|
f91e4316ff | ||
|
|
d54b812881 | ||
|
|
28dc5ba2a4 | ||
|
|
979a320ca6 | ||
|
|
c46186b237 | ||
|
|
27cf093f85 | ||
|
|
ec0fb7e0b9 | ||
|
|
90029456fe | ||
|
|
b167b00075 | ||
|
|
b13fab76f3 | ||
|
|
782a9d310d | ||
|
|
537b1f2a29 | ||
|
|
2fad6b62cb | ||
|
|
bf173b4ede | ||
|
|
c52f038c76 | ||
|
|
b12ba98a5c | ||
|
|
dbccdf342b | ||
|
|
49b6d029c4 | ||
|
|
d6469954ce | ||
|
|
5f40550ad4 | ||
|
|
79ccbdf100 | ||
|
|
1983cfcab2 | ||
|
|
753f86707f | ||
|
|
16d0ed505b | ||
|
|
9de09c55f8 | ||
|
|
c3d7a33aa2 | ||
|
|
a9cc00a478 | ||
|
|
ec035ba648 | ||
|
|
5446f3cae4 | ||
|
|
6a550092c2 | ||
|
|
1b691f6bcd | ||
|
|
98f45cc4c2 | ||
|
|
edc4a20859 | ||
|
|
74e1380df8 | ||
|
|
dfa5187ff7 | ||
|
|
c99c4425cd | ||
|
|
2d8919a079 | ||
|
|
f638287213 | ||
|
|
991d885b63 | ||
|
|
bb17efa817 | ||
|
|
deec29c1b4 | ||
|
|
9d872008a7 | ||
|
|
145b4401af | ||
|
|
17bd50c263 | ||
|
|
4cb79de685 | ||
|
|
28ab0b8e46 | ||
|
|
6911802b87 | ||
|
|
5b98924561 | ||
|
|
f13944badc | ||
|
|
af41e6497d | ||
|
|
b1122a3da5 | ||
|
|
b17fddda63 | ||
|
|
20dc020596 | ||
|
|
b53291650f | ||
|
|
b83d84e519 | ||
|
|
14794d1a5f | ||
|
|
6b130ef045 | ||
|
|
25a6126ef4 | ||
|
|
a2df09fb5b | ||
|
|
465b2741fb | ||
|
|
724dc5c86c | ||
|
|
f4208c19a7 | ||
|
|
6fed293716 | ||
|
|
29ffaf04c4 | ||
|
|
bc9182f214 | ||
|
|
91c70a51a0 | ||
|
|
dfe30d7f5e | ||
|
|
815d5460e7 | ||
|
|
8a63c6768b | ||
|
|
f7c29848f1 | ||
|
|
78b9426c1c | ||
|
|
87b22ac684 | ||
|
|
46c30d197a | ||
|
|
36b8354350 | ||
|
|
b6702c7182 | ||
|
|
09d7f608cd | ||
|
|
d023a27377 | ||
|
|
190595febf | ||
|
|
b25edec26c | ||
|
|
85d0c12dad | ||
|
|
25c98ef078 | ||
|
|
af51baea9a | ||
|
|
e97b16606c | ||
|
|
5ff9e43899 | ||
|
|
d3a49e109c | ||
|
|
e3dbff6996 | ||
|
|
d9f5410afd | ||
|
|
0568c8f563 | ||
|
|
16043a7d68 | ||
|
|
f24ee61d11 | ||
|
|
881a6967ac | ||
|
|
a93f66c6ac | ||
|
|
fdf4b29ae2 | ||
|
|
d5f6ca0d2e | ||
|
|
12d9ccf28c | ||
|
|
ffc270cc6f | ||
|
|
61e2e58297 | ||
|
|
b68ede1f63 | ||
|
|
d333c1393c | ||
|
|
35d6f2f961 | ||
|
|
3d619a0c61 | ||
|
|
bda812f170 | ||
|
|
826719bb67 | ||
|
|
631101eae5 | ||
|
|
fa0b9bf935 | ||
|
|
708af5e83c | ||
|
|
993d31167b | ||
|
|
ac5fc7d28a | ||
|
|
73f3fad13d | ||
|
|
85e0e2165f | ||
|
|
89ee103303 | ||
|
|
6b313947c3 | ||
|
|
fba8e6ce35 | ||
|
|
622c024547 | ||
|
|
2c51d92bab | ||
|
|
11ef2ef708 | ||
|
|
df793e07fd | ||
|
|
bae6eea3aa | ||
|
|
be17b67cc1 | ||
|
|
645a24d29b | ||
|
|
64962ce632 | ||
|
|
5120883691 | ||
|
|
0b4570ebee | ||
|
|
5bbdc7e426 | ||
|
|
a1d60630a0 | ||
|
|
e96fd6d69e | ||
|
|
1423b3fc35 | ||
|
|
fd10b4d585 | ||
|
|
8a79437668 | ||
|
|
85a87dc40a | ||
|
|
95aa0a0024 | ||
|
|
d0c44d1376 | ||
|
|
b0e31ff305 | ||
|
|
f11569ac53 | ||
|
|
fbf7a61bc9 | ||
|
|
2265165fa3 | ||
|
|
b216b17ef5 | ||
|
|
b2c7b924ac | ||
|
|
1349f950c9 | ||
|
|
f1c398a3a4 | ||
|
|
369231ff11 | ||
|
|
271dee5be6 | ||
|
|
a0c8f40e7b | ||
|
|
4db0aef0ff | ||
|
|
5ed9bd243f | ||
|
|
2c53306f5a | ||
|
|
a3624357dc | ||
|
|
afe0be31f2 | ||
|
|
71854b704d | ||
|
|
0907773d6f | ||
|
|
787eedc8af | ||
|
|
040a2b5e5f | ||
|
|
347ee275fa | ||
|
|
1c0a9e6726 | ||
|
|
c4f038ab9a | ||
|
|
3746ac5fc1 | ||
|
|
5c4353dd0c | ||
|
|
f64caed220 | ||
|
|
863d590292 | ||
|
|
0dcf64c82b | ||
|
|
48fd5c5ff6 | ||
|
|
84fa374072 | ||
|
|
2313b0b450 | ||
|
|
4fa6f579af | ||
|
|
08c1328932 | ||
|
|
4586308210 | ||
|
|
5aa561dcb2 | ||
|
|
e07612fe24 | ||
|
|
c9289204c4 | ||
|
|
51bb1081a6 | ||
|
|
25066bb33c | ||
|
|
bfdb176445 | ||
|
|
42233fa756 | ||
|
|
55de4319ed | ||
|
|
306f6edd4e | ||
|
|
bf55bbccd9 | ||
|
|
6e26c0a0be | ||
|
|
11bcd318ab | ||
|
|
2f6d19dc91 | ||
|
|
989e1ce175 | ||
|
|
1c2fd46401 | ||
|
|
b7967b34d1 | ||
|
|
44dfa37852 | ||
|
|
a06e3c7e74 | ||
|
|
b54c331bef | ||
|
|
8216fe5e36 | ||
|
|
b5c9c4b188 | ||
|
|
86bd617933 | ||
|
|
eb771e7932 | ||
|
|
5ea91aeafc | ||
|
|
3c67290aeb | ||
|
|
f9f6c2f9be | ||
|
|
a92e8f61bc | ||
|
|
e739683bb6 | ||
|
|
f4a743593d | ||
|
|
f93e49ecf3 | ||
|
|
d6325a42ea | ||
|
|
ef997be219 | ||
|
|
b6eadfcebc | ||
|
|
e4c65ca631 | ||
|
|
2d2342f9ee | ||
|
|
60838a1b7e | ||
|
|
63401b7640 | ||
|
|
6a5b669ec4 | ||
|
|
ca201447d2 | ||
|
|
f1d3117518 | ||
|
|
8559948a5a | ||
|
|
a3b4aa3b4a | ||
|
|
0347fa381f | ||
|
|
3d475cc779 | ||
|
|
ceec74fb70 | ||
|
|
f5296a947e | ||
|
|
5b5fcd9372 | ||
|
|
c38817c62e | ||
|
|
ba08c6a707 | ||
|
|
1797bc8181 | ||
|
|
657aaf75ec | ||
|
|
dac3c733b3 | ||
|
|
d02b6b67b5 | ||
|
|
52ce5f3a2f | ||
|
|
1d316e17cb | ||
|
|
6193f4b87a | ||
|
|
de5a30e46c | ||
|
|
973acd22ca | ||
|
|
e235293070 | ||
|
|
07ab67faa8 | ||
|
|
e6fce8cbc7 | ||
|
|
589f8e62f4 | ||
|
|
27f45f7cf6 | ||
|
|
48af4ac79c | ||
|
|
9b6baab1e0 | ||
|
|
3ba4e712dc | ||
|
|
5bf3ecdf42 | ||
|
|
bd6fd472a6 | ||
|
|
7f4776b52b | ||
|
|
d20f03127a | ||
|
|
4b6c7774e0 | ||
|
|
d02bca8879 | ||
|
|
5e654ccf94 | ||
|
|
7d3e5c22fb | ||
|
|
23eb61ee5f | ||
|
|
2cded4b2d1 | ||
|
|
ba7662fc1e | ||
|
|
832a48ac76 | ||
|
|
2db0c125fe | ||
|
|
20d9624bc6 | ||
|
|
f20ee68f50 | ||
|
|
cbf45ce3eb | ||
|
|
2e7fdd93dd | ||
|
|
8ce38f82b5 | ||
|
|
ec5429eeec | ||
|
|
4b17c4045d | ||
|
|
aaf42e4693 | ||
|
|
0e3cbfc40b | ||
|
|
a95ca05c10 | ||
|
|
56b600dbdc | ||
|
|
80a013d0a3 | ||
|
|
7ef59bb74c | ||
|
|
9cf1a9e25c | ||
|
|
0fce6c0cd4 | ||
|
|
2d444e9aa0 | ||
|
|
7c393b1125 | ||
|
|
78ab4dc94d | ||
|
|
6a5904cfaa | ||
|
|
a6061ec2a9 | ||
|
|
51c777304b | ||
|
|
fbd535f2c5 | ||
|
|
7d456671c2 | ||
|
|
dd4924c925 | ||
|
|
f73129cd7e | ||
|
|
4983c8741e | ||
|
|
c5798640ff | ||
|
|
5803a8018a | ||
|
|
e2aae8ac8a | ||
|
|
2917aeeb32 | ||
|
|
9377c03c3f | ||
|
|
9b926fbad6 | ||
|
|
8db19c3e2b | ||
|
|
ca970781c7 | ||
|
|
e7beee2788 | ||
|
|
d266eada88 | ||
|
|
11b8b078b4 | ||
|
|
37912fa29a | ||
|
|
b97dafe6f3 | ||
|
|
2a29151395 | ||
|
|
8b988d89c0 | ||
|
|
c0908f1b58 | ||
|
|
bb46044f7c | ||
|
|
60b3dd6138 | ||
|
|
22c1f936c3 | ||
|
|
e899874b04 | ||
|
|
04c6888cf6 | ||
|
|
29c56c6919 | ||
|
|
c98ed9cc85 | ||
|
|
88f7530c13 | ||
|
|
bb820437af | ||
|
|
d1a4bd38e0 | ||
|
|
d18f6ccd32 | ||
|
|
aa317c964e | ||
|
|
7ae8845ae9 | ||
|
|
123a6dbe0c | ||
|
|
dda8d79526 | ||
|
|
de5293955a | ||
|
|
96669bff5b | ||
|
|
a99762f004 | ||
|
|
1fc3c9b83e | ||
|
|
af86b6f664 | ||
|
|
a0208dd5b3 | ||
|
|
1c5c8b81d5 | ||
|
|
79c3e33434 | ||
|
|
5ab8729a31 | ||
|
|
db0baf92f1 | ||
|
|
a8974094db | ||
|
|
13c5c97ba7 | ||
|
|
894ebb3edd | ||
|
|
cac899a7e5 | ||
|
|
901e0dd93b | ||
|
|
a360231fd0 | ||
|
|
6ccc6ee42f | ||
|
|
9c72ad85a0 | ||
|
|
fa6d80a753 | ||
|
|
f6ab2ca9ba | ||
|
|
ba1e1ad5ad | ||
|
|
02705ea3ad | ||
|
|
df6e3f06a6 | ||
|
|
1cb5ee9fd6 | ||
|
|
893d6176c3 | ||
|
|
2c1b512e40 | ||
|
|
de50d76800 | ||
|
|
401b78e477 | ||
|
|
01837eaea9 | ||
|
|
7df699353c | ||
|
|
5455972be2 | ||
|
|
57488bcd16 | ||
|
|
b6fda901ef | ||
|
|
14669df890 | ||
|
|
64525a65f2 | ||
|
|
61fc7efecb | ||
|
|
8c7c1e4745 | ||
|
|
f64d30ec88 | ||
|
|
384dfc8da4 | ||
|
|
841784ae8c | ||
|
|
f5683cfd94 | ||
|
|
0a420ce30e | ||
|
|
a5e7132d3c | ||
|
|
6dfb2be4a2 | ||
|
|
d81cbad550 | ||
|
|
51ad06b303 | ||
|
|
27048ad95c | ||
|
|
fa9bf0b448 | ||
|
|
305190b64e | ||
|
|
98e3d18335 | ||
|
|
72e398956b | ||
|
|
1e69a13a97 | ||
|
|
7f9e6e2f44 | ||
|
|
d3c6c0d48e | ||
|
|
6c83476fd2 | ||
|
|
9cdf7e2c51 | ||
|
|
599119e14e | ||
|
|
a2c484e0f3 | ||
|
|
97ff4d5ac2 | ||
|
|
5255cfbb25 | ||
|
|
780358368b | ||
|
|
cf0b918913 | ||
|
|
4ea690204e | ||
|
|
14eb775749 | ||
|
|
bf4a3be6d9 | ||
|
|
b9e1e47871 | ||
|
|
ff532ecb22 | ||
|
|
eb21872db1 | ||
|
|
8e3df184dc | ||
|
|
b34bbcac8b | ||
|
|
226965a1d7 | ||
|
|
17b2ea126c | ||
|
|
59fc4a089c | ||
|
|
ef26dc8cbb | ||
|
|
8a0fbb28b0 | ||
|
|
618d8d5b1a | ||
|
|
3a936dc9c1 | ||
|
|
031fcd75ee | ||
|
|
c8cd23cb32 | ||
|
|
a3049938a3 | ||
|
|
b23488e862 | ||
|
|
c8203cf04c | ||
|
|
4f2616ef0a | ||
|
|
04ffc69e00 | ||
|
|
5b4bb6e7a7 | ||
|
|
2e953ba998 | ||
|
|
ed5a4eb960 | ||
|
|
31b2c05084 | ||
|
|
6e1662038c | ||
|
|
df78d88f79 | ||
|
|
addedb3091 | ||
|
|
2ea17b2dea | ||
|
|
85d2f42f47 | ||
|
|
cdb655c1bd | ||
|
|
3064d03aa9 | ||
|
|
6af6417ca2 | ||
|
|
a35271fbb3 | ||
|
|
63aef71f60 | ||
|
|
0f8457534c | ||
|
|
2984582e62 | ||
|
|
147d8fd9af | ||
|
|
c12d354900 | ||
|
|
8bcb552783 | ||
|
|
f504a8288c | ||
|
|
79f5b54228 | ||
|
|
669a9855e6 | ||
|
|
e3b96c3a1f | ||
|
|
7e0d4bef20 | ||
|
|
0bd0f48df3 | ||
|
|
ae56126585 | ||
|
|
6dcf0ac124 | ||
|
|
63e2ce43c2 | ||
|
|
f27aa21eb5 | ||
|
|
42926c663b | ||
|
|
d38116183c | ||
|
|
9ca373e208 | ||
|
|
4084f2f5ec | ||
|
|
684ffbadbc | ||
|
|
1c4d4c57de | ||
|
|
d83111a199 | ||
|
|
f10fa839fb | ||
|
|
1f20395ff3 | ||
|
|
bfe6f4255a | ||
|
|
b9032f3012 | ||
|
|
ce53c459e6 | ||
|
|
6df42fb0d5 | ||
|
|
1e2b496f4f | ||
|
|
528c1b0d57 | ||
|
|
22fba8ba80 | ||
|
|
6f26261ebe | ||
|
|
4b1fe3ba91 | ||
|
|
9f95262bd4 | ||
|
|
2ec28e541e | ||
|
|
4764d4b19a | ||
|
|
9b27547dae | ||
|
|
a96f2c9153 | ||
|
|
225e0aaf88 | ||
|
|
f0c85910bc | ||
|
|
124c443528 | ||
|
|
37c7f8d39f | ||
|
|
c419f1ce22 | ||
|
|
4949cdfe2f | ||
|
|
cd101b96ea | ||
|
|
40d0e4631f | ||
|
|
a55a995660 | ||
|
|
1d576d48ad | ||
|
|
4ff8030f87 | ||
|
|
c15e2e2c8f | ||
|
|
41d31a8d75 | ||
|
|
10e2a26352 | ||
|
|
6e547f77d0 | ||
|
|
530a426601 | ||
|
|
642d6bab77 | ||
|
|
7980af3d82 | ||
|
|
2980c42e88 | ||
|
|
b03994f9db | ||
|
|
41906ec2f9 | ||
|
|
4d1e7ff2a5 | ||
|
|
7f18fcfc13 | ||
|
|
ff02ce0747 | ||
|
|
a6056600eb | ||
|
|
24c94326d5 | ||
|
|
48c0cb5e62 | ||
|
|
9968efe1b2 | ||
|
|
6368342149 | ||
|
|
b5f73db210 | ||
|
|
22d6a02d04 | ||
|
|
4e0bcfcccf | ||
|
|
104313c15d | ||
|
|
814289af46 | ||
|
|
3096cd98d5 | ||
|
|
45dfefbc7a | ||
|
|
20d92149a8 | ||
|
|
9c01fffca5 | ||
|
|
61c1cfff4b | ||
|
|
7e74261f62 | ||
|
|
32601f34f1 | ||
|
|
aef69a1a96 | ||
|
|
130f90bdb6 | ||
|
|
851c7de87f | ||
|
|
118156c62d | ||
|
|
cdad3143c9 | ||
|
|
00fe32136e | ||
|
|
52f56eeb68 | ||
|
|
b595264e31 | ||
|
|
bf04262170 | ||
|
|
fd589922bb | ||
|
|
fb7029f5c1 | ||
|
|
cc4b4f9bf8 | ||
|
|
b048d6d7e3 | ||
|
|
cffc1f442f | ||
|
|
91fe710741 | ||
|
|
5a1eb9fdac | ||
|
|
a64ef6e750 | ||
|
|
47d2012b3d | ||
|
|
2c99cd2e21 | ||
|
|
435cd2f66a | ||
|
|
372b12dfc2 | ||
|
|
3a12f5c1c4 | ||
|
|
781de224b6 | ||
|
|
eff09454c3 | ||
|
|
473feba6a8 | ||
|
|
e9f0704fb0 | ||
|
|
8c99469d88 | ||
|
|
8ec1311dfc | ||
|
|
e48cca6b45 | ||
|
|
d660721f95 | ||
|
|
c52bb93d79 | ||
|
|
ffb6bfd0c9 | ||
|
|
6e0855f9b3 | ||
|
|
ec9e9ec387 | ||
|
|
fa75aa40f0 | ||
|
|
b865953c22 | ||
|
|
2542cf6f9a | ||
|
|
cb9499b87f | ||
|
|
c351f01f67 | ||
|
|
c87561fca7 | ||
|
|
a363c143fa | ||
|
|
fb81d2b926 | ||
|
|
05b1b8f079 | ||
|
|
7848dc06d4 | ||
|
|
3a005719b7 | ||
|
|
6928988f78 | ||
|
|
a521894d7c | ||
|
|
b7fb1d9c08 | ||
|
|
5f67e45911 | ||
|
|
fddf9fccbd | ||
|
|
2bedbd7bd2 | ||
|
|
02f3c85796 | ||
|
|
3b5bd6a47f | ||
|
|
06fd404d44 | ||
|
|
d931c52508 | ||
|
|
800fe9e4c8 | ||
|
|
8b3d78678f | ||
|
|
2351cd3ad6 | ||
|
|
dd86c5bcdf | ||
|
|
d0c00e306e | ||
|
|
6cd68ddd6a | ||
|
|
02639cddb2 | ||
|
|
0f67aa4058 | ||
|
|
78c3403d5f | ||
|
|
fc8f8c574d | ||
|
|
3972ee580d | ||
|
|
b0a994d5be | ||
|
|
80df28a0c4 | ||
|
|
1c6c6a9296 | ||
|
|
7bb698e442 | ||
|
|
784728cd54 | ||
|
|
4b883b68de | ||
|
|
dec2cc2aaf | ||
|
|
b4e8971ad2 | ||
|
|
84e436265e | ||
|
|
ac8a69f8d4 | ||
|
|
b912e050ea | ||
|
|
284561d093 | ||
|
|
efc355982c | ||
|
|
8907879a19 | ||
|
|
86f6057207 | ||
|
|
4c92698c73 | ||
|
|
8407c3b649 | ||
|
|
ed8f82617d | ||
|
|
31d040d1b6 | ||
|
|
25a6796e63 | ||
|
|
ff091918aa | ||
|
|
91b76edce1 | ||
|
|
5ae5c83bf5 | ||
|
|
9d90f276de | ||
|
|
245f091e22 | ||
|
|
ae2f8f086b | ||
|
|
5e5eb7f937 | ||
|
|
748630e1f1 | ||
|
|
43064c8c55 | ||
|
|
4559a3047c | ||
|
|
de8064ee5c | ||
|
|
48c8dba342 | ||
|
|
31a515b2f1 | ||
|
|
294f56e189 | ||
|
|
70596a0aac | ||
|
|
74bc79116b | ||
|
|
e6bd50ae77 | ||
|
|
308662550f | ||
|
|
d94a7e7157 | ||
|
|
630b264754 | ||
|
|
5f2be44b85 | ||
|
|
f68ece68af | ||
|
|
70c829a2c9 | ||
|
|
e3b6ac4874 | ||
|
|
a762d5a22c | ||
|
|
3686a26019 | ||
|
|
80daec748d | ||
|
|
94359f1299 | ||
|
|
59dda1bb99 | ||
|
|
806a732cbc | ||
|
|
7816be7ba7 | ||
|
|
5f3bd5137f | ||
|
|
6c9fc5fb86 | ||
|
|
f7e0b68643 | ||
|
|
b283bbaca9 | ||
|
|
92ba759b1c | ||
|
|
0acc9d8d68 | ||
|
|
daa7a9ff61 | ||
|
|
455f35e0c1 | ||
|
|
1fa655b56e | ||
|
|
e553222b4b | ||
|
|
f1b6f48926 | ||
|
|
14ab1cae69 | ||
|
|
5f9cf90b16 | ||
|
|
97b367d4ee | ||
|
|
47119fb346 | ||
|
|
d77eb7f5f1 | ||
|
|
1b0a2bb34c | ||
|
|
a363039fa1 | ||
|
|
32c740b58e | ||
|
|
822ee890af | ||
|
|
b0406dd8aa | ||
|
|
8d152ddfcb | ||
|
|
1a16d2e4f4 | ||
|
|
1ca8531305 | ||
|
|
6190e7d092 | ||
|
|
a6542dd638 | ||
|
|
840777a851 | ||
|
|
5c9dff38c9 | ||
|
|
abfbacb8c2 | ||
|
|
03afdbf431 | ||
|
|
507d43b328 | ||
|
|
be214c0599 | ||
|
|
91f36c3a3f | ||
|
|
f60c15ed2e | ||
|
|
1ec072373d | ||
|
|
a7d039082e | ||
|
|
d5c06bfa58 | ||
|
|
c8f3a0ce7b | ||
|
|
edbedc181b | ||
|
|
94afa34780 | ||
|
|
74dd0ab6cd | ||
|
|
6c43a331d0 | ||
|
|
67835ba0c0 | ||
|
|
fe1b2a0e07 | ||
|
|
2e82be47ed | ||
|
|
15dfd6dcba | ||
|
|
dfd38943b0 | ||
|
|
500756d582 | ||
|
|
f855f541d8 | ||
|
|
590ec6643d | ||
|
|
b9efd35b50 | ||
|
|
3be1bfe58a | ||
|
|
bfbd2de778 | ||
|
|
50f7ae338a | ||
|
|
280fdc89c1 | ||
|
|
0f94e2ad0c | ||
|
|
d0036600e9 | ||
|
|
f766fefbf0 | ||
|
|
2178ed2a31 | ||
|
|
79511aea5f | ||
|
|
19bb77273b | ||
|
|
7ca377f1b8 | ||
|
|
6f5e9b7b5a | ||
|
|
f03a58079d | ||
|
|
8715fe1822 | ||
|
|
e10cb9adaf | ||
|
|
3030832711 | ||
|
|
7c638ef28a | ||
|
|
447a4b5e04 | ||
|
|
dd1ba6e302 | ||
|
|
08556b751f | ||
|
|
11d2190310 | ||
|
|
46519bb710 | ||
|
|
7b9290382d | ||
|
|
85e55cf0e4 | ||
|
|
7016854b7f | ||
|
|
01a4151763 | ||
|
|
311f758cd8 | ||
|
|
3bba36742a | ||
|
|
ea52ba51ca | ||
|
|
7e404ae71a | ||
|
|
3ad95afa84 | ||
|
|
1a13861647 | ||
|
|
6d84c819c0 | ||
|
|
36ec39d2fb | ||
|
|
eaafc12c8a | ||
|
|
a03c5bceea |
13
.dockerignore
Normal file
13
.dockerignore
Normal file
@@ -0,0 +1,13 @@
|
||||
dist
|
||||
coverage
|
||||
|
||||
.yarn/*
|
||||
!.yarn/cache
|
||||
!.yarn/patches
|
||||
!.yarn/plugins
|
||||
!.yarn/releases
|
||||
!.yarn/unplugged
|
||||
!.yarn/sdks
|
||||
!.yarn/versions
|
||||
|
||||
data/*
|
||||
20
.env.sample
20
.env.sample
@@ -1,6 +1,26 @@
|
||||
######
|
||||
# DB #
|
||||
######
|
||||
|
||||
DB_HOST=db
|
||||
DB_PORT=3306
|
||||
DB_USERNAME=std_notes_user
|
||||
DB_PASSWORD=changeme123
|
||||
DB_DATABASE=standard_notes_db
|
||||
DB_TYPE=mysql
|
||||
|
||||
#########
|
||||
# CACHE #
|
||||
#########
|
||||
|
||||
REDIS_PORT=6379
|
||||
REDIS_HOST=cache
|
||||
CACHE_TYPE=redis
|
||||
|
||||
########
|
||||
# KEYS #
|
||||
########
|
||||
|
||||
AUTH_JWT_SECRET=
|
||||
AUTH_SERVER_ENCRYPTION_SERVER_KEY=
|
||||
VALET_TOKEN_SECRET=
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
{
|
||||
"root": true,
|
||||
"parser": "@typescript-eslint/parser",
|
||||
"parserOptions": {
|
||||
"project": "./tsconfig.json"
|
||||
},
|
||||
|
||||
34
.github/ci.env
vendored
Normal file
34
.github/ci.env
vendored
Normal file
@@ -0,0 +1,34 @@
|
||||
PUBLIC_FILES_SERVER_URL=http://localhost:3125
|
||||
DB_HOST=db
|
||||
DB_USERNAME=std_notes_user
|
||||
DB_PASSWORD=changeme123
|
||||
DB_DATABASE=standard_notes_db
|
||||
DB_PORT=3306
|
||||
DB_DEBUG_LEVEL=all
|
||||
DB_SQLITE_DATABASE_PATH=standard_notes_db
|
||||
REDIS_PORT=6379
|
||||
REDIS_HOST=cache
|
||||
AUTH_SERVER_ACCESS_TOKEN_AGE=4
|
||||
AUTH_SERVER_REFRESH_TOKEN_AGE=10
|
||||
AUTH_SERVER_EPHEMERAL_SESSION_AGE=300
|
||||
SYNCING_SERVER_REVISIONS_FREQUENCY=2
|
||||
AUTH_SERVER_LOG_LEVEL=debug
|
||||
SYNCING_SERVER_LOG_LEVEL=debug
|
||||
FILES_SERVER_LOG_LEVEL=debug
|
||||
REVISIONS_SERVER_LOG_LEVEL=debug
|
||||
API_GATEWAY_LOG_LEVEL=debug
|
||||
|
||||
MYSQL_DATABASE=standard_notes_db
|
||||
MYSQL_USER=std_notes_user
|
||||
MYSQL_PASSWORD=changeme123
|
||||
MYSQL_ROOT_PASSWORD=changeme123
|
||||
|
||||
MONGO_HOST=secondary_db
|
||||
MONGO_PORT=27017
|
||||
MONGO_USERNAME=standardnotes
|
||||
MONGO_PASSWORD=standardnotes
|
||||
MONGO_DATABASE=standardnotes
|
||||
|
||||
AUTH_JWT_SECRET=f95259c5e441f5a4646d76422cfb3df4c4488842901aa50b6c51b8be2e0040e9
|
||||
AUTH_SERVER_ENCRYPTION_SERVER_KEY=1087415dfde3093797f9a7ca93a49e7d7aa1861735eb0d32aae9c303b8c3d060
|
||||
VALET_TOKEN_SECRET=4b886819ebe1e908077c6cae96311b48a8416bd60cc91c03060e15bdf6b30d1f
|
||||
17
.github/dependabot.yml
vendored
17
.github/dependabot.yml
vendored
@@ -30,6 +30,11 @@ updates:
|
||||
schedule:
|
||||
interval: "daily"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/domain-core"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/domain-events"
|
||||
schedule:
|
||||
@@ -50,11 +55,21 @@ updates:
|
||||
schedule:
|
||||
interval: "daily"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/home-server"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/predicates"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/revisions"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/scheduler"
|
||||
schedule:
|
||||
@@ -86,7 +101,7 @@ updates:
|
||||
interval: "daily"
|
||||
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/packages/workspace"
|
||||
directory: "/packages/websockets"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
|
||||
|
||||
1
.github/workflows/analytics.yml
vendored
1
.github/workflows/analytics.yml
vendored
@@ -17,7 +17,6 @@ jobs:
|
||||
with:
|
||||
service_name: analytics
|
||||
workspace_name: "@standardnotes/analytics"
|
||||
e2e_tag_parameter_name: analytics_image_tag
|
||||
deploy_web: false
|
||||
package_path: packages/analytics
|
||||
secrets: inherit
|
||||
|
||||
1
.github/workflows/api-gateway.yml
vendored
1
.github/workflows/api-gateway.yml
vendored
@@ -17,7 +17,6 @@ jobs:
|
||||
with:
|
||||
service_name: api-gateway
|
||||
workspace_name: "@standardnotes/api-gateway"
|
||||
e2e_tag_parameter_name: api_gateway_image_tag
|
||||
deploy_worker: false
|
||||
package_path: packages/api-gateway
|
||||
secrets: inherit
|
||||
|
||||
1
.github/workflows/auth.yml
vendored
1
.github/workflows/auth.yml
vendored
@@ -17,7 +17,6 @@ jobs:
|
||||
with:
|
||||
service_name: auth
|
||||
workspace_name: "@standardnotes/auth-server"
|
||||
e2e_tag_parameter_name: auth_image_tag
|
||||
package_path: packages/auth
|
||||
secrets: inherit
|
||||
|
||||
|
||||
8
.github/workflows/common-deploy.yml
vendored
8
.github/workflows/common-deploy.yml
vendored
@@ -24,7 +24,7 @@ jobs:
|
||||
steps:
|
||||
|
||||
- name: Configure AWS credentials
|
||||
uses: aws-actions/configure-aws-credentials@v1
|
||||
uses: aws-actions/configure-aws-credentials@v3
|
||||
with:
|
||||
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
@@ -38,6 +38,10 @@ jobs:
|
||||
run: |
|
||||
jq '(.containerDefinitions[] | select(.name=="${{ inputs.service_name }}-prod") | .environment[] | select(.name=="VERSION")).value = "${{ github.sha }}"' task-definition.json > tmp.json && mv tmp.json task-definition.json
|
||||
|
||||
- name: Fill in the new package version in the Amazon ECS task definition
|
||||
run: |
|
||||
jq '(.containerDefinitions[] | select(.name=="${{ inputs.service_name }}-prod") | .environment[] | select(.name=="NPM_PACKAGE_VERSION")).value = "${{ github.sha }}"' task-definition.json > tmp.json && mv tmp.json task-definition.json
|
||||
|
||||
- name: Fill in the new image ID in the Amazon ECS task definition
|
||||
id: task-def-prod
|
||||
uses: aws-actions/amazon-ecs-render-task-definition@v1
|
||||
@@ -50,6 +54,6 @@ jobs:
|
||||
uses: aws-actions/amazon-ecs-deploy-task-definition@v1
|
||||
with:
|
||||
task-definition: ${{ steps.task-def-prod.outputs.task-definition }}
|
||||
service: ${{ inputs.service_name }}-prod
|
||||
service: ${{ inputs.service_name }}
|
||||
cluster: prod
|
||||
wait-for-service-stability: true
|
||||
|
||||
25
.github/workflows/common-docker-image.yml
vendored
25
.github/workflows/common-docker-image.yml
vendored
@@ -6,9 +6,6 @@ on:
|
||||
service_name:
|
||||
required: true
|
||||
type: string
|
||||
bundle_dir:
|
||||
required: true
|
||||
type: string
|
||||
package_path:
|
||||
required: true
|
||||
type: string
|
||||
@@ -32,13 +29,16 @@ jobs:
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.11'
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
packages/**/dist
|
||||
${{ inputs.bundle_dir }}
|
||||
key: ${{ runner.os }}-${{ inputs.service_name }}-build-${{ github.sha }}
|
||||
|
||||
- name: Set up Node
|
||||
@@ -47,13 +47,12 @@ jobs:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Install dependencies
|
||||
run: yarn install --immutable
|
||||
|
||||
- name: Build
|
||||
if: steps.cache-build.outputs.cache-hit != 'true'
|
||||
run: yarn build ${{ inputs.package_path }}
|
||||
|
||||
- name: Bundle
|
||||
if: steps.cache-build.outputs.cache-hit != 'true'
|
||||
run: yarn workspace ${{ inputs.workspace_name }} bundle --no-compress --output-directory ${{ inputs.bundle_dir }}
|
||||
run: yarn build
|
||||
|
||||
- name: Login to Docker Hub
|
||||
uses: docker/login-action@v2
|
||||
@@ -62,7 +61,7 @@ jobs:
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
|
||||
- name: Configure AWS credentials
|
||||
uses: aws-actions/configure-aws-credentials@v1
|
||||
uses: aws-actions/configure-aws-credentials@v3
|
||||
with:
|
||||
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
@@ -82,11 +81,11 @@ jobs:
|
||||
uses: docker/setup-buildx-action@master
|
||||
|
||||
- name: Publish Docker image
|
||||
uses: docker/build-push-action@v3
|
||||
uses: docker/build-push-action@v4
|
||||
with:
|
||||
builder: ${{ steps.buildx.outputs.name }}
|
||||
context: ${{ inputs.bundle_dir }}
|
||||
file: ${{ inputs.bundle_dir }}/${{ inputs.package_path }}/Dockerfile
|
||||
context: .
|
||||
file: ${{ inputs.package_path }}/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
|
||||
37
.github/workflows/common-e2e.yml
vendored
Normal file
37
.github/workflows/common-e2e.yml
vendored
Normal file
@@ -0,0 +1,37 @@
|
||||
name: Reusable Run E2E Test Suite Workflow
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
snjs_image_tag:
|
||||
type: string
|
||||
default: latest
|
||||
description: The Docker image tag used for SNJS container
|
||||
suite:
|
||||
type: string
|
||||
default: all
|
||||
description: The test suite to run
|
||||
secrets:
|
||||
DOCKER_USERNAME:
|
||||
required: true
|
||||
DOCKER_PASSWORD:
|
||||
required: true
|
||||
AWS_ACCESS_KEY_ID:
|
||||
required: true
|
||||
AWS_SECRET_ACCESS_KEY:
|
||||
required: true
|
||||
|
||||
jobs:
|
||||
e2e-self-hosted:
|
||||
uses: standardnotes/server/.github/workflows/e2e-self-hosted.yml@main
|
||||
with:
|
||||
snjs_image_tag: ${{ inputs.snjs_image_tag }}
|
||||
suite: ${{ inputs.suite }}
|
||||
secrets: inherit
|
||||
|
||||
e2e-home-server:
|
||||
uses: standardnotes/server/.github/workflows/e2e-home-server.yml@main
|
||||
with:
|
||||
snjs_image_tag: ${{ inputs.snjs_image_tag }}
|
||||
suite: ${{ inputs.suite }}
|
||||
secrets: inherit
|
||||
47
.github/workflows/common-self-hosting.yml
vendored
Normal file
47
.github/workflows/common-self-hosting.yml
vendored
Normal file
@@ -0,0 +1,47 @@
|
||||
name: Reusable Publish Docker Self Hosting Image Workflow
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
secrets:
|
||||
DOCKER_USERNAME:
|
||||
required: true
|
||||
DOCKER_PASSWORD:
|
||||
required: true
|
||||
AWS_ACCESS_KEY_ID:
|
||||
required: true
|
||||
AWS_SECRET_ACCESS_KEY:
|
||||
required: true
|
||||
|
||||
jobs:
|
||||
publish:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Login to Docker Hub
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@master
|
||||
with:
|
||||
platforms: all
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
id: buildx
|
||||
uses: docker/setup-buildx-action@master
|
||||
|
||||
- name: Publish Docker image
|
||||
uses: docker/build-push-action@v4
|
||||
with:
|
||||
builder: ${{ steps.buildx.outputs.name }}
|
||||
context: .
|
||||
file: Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
standardnotes/server:latest
|
||||
standardnotes/server:${{ github.sha }}
|
||||
169
.github/workflows/common-server-application.yml
vendored
169
.github/workflows/common-server-application.yml
vendored
@@ -17,9 +17,6 @@ on:
|
||||
required: false
|
||||
default: true
|
||||
type: boolean
|
||||
e2e_tag_parameter_name:
|
||||
required: false
|
||||
type: string
|
||||
package_path:
|
||||
required: true
|
||||
type: string
|
||||
@@ -36,177 +33,11 @@ on:
|
||||
required: true
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
outputs:
|
||||
temp_dir: ${{ steps.bundle-dir.outputs.temp_dir }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Create Bundle Dir
|
||||
id: bundle-dir
|
||||
run: echo "temp_dir=$(mktemp -d -t ${{ inputs.service_name }}-${{ github.sha }}-XXXXXXX)" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
packages/**/dist
|
||||
${{ steps.bundle-dir.outputs.temp_dir }}
|
||||
key: ${{ runner.os }}-${{ inputs.service_name }}-build-${{ github.sha }}
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Build
|
||||
run: yarn build ${{ inputs.package_path }}
|
||||
|
||||
- name: Bundle
|
||||
run: yarn workspace ${{ inputs.workspace_name }} bundle --no-compress --output-directory ${{ steps.bundle-dir.outputs.temp_dir }}
|
||||
|
||||
lint:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
needs: build
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
packages/**/dist
|
||||
${{ needs.build.outputs.temp_dir }}
|
||||
key: ${{ runner.os }}-${{ inputs.service_name }}-build-${{ github.sha }}
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Build
|
||||
if: steps.cache-build.outputs.cache-hit != 'true'
|
||||
run: yarn build ${{ inputs.package_path }}
|
||||
|
||||
- name: Lint
|
||||
run: yarn lint:${{ inputs.service_name }}
|
||||
|
||||
test:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
needs: build
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
packages/**/dist
|
||||
${{ needs.build.outputs.temp_dir }}
|
||||
key: ${{ runner.os }}-${{ inputs.service_name }}-build-${{ github.sha }}
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Build
|
||||
if: steps.cache-build.outputs.cache-hit != 'true'
|
||||
run: yarn build ${{ inputs.package_path }}
|
||||
|
||||
- name: Test
|
||||
run: yarn test ${{ inputs.package_path }}
|
||||
|
||||
e2e:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
needs: build
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
packages/**/dist
|
||||
${{ needs.build.outputs.temp_dir }}
|
||||
key: ${{ runner.os }}-${{ inputs.service_name }}-build-${{ github.sha }}
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Build
|
||||
if: steps.cache-build.outputs.cache-hit != 'true'
|
||||
run: yarn build ${{ inputs.package_path }}
|
||||
|
||||
- name: Bundle
|
||||
if: steps.cache-build.outputs.cache-hit != 'true'
|
||||
run: yarn workspace ${{ inputs.workspace_name }} bundle --no-compress --output-directory ${{ needs.build.outputs.temp_dir }}
|
||||
|
||||
- name: Login to Docker Hub
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@master
|
||||
with:
|
||||
platforms: all
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
id: buildx
|
||||
uses: docker/setup-buildx-action@master
|
||||
|
||||
- name: Publish Docker image for E2E testing
|
||||
uses: docker/build-push-action@v3
|
||||
with:
|
||||
builder: ${{ steps.buildx.outputs.name }}
|
||||
context: ${{ needs.build.outputs.temp_dir }}
|
||||
file: ${{ needs.build.outputs.temp_dir }}/${{ inputs.package_path }}/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: standardnotes/${{ inputs.service_name }}:${{ github.sha }}
|
||||
|
||||
- name: Run E2E test suite
|
||||
uses: convictional/trigger-workflow-and-wait@v1.6.3
|
||||
with:
|
||||
owner: standardnotes
|
||||
repo: e2e
|
||||
github_token: ${{ secrets.CI_PAT_TOKEN }}
|
||||
workflow_file_name: testing-with-stable-client.yml
|
||||
wait_interval: 30
|
||||
client_payload: '{"${{ inputs.e2e_tag_parameter_name }}": "${{ github.sha }}"}'
|
||||
propagate_failure: true
|
||||
trigger_workflow: true
|
||||
wait_workflow: true
|
||||
|
||||
publish:
|
||||
needs: [ build, test, lint, e2e ]
|
||||
|
||||
name: Publish Docker Image
|
||||
uses: standardnotes/server/.github/workflows/common-docker-image.yml@main
|
||||
with:
|
||||
service_name: ${{ inputs.service_name }}
|
||||
bundle_dir: ${{ needs.build.outputs.temp_dir }}
|
||||
package_path: ${{ inputs.package_path }}
|
||||
workspace_name: ${{ inputs.workspace_name }}
|
||||
secrets: inherit
|
||||
|
||||
128
.github/workflows/e2e-home-server.yml
vendored
Normal file
128
.github/workflows/e2e-home-server.yml
vendored
Normal file
@@ -0,0 +1,128 @@
|
||||
name: E2E Home Server Test Suite
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
snjs_image_tag:
|
||||
type: string
|
||||
default: latest
|
||||
description: The Docker image tag used for SNJS container
|
||||
suite:
|
||||
type: string
|
||||
default: all
|
||||
description: The test suite to run
|
||||
secrets:
|
||||
DOCKER_USERNAME:
|
||||
required: true
|
||||
DOCKER_PASSWORD:
|
||||
required: true
|
||||
AWS_ACCESS_KEY_ID:
|
||||
required: true
|
||||
AWS_SECRET_ACCESS_KEY:
|
||||
required: true
|
||||
|
||||
jobs:
|
||||
e2e-home-server:
|
||||
name: (Home Server) E2E Test Suite
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
db_type: [mysql, sqlite]
|
||||
cache_type: [redis, memory]
|
||||
secondary_db_enabled: [true, false]
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
services:
|
||||
snjs:
|
||||
image: standardnotes/snjs:${{ inputs.snjs_image_tag }}
|
||||
ports:
|
||||
- 9001:9001
|
||||
cache:
|
||||
image: redis
|
||||
ports:
|
||||
- 6379:6379
|
||||
db:
|
||||
image: mysql
|
||||
ports:
|
||||
- 3306:3306
|
||||
env:
|
||||
MYSQL_ROOT_PASSWORD: root
|
||||
MYSQL_DATABASE: standardnotes
|
||||
MYSQL_USER: standardnotes
|
||||
MYSQL_PASSWORD: standardnotes
|
||||
secondary_db:
|
||||
image: mongo:5.0
|
||||
ports:
|
||||
- 27017:27017
|
||||
env:
|
||||
MONGO_INITDB_ROOT_USERNAME: standardnotes
|
||||
MONGO_INITDB_ROOT_PASSWORD: standardnotes
|
||||
MONGO_INITDB_DATABASE: standardnotes
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Install Dependencies
|
||||
run: yarn install --immutable
|
||||
|
||||
- name: Build
|
||||
run: yarn build
|
||||
|
||||
- name: Copy dotenv file
|
||||
run: cp packages/home-server/.env.sample packages/home-server/.env
|
||||
|
||||
- name: Fill in env variables
|
||||
run: |
|
||||
sed -i "s/JWT_SECRET=/JWT_SECRET=$(openssl rand -hex 32)/g" packages/home-server/.env
|
||||
sed -i "s/AUTH_JWT_SECRET=/AUTH_JWT_SECRET=$(openssl rand -hex 32)/g" packages/home-server/.env
|
||||
sed -i "s/ENCRYPTION_SERVER_KEY=/ENCRYPTION_SERVER_KEY=$(openssl rand -hex 32)/g" packages/home-server/.env
|
||||
sed -i "s/PSEUDO_KEY_PARAMS_KEY=/PSEUDO_KEY_PARAMS_KEY=$(openssl rand -hex 32)/g" packages/home-server/.env
|
||||
sed -i "s/VALET_TOKEN_SECRET=/VALET_TOKEN_SECRET=$(openssl rand -hex 32)/g" packages/home-server/.env
|
||||
echo "ACCESS_TOKEN_AGE=4" >> packages/home-server/.env
|
||||
echo "REFRESH_TOKEN_AGE=10" >> packages/home-server/.env
|
||||
echo "REVISIONS_FREQUENCY=2" >> packages/home-server/.env
|
||||
echo "DB_HOST=localhost" >> packages/home-server/.env
|
||||
echo "DB_PORT=3306" >> packages/home-server/.env
|
||||
echo "DB_DATABASE=standardnotes" >> packages/home-server/.env
|
||||
echo "DB_SQLITE_DATABASE_PATH=homeserver.db" >> packages/home-server/.env
|
||||
echo "DB_USERNAME=standardnotes" >> packages/home-server/.env
|
||||
echo "DB_PASSWORD=standardnotes" >> packages/home-server/.env
|
||||
echo "DB_TYPE=${{ matrix.db_type }}" >> packages/home-server/.env
|
||||
echo "DB_DEBUG_LEVEL=all" >> packages/home-server/.env
|
||||
echo "REDIS_URL=redis://localhost:6379" >> packages/home-server/.env
|
||||
echo "CACHE_TYPE=${{ matrix.cache_type }}" >> packages/home-server/.env
|
||||
echo "SECONDARY_DB_ENABLED=${{ matrix.secondary_db_enabled }}" >> packages/home-server/.env
|
||||
echo "MONGO_HOST=localhost" >> packages/home-server/.env
|
||||
echo "MONGO_PORT=27017" >> packages/home-server/.env
|
||||
echo "MONGO_DATABASE=standardnotes" >> packages/home-server/.env
|
||||
echo "MONGO_USERNAME=standardnotes" >> packages/home-server/.env
|
||||
echo "MONGO_PASSWORD=standardnotes" >> packages/home-server/.env
|
||||
echo "FILES_SERVER_URL=http://localhost:3123" >> packages/home-server/.env
|
||||
echo "E2E_TESTING=true" >> packages/home-server/.env
|
||||
|
||||
- name: Run Server
|
||||
run: nohup yarn workspace @standardnotes/home-server start > logs/output.log 2>&1 &
|
||||
env:
|
||||
PORT: 3123
|
||||
|
||||
- name: Wait for server to start
|
||||
run: for i in {1..30}; do curl -s http://localhost:3123/healthcheck && break || sleep 1; done
|
||||
|
||||
- name: Run E2E Test Suite
|
||||
run: yarn dlx mocha-headless-chrome --timeout 3600000 -f http://localhost:9001/mocha/test.html?suite=${{ inputs.suite }}
|
||||
|
||||
- name: Archive failed run logs
|
||||
if: ${{ failure() }}
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: home-server-failure-logs-${{ inputs.suite }}-${{ matrix.db_type }}-${{ matrix.cache_type }}-${{ matrix.secondary_db_enabled }}
|
||||
retention-days: 5
|
||||
path: |
|
||||
logs/output.log
|
||||
72
.github/workflows/e2e-self-hosted.yml
vendored
Normal file
72
.github/workflows/e2e-self-hosted.yml
vendored
Normal file
@@ -0,0 +1,72 @@
|
||||
name: E2E Self Hosted Test Suite
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
snjs_image_tag:
|
||||
type: string
|
||||
default: latest
|
||||
description: The Docker image tag used for SNJS container
|
||||
suite:
|
||||
type: string
|
||||
default: all
|
||||
description: The test suite to run
|
||||
secrets:
|
||||
DOCKER_USERNAME:
|
||||
required: true
|
||||
DOCKER_PASSWORD:
|
||||
required: true
|
||||
AWS_ACCESS_KEY_ID:
|
||||
required: true
|
||||
AWS_SECRET_ACCESS_KEY:
|
||||
required: true
|
||||
|
||||
jobs:
|
||||
e2e:
|
||||
name: (Self Hosting) E2E Test Suite
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
secondary_db_enabled: [true, false]
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
services:
|
||||
snjs:
|
||||
image: standardnotes/snjs:${{ inputs.snjs_image_tag }}
|
||||
ports:
|
||||
- 9001:9001
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Install
|
||||
run: yarn install --immutable
|
||||
|
||||
- name: Run Server
|
||||
run: docker compose -f docker-compose.ci.yml up -d
|
||||
env:
|
||||
DB_TYPE: mysql
|
||||
CACHE_TYPE: redis
|
||||
SECONDARY_DB_ENABLED: ${{ matrix.secondary_db_enabled }}
|
||||
|
||||
- name: Wait for server to start
|
||||
run: docker/is-available.sh http://localhost:3123 $(pwd)/logs
|
||||
|
||||
- name: Run E2E Test Suite
|
||||
run: yarn dlx mocha-headless-chrome --timeout 3600000 -f http://localhost:9001/mocha/test.html?suite=${{ inputs.suite }}
|
||||
|
||||
- name: Archive failed run logs
|
||||
if: ${{ failure() }}
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: self-hosted-failure-logs-${{ inputs.suite }}-${{ matrix.secondary_db_enabled }}
|
||||
retention-days: 5
|
||||
path: |
|
||||
logs/*.err
|
||||
logs/*.log
|
||||
34
.github/workflows/e2e-test-suite.yml
vendored
Normal file
34
.github/workflows/e2e-test-suite.yml
vendored
Normal file
@@ -0,0 +1,34 @@
|
||||
name: E2E Test Suite
|
||||
|
||||
run-name: E2E ${{ inputs.suite }} Test Suite against ${{ inputs.ref_name }} by ${{ inputs.author }}
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 */12 * * *'
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
snjs_image_tag:
|
||||
type: string
|
||||
default: latest
|
||||
description: The Docker image tag used for SNJS container
|
||||
suite:
|
||||
type: string
|
||||
default: all
|
||||
description: The test suite to run
|
||||
author:
|
||||
type: string
|
||||
default: unknown
|
||||
description: The author that triggered the workflow
|
||||
ref_name:
|
||||
type: string
|
||||
default: unknown
|
||||
description: The ref name from which the workflow was triggered
|
||||
|
||||
jobs:
|
||||
e2e:
|
||||
name: E2E
|
||||
uses: standardnotes/server/.github/workflows/common-e2e.yml@main
|
||||
with:
|
||||
snjs_image_tag: ${{ inputs.snjs_image_tag || 'latest' }}
|
||||
suite: ${{ inputs.suite || 'all' }}
|
||||
secrets: inherit
|
||||
39
.github/workflows/event-store.yml
vendored
39
.github/workflows/event-store.yml
vendored
@@ -1,39 +0,0 @@
|
||||
name: Event Store
|
||||
|
||||
concurrency:
|
||||
group: event-store
|
||||
cancel-in-progress: true
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- '*standardnotes/event-store*'
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
call_server_application_workflow:
|
||||
name: Server Application
|
||||
uses: standardnotes/server/.github/workflows/common-server-application.yml@main
|
||||
with:
|
||||
service_name: event-store
|
||||
workspace_name: "@standardnotes/event-store"
|
||||
e2e_tag_parameter_name: event_store_image_tag
|
||||
deploy_web: false
|
||||
package_path: packages/event-store
|
||||
secrets: inherit
|
||||
|
||||
newrelic:
|
||||
needs: call_server_application_workflow
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Create New Relic deployment marker for Worker
|
||||
uses: newrelic/deployment-marker-action@v1
|
||||
with:
|
||||
accountId: ${{ secrets.NEW_RELIC_ACCOUNT_ID }}
|
||||
apiKey: ${{ secrets.NEW_RELIC_API_KEY }}
|
||||
applicationId: ${{ secrets.NEW_RELIC_APPLICATION_ID_EVENT_STORE_PROD }}
|
||||
revision: "${{ github.sha }}"
|
||||
description: "Automated Deployment via Github Actions"
|
||||
user: "${{ github.actor }}"
|
||||
1
.github/workflows/files.yml
vendored
1
.github/workflows/files.yml
vendored
@@ -17,7 +17,6 @@ jobs:
|
||||
with:
|
||||
service_name: files
|
||||
workspace_name: "@standardnotes/files-server"
|
||||
e2e_tag_parameter_name: files_image_tag
|
||||
package_path: packages/files
|
||||
secrets: inherit
|
||||
|
||||
|
||||
118
.github/workflows/pr.yml
vendored
118
.github/workflows/pr.yml
vendored
@@ -6,19 +6,109 @@ on:
|
||||
- main
|
||||
|
||||
jobs:
|
||||
test:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v3
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
- name: ESLint
|
||||
run: yarn lint
|
||||
- name: Build
|
||||
run: yarn build
|
||||
- name: Test
|
||||
run: yarn test
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
packages/**/dist
|
||||
key: ${{ runner.os }}-build-${{ github.sha }}
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Install
|
||||
run: yarn install --immutable
|
||||
|
||||
- name: Build
|
||||
run: yarn build
|
||||
|
||||
lint:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
needs: build
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
packages/**/dist
|
||||
key: ${{ runner.os }}-build-${{ github.sha }}
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Install
|
||||
run: yarn install --immutable
|
||||
|
||||
- name: Build
|
||||
if: steps.cache-build.outputs.cache-hit != 'true'
|
||||
run: yarn build
|
||||
|
||||
- name: Lint
|
||||
run: yarn lint
|
||||
|
||||
test:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
needs: build
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
packages/**/dist
|
||||
key: ${{ runner.os }}-build-${{ github.sha }}
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Install
|
||||
run: yarn install --immutable
|
||||
|
||||
- name: Build
|
||||
if: steps.cache-build.outputs.cache-hit != 'true'
|
||||
run: yarn build
|
||||
|
||||
- name: Test
|
||||
run: yarn test
|
||||
|
||||
e2e-base:
|
||||
needs: build
|
||||
name: E2E Base Suite
|
||||
uses: standardnotes/server/.github/workflows/common-e2e.yml@main
|
||||
with:
|
||||
snjs_image_tag: 'latest'
|
||||
suite: 'base'
|
||||
secrets: inherit
|
||||
|
||||
# e2e-vaults:
|
||||
# needs: build
|
||||
# name: E2E Vaults Suite
|
||||
# uses: standardnotes/server/.github/workflows/common-e2e.yml@main
|
||||
# with:
|
||||
# snjs_image_tag: 'latest'
|
||||
# suite: 'vaults'
|
||||
# secrets: inherit
|
||||
|
||||
133
.github/workflows/publish.yml
vendored
133
.github/workflows/publish.yml
vendored
@@ -5,9 +5,125 @@ on:
|
||||
branches: [ main ]
|
||||
|
||||
jobs:
|
||||
release_and_publish:
|
||||
build:
|
||||
if: contains(github.event.head_commit.message, 'chore(release)') == false
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
packages/**/dist
|
||||
key: ${{ runner.os }}-build-${{ github.sha }}
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Install
|
||||
run: yarn install --immutable
|
||||
|
||||
- name: Build
|
||||
run: yarn build
|
||||
|
||||
lint:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
needs: build
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
packages/**/dist
|
||||
key: ${{ runner.os }}-build-${{ github.sha }}
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Install
|
||||
run: yarn install --immutable
|
||||
|
||||
- name: Build
|
||||
if: steps.cache-build.outputs.cache-hit != 'true'
|
||||
run: yarn build
|
||||
|
||||
- name: Lint
|
||||
run: yarn lint
|
||||
|
||||
test:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
needs: build
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
packages/**/dist
|
||||
key: ${{ runner.os }}-build-${{ github.sha }}
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Install
|
||||
run: yarn install --immutable
|
||||
|
||||
- name: Build
|
||||
if: steps.cache-build.outputs.cache-hit != 'true'
|
||||
run: yarn build
|
||||
|
||||
- name: Test
|
||||
run: yarn test
|
||||
|
||||
e2e-base:
|
||||
needs: build
|
||||
name: E2E Base Suite
|
||||
uses: standardnotes/server/.github/workflows/common-e2e.yml@main
|
||||
with:
|
||||
snjs_image_tag: 'latest'
|
||||
suite: 'base'
|
||||
secrets: inherit
|
||||
|
||||
# e2e-vaults:
|
||||
# needs: build
|
||||
# name: E2E Vaults Suite
|
||||
# uses: standardnotes/server/.github/workflows/common-e2e.yml@main
|
||||
# with:
|
||||
# snjs_image_tag: 'latest'
|
||||
# suite: 'vaults'
|
||||
# secrets: inherit
|
||||
|
||||
publish-self-hosting:
|
||||
needs: [ test, lint, e2e-base ]
|
||||
name: Publish Self Hosting Docker Image
|
||||
uses: standardnotes/server/.github/workflows/common-self-hosting.yml@main
|
||||
secrets: inherit
|
||||
|
||||
publish-services:
|
||||
needs: [ test, lint, e2e-base ]
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v3
|
||||
@@ -15,6 +131,14 @@ jobs:
|
||||
token: ${{ secrets.CI_PAT_TOKEN }}
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
packages/**/dist
|
||||
key: ${{ runner.os }}-build-${{ github.sha }}
|
||||
|
||||
- name: Setup git config
|
||||
run: |
|
||||
git config --global user.name "standardci"
|
||||
@@ -34,7 +158,11 @@ jobs:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Build packages
|
||||
- name: Install
|
||||
run: yarn install --immutable
|
||||
|
||||
- name: Build
|
||||
if: steps.cache-build.outputs.cache-hit != 'true'
|
||||
run: yarn build
|
||||
|
||||
- name: Bump version
|
||||
@@ -44,4 +172,3 @@ jobs:
|
||||
run: yarn publish
|
||||
env:
|
||||
NODE_AUTH_TOKEN: ${{ secrets.CI_NPM_TOKEN }}
|
||||
|
||||
|
||||
45
.github/workflows/revisions.yml
vendored
Normal file
45
.github/workflows/revisions.yml
vendored
Normal file
@@ -0,0 +1,45 @@
|
||||
name: Revisions Server
|
||||
|
||||
concurrency:
|
||||
group: revisions_server
|
||||
cancel-in-progress: true
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- '*standardnotes/revisions-server*'
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
call_server_application_workflow:
|
||||
name: Server Application
|
||||
uses: standardnotes/server/.github/workflows/common-server-application.yml@main
|
||||
with:
|
||||
service_name: revisions
|
||||
workspace_name: "@standardnotes/revisions-server"
|
||||
package_path: packages/revisions
|
||||
secrets: inherit
|
||||
|
||||
newrelic:
|
||||
needs: call_server_application_workflow
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Create New Relic deployment marker for Web
|
||||
uses: newrelic/deployment-marker-action@v1
|
||||
with:
|
||||
accountId: ${{ secrets.NEW_RELIC_ACCOUNT_ID }}
|
||||
apiKey: ${{ secrets.NEW_RELIC_API_KEY }}
|
||||
applicationId: ${{ secrets.NEW_RELIC_APPLICATION_ID_REVISIONS_WEB_PROD }}
|
||||
revision: "${{ github.sha }}"
|
||||
description: "Automated Deployment via Github Actions"
|
||||
user: "${{ github.actor }}"
|
||||
- name: Create New Relic deployment marker for Worker
|
||||
uses: newrelic/deployment-marker-action@v1
|
||||
with:
|
||||
accountId: ${{ secrets.NEW_RELIC_ACCOUNT_ID }}
|
||||
apiKey: ${{ secrets.NEW_RELIC_API_KEY }}
|
||||
applicationId: ${{ secrets.NEW_RELIC_APPLICATION_ID_REVISIONS_WORKER_PROD }}
|
||||
revision: "${{ github.sha }}"
|
||||
description: "Automated Deployment via Github Actions"
|
||||
user: "${{ github.actor }}"
|
||||
1
.github/workflows/scheduler.yml
vendored
1
.github/workflows/scheduler.yml
vendored
@@ -17,7 +17,6 @@ jobs:
|
||||
with:
|
||||
service_name: scheduler
|
||||
workspace_name: "@standardnotes/scheduler-server"
|
||||
e2e_tag_parameter_name: scheduler_image_tag
|
||||
deploy_web: false
|
||||
package_path: packages/scheduler
|
||||
secrets: inherit
|
||||
|
||||
1
.github/workflows/syncing-server.yml
vendored
1
.github/workflows/syncing-server.yml
vendored
@@ -17,7 +17,6 @@ jobs:
|
||||
with:
|
||||
service_name: syncing-server-js
|
||||
workspace_name: "@standardnotes/syncing-server"
|
||||
e2e_tag_parameter_name: syncing_server_js_image_tag
|
||||
package_path: packages/syncing-server
|
||||
secrets: inherit
|
||||
|
||||
|
||||
1
.github/workflows/websockets.yml
vendored
1
.github/workflows/websockets.yml
vendored
@@ -17,7 +17,6 @@ jobs:
|
||||
with:
|
||||
service_name: websockets
|
||||
workspace_name: "@standardnotes/websockets-server"
|
||||
e2e_tag_parameter_name: websockets_image_tag
|
||||
package_path: packages/websockets
|
||||
secrets: inherit
|
||||
|
||||
|
||||
48
.github/workflows/workspace.yml
vendored
48
.github/workflows/workspace.yml
vendored
@@ -1,48 +0,0 @@
|
||||
name: Workspace Server
|
||||
|
||||
concurrency:
|
||||
group: workspace
|
||||
cancel-in-progress: true
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- '*standardnotes/workspace-server*'
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
call_server_application_workflow:
|
||||
name: Server Application
|
||||
uses: standardnotes/server/.github/workflows/common-server-application.yml@main
|
||||
with:
|
||||
service_name: workspace
|
||||
workspace_name: "@standardnotes/workspace-server"
|
||||
e2e_tag_parameter_name: workspace_image_tag
|
||||
package_path: packages/workspace
|
||||
secrets: inherit
|
||||
|
||||
newrelic:
|
||||
needs: call_server_application_workflow
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
|
||||
- name: Create New Relic deployment marker for Web
|
||||
uses: newrelic/deployment-marker-action@v1
|
||||
with:
|
||||
accountId: ${{ secrets.NEW_RELIC_ACCOUNT_ID }}
|
||||
apiKey: ${{ secrets.NEW_RELIC_API_KEY }}
|
||||
applicationId: ${{ secrets.NEW_RELIC_APPLICATION_ID_WORKSPACE_WEB_PROD }}
|
||||
revision: "${{ github.sha }}"
|
||||
description: "Automated Deployment via Github Actions"
|
||||
user: "${{ github.actor }}"
|
||||
|
||||
- name: Create New Relic deployment marker for Worker
|
||||
uses: newrelic/deployment-marker-action@v1
|
||||
with:
|
||||
accountId: ${{ secrets.NEW_RELIC_ACCOUNT_ID }}
|
||||
apiKey: ${{ secrets.NEW_RELIC_API_KEY }}
|
||||
applicationId: ${{ secrets.NEW_RELIC_APPLICATION_ID_WORKSPACE_WORKER_PROD }}
|
||||
revision: "${{ github.sha }}"
|
||||
description: "Automated Deployment via Github Actions"
|
||||
user: "${{ github.actor }}"
|
||||
10
.gitignore
vendored
10
.gitignore
vendored
@@ -11,12 +11,20 @@ newrelic_agent.log
|
||||
!.yarn/patches
|
||||
!.yarn/plugins
|
||||
!.yarn/releases
|
||||
!.yarn/unplugged
|
||||
!.yarn/sdks
|
||||
!.yarn/versions
|
||||
|
||||
yarn.build-error.log
|
||||
|
||||
packages/files/uploads/*
|
||||
!packages/files/uploads/.gitkeep
|
||||
|
||||
data/*
|
||||
!data/.gitkeep
|
||||
|
||||
packages/**/data/*
|
||||
|
||||
logs/*
|
||||
!logs/.gitkeep
|
||||
|
||||
docker-compose.yml
|
||||
|
||||
194
.pnp.loader.mjs
generated
194
.pnp.loader.mjs
generated
@@ -1,5 +1,5 @@
|
||||
import { URL as URL$1, fileURLToPath, pathToFileURL } from 'url';
|
||||
import fs from 'fs';
|
||||
import { URL as URL$1, fileURLToPath, pathToFileURL } from 'url';
|
||||
import path from 'path';
|
||||
import moduleExports, { Module } from 'module';
|
||||
import { createHash } from 'crypto';
|
||||
@@ -10,7 +10,8 @@ const SAFE_TIME = 456789e3;
|
||||
|
||||
const PortablePath = {
|
||||
root: `/`,
|
||||
dot: `.`
|
||||
dot: `.`,
|
||||
parent: `..`
|
||||
};
|
||||
const npath = Object.create(path);
|
||||
const ppath = Object.create(path.posix);
|
||||
@@ -88,7 +89,6 @@ async function copyPromise(destinationFs, destination, sourceFs, source, opts) {
|
||||
}));
|
||||
}
|
||||
async function copyImpl(prelayout, postlayout, destinationFs, destination, sourceFs, source, opts) {
|
||||
var _a, _b, _c;
|
||||
const destinationStat = opts.didParentExist ? await maybeLStat(destinationFs, destination) : null;
|
||||
const sourceStat = await sourceFs.lstatPromise(source);
|
||||
const { atime, mtime } = opts.stableTime ? { atime: defaultTime, mtime: defaultTime } : sourceStat;
|
||||
@@ -114,8 +114,8 @@ async function copyImpl(prelayout, postlayout, destinationFs, destination, sourc
|
||||
throw new Error(`Unsupported file type (${sourceStat.mode})`);
|
||||
}
|
||||
}
|
||||
if (((_a = opts.linkStrategy) == null ? void 0 : _a.type) !== `HardlinkFromIndex` || !sourceStat.isFile()) {
|
||||
if (updated || ((_b = destinationStat == null ? void 0 : destinationStat.mtime) == null ? void 0 : _b.getTime()) !== mtime.getTime() || ((_c = destinationStat == null ? void 0 : destinationStat.atime) == null ? void 0 : _c.getTime()) !== atime.getTime()) {
|
||||
if (opts.linkStrategy?.type !== `HardlinkFromIndex` || !sourceStat.isFile()) {
|
||||
if (updated || destinationStat?.mtime?.getTime() !== mtime.getTime() || destinationStat?.atime?.getTime() !== atime.getTime()) {
|
||||
postlayout.push(() => destinationFs.lutimesPromise(destination, atime, mtime));
|
||||
updated = true;
|
||||
}
|
||||
@@ -185,7 +185,7 @@ async function copyFileViaIndex(prelayout, postlayout, destinationFs, destinatio
|
||||
let indexStat = await maybeLStat(destinationFs, indexPath);
|
||||
if (destinationStat) {
|
||||
const isDestinationHardlinkedFromIndex = indexStat && destinationStat.dev === indexStat.dev && destinationStat.ino === indexStat.ino;
|
||||
const isIndexModified = (indexStat == null ? void 0 : indexStat.mtimeMs) !== defaultTimeMs;
|
||||
const isIndexModified = indexStat?.mtimeMs !== defaultTimeMs;
|
||||
if (isDestinationHardlinkedFromIndex) {
|
||||
if (isIndexModified && linkStrategy.autoRepair) {
|
||||
atomicBehavior = 0 /* Lock */;
|
||||
@@ -255,8 +255,7 @@ async function copyFileDirect(prelayout, postlayout, destinationFs, destination,
|
||||
return true;
|
||||
}
|
||||
async function copyFile(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) {
|
||||
var _a;
|
||||
if (((_a = opts.linkStrategy) == null ? void 0 : _a.type) === `HardlinkFromIndex`) {
|
||||
if (opts.linkStrategy?.type === `HardlinkFromIndex`) {
|
||||
return copyFileViaIndex(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts, opts.linkStrategy);
|
||||
} else {
|
||||
return copyFileDirect(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts);
|
||||
@@ -386,7 +385,7 @@ class FakeFS {
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
createdDirectory ?? (createdDirectory = subPath);
|
||||
createdDirectory ??= subPath;
|
||||
if (chmod != null)
|
||||
await this.chmodPromise(subPath, chmod);
|
||||
if (utimes != null) {
|
||||
@@ -417,7 +416,7 @@ class FakeFS {
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
createdDirectory ?? (createdDirectory = subPath);
|
||||
createdDirectory ??= subPath;
|
||||
if (chmod != null)
|
||||
this.chmodSync(subPath, chmod);
|
||||
if (utimes != null) {
|
||||
@@ -612,12 +611,14 @@ class FakeFS {
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
async writeJsonPromise(p, data) {
|
||||
return await this.writeFilePromise(p, `${JSON.stringify(data, null, 2)}
|
||||
async writeJsonPromise(p, data, { compact = false } = {}) {
|
||||
const space = compact ? 0 : 2;
|
||||
return await this.writeFilePromise(p, `${JSON.stringify(data, null, space)}
|
||||
`);
|
||||
}
|
||||
writeJsonSync(p, data) {
|
||||
return this.writeFileSync(p, `${JSON.stringify(data, null, 2)}
|
||||
writeJsonSync(p, data, { compact = false } = {}) {
|
||||
const space = compact ? 0 : 2;
|
||||
return this.writeFileSync(p, `${JSON.stringify(data, null, space)}
|
||||
`);
|
||||
}
|
||||
async preserveTimePromise(p, cb) {
|
||||
@@ -851,7 +852,7 @@ class ProxiedFS extends FakeFS {
|
||||
readFileSync(p, encoding) {
|
||||
return this.baseFs.readFileSync(this.fsMapToBase(p), encoding);
|
||||
}
|
||||
async readdirPromise(p, opts) {
|
||||
readdirPromise(p, opts) {
|
||||
return this.baseFs.readdirPromise(this.mapToBase(p), opts);
|
||||
}
|
||||
readdirSync(p, opts) {
|
||||
@@ -931,12 +932,24 @@ class NodeFS extends BasePortableFakeFS {
|
||||
this.realFs.opendir(npath.fromPortablePath(p), this.makeCallback(resolve, reject));
|
||||
}
|
||||
}).then((dir) => {
|
||||
return Object.defineProperty(dir, `path`, { value: p, configurable: true, writable: true });
|
||||
const dirWithFixedPath = dir;
|
||||
Object.defineProperty(dirWithFixedPath, `path`, {
|
||||
value: p,
|
||||
configurable: true,
|
||||
writable: true
|
||||
});
|
||||
return dirWithFixedPath;
|
||||
});
|
||||
}
|
||||
opendirSync(p, opts) {
|
||||
const dir = typeof opts !== `undefined` ? this.realFs.opendirSync(npath.fromPortablePath(p), opts) : this.realFs.opendirSync(npath.fromPortablePath(p));
|
||||
return Object.defineProperty(dir, `path`, { value: p, configurable: true, writable: true });
|
||||
const dirWithFixedPath = dir;
|
||||
Object.defineProperty(dirWithFixedPath, `path`, {
|
||||
value: p,
|
||||
configurable: true,
|
||||
writable: true
|
||||
});
|
||||
return dirWithFixedPath;
|
||||
}
|
||||
async readPromise(fd, buffer, offset = 0, length = 0, position = -1) {
|
||||
return await new Promise((resolve, reject) => {
|
||||
@@ -1214,16 +1227,16 @@ class NodeFS extends BasePortableFakeFS {
|
||||
}
|
||||
async readdirPromise(p, opts) {
|
||||
return await new Promise((resolve, reject) => {
|
||||
if (opts == null ? void 0 : opts.withFileTypes) {
|
||||
this.realFs.readdir(npath.fromPortablePath(p), { withFileTypes: true }, this.makeCallback(resolve, reject));
|
||||
if (opts) {
|
||||
this.realFs.readdir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject));
|
||||
} else {
|
||||
this.realFs.readdir(npath.fromPortablePath(p), this.makeCallback((value) => resolve(value), reject));
|
||||
}
|
||||
});
|
||||
}
|
||||
readdirSync(p, opts) {
|
||||
if (opts == null ? void 0 : opts.withFileTypes) {
|
||||
return this.realFs.readdirSync(npath.fromPortablePath(p), { withFileTypes: true });
|
||||
if (opts) {
|
||||
return this.realFs.readdirSync(npath.fromPortablePath(p), opts);
|
||||
} else {
|
||||
return this.realFs.readdirSync(npath.fromPortablePath(p));
|
||||
}
|
||||
@@ -1357,6 +1370,10 @@ class VirtualFS extends ProxiedFS {
|
||||
}
|
||||
}
|
||||
|
||||
const [major, minor] = process.versions.node.split(`.`).map((value) => parseInt(value, 10));
|
||||
const WATCH_MODE_MESSAGE_USES_ARRAYS = major > 19 || major === 19 && minor >= 2 || major === 18 && minor >= 13;
|
||||
const HAS_LAZY_LOADED_TRANSLATORS = major > 19 || major === 19 && minor >= 3;
|
||||
|
||||
const builtinModules = new Set(Module.builtinModules || Object.keys(process.binding(`natives`)));
|
||||
const isBuiltinModule = (request) => request.startsWith(`node:`) || builtinModules.has(request);
|
||||
function readPackageScope(checkPath) {
|
||||
@@ -1384,11 +1401,6 @@ function readPackage(requestPath) {
|
||||
return JSON.parse(fs.readFileSync(jsonPath, `utf8`));
|
||||
}
|
||||
|
||||
const [major, minor] = process.versions.node.split(`.`).map((value) => parseInt(value, 10));
|
||||
const HAS_CONSOLIDATED_HOOKS = major > 16 || major === 16 && minor >= 12;
|
||||
const HAS_UNFLAGGED_JSON_MODULES = major > 17 || major === 17 && minor >= 5 || major === 16 && minor >= 15;
|
||||
const HAS_JSON_IMPORT_ASSERTION_REQUIREMENT = major > 17 || major === 17 && minor >= 1 || major === 16 && minor > 14;
|
||||
|
||||
async function tryReadFile$1(path2) {
|
||||
try {
|
||||
return await fs.promises.readFile(path2, `utf8`);
|
||||
@@ -1424,11 +1436,7 @@ function getFileFormat(filepath) {
|
||||
);
|
||||
}
|
||||
case `.json`: {
|
||||
if (HAS_UNFLAGGED_JSON_MODULES)
|
||||
return `json`;
|
||||
throw new Error(
|
||||
`Unknown file extension ".json" for ${filepath}`
|
||||
);
|
||||
return `json`;
|
||||
}
|
||||
case `.js`: {
|
||||
const pkg = readPackageScope(filepath);
|
||||
@@ -1449,54 +1457,32 @@ function getFileFormat(filepath) {
|
||||
}
|
||||
}
|
||||
|
||||
async function getFormat$1(resolved, context, defaultGetFormat) {
|
||||
const url = tryParseURL(resolved);
|
||||
if ((url == null ? void 0 : url.protocol) !== `file:`)
|
||||
return defaultGetFormat(resolved, context, defaultGetFormat);
|
||||
const format = getFileFormat(fileURLToPath(url));
|
||||
if (format) {
|
||||
return {
|
||||
format
|
||||
};
|
||||
}
|
||||
return defaultGetFormat(resolved, context, defaultGetFormat);
|
||||
}
|
||||
|
||||
async function getSource$1(urlString, context, defaultGetSource) {
|
||||
const url = tryParseURL(urlString);
|
||||
if ((url == null ? void 0 : url.protocol) !== `file:`)
|
||||
return defaultGetSource(urlString, context, defaultGetSource);
|
||||
return {
|
||||
source: await fs.promises.readFile(fileURLToPath(url), `utf8`)
|
||||
};
|
||||
}
|
||||
|
||||
async function load$1(urlString, context, nextLoad) {
|
||||
var _a;
|
||||
const url = tryParseURL(urlString);
|
||||
if ((url == null ? void 0 : url.protocol) !== `file:`)
|
||||
if (url?.protocol !== `file:`)
|
||||
return nextLoad(urlString, context, nextLoad);
|
||||
const filePath = fileURLToPath(url);
|
||||
const format = getFileFormat(filePath);
|
||||
if (!format)
|
||||
return nextLoad(urlString, context, nextLoad);
|
||||
if (HAS_JSON_IMPORT_ASSERTION_REQUIREMENT && format === `json` && ((_a = context.importAssertions) == null ? void 0 : _a.type) !== `json`) {
|
||||
if (format === `json` && context.importAssertions?.type !== `json`) {
|
||||
const err = new TypeError(`[ERR_IMPORT_ASSERTION_TYPE_MISSING]: Module "${urlString}" needs an import assertion of type "json"`);
|
||||
err.code = `ERR_IMPORT_ASSERTION_TYPE_MISSING`;
|
||||
throw err;
|
||||
}
|
||||
if (process.env.WATCH_REPORT_DEPENDENCIES && process.send) {
|
||||
const pathToSend = pathToFileURL(
|
||||
npath.fromPortablePath(
|
||||
VirtualFS.resolveVirtual(npath.toPortablePath(filePath))
|
||||
)
|
||||
).href;
|
||||
process.send({
|
||||
"watch:import": pathToFileURL(
|
||||
npath.fromPortablePath(
|
||||
VirtualFS.resolveVirtual(npath.toPortablePath(filePath))
|
||||
)
|
||||
).href
|
||||
"watch:import": WATCH_MODE_MESSAGE_USES_ARRAYS ? [pathToSend] : pathToSend
|
||||
});
|
||||
}
|
||||
return {
|
||||
format,
|
||||
source: await fs.promises.readFile(filePath, `utf8`),
|
||||
source: format === `commonjs` ? void 0 : await fs.promises.readFile(filePath, `utf8`),
|
||||
shortCircuit: true
|
||||
};
|
||||
}
|
||||
@@ -1880,12 +1866,7 @@ function patternKeyCompare(a, b) {
|
||||
return 1;
|
||||
return 0;
|
||||
}
|
||||
function packageImportsResolve({
|
||||
name,
|
||||
base,
|
||||
conditions,
|
||||
readFileSyncFn
|
||||
}) {
|
||||
function packageImportsResolve({ name, base, conditions, readFileSyncFn }) {
|
||||
if (name === "#" || StringPrototypeStartsWith(name, "#/") || StringPrototypeEndsWith(name, "/")) {
|
||||
const reason = "is not a valid internal imports specifier name";
|
||||
throw new ERR_INVALID_MODULE_SPECIFIER(name, reason, fileURLToPath(base));
|
||||
@@ -1992,7 +1973,7 @@ async function resolve$1(originalSpecifier, context, nextResolve) {
|
||||
specifier = fileURLToPath(url);
|
||||
}
|
||||
const { parentURL, conditions = [] } = context;
|
||||
const issuer = parentURL ? fileURLToPath(parentURL) : process.cwd();
|
||||
const issuer = parentURL && tryParseURL(parentURL)?.protocol === `file:` ? fileURLToPath(parentURL) : process.cwd();
|
||||
const pnpapi = findPnpApi(issuer) ?? (url ? findPnpApi(specifier) : null);
|
||||
if (!pnpapi)
|
||||
return nextResolve(originalSpecifier, context, nextResolve);
|
||||
@@ -2002,7 +1983,7 @@ async function resolve$1(originalSpecifier, context, nextResolve) {
|
||||
let allowLegacyResolve = false;
|
||||
if (dependencyNameMatch) {
|
||||
const [, dependencyName, subPath] = dependencyNameMatch;
|
||||
if (subPath === ``) {
|
||||
if (subPath === `` && dependencyName !== `pnpapi`) {
|
||||
const resolved = pnpapi.resolveToUnqualified(`${dependencyName}/package.json`, issuer);
|
||||
if (resolved) {
|
||||
const content = await tryReadFile$1(resolved);
|
||||
@@ -2013,10 +1994,17 @@ async function resolve$1(originalSpecifier, context, nextResolve) {
|
||||
}
|
||||
}
|
||||
}
|
||||
const result = pnpapi.resolveRequest(specifier, issuer, {
|
||||
conditions: new Set(conditions),
|
||||
extensions: allowLegacyResolve ? void 0 : []
|
||||
});
|
||||
let result;
|
||||
try {
|
||||
result = pnpapi.resolveRequest(specifier, issuer, {
|
||||
conditions: new Set(conditions),
|
||||
extensions: allowLegacyResolve ? void 0 : []
|
||||
});
|
||||
} catch (err) {
|
||||
if (err instanceof Error && `code` in err && err.code === `MODULE_NOT_FOUND`)
|
||||
err.code = `ERR_MODULE_NOT_FOUND`;
|
||||
throw err;
|
||||
}
|
||||
if (!result)
|
||||
throw new Error(`Resolving '${specifier}' from '${issuer}' failed`);
|
||||
const resultURL = pathToFileURL(result);
|
||||
@@ -2032,36 +2020,36 @@ async function resolve$1(originalSpecifier, context, nextResolve) {
|
||||
};
|
||||
}
|
||||
|
||||
const binding = process.binding(`fs`);
|
||||
const originalfstat = binding.fstat;
|
||||
const ZIP_MASK = 4278190080;
|
||||
const ZIP_MAGIC = 704643072;
|
||||
binding.fstat = function(...args) {
|
||||
const [fd, useBigint, req] = args;
|
||||
if ((fd & ZIP_MASK) === ZIP_MAGIC && useBigint === false && req === void 0) {
|
||||
try {
|
||||
const stats = fs.fstatSync(fd);
|
||||
return new Float64Array([
|
||||
stats.dev,
|
||||
stats.mode,
|
||||
stats.nlink,
|
||||
stats.uid,
|
||||
stats.gid,
|
||||
stats.rdev,
|
||||
stats.blksize,
|
||||
stats.ino,
|
||||
stats.size,
|
||||
stats.blocks
|
||||
]);
|
||||
} catch {
|
||||
if (!HAS_LAZY_LOADED_TRANSLATORS) {
|
||||
const binding = process.binding(`fs`);
|
||||
const originalfstat = binding.fstat;
|
||||
const ZIP_MASK = 4278190080;
|
||||
const ZIP_MAGIC = 704643072;
|
||||
binding.fstat = function(...args) {
|
||||
const [fd, useBigint, req] = args;
|
||||
if ((fd & ZIP_MASK) === ZIP_MAGIC && useBigint === false && req === void 0) {
|
||||
try {
|
||||
const stats = fs.fstatSync(fd);
|
||||
return new Float64Array([
|
||||
stats.dev,
|
||||
stats.mode,
|
||||
stats.nlink,
|
||||
stats.uid,
|
||||
stats.gid,
|
||||
stats.rdev,
|
||||
stats.blksize,
|
||||
stats.ino,
|
||||
stats.size,
|
||||
stats.blocks
|
||||
]);
|
||||
} catch {
|
||||
}
|
||||
}
|
||||
}
|
||||
return originalfstat.apply(this, args);
|
||||
};
|
||||
return originalfstat.apply(this, args);
|
||||
};
|
||||
}
|
||||
|
||||
const resolve = resolve$1;
|
||||
const getFormat = HAS_CONSOLIDATED_HOOKS ? void 0 : getFormat$1;
|
||||
const getSource = HAS_CONSOLIDATED_HOOKS ? void 0 : getSource$1;
|
||||
const load = HAS_CONSOLIDATED_HOOKS ? load$1 : void 0;
|
||||
const load = load$1;
|
||||
|
||||
export { getFormat, getSource, load, resolve };
|
||||
export { load, resolve };
|
||||
|
||||
6
.prettierrc
Normal file
6
.prettierrc
Normal file
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"singleQuote": true,
|
||||
"trailingComma": "all",
|
||||
"printWidth": 120,
|
||||
"semi": false
|
||||
}
|
||||
3
.vscode/settings.json
vendored
3
.vscode/settings.json
vendored
@@ -6,5 +6,6 @@
|
||||
"eslint.nodePath": ".yarn/sdks",
|
||||
"prettier.prettierPath": ".yarn/sdks/prettier/index.js",
|
||||
"typescript.tsdk": ".yarn/sdks/typescript/lib",
|
||||
"typescript.enablePromptUseWorkspaceTsdk": true
|
||||
"typescript.enablePromptUseWorkspaceTsdk": true,
|
||||
"terraform.languageServer.enable": false
|
||||
}
|
||||
|
||||
Binary file not shown.
BIN
.yarn/cache/@ampproject-remapping-npm-2.2.1-3da3d624be-e15fecbf3b.zip
vendored
Normal file
BIN
.yarn/cache/@ampproject-remapping-npm-2.2.1-3da3d624be-e15fecbf3b.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-crypto-crc32-npm-3.0.0-10d83e85b0-672d593fd9.zip
vendored
Normal file
BIN
.yarn/cache/@aws-crypto-crc32-npm-3.0.0-10d83e85b0-672d593fd9.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-crypto-crc32c-npm-3.0.0-79c813b90d-3e604ad7a8.zip
vendored
Normal file
BIN
.yarn/cache/@aws-crypto-crc32c-npm-3.0.0-79c813b90d-3e604ad7a8.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-crypto-ie11-detection-npm-3.0.0-71f24dcf6a-f5aee4a11a.zip
vendored
Normal file
BIN
.yarn/cache/@aws-crypto-ie11-detection-npm-3.0.0-71f24dcf6a-f5aee4a11a.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-crypto-sha1-browser-npm-3.0.0-f8218a7691-8c30fa1e42.zip
vendored
Normal file
BIN
.yarn/cache/@aws-crypto-sha1-browser-npm-3.0.0-f8218a7691-8c30fa1e42.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-crypto-sha256-browser-npm-3.0.0-467f48a447-4e075906c4.zip
vendored
Normal file
BIN
.yarn/cache/@aws-crypto-sha256-browser-npm-3.0.0-467f48a447-4e075906c4.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-crypto-sha256-js-npm-3.0.0-2ba1013fd6-f9fc2d5163.zip
vendored
Normal file
BIN
.yarn/cache/@aws-crypto-sha256-js-npm-3.0.0-2ba1013fd6-f9fc2d5163.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-crypto-supports-web-crypto-npm-3.0.0-55222d294a-8a48788d28.zip
vendored
Normal file
BIN
.yarn/cache/@aws-crypto-supports-web-crypto-npm-3.0.0-55222d294a-8a48788d28.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-crypto-util-npm-3.0.0-6c4b38c78e-92c835b83d.zip
vendored
Normal file
BIN
.yarn/cache/@aws-crypto-util-npm-3.0.0-6c4b38c78e-92c835b83d.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-abort-controller-npm-3.342.0-7cd20f7457-2b1f0967bc.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-abort-controller-npm-3.342.0-7cd20f7457-2b1f0967bc.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-chunked-blob-reader-npm-3.310.0-1a751a969c-be8836099d.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-chunked-blob-reader-npm-3.310.0-1a751a969c-be8836099d.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-apigatewaymanagementapi-npm-3.405.0-e4e17d811f-a7bb45a6b9.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-apigatewaymanagementapi-npm-3.405.0-e4e17d811f-a7bb45a6b9.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-lambda-npm-3.398.0-fa4aacfc7b-9602300550.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-lambda-npm-3.398.0-fa4aacfc7b-9602300550.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-s3-npm-3.342.0-a2692091c5-4bdf689adf.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-s3-npm-3.342.0-a2692091c5-4bdf689adf.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-sns-npm-3.342.0-94ce02a19b-0b78c69d05.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-sns-npm-3.342.0-94ce02a19b-0b78c69d05.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-sqs-npm-3.342.0-f4e06f69ac-05b5a4de4c.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-sqs-npm-3.342.0-f4e06f69ac-05b5a4de4c.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-sso-npm-3.342.0-be2d1dcabe-2d4f5bbe70.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-sso-npm-3.342.0-be2d1dcabe-2d4f5bbe70.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-sso-npm-3.398.0-bc215baaec-ad96acab12.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-sso-npm-3.398.0-bc215baaec-ad96acab12.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-sso-npm-3.405.0-0b22768239-864b0a15c8.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-sso-npm-3.405.0-0b22768239-864b0a15c8.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-sso-oidc-npm-3.342.0-ead49d3554-add2a240bd.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-sso-oidc-npm-3.342.0-ead49d3554-add2a240bd.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-sts-npm-3.342.0-ccdc6f5bcc-00798e67c9.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-sts-npm-3.342.0-ccdc6f5bcc-00798e67c9.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-sts-npm-3.398.0-bd88a8b774-a3164f6d56.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-sts-npm-3.398.0-bd88a8b774-a3164f6d56.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-client-sts-npm-3.405.0-b83c3faf19-73c84ef450.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-client-sts-npm-3.405.0-b83c3faf19-73c84ef450.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-config-resolver-npm-3.342.0-e26ef459a6-69c7f4f89a.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-config-resolver-npm-3.342.0-e26ef459a6-69c7f4f89a.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-env-npm-3.342.0-be06d46059-8259d2b0e6.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-env-npm-3.342.0-be06d46059-8259d2b0e6.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-env-npm-3.398.0-3a6e47a3f6-bc42da64b0.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-env-npm-3.398.0-3a6e47a3f6-bc42da64b0.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-imds-npm-3.342.0-8d4fef6a87-f852e4cf40.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-imds-npm-3.342.0-8d4fef6a87-f852e4cf40.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-ini-npm-3.342.0-07eb48b0d6-c7e62e06f5.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-ini-npm-3.342.0-07eb48b0d6-c7e62e06f5.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-ini-npm-3.398.0-04492602d9-16fc9bf4a7.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-ini-npm-3.398.0-04492602d9-16fc9bf4a7.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-ini-npm-3.405.0-759c2d9674-9ad8132af6.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-ini-npm-3.405.0-759c2d9674-9ad8132af6.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-node-npm-3.342.0-c2c35e314b-8e14f7950e.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-node-npm-3.342.0-c2c35e314b-8e14f7950e.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-node-npm-3.398.0-97aa6ccb11-4c7cf65f07.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-node-npm-3.398.0-97aa6ccb11-4c7cf65f07.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-node-npm-3.405.0-33a4e3c01f-d170074c0e.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-node-npm-3.405.0-33a4e3c01f-d170074c0e.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-process-npm-3.342.0-78f1a885e7-dfa750292f.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-process-npm-3.342.0-78f1a885e7-dfa750292f.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-process-npm-3.398.0-912c87c1ab-b6449f3cd4.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-process-npm-3.398.0-912c87c1ab-b6449f3cd4.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-process-npm-3.405.0-ed6dc867ed-b159ab028c.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-process-npm-3.405.0-ed6dc867ed-b159ab028c.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-sso-npm-3.342.0-7fd27a0dfa-d72e568630.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-sso-npm-3.342.0-7fd27a0dfa-d72e568630.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-sso-npm-3.398.0-d9db07b9fb-e77a517246.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-sso-npm-3.398.0-d9db07b9fb-e77a517246.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-sso-npm-3.405.0-24b76ee82f-f3088a303e.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-sso-npm-3.405.0-24b76ee82f-f3088a303e.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-web-identity-npm-3.342.0-a6febeebb2-88cfcba110.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-web-identity-npm-3.342.0-a6febeebb2-88cfcba110.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-credential-provider-web-identity-npm-3.398.0-f03c7c4633-2b790f0be8.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-credential-provider-web-identity-npm-3.398.0-f03c7c4633-2b790f0be8.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-eventstream-codec-npm-3.342.0-599f1c19f8-617ac9cfe9.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-eventstream-codec-npm-3.342.0-599f1c19f8-617ac9cfe9.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-eventstream-serde-browser-npm-3.342.0-c17f73b20c-0b010eb306.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-eventstream-serde-browser-npm-3.342.0-c17f73b20c-0b010eb306.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-eventstream-serde-config-resolver-npm-3.342.0-5dc510958f-e4fc651b91.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-eventstream-serde-config-resolver-npm-3.342.0-5dc510958f-e4fc651b91.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-eventstream-serde-node-npm-3.342.0-c4f337309c-773fd05adb.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-eventstream-serde-node-npm-3.342.0-c4f337309c-773fd05adb.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-eventstream-serde-universal-npm-3.342.0-04f7b47201-f921400914.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-eventstream-serde-universal-npm-3.342.0-04f7b47201-f921400914.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-fetch-http-handler-npm-3.342.0-4a4e467fec-f1c6454c9d.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-fetch-http-handler-npm-3.342.0-4a4e467fec-f1c6454c9d.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-hash-blob-browser-npm-3.342.0-066e11f2e4-0ba0c0b357.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-hash-blob-browser-npm-3.342.0-066e11f2e4-0ba0c0b357.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-hash-node-npm-3.342.0-9dc83dff11-096b19887c.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-hash-node-npm-3.342.0-9dc83dff11-096b19887c.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-hash-stream-node-npm-3.342.0-a4913a1144-b75362bbca.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-hash-stream-node-npm-3.342.0-a4913a1144-b75362bbca.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-invalid-dependency-npm-3.342.0-39864c708e-aa4f8759a3.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-invalid-dependency-npm-3.342.0-39864c708e-aa4f8759a3.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-is-array-buffer-npm-3.310.0-1a5a04a172-5d4ed0d6ce.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-is-array-buffer-npm-3.310.0-1a5a04a172-5d4ed0d6ce.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-md5-js-npm-3.342.0-03063be6e0-590746f2e9.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-md5-js-npm-3.342.0-03063be6e0-590746f2e9.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-middleware-bucket-endpoint-npm-3.342.0-624a90470f-87c716a76d.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-middleware-bucket-endpoint-npm-3.342.0-624a90470f-87c716a76d.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-middleware-content-length-npm-3.342.0-56f02d1875-e522b3c29d.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-middleware-content-length-npm-3.342.0-56f02d1875-e522b3c29d.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-middleware-endpoint-npm-3.342.0-0e31647f55-0742b4f3b2.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-middleware-endpoint-npm-3.342.0-0e31647f55-0742b4f3b2.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-middleware-expect-continue-npm-3.342.0-02ac8e3ba4-908e9177fb.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-middleware-expect-continue-npm-3.342.0-02ac8e3ba4-908e9177fb.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-middleware-flexible-checksums-npm-3.342.0-c9718f53ef-3a6fea9c01.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-middleware-flexible-checksums-npm-3.342.0-c9718f53ef-3a6fea9c01.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-middleware-host-header-npm-3.342.0-b4c3ff14b2-19e4bd0157.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-middleware-host-header-npm-3.342.0-b4c3ff14b2-19e4bd0157.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-middleware-host-header-npm-3.398.0-e26961611d-87cfe1ca6e.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-middleware-host-header-npm-3.398.0-e26961611d-87cfe1ca6e.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-middleware-location-constraint-npm-3.342.0-3f42e0f9ba-456dac09cd.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-middleware-location-constraint-npm-3.342.0-3f42e0f9ba-456dac09cd.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-middleware-logger-npm-3.342.0-df42508fd6-6596cb241f.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-middleware-logger-npm-3.342.0-df42508fd6-6596cb241f.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-middleware-logger-npm-3.398.0-d5e3cc6593-10d6930906.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-middleware-logger-npm-3.398.0-d5e3cc6593-10d6930906.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-middleware-recursion-detection-npm-3.342.0-c62ee6ac40-87f4264568.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-middleware-recursion-detection-npm-3.342.0-c62ee6ac40-87f4264568.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-middleware-recursion-detection-npm-3.398.0-19236a2cd8-41888a61f0.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-middleware-recursion-detection-npm-3.398.0-19236a2cd8-41888a61f0.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-middleware-retry-npm-3.342.0-d5517fccfd-776b234ec2.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-middleware-retry-npm-3.342.0-d5517fccfd-776b234ec2.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-middleware-sdk-s3-npm-3.342.0-2c728e24ae-a1d45139c1.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-middleware-sdk-s3-npm-3.342.0-2c728e24ae-a1d45139c1.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@aws-sdk-middleware-sdk-sqs-npm-3.342.0-d5c9d0d879-29add49d1f.zip
vendored
Normal file
BIN
.yarn/cache/@aws-sdk-middleware-sdk-sqs-npm-3.342.0-d5c9d0d879-29add49d1f.zip
vendored
Normal file
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user