14335 Commits

Author SHA1 Message Date
Damodar Lohani 4075bcddb4 Merge pull request #3017 from appwrite/claude/bandwidth-progress-bar-breakdown-D4fej
feat: combine bandwidth and realtime bandwidth into a single row with breakdown
8.1.2
2026-05-04 07:15:36 +05:45
Damodar Lohani 3d6844b356 chore: drop explanatory comments per repo convention 2026-05-03 07:15:36 +00:00
Damodar Lohani f4a6781844 fix(billing): surface separate Realtime bandwidth row for legacy orgs
A handful of orgs still have realtime bandwidth tracked outside the
bandwidth resource (not billed/rolled in yet). Earlier commit hid
their realtime value entirely once the breakdown bar suppressed it.
Render a standalone informational Realtime bandwidth row only when
realtimeBandwidthValue > bandwidthValue, matching today's pre-merge
behaviour for those orgs while keeping the modern path one row.
2026-05-03 07:07:54 +00:00
Damodar Lohani 0de30dad10 fix(billing): skip realtime segment when bandwidth < realtimeBandwidth
A handful of legacy orgs have realtime bandwidth tracked separately
(not yet billed and not added into the bandwidth resource). For them
realtimeBytes > totalBytes, which would otherwise overflow the bar or
collapse the regular segment to zero. Detect that case and render
bandwidth as a single segment instead, preserving today's behaviour
for those orgs.
2026-05-03 07:04:34 +00:00
Damodar Lohani b7e558545e fix(billing): stop double-counting realtime bandwidth into bandwidth
Backend already rolls realtimeBandwidth value + amount into the
bandwidth resource, so the previous commit was summing them again
(value + amount), inflating both the displayed total and the priced
amount, and over-driving the progress bar.

Use bandwidth?.value / bandwidth?.amount directly (already include
realtime). For the multi-segment progress bar, carve the realtime
slice out of the total instead of summing — regular = total - realtime,
realtime = realtime — so the segments add to the actual bandwidth
total. Same neutral colour family as before, no multi-colour added.

Clamps realtime to [0, total] in case of dirty data.
2026-05-03 07:03:27 +00:00
Chirag Aggarwal 59e7ff6b96 Merge pull request #3016 from abhay-dev2901/fix-backup-storage-unit-label
fix: correct backup storage usage unit label
2026-05-03 09:21:45 +05:30
abhay-dev2901 36d599c901 fix: correct backup storage usage unit label 2026-05-02 15:10:42 +05:30
Harsh Mahajan 0275dc49f2 Merge pull request #3014 from appwrite/fix-000-scope-picker-git-settings
Fix scope picker visibility and function git settings updates
8.1.1
2026-05-02 09:21:04 +05:30
harsh mahajan 9415e19859 Address PR feedback on scope categories and git branch fetch 2026-05-02 08:56:06 +05:30
harsh mahajan 1f6d6883e0 Fix scope picker visibility and function git settings updates 2026-05-02 08:47:50 +05:30
Harsh Mahajan 1ea6e3225a Merge pull request #3012 from appwrite/feat-11993-console-oauth2
feat: update console OAuth2 provider support
8.1.0
2026-04-30 19:41:37 +05:30
harsh mahajan 20d09f7984 fix: prevent scope data-loss when listProjectScopes fails
mounted is now only set to true on successful load. On error, it stays
false so the $effect never fires, activeScopes stays empty, and the
parent-bound scopes prop is never overwritten with [].
2026-04-30 19:37:00 +05:30
harsh mahajan 2e7e3e7545 fix: use example presence to infer required fields when provider is enabled
Parameters with a non-empty example value are treated as required when
the provider is enabled. Params without an example (e.g. GitLab endpoint
for self-hosted) remain optional regardless of enabled state.
2026-04-30 19:35:16 +05:30
harsh mahajan 05e672b618 fix: show error alert when listProjectScopes fails in scopes.svelte
Previously a rejected API call left allScopesList empty and mounted
stuck at false with no feedback to the user. Now catches the error,
displays an inline alert, and sets mounted in finally so the component
settles cleanly.
2026-04-30 19:13:15 +05:30
Claude d3b5416c0d feat: combine bandwidth and realtime bandwidth into a single row with breakdown
Merges the standalone "Realtime bandwidth" row into the "Bandwidth" row.
The progress bar now renders two color-coded segments — regular bandwidth
and realtime bandwidth — with hover tooltips showing the realtime value.
2026-04-30 12:09:07 +00:00
harsh mahajan 84ad093201 fix-11993-normalize-oauth-secret-payloads 2026-04-30 16:04:46 +05:30
harsh mahajan 02b1d5e4fc fix lint 2026-04-30 16:00:32 +05:30
harsh mahajan 5654f12ddd fix-11993-clear-non-secret-oauth-fields 2026-04-30 15:57:37 +05:30
harsh mahajan 16060fbeb5 fix-11993-restore-oauth-helper-text 2026-04-30 15:50:57 +05:30
harsh mahajan 2301a00563 fix-11993-oauth-modal-dirty-state 2026-04-30 15:47:59 +05:30
harsh mahajan 5686812887 fix-11993-oauth-provider-form-behavior 2026-04-30 15:43:06 +05:30
harsh mahajan e7810c324a feat: replace Apple p8 textarea with file upload zone
p8File fields now show a drag-and-drop style upload zone by default.
Users can click to upload a .p8 file directly or toggle to paste mode
for manual entry. Loaded files show a confirmation state with a clear
button.
2026-04-30 14:41:42 +05:30
harsh mahajan 0001eb9828 perf: prefetch OAuth2 provider params on page load, remove modal loader
Fetch listOAuth2Providers alongside listOAuth2Providers (project) in
+page.ts using Promise.all, pass parameters as a prop to mainOAuth.
Modal now opens instantly with no spinner or async fetch.
2026-04-30 14:37:12 +05:30
harsh mahajan 838d6029d2 fix: correct OAuth2 field name mismatches found from API response
- Apple: p8 -> p8File (API field is p8File)
- GitLab: clientSecret -> secret (API field is secret)
- oauth-providers: paypalsandbox -> paypalSandbox (matches API $id)
2026-04-29 21:57:49 +05:30
harsh mahajan 4e55de1187 fix: align updateOAuth secret key names with console API parameter IDs
- authentikDomain → endpoint (Authentik)
- auth0Domain → endpoint (Auth0)
- tenantID → tenant, clientSecret → applicationSecret (Microsoft)
- oktaDomain → domain (Okta)
- keyID/teamID → keyId/teamId (Apple)
- wellKnownEndpoint/authorizationEndpoint/tokenEndpoint/userinfoEndpoint
  → wellKnownURL/authorizationURL/tokenUrl/userInfoUrl (OIDC)
2026-04-29 21:55:17 +05:30
harsh mahajan ed8bd04d90 feat: dynamic OAuth2 forms and API key scopes from console SDK
- Replace hardcoded OAuth2 provider components with a single dynamic
  mainOAuth.svelte that fetches labels, placeholders, and hints from
  listOAuth2Providers; removes 10 now-unused provider-specific files
- Load OAuth2 provider list and enabled state from project SDK in
  +page.ts instead of reading from the project model directly
- Fetch API key scopes from listProjectScopes instead of static
  constants; migrate scopes.svelte to Svelte 5 runes
- Add executions.read/write scope definitions and legacy compat pair
  for execution. -> executions.
- Secret field uses write-only card pattern (Tag -> expandable Card);
  no pre-fill, no silent fallbacks
2026-04-29 21:46:52 +05:30
harsh mahajan 8a78402ea1 remove yammer and change names 2026-04-29 20:05:04 +05:30
harsh mahajan 75c34eb485 fix: remove unsupported yammer oauth provider 2026-04-29 19:46:24 +05:30
harsh mahajan 14154cb527 format 2026-04-29 19:24:45 +05:30
harsh mahajan 919109d4f4 fix: align console with latest project sdk methods 2026-04-29 19:22:08 +05:30
harsh mahajan 5488f4734e feat: update console OAuth2 provider support 2026-04-29 19:03:06 +05:30
Harsh Mahajan 9f5cd5bfcb Merge pull request #3011 from appwrite/fix-readonly-project-settings-developer
fix: show project settings in read-only mode for developers
2026-04-29 17:22:06 +05:30
harsh mahajan 3c8215c532 fix: only silence readonly settings permission errors 2026-04-29 17:17:41 +05:30
harsh mahajan 8a9c252196 fix: show project settings in read-only mode for developers 2026-04-29 14:08:30 +05:30
Atharva Deosthale dc5598cd89 Merge pull request #3009 from appwrite/feat-add-project-platforms-key-scopes 8.0.11 2026-04-29 13:41:05 +05:30
Atharva Deosthale 3ebd0d3fe0 remove platforms scopes 2026-04-29 13:17:16 +05:30
Atharva Deosthale 497c54080e feat: add project and platforms scopes to API keys 2026-04-29 13:13:47 +05:30
Harsh Mahajan 8bfaea3b59 Merge pull request #3008 from appwrite/fix-identity-icon-fallback
fix: add identity provider icon fallback
2026-04-28 15:03:04 +05:30
harsh mahajan 7c438a09d8 fix: add identity provider icon fallback 2026-04-28 14:49:59 +05:30
Harsh Mahajan 95f1f2e063 Merge pull request #3007 from appwrite/fix-ai-table-creation-flow
fix: stop auto sample data generation on table create
8.0.10
2026-04-27 17:21:23 +05:30
harsh mahajan 58730c3e22 format 2026-04-27 17:16:33 +05:30
harsh mahajan 64b8ede85a fix: sync new tables into database sidebar 2026-04-27 17:11:32 +05:30
harsh mahajan ad25dbf3ec fix: restore post-create table ai suggestions 2026-04-27 17:05:43 +05:30
harsh mahajan 40b69207eb fix: preserve ai suggestion handoff after table create 2026-04-27 17:01:48 +05:30
harsh mahajan 94267e3e5e fix: stop auto sample data generation on table create 2026-04-27 16:57:22 +05:30
Harsh Mahajan c1b0353985 Merge pull request #3006 from appwrite/fix-impersonation-banner-stacking
fix: stack impersonation banner with customer alerts
8.0.9
2026-04-27 12:49:35 +05:30
harsh mahajan 5720195238 fix: address code review findings
- Use svelte/store get() for read-only access in headerAlert.get() and
  getExcluding() to avoid spurious subscriber notifications on every call
- Fix bannerSpacing.set(undefined) → set(null) to match the store's
  declared string | null type (alertStack and headerAlert)
- Remove redundant isImpersonating guard around ImpersonationBanner;
  the component self-manages visibility, eliminating the transient
  empty-stack layout edge case
2026-04-27 12:03:56 +05:30
harsh mahajan 7143794883 fix: stack impersonation banner with customer alerts
The header-alert system previously rendered only the highest-importance
banner. Since the impersonation banner has importance 100, it always
suppressed payment-failed and other billing alerts (importance 1),
making them invisible to operators during impersonation sessions.

Now the impersonation banner renders in a separate fixed-position stack
alongside the highest-priority customer alert, so operators can see
exactly what the customer sees while impersonating.
2026-04-27 11:53:15 +05:30
Atharva Deosthale d248fbea75 Merge pull request #3005 from appwrite/promo/terraform-provider 8.0.8 2026-04-24 21:22:01 +05:30
Atharva Deosthale 920e10f308 add banner for terraform provider 2026-04-24 19:16:53 +05:30