Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
299 commits
Select commit Hold shift + click to select a range
fc79543
fix: set url fields to null when empty
christyjacob4 Jan 16, 2023
8a11fb1
fix: method name
christyjacob4 Jan 16, 2023
f877674
fix: undefined values breaking usage section
TGlide Jan 23, 2023
bf14907
refactor: pr reviews
TGlide Jan 23, 2023
508fb6e
refactor: remove eyebrow headings in document tables
TGlide Jan 23, 2023
1dcf8f5
Merge branch 'main' of github.com:appwrite/console into fix-function-…
ArmanNik Jan 27, 2023
6b746de
feat: move settings cards
ArmanNik Jan 27, 2023
f6b483a
feat: first collapsible always open, disable autocomplete
ArmanNik Jan 27, 2023
f06396f
fix: correct doc link
ArmanNik Jan 27, 2023
6fca232
Merge pull request #238 from appwrite/refactor/change-table-headers
TorstenDittmann Jan 27, 2023
ea0c66d
Merge pull request #237 from appwrite/fix-undefined-values-breaking-u…
TorstenDittmann Jan 27, 2023
d4fc188
Merge pull request #236 from appwrite/feat-index-creation-improvement
TorstenDittmann Jan 27, 2023
5faa54c
Merge pull request #235 from appwrite/fix-datetime-attribute
TorstenDittmann Jan 27, 2023
72b3f26
Merge pull request #233 from appwrite/fix-create-document-different-c…
TorstenDittmann Jan 27, 2023
f50990f
Merge pull request #226 from jalajcodes/fix-4863-inpul-label-in-delet…
TorstenDittmann Jan 27, 2023
0455a9f
chore: remove todo
ArmanNik Jan 27, 2023
31570d2
Merge branch 'main' of github.com:appwrite/console into feat-custom-i…
ArmanNik Jan 27, 2023
c8c502d
Merge pull request #217 from appwrite/feat-display-attribute-types
TorstenDittmann Jan 27, 2023
4f14c2d
Merge pull request #219 from appwrite/feat-contributing-steps
TorstenDittmann Jan 27, 2023
c73f7f5
feat: add logout btn to dropdown
ArmanNik Jan 27, 2023
666ee81
Merge pull request #240 from appwrite/feat-dropdown-logout
TorstenDittmann Jan 30, 2023
c3e5389
fix: label alignment
TGlide Jan 30, 2023
275a510
Merge branch 'main' into feat-empty-arrays-ui
TGlide Jan 30, 2023
020a08d
fix: event modal input styles
TGlide Jan 30, 2023
fc530c8
Merge pull request #182 from appwrite/fix-function-review
TorstenDittmann Jan 31, 2023
b4b9637
feat: add events for creating platforms
TorstenDittmann Jan 31, 2023
55a7094
Merge pull request #241 from appwrite/feat-platform-events
TorstenDittmann Jan 31, 2023
544474d
feat: add platform type
ArmanNik Jan 31, 2023
5a98b5e
feat: update classes and imports to use pink
ArmanNik Jan 31, 2023
4608053
Merge branch 'main' into refactor-event-modal
TGlide Jan 31, 2023
c356df6
Merge branch 'main' into refactor-event-modal
TGlide Jan 31, 2023
7d2430b
feat: add correct types names
ArmanNik Feb 1, 2023
52a5b62
feat: execute redirection, create fixes, small fixes
ArmanNik Feb 1, 2023
0d11106
fix: check error
ArmanNik Feb 1, 2023
bae6e36
fix: add scroll to tables
ArmanNik Feb 1, 2023
e2976f8
fix: secret button
ArmanNik Feb 1, 2023
34eb932
Merge pull request #242 from appwrite/feat-platform-type
TorstenDittmann Feb 2, 2023
6f17158
feat: add fonts
ArmanNik Feb 2, 2023
4166a6a
chore: add new css, fix preloads imports
ArmanNik Feb 2, 2023
481e2f3
fix: update class
ArmanNik Feb 2, 2023
a228306
Merge pull request #243 from appwrite/chore-use-pink
TorstenDittmann Feb 2, 2023
a3ef6a9
Merge branch 'main' of github.com:appwrite/console into chore-upgrade…
ArmanNik Feb 2, 2023
2717ec5
fix: remaining issues
ArmanNik Feb 2, 2023
bcfddd5
missed push
ArmanNik Feb 2, 2023
913f1c6
feat: function execution timer
TGlide Feb 2, 2023
43e4183
fix: file deletion text
TGlide Feb 2, 2023
a3f9782
Updated Function labels
eldadfux Feb 3, 2023
e0f9a66
No need to include the Function as a namespace when already in functi…
eldadfux Feb 3, 2023
c5598f8
Cron is just the syntax not the main focus
eldadfux Feb 3, 2023
9c59413
Cron is not an acronym
eldadfux Feb 3, 2023
e73c8fd
Scheduling is a verb, labels should use names
eldadfux Feb 3, 2023
4189642
Phrasing felt off
eldadfux Feb 3, 2023
f406fe2
Incossisntent permission description
eldadfux Feb 3, 2023
0b64f76
Avoid using ours, feels less collaborative.
eldadfux Feb 3, 2023
0d3d2f0
Should be plural
eldadfux Feb 3, 2023
c30b82e
fix??? revert vitest even more
ArmanNik Feb 3, 2023
b9f3d61
Merge pull request #247 from appwrite/fix/function-deletion-text
TorstenDittmann Feb 3, 2023
c300cdc
fix: #4786 API Keys Update Expiration Date
ritiksaxena124 Feb 4, 2023
49d229f
fix: most issues
ArmanNik Feb 6, 2023
7a51243
fix: wizard form submission
ArmanNik Feb 6, 2023
bb8b9f1
Merge branch 'main' of github.com:appwrite/console into chore-upgrade…
ArmanNik Feb 6, 2023
1c9e3fc
chore: run formatter
TorstenDittmann Feb 6, 2023
bd7331e
fix: add role
ArmanNik Feb 6, 2023
5ea4622
Merge pull request #232 from appwrite/chore-upgrade-sveltekit
TorstenDittmann Feb 6, 2023
37c45aa
Merge pull request #248 from appwrite/feat-update-labels
TorstenDittmann Feb 6, 2023
9469323
Merge branch 'main' of github.com:appwrite/console into feat-function…
ArmanNik Feb 6, 2023
0925058
Merge branch 'main' of github.com:appwrite/console into feat-custom-i…
ArmanNik Feb 6, 2023
90f83ef
fix: invalid invite
ArmanNik Feb 6, 2023
37b3b30
fix: hide login page when loading `/`
ArmanNik Feb 6, 2023
83d8378
chore: update inputFile css
ArmanNik Feb 6, 2023
8e10a7c
fix: add correct drop effect
ArmanNik Feb 6, 2023
b424383
Changes suggested by review agency.
Feb 6, 2023
449864d
fix: rename drop-tabs to secondary-tabs
ArmanNik Feb 7, 2023
643a65e
fix: prevent defaul on dragenter
ArmanNik Feb 7, 2023
7afdf95
refactor: simplify create api-key step
TGlide Feb 7, 2023
453948d
feat: add expiration select to update api-key
TGlide Feb 7, 2023
5b7fc9e
fix: change api key expiration date description
TGlide Feb 7, 2023
d676d0d
fix: add some hover effect
ArmanNik Feb 8, 2023
2cfc305
fix: copy
ArmanNik Feb 8, 2023
f4a5bbf
test: update tests
ArmanNik Feb 8, 2023
02d2968
fix: incremental indexes name
ArmanNik Feb 8, 2023
5ad5667
Merge pull request #259 from appwrite/fix-incremental-index-name
TorstenDittmann Feb 8, 2023
76a30d7
Merge pull request #257 from appwrite/refactor/api-key-forms
TorstenDittmann Feb 8, 2023
a8b78f2
Merge pull request #253 from appwrite/fix-grammar-markdown-docs
TorstenDittmann Feb 8, 2023
582d0a8
Merge pull request #252 from appwrite/fix-hide-login-on-load
TorstenDittmann Feb 8, 2023
2f5f209
Merge pull request #254 from appwrite/chore-update-upload-file-box
TorstenDittmann Feb 8, 2023
148478f
Merge branch 'main' into refactor-event-modal
TorstenDittmann Feb 8, 2023
9adf6ac
Merge branch 'main' of github.com:appwrite/console into feat-function…
ArmanNik Feb 8, 2023
cbe9055
Merge pull request #218 from appwrite/refactor-event-modal
TorstenDittmann Feb 8, 2023
58282a8
Merge pull request #167 from appwrite/feat-custom-id-pattern
TorstenDittmann Feb 8, 2023
5e954e8
Merge branch 'main' into main
TorstenDittmann Feb 8, 2023
0d1377e
Merge pull request #250 from ritiksaxena124/main
TorstenDittmann Feb 8, 2023
915d0a9
fix: variable name from github review
ArmanNik Feb 8, 2023
610a82d
Merge branch 'main' into feat-empty-arrays-ui
TGlide Feb 8, 2023
bfcdbaf
fix: merge conflict
TGlide Feb 8, 2023
d2e24c4
fix: handly empty growth endpoint
TorstenDittmann Feb 8, 2023
6228a36
refactor: type checks
TGlide Feb 8, 2023
0d82e72
feat: add tooltip to secret component
ArmanNik Feb 8, 2023
bb92e93
fix: copy
ArmanNik Feb 8, 2023
b927558
Merge pull request #251 from appwrite/fix-invalid-invite
TorstenDittmann Feb 8, 2023
556e561
feat: refactor activity page to show users
ArmanNik Feb 8, 2023
7fc2853
Merge pull request #261 from appwrite/feat-secret-tooltip
TorstenDittmann Feb 8, 2023
eca106b
feat: add even modal description
ArmanNik Feb 8, 2023
0deb272
feat: add dark mode to chats tooltip
ArmanNik Feb 8, 2023
a400adf
feat: remove flutter superfluous alert
ArmanNik Feb 8, 2023
6f23482
fix: remove import
ArmanNik Feb 8, 2023
77819d4
fix: input tests
TGlide Feb 8, 2023
020a2d8
fix: permissions data getting infro from previous rows
TGlide Feb 8, 2023
cd3527d
fix: linting
TGlide Feb 8, 2023
ebeaf30
Merge branch 'main' into feat/in-progress-execution-timer
TGlide Feb 8, 2023
7d6d02d
feat: add description
ArmanNik Feb 9, 2023
2855835
fix: remove wrong tootip from button
ArmanNik Feb 9, 2023
d4988dd
fix: prefs button disabled when prefs empty
ArmanNik Feb 9, 2023
4084eb4
Merge pull request #267 from appwrite/fix-remove-wrong-tooltip-button
TorstenDittmann Feb 9, 2023
93ba421
Merge pull request #266 from appwrite/fix/team-permissions-popover
TorstenDittmann Feb 9, 2023
150f2e1
Merge pull request #264 from appwrite/feat-charts-tooltip-dark-mode
TorstenDittmann Feb 9, 2023
df37097
Merge pull request #263 from appwrite/feat-add-event-modal-description
TorstenDittmann Feb 9, 2023
dfe2ed6
Merge pull request #268 from appwrite/fix-user-prefs-button-state
TorstenDittmann Feb 9, 2023
472f7ae
Merge pull request #265 from appwrite/chore-remove-flutter-alert
TorstenDittmann Feb 9, 2023
1a2237a
Merge pull request #244 from appwrite/feat-functions-review-v2
TorstenDittmann Feb 9, 2023
dbd84dc
feat: add size attribute to string attribute overview
ArmanNik Feb 9, 2023
9a1fea7
fix: prevent analytics in preview or dev
TorstenDittmann Feb 9, 2023
793e14e
fix: env tostring
TorstenDittmann Feb 9, 2023
7914ed1
Merge pull request #260 from appwrite/fix-handle-empty-growth-endpoint
TorstenDittmann Feb 9, 2023
9a8e2ef
fix: bug
TorstenDittmann Feb 9, 2023
ba7186c
Merge pull request #270 from appwrite/fix-handle-empty-growth-endpoint
TorstenDittmann Feb 9, 2023
7bb99a9
refactor: change some anys to unknown
TGlide Feb 9, 2023
8e583db
Merge pull request #269 from appwrite/feat-add-size-string-attribute-…
TorstenDittmann Feb 9, 2023
612d731
Merge pull request #216 from appwrite/feat-empty-arrays-ui
TorstenDittmann Feb 9, 2023
e79b68d
feat: add timer to deployments
TGlide Feb 9, 2023
b0a2ec8
feat: remember overview last tab
ArmanNik Feb 9, 2023
438339a
refactor: selected tab is set on pageload
ArmanNik Feb 9, 2023
fdd1242
chore: remove import
ArmanNik Feb 9, 2023
7d534bd
chore: changed console.log into console.debug to make filtering easier
ArmanNik Feb 9, 2023
30b5828
Merge pull request #271 from appwrite/feat-remember-overview-last-tab
TorstenDittmann Feb 9, 2023
dc1cd74
Merge pull request #272 from appwrite/chore-turn-dev-analytics-into-d…
TorstenDittmann Feb 9, 2023
bdb2b7b
refactor: remove timer from executions
TGlide Feb 9, 2023
f0ada28
fix: design review issues
TGlide Feb 9, 2023
d0422fe
fix: organizations arrow alignment
TGlide Feb 9, 2023
ed42f9d
refactor: expirationInput checks if predefined date
TGlide Feb 9, 2023
0b8bea1
fix: initial value changing on expiration input
TGlide Feb 9, 2023
75aac13
feat: expiration date alerts
TGlide Feb 9, 2023
2a87d3f
feat: expiration helper
TGlide Feb 9, 2023
3e06e21
fix: scopes missing singular case
TGlide Feb 9, 2023
88e60f2
fix: date input button
ArmanNik Feb 10, 2023
dcd2324
fix: helper top margin
ArmanNik Feb 10, 2023
da1cfc7
chore: fix wrong capitalization
ArmanNik Feb 10, 2023
3d74719
fix: hide spacing header dropdow no organization
ArmanNik Feb 10, 2023
5ce3f7c
Merge pull request #278 from appwrite/fix-header-dropdown-no-organiza…
TorstenDittmann Feb 10, 2023
28ef393
Merge pull request #277 from appwrite/chore-fix-copy-wrong-capitaliza…
TorstenDittmann Feb 10, 2023
a03187a
Merge pull request #276 from appwrite/fix-helper-margin
TorstenDittmann Feb 10, 2023
c802d81
Merge pull request #275 from appwrite/fix-date-input-button
TorstenDittmann Feb 10, 2023
205959b
fix: input id regex
ArmanNik Feb 10, 2023
b1d3f99
Merge pull request #279 from appwrite/fix-input-id-regex
TorstenDittmann Feb 10, 2023
5b7dd1c
feat: create tests for input ID validation
ArmanNik Feb 10, 2023
737cc5c
Merge pull request #273 from appwrite/fix/team-popover-design-review
TorstenDittmann Feb 10, 2023
43abe03
fix: expiration input showing helper text when value is null
TGlide Feb 10, 2023
7c85da3
refactor: small design changes
TGlide Feb 10, 2023
7db8153
fix: timer not stopping when failed
TGlide Feb 10, 2023
7788371
Merge pull request #280 from appwrite/test-create-for-input-id
TorstenDittmann Feb 10, 2023
259adb4
chore: organize imports
TGlide Feb 10, 2023
5eb6f85
Merge branch main into feat/in-progress-execution-timer
TGlide Feb 10, 2023
279f195
Merge pull request #274 from appwrite/refactor/api-details-page
TorstenDittmann Feb 10, 2023
be9ada0
chore: change npm audit level to low
TGlide Feb 10, 2023
ccf53ea
Merge pull request #246 from appwrite/feat/in-progress-execution-timer
TorstenDittmann Feb 10, 2023
3b559d9
feat: add success alert on feedback
TGlide Feb 10, 2023
aeb4cbd
Merge pull request #281 from appwrite/chore/modify-npm-audit-level
TorstenDittmann Feb 10, 2023
fa5dff3
Merge pull request #282 from appwrite/feat/feedback-alert
TorstenDittmann Feb 10, 2023
156e052
fix: chart resize wizard closed
ArmanNik Feb 10, 2023
3c84356
Merge pull request #283 from appwrite/fix-chart-resize-wizard-closed
TorstenDittmann Feb 10, 2023
3edcfb6
fix: function fist deployment, select validity
ArmanNik Feb 10, 2023
c27139c
fix: remove unused property
ArmanNik Feb 10, 2023
203c8fc
refactor: add logic for initial unit on session length
TGlide Feb 10, 2023
f1f0c59
fix: cron expression regex fix
yatharth1706 Feb 10, 2023
24b8e22
fix: enum attribute editable issue in overview modal
yatharth1706 Feb 12, 2023
5eb0f7b
fix: wizard flutter overflow
ArmanNik Feb 13, 2023
9b82b62
feat: track error events
TorstenDittmann Feb 13, 2023
be1b5c5
fix: typings
TorstenDittmann Feb 13, 2023
5f68b13
Merge pull request #286 from yatharth1706/fix-5021-fix-cron-validatio…
TorstenDittmann Feb 13, 2023
cff5b9b
test: add cron input tests
TorstenDittmann Feb 13, 2023
1796de0
Merge pull request #290 from appwrite/test-cron-input
TorstenDittmann Feb 13, 2023
5198c7b
Merge pull request #285 from appwrite/refactor/default-units
TorstenDittmann Feb 13, 2023
aa272fe
Merge pull request #288 from appwrite/fix-flutter-wizard-overflow
TorstenDittmann Feb 13, 2023
6b94d8e
Merge branch 'main' of https://github.com/appwrite/appwrite-console-p…
TorstenDittmann Feb 13, 2023
ae54e3c
fix: flutter platform persistence
TGlide Feb 7, 2023
2fa4764
fix: done changes suggested by TorstenDittmann
yatharth1706 Feb 13, 2023
b1217a7
fix: add required parameter t and error to input
ArmanNik Feb 13, 2023
b0bb46a
Merge pull request #287 from yatharth1706/fix-5009-fix-bug-of-enum-at…
TorstenDittmann Feb 13, 2023
9b2324d
fix: user popover spacing
TGlide Feb 13, 2023
0ebc3f0
refactor: multiple design review changes
TGlide Feb 13, 2023
460df25
refactor: max file size default unit
TGlide Feb 13, 2023
122446a
refactor: improve logic on input values with different units
TGlide Feb 13, 2023
7772703
test: improve vite config
TorstenDittmann Feb 13, 2023
dbec779
fix: some small bugs
TorstenDittmann Feb 14, 2023
4d4f79f
Merge pull request #289 from appwrite/feat-track-error-events
TorstenDittmann Feb 14, 2023
9d1c801
Merge branch 'main' into fix-function-and-more
TorstenDittmann Feb 14, 2023
dda54b0
Merge pull request #284 from appwrite/fix-function-and-more
TorstenDittmann Feb 14, 2023
c2c752e
Merge pull request #291 from appwrite/fix/user-popover-design-issues
TorstenDittmann Feb 14, 2023
99772f4
Merge pull request #294 from appwrite/test-improve-config
TorstenDittmann Feb 14, 2023
550817b
fix: spacing functions title
ArmanNik Feb 14, 2023
91352f9
feat: track custom id usage
TorstenDittmann Feb 14, 2023
b46a612
feat: new events
TorstenDittmann Feb 14, 2023
33b5f8e
test: skip tracking for tests
TorstenDittmann Feb 14, 2023
a00931d
Merge pull request #296 from appwrite/chore-add-more-events
TorstenDittmann Feb 14, 2023
9f846fc
Merge pull request #295 from appwrite/fix-spacing-functions-title
TorstenDittmann Feb 14, 2023
1454b1f
Merge pull request #262 from appwrite/refactor-activity-page
TorstenDittmann Feb 14, 2023
23434aa
fix: alignment, and file link
ArmanNik Feb 14, 2023
244eea9
fix: copy input alignment
ArmanNik Feb 14, 2023
a0733be
Merge pull request #297 from appwrite/fix-url-and-alignment
TorstenDittmann Feb 14, 2023
c13e0e1
Merge branch 'main' into refactor/database-forms-design-review
TGlide Feb 14, 2023
6b1c63a
fix: flutter only persisting once
TGlide Feb 14, 2023
30a5bab
fix: persistence across flutter and apple platform creation
TGlide Feb 14, 2023
941dbb8
Merge pull request #292 from appwrite/refactor/database-forms-design-…
TorstenDittmann Feb 14, 2023
fcf9ecb
Merge pull request #256 from appwrite/fix/flutter-wizard-step-persist…
TorstenDittmann Feb 14, 2023
a1335df
feat: system service
TorstenDittmann Feb 14, 2023
0950c86
fix: convert nullish to undefined
TorstenDittmann Feb 14, 2023
33cc265
refactor: createValueUnitPair helper
TGlide Feb 14, 2023
5be81fc
Merge pull request #298 from appwrite/feat-environment-service
TorstenDittmann Feb 14, 2023
58ec0f1
fix: createValueUnitPair tests
TGlide Feb 14, 2023
7701b25
refactor: reduce valueUnitPair usage lines
TGlide Feb 14, 2023
34652b4
Merge branch 'main' into refactor/more-default-units
TGlide Feb 14, 2023
a9b55dc
refactor: modularize predefined valueUnitPairs; add minimum value con…
TGlide Feb 14, 2023
5d3198f
refactor: add min to units inputs
TGlide Feb 14, 2023
2456d8f
Merge pull request #293 from appwrite/refactor/more-default-units
TorstenDittmann Feb 14, 2023
0e1118c
fix: remove autofocus account name
ArmanNik Feb 15, 2023
ca08b53
Merge pull request #300 from appwrite/fix-autofocus-account-name
TorstenDittmann Feb 15, 2023
2d050a6
Fix sdk changes
Meldiron Feb 20, 2023
15cba65
Update functions modal & response
Meldiron Feb 20, 2023
267216a
Add function URL
Meldiron Feb 20, 2023
cc84474
Upgrade sdk, use new url
Meldiron Feb 20, 2023
007bcc5
Add function logging
Meldiron Feb 24, 2023
7d9b976
Support new execution model
Meldiron Feb 27, 2023
3290ce0
Update executions UI
Meldiron Feb 27, 2023
8e8186b
Update to new specs
Meldiron Feb 27, 2023
5f30a34
Improved headers UI
Meldiron Feb 28, 2023
830dce6
Removed log
Meldiron Feb 28, 2023
2a01dc8
Update console for new rules
Meldiron Mar 8, 2023
d07a6d9
Function domains
Meldiron Mar 10, 2023
5bfe688
Domains component; re-impoement project domains
Meldiron Mar 10, 2023
884a5ba
Static code analysis
Meldiron Mar 10, 2023
5cebe87
Improve domains component UI
Meldiron Mar 10, 2023
7d70619
Shared variables support
Meldiron Mar 11, 2023
f0a977e
Improve UI with design feedback, add logs, fix realtime rules
Meldiron Mar 14, 2023
3f08894
review changes
Meldiron Mar 15, 2023
a1184fc
Add function entrypoint
Meldiron Mar 16, 2023
33b7582
Rename env vars
Meldiron Mar 24, 2023
863a512
custom commands support
Meldiron Mar 29, 2023
a54ce32
Update UI to new API
Meldiron May 11, 2023
1537bc1
Update package.json
Meldiron May 22, 2023
6a37168
Update package-lock.json
Meldiron May 22, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 8 additions & 7 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
"dependencies": {
"@analytics/google-analytics": "^1.0.5",
"analytics": "^0.8.1",
"@aw-labs/appwrite-console": "^13.1.0",
"@aw-labs/appwrite-console": "npm:matej-appwrite-console@7.1.51",
"@aw-labs/icons": "0.0.0-77",
"@aw-labs/ui": "0.0.0-77",
"@popperjs/core": "^2.11.6",
Expand Down
2 changes: 1 addition & 1 deletion src/lib/components/cardGrid.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
</div>
</div>
{#if $$slots.actions}
<div class="common-section card-separator u-flex u-main-end">
<div class="common-section card-separator u-flex u-main-end u-gap-8">
<slot name="actions" />
</div>
{/if}
Expand Down
16 changes: 15 additions & 1 deletion src/lib/components/code.svelte
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
<script lang="ts">
import { Pill } from '$lib/elements';
import Prism from 'prismjs';
import 'prismjs/components/prism-ruby';
import 'prismjs/components/prism-dart';
import 'prismjs/components/prism-kotlin';
import 'prismjs/components/prism-python';
import 'prismjs/components/prism-javascript';
import 'prismjs/components/prism-json';
import 'prismjs/components/prism-bash';
import 'prismjs/components/prism-yaml';
Expand All @@ -16,7 +19,18 @@
export let label: string = null;
export let labelIcon: 'code' | 'android' | 'flutter' | 'apple' = null;
export let code: string;
export let language: 'js' | 'html' | 'dart' | 'kotlin' | 'json' | 'sh' | 'yml' | 'swift';
export let language:
| 'js'
| 'html'
| 'dart'
| 'ruby'
| 'python'
| 'php'
| 'kotlin'
| 'json'
| 'sh'
| 'yml'
| 'swift';
export let withLineNumbers = false;
export let withCopy = false;
export let noMargin = false;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
import { beforeNavigate, invalidate } from '$app/navigation';
import { wizard } from '$lib/stores/wizard';
import type { WizardStepsType } from '$lib/layout/wizard.svelte';
import { domain } from './wizard/store';
import { rule, ruleResource } from './wizard/store';
import Step1 from './wizard/step1.svelte';
import Step2 from './wizard/step2.svelte';
import Step3 from './wizard/step3.svelte';
Expand All @@ -12,15 +12,16 @@
import { Dependencies } from '$lib/constants';

onDestroy(() => {
domain.set({ $id: '', domain: '' });
rule.set({ $id: '', domain: '' });
ruleResource.set({ type: '', id: '' });
});

beforeNavigate(() => {
wizard.hide();
});

function onFinish() {
invalidate(Dependencies.DOMAINS);
invalidate(Dependencies.RULES);
wizard.hide();
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,27 +1,26 @@
<script lang="ts">
import { invalidate } from '$app/navigation';
import { trackEvent } from '$lib/actions/analytics';
import { Modal } from '$lib/components';
import { Dependencies } from '$lib/constants';
import { Button } from '$lib/elements/forms';
import { project } from '../../store';
import { sdkForConsole } from '$lib/stores/sdk';
import { addNotification } from '$lib/stores/notifications';
import { invalidate } from '$app/navigation';
import { Dependencies } from '$lib/constants';
import { sdkForProject } from '$lib/stores/sdk';
import type { Models } from '@aw-labs/appwrite-console';
import { trackEvent } from '$lib/actions/analytics';

export let showDelete = false;
export let selectedDomain: Models.Domain;
export let selectedRule: Models.ProxyRule = null;

const deleteDomain = async () => {
const handleSubmit = async () => {
try {
await sdkForConsole.projects.deleteDomain($project.$id, selectedDomain.$id);
invalidate(Dependencies.DOMAINS);
await sdkForProject.proxy.deleteRule(selectedRule.$id);
await invalidate(Dependencies.RULES);
showDelete = false;
addNotification({
type: 'success',
message: `${selectedDomain.domain} has been deleted`
message: `Domain has been deleted`
});
trackEvent('submit_domain_delete');
trackEvent('submit_rule_delete');
} catch (error) {
addNotification({
type: 'error',
Expand All @@ -31,13 +30,9 @@
};
</script>

<Modal bind:show={showDelete} on:submit={deleteDomain} warning>
<Modal bind:show={showDelete} on:submit={handleSubmit} warning>
<svelte:fragment slot="header">Delete Domain</svelte:fragment>
{#if selectedDomain}
<p>
Are you sure you want to delete <b>{selectedDomain.domain}</b> from '{$project.name}'?
</p>
{/if}
<p>Are you sure you want to delete this domain?</p>
<svelte:fragment slot="footer">
<Button text on:click={() => (showDelete = false)}>Cancel</Button>
<Button secondary submit>Delete</Button>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
<script lang="ts">
import { page } from '$app/stores';
import { Empty, Heading } from '$lib/components';
import { Pill } from '$lib/elements';
import { Button } from '$lib/elements/forms';
Expand All @@ -12,114 +11,142 @@
TableRow,
TableScroll
} from '$lib/elements/table';
import { sdkForProject } from '$lib/stores/sdk';
import { Container } from '$lib/layout';
import { addNotification } from '$lib/stores/notifications';
import { sdkForConsole } from '$lib/stores/sdk';
import { wizard } from '$lib/stores/wizard';
import { invalidate } from '$app/navigation';
import { Dependencies } from '$lib/constants';
import type { Models } from '@aw-labs/appwrite-console';
import type { PageData } from './$types';
import Create from '../create.svelte';
import Delete from '../delete.svelte';
import Create from './create.svelte';
import Delete from './delete.svelte';
import { trackEvent } from '$lib/actions/analytics';
import { ruleResource } from './wizard/store';
import Logs from './logs.svelte';

export let data: PageData;
export let rules: Models.ProxyRuleList;
export let resourceType: string;
export let resourceId: string;

const projectId = $page.params.project;
const target = window?.location.hostname ?? '';
let showDelete = false;
let selectedDomain: Models.Domain;
let showLogs = false;
let selectedRule: Models.ProxyRule;
let isVerifying = {};

const openWizard = () => {
$ruleResource = {
type: resourceType,
id: resourceId
};

wizard.start(Create);
};

const refreshDomain = async (domain: Models.Domain) => {
const domainId = domain.$id;
const refreshDomain = async (rule: Models.ProxyRule) => {
const ruleId = rule.$id;
try {
isVerifying[domainId] = true;
isVerifying[ruleId] = true;

if (domain.verification) {
invalidate(Dependencies.DOMAINS);
if (rule.status === 'verified') {
invalidate(Dependencies.RULES);
return;
}
await sdkForConsole.projects.updateDomainVerification(projectId, domainId);
invalidate(Dependencies.DOMAINS);

await sdkForProject.proxy.updateRuleVerification(ruleId);
invalidate(Dependencies.RULES);
trackEvent('submit_domain_update_verification');
} catch (error) {
addNotification({
message: error.message,
type: 'error'
});
} finally {
isVerifying[domainId] = false;
isVerifying[ruleId] = false;
}
};
</script>

<Container>
<div class="u-flex u-gap-12 common-section u-main-space-between">
<Heading tag="h2" size="5">Custom Domains</Heading>
<Heading tag="h2" size="5">Domains</Heading>

<Button on:click={openWizard}>
<span class="icon-plus" aria-hidden="true" /> <span class="text">Create domain</span>
</Button>
</div>
{#if data.domains.total}
{#if rules.total}
<TableScroll>
<TableHeader>
<TableCellHead width={150}>Domain Name</TableCellHead>
<TableCellHead width={100} />
<TableCellHead width={60}>Type</TableCellHead>
<TableCellHead width={90}>Name</TableCellHead>
<TableCellHead width={90}>Value</TableCellHead>
<TableCellHead width={40} />
<TableCellHead width={300}>Domain Name</TableCellHead>
<TableCellHead width={100}>Status</TableCellHead>
<TableCellHead width={150} />
<TableCellHead width={40}>Actions</TableCellHead>
</TableHeader>
<TableBody>
{#each data.domains.domains as domain}
{#each rules.rules as rule}
<TableRow>
<TableCellText title="Domain">
{domain.domain}
<div class="u-flex u-flex-horizontal u-cross-center u-gap-4">
<p>{rule.domain}</p>
<div style="--p-button-size: var(--button-size, 2.0rem);">
<a
class="is-text is-only-icon button"
href={`//${rule.domain}`}
target="_blank"
rel="noreferrer"
><span class="icon-external-link" aria-hidden="true" /></a>
</div>
</div>
</TableCellText>
<TableCellText title="Status">
<Pill warning={!domain.verification} success={domain.verification}>
{domain.verification ? 'verified' : 'unverified'}
<Pill
danger={rule.status === 'unverified'}
success={rule.status === 'verified'}
info={rule.status === 'created' || rule.status === 'verifying'}>
{rule.status}
</Pill>
</TableCellText>
<TableCellText title="Type">CNAME</TableCellText>
<TableCellText title="Name">
{domain.domain}
</TableCellText>
<TableCellText title="Name">
{target}
</TableCellText>
<TableCell />

<TableCell title="Actions">
<div class="u-flex u-gap-8 u-cross-center u-main-end">
{#if isVerifying[domain.$id]}
{#if rule.status === 'verifying' || isVerifying[rule.$id]}
<!-- TODO: remove inline styles -->
<div
class="loader"
style="color: hsl(var(--color-neutral-50)); inline-size: 1.25rem; block-size: 1.25rem" />
{:else if !domain.certificateId}
{:else if rule.status === 'unverified' || rule.status === 'created'}
<!-- TODO: remove inline styles -->
<button
class="button is-text is-only-icon u-padding-inline-0"
style="--p-button-size: var(--button-size, 2.0rem);"
aria-label="Verify item"
on:click={() => refreshDomain(domain)}>
<span class="icon-refresh" aria-hidden="true" />
on:click={() => refreshDomain(rule)}>
<span class="icon-key" aria-hidden="true" />
</button>
{/if}
{#if rule.status === 'unverified' || rule.status === 'verified'}
<!-- TODO: remove inline styles -->
<button
class="button is-text is-only-icon u-padding-inline-0"
style="--p-button-size: var(--button-size, 2.0rem);"
aria-label="Verify item"
on:click={() => {
showLogs = true;
selectedRule = rule;
}}>
<span class="icon-terminal" aria-hidden="true" />
</button>
{/if}

<!-- TODO: remove inline styles -->
<button
class="button tooltip is-text is-only-icon u-padding-inline-0"
style="--p-button-size: var(--button-size, 2.0rem);"
aria-label="Delete item"
on:click={async () => {
showDelete = true;
selectedDomain = domain;
selectedRule = rule;
}}>
<span class="icon-trash" aria-hidden="true" />
<span class="tooltip-popup is-bottom" role="tooltip">
Expand All @@ -141,4 +168,6 @@
{/if}
</Container>

<Delete bind:showDelete bind:selectedDomain />
<Delete bind:showDelete bind:selectedRule />

<Logs bind:showLogs logs={selectedRule?.logs ? selectedRule?.logs : 'No logs recorded.'} />
19 changes: 19 additions & 0 deletions src/lib/components/domains/logs.svelte
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
<script lang="ts">
import { Modal } from '$lib/components';
import Code from '$lib/components/code.svelte';
import { Button } from '$lib/elements/forms';

export let showLogs = false;
export let logs: string;
</script>

<Modal bind:show={showLogs}>
<svelte:fragment slot="header">Certificate Logs</svelte:fragment>
<p>Logs from the process of certificate generation with LetsEncrypt and Certbot.</p>

<Code withLineNumbers withCopy language="sh" code={logs} />

<svelte:fragment slot="footer">
<Button text on:click={() => (showLogs = false)}>Close</Button>
</svelte:fragment>
</Modal>
Loading