1
0
mirror of https://github.com/owncloud/ocis.git synced 2026-10-23 23:29:02 +03:00
Commit Graph

172 Commits

Author SHA1 Message Date
David Walter
4712c7c619 feat(web): add mermaid-editor app for standalone .mmd diagrams (#12676)
* feat(web): add mermaid-editor app for standalone .mmd diagrams

md-editor-v3's mermaid support only fires inside a Markdown fenced
code block, so there was no way to edit a Mermaid diagram on its own.
This adds a dedicated split-pane editor/preview app (mirroring
web-app-html-editor's shape) for the mmd/mermaid extensions, feeding
raw diagram source straight into mermaid.render() - no Markdown
wrapping involved. Invalid syntax surfaces an inline error instead of
crashing the preview pane, and the rendered SVG is sanitized with
DOMPurify the same way the embedded markdown-mermaid renderer already
does.

🤖 Generated with Claude Code
Signed-off-by: David Walter <david.walter@kiteworks.com>

* test(web): add e2e coverage and WCAG 2.2 checks for mermaid-editor

Wires the new 'mmdFile' resource type into the create/edit e2e
resource helpers (mirroring txtFile/mdFile) and adds a spec covering
diagram rendering, invalid-syntax error surfacing, and the view-mode
toggle. The new mermaidEditor.ts page-object asserts the existing
WCAG 2.1 a11y baseline every other e2e spec uses, plus an additional
WCAG 2.2 tag scan (target-size, focus-appearance, etc.) scoped to
this file only - the shared a11y helper used by every other spec
stays on its current WCAG 2.1 tag set, since widening it repo-wide is
a separate decision with its own pre-existing-violation triage cost.

🤖 Generated with Claude Code
Signed-off-by: David Walter <david.walter@kiteworks.com>

* fix(web): register mermaid-editor in the default enabled apps list

CI's e2e run for the new mermaid-editor app timed out waiting for the
"New > Mermaid diagram" menu entry: config.json.dist (a reference/dev
file) had "mermaid-editor" added, but the actual runtime default config
a packaged oCIS binary serves comes from services/web's Go defaults,
which didn't. Also runs Prettier over the 3 files check:format flagged.

🤖 Generated with Claude Code
Signed-off-by: David Walter <david.walter@kiteworks.com>

* fix(web): correct vue3-gettext version, add changelog entry

vue3-gettext was pinned to an exact "2.4.0" in web-app-mermaid-editor's
package.json (a copy-paste slip) instead of "^4.0.1" like every other
web app package, pulling in a stray v2 dependency tree with its own
deprecated transitives (glob@7.2.3, inflight@1.0.6). Also adds the
changelog/unreleased entry this PR was missing.

🤖 Generated with Claude Code
Signed-off-by: David Walter <david.walter@kiteworks.com>

* fix(web): resolve stale mermaid lockfile entry from merge conflict

web/pnpm-lock.yaml pinned mermaid to 11.16.0 for the new
web-app-mermaid-editor importer, left over from a badly-resolved merge
with master (which resolves mermaid to 11.16.1 in every other
importer and in the packages snapshot). pnpm install --frozen-lockfile
failed in CI with ERR_PNPM_LOCKFILE_MISSING_DEPENDENCY since 11.16.0
had no corresponding packages entry.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Signed-off-by: dj4oC <david.walter@kiteworks.com>

* test(web): register mermaid-editor in the e2e CI oCIS config

tests/config/ci/ocis-config.json is the WEB_UI_CONFIG_FILE the e2e
docker-compose stack (tests/acceptance/docker/src/ocis-base.yml) feeds
the oCIS instance under test. It keeps its own "apps" allowlist,
separate from services/web's Go defaults (already fixed) and
config.json.dist (also already fixed) - and it never got
"mermaid-editor" added. Without it, the running instance never
registers the app, so the "New > Mermaid diagram" menu entry the
mermaidEditor.spec.ts e2e test waits for never renders, and the click
times out after all retries.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Signed-off-by: dj4oC <david.walter@kiteworks.com>

* fix(web): give the mermaid-editor CodeMirror pane an accessible name

The plain-text CodeMirror content div renders with role="textbox"
aria-multiline="true" but no aria-label/aria-labelledby/title, which
axe-core (and screen readers) flag as a serious WCAG violation - this
is exactly what the e2e a11y scan caught on the new mermaidEditor
spec. Fixed via EditorView.contentAttributes, the same mechanism
CodeMirror exposes for this. MermaidEditorPane.spec.ts is updated to
install defaultPlugins() like its sibling specs already do, since the
component now calls useGettext() for the label text.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Signed-off-by: dj4oC <david.walter@kiteworks.com>

---------

Signed-off-by: David Walter <david.walter@kiteworks.com>
Signed-off-by: dj4oC <david.walter@kiteworks.com>
Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-17 22:00:47 +02:00
Lukas Hirt
9568b738b5 fix(web): [OCISDEV-1243] admin-uploaded logo overrides theme-specific logo (#12847)
A theme can define its own logo per UI variant under
clients.web.themes[].logo, including the built-in "owncloud" theme, most
of whose variants (dark, high contrast, ...) already do this. The admin
logo upload endpoint only ever patched clients.web.defaults.logo, so the
active theme's own per-variant logo kept winning over a logo an admin
explicitly uploaded through the admin settings web app.

Force the branding (admin-uploaded) logo onto every theme variant's own
logo entries after the theme merge, so it always takes precedence.

Signed-off-by: Lukas Hirt <info@hirt.cz>
2026-08-26 06:39:29 +00:00
Dominik Schmidt
ad0adfc6f9 fix: WEB_OPTION_EMBED_ENABLED should be a bool
fix: implement *bool config type, so Embed.Enabled can still be explicitly disabled

feat: added changelog

fix: sanitize config
2026-01-07 11:45:11 +01:00
Michal Klos
87d9ac58fd fix: validate web serve files with filesystem 2025-09-10 12:34:03 +02:00
Juan Pablo Villafañez
a46cd29cc9 Merge pull request #11573 from owncloud/otelhttp_for_tracing
Otelhttp for tracing
2025-08-07 13:48:02 +02:00
dependabot[bot]
861b20dc9d chore(deps): bump github.com/olekukonko/tablewriter from 0.0.5 to 1.0.9 (#11570)
* chore(deps): bump github.com/olekukonko/tablewriter from 0.0.5 to 1.0.9

Bumps [github.com/olekukonko/tablewriter](https://github.com/olekukonko/tablewriter) from 0.0.5 to 1.0.9.
- [Commits](https://github.com/olekukonko/tablewriter/compare/v0.0.5...v1.0.9)

---
updated-dependencies:
- dependency-name: github.com/olekukonko/tablewriter
  dependency-version: 1.0.9
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix: adjust to tablewriter 1.0.9 (AI-powered)

Signed-off-by: Julian Koberg <julian.koberg@kiteworks.com>

* update to NewTable

* bring back a Footer

* fix the tests

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Julian Koberg <julian.koberg@kiteworks.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Julian Koberg <julian.koberg@kiteworks.com>
Co-authored-by: Roman Perekhod <rperekhod@owncloud.com>
2025-08-06 09:39:49 +02:00
Juan Pablo Villafáñez
8b8c7f02bf fix: replace hardcoded services names for variables 2025-08-05 10:00:24 +02:00
Michal Klos
89b653f002 fix: [OCISDEV-175] server path validation 2025-08-04 11:34:55 +02:00
Juan Pablo Villafáñez
01a9713b52 feat: use otelhttp for tracing, fix tracing in proxy
otelchi and other custom solutions have been replaced with otelhttp to
trace HTTP requests; new middleware is provided to be used across the
platform.

The proxy service will use a custom HTTP client to forward the headers
needed for telemetry automatically (also based on otelhttp)
2025-07-31 11:06:33 +02:00
Juan Pablo Villafañez
2f0842e9b3 Merge pull request #11500 from owncloud/deployments_telemetry_updates
chore: telemetry updates for the deployments
2025-07-16 13:26:29 +02:00
Juan Pablo Villafáñez
641fa42f8d chore: add otlp as supported tracing type
This is just for documentation purposes. There is no code change.
2025-07-14 15:29:16 +02:00
Roman Perekhod
b3e7a64afc chore: [OCISDEV-154] Clean up the unified roles label 2025-07-08 10:15:33 +02:00
Roman Perekhod
4fc4822696 collect the errors from group runner 2025-06-13 16:14:41 +02:00
Lukas Hirt
80f8bc1a5f feat: add SpaceEditorWithoutTrashbin role
Added a new built-in role: `SpaceEditorWithoutTrashbin`.
This role is a subset of the `SpaceEditor` role, but it does not have list/restore resources in trashbin permissions.
2025-06-10 08:40:36 +02:00
Roman Perekhod
d31ca63af1 set default timeouts and clean up 2025-05-28 12:21:50 +02:00
Roman Perekhod
e1325ca40f to separate controll ower the http and grpc driven services 2025-05-28 12:21:50 +02:00
Juan Pablo Villafáñez
399a24e9b6 feat: use runners to startup the services 2025-05-28 12:21:49 +02:00
Julian Koberg
b979844791 feat(ocis): adjust reva imports
Signed-off-by: Julian Koberg <jkoberg@MBP-Julian-Koberg.local>
2025-03-05 11:14:44 +01:00
Bastian Beier
8cbaf071fa feat: Add roles EditorListGrantsWithVersions, FileEditorListGrantsWithVersions 2025-02-06 14:26:35 +01:00
Michael Barz
bac2256c5f fix: fix deny access to prevent a regression 2024-11-25 11:32:31 +01:00
Jörn Friedrich Dreyer
dde999d5c2 align shutdown logging
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
2024-10-28 14:47:11 +01:00
Florian Schade
66ff86bd35 enhancement: simplify ready and health check handler usage 2024-10-16 20:26:00 +02:00
jkoberg
bf0d8ed3dc feat(ocis): remove deprecated envvars
Signed-off-by: jkoberg <jkoberg@owncloud.com>
2024-10-15 17:24:51 +02:00
Christian Richter
c11b18c833 refactor web & activitylog checks
Signed-off-by: Christian Richter <crichter@owncloud.com>
2024-10-15 13:41:31 +02:00
Christian Richter
0094d30378 code cleanup & refactoring
Signed-off-by: Christian Richter <crichter@owncloud.com>
2024-10-14 08:39:42 +02:00
Christian Richter
26bf6ab796 add debug server to activitylog & check web availability
Signed-off-by: Christian Richter <crichter@owncloud.com>
2024-10-14 08:39:42 +02:00
Florian Schade
0671039474 enhancement: add readyz and healthz check handler 2024-10-14 08:39:42 +02:00
Florian Schade
c82a7c560e enhancement: use global ready and health handlers 2024-10-14 08:39:42 +02:00
Juergen Weigert
0d719a7c72 fix: more colons after variables found.
cd owncloud/ocis/services
vi $(grep -l -r '[A-Z][A-Z][A-Z]:/')
2024-10-02 09:09:47 +02:00
Juan Pablo Villafáñez
bc20019781 fix: remove csp from web service and let proxy service handle it 2024-09-24 12:32:25 +02:00
Florian Schade
3a4c0f33ea fix: ocm share update 2024-09-11 15:34:08 +02:00
Roman Perekhod
d3e8eb34df [full-ci] Added a new roles viewer/editor with ListGrants 2024-09-02 11:33:18 +02:00
Roman Perekhod
6319d986eb [full-ci] Added a new role space editor without versions 2024-08-29 14:20:35 +02:00
mmattel
3e9a6056fa [docs-only] Set the correct removal version 2024-08-23 14:35:18 +02:00
Jannik Stehle
38d7933409 feat: enable app-store web app per default 2024-08-16 15:56:28 +02:00
Jörn Friedrich Dreyer
966b4e1422 allow querying federated sharing roles
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
2024-08-12 11:29:39 +02:00
Florian Schade
598786ae7b Merge pull request #9691 from fschade/app-config
isolated app configuration
2024-08-06 09:35:30 +02:00
Jörn Friedrich Dreyer
f5af53eaad Merge pull request #9692 from owncloud/fix-web-delegatedauthentication-type
use bool type for web embed delegatedAuthentication
2024-07-30 13:19:54 +02:00
Jörn Friedrich Dreyer
7b98a2665f use bool type for web embed delegatedAuthentication
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
2024-07-25 16:42:58 +02:00
Florian Schade
a31a48150b Commit Title (50 char max)
Release Notes
=============

Testing Notes
=============

Deploy Notes
============

Technical Change Notes
======================
2024-07-25 16:10:10 +02:00
Jörn Friedrich Dreyer
7999e2969b do not force exit to let all services shutdown gracefully
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
2024-07-24 14:02:52 +02:00
Jörn Friedrich Dreyer
9d1515e8fc rely on context from app
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
2024-07-24 14:02:11 +02:00
Jörn Friedrich Dreyer
008f379a01 pass config context when running apps
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
2024-07-24 13:30:42 +02:00
Jan Ackermann
552f5c86c1 Remove config options that ain't available in web anymore 2024-07-24 08:39:02 +02:00
Jannik Stehle
7e27899f9e feat: remove draw-io from default web config
The `draw-io` app has been removed from the Web default apps, hence this removes it here as well.

The app is now available via the [web-extensions repository](https://github.com/owncloud/web-extensions).
2024-07-22 14:41:27 +02:00
Jörn Friedrich Dreyer
c3c6085f2b drop sjson dependency
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
2024-07-18 12:06:25 +02:00
Michael Barz
3aaad75ca2 chore: move removal of envs to next production release 2024-06-19 19:53:06 +02:00
Michael Barz
b04f3209d4 chore: prepare release, bump version 2024-06-19 19:45:57 +02:00
Michael Barz
b892a9ab28 Merge pull request #9312 from owncloud/var-placeholders
docs: use placeholder for next release
2024-06-05 21:36:25 +02:00
Thomas Müller
1453f904e3 chore: code cleanup services/web (#9034)
* chore: code cleanup services/web

* fix: export private member to keep the test external

* chore: backport changes

---------

Co-authored-by: Florian Schade <f.schade@icloud.com>
2024-06-04 12:28:49 +02:00