Skip to content

feat(dialog): experimental sharing dialog for the unified sharing API#239

Draft
skjnldsv wants to merge 3 commits into
mainfrom
feature/vite-lib-build
Draft

feat(dialog): experimental sharing dialog for the unified sharing API#239
skjnldsv wants to merge 3 commits into
mainfrom
feature/vite-lib-build

Conversation

@skjnldsv

@skjnldsv skjnldsv commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

@codecov

codecov Bot commented Jul 17, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 75.89286% with 27 lines in your changes missing coverage. Please review.
✅ Project coverage is 83.42%. Comparing base (7162b64) to head (6a7e5c4).
⚠️ Report is 80 commits behind head on main.

Files with missing lines Patch % Lines
lib/dialog/utils/api.ts 19.04% 11 Missing and 6 partials ⚠️
lib/dialog/components/PropertyField.vue 87.30% 8 Missing ⚠️
lib/dialog/types/api.ts 0.00% 2 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##             main     #239       +/-   ##
===========================================
- Coverage   95.65%   83.42%   -12.23%     
===========================================
  Files           4       11        +7     
  Lines          69      181      +112     
  Branches       25       68       +43     
===========================================
+ Hits           66      151       +85     
- Misses          3       24       +21     
- Partials        0        6        +6     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@skjnldsv skjnldsv self-assigned this Jul 22, 2026
@skjnldsv skjnldsv added the 2. developing Work in progress label Jul 22, 2026
Comment thread README.md
Comment thread lib/dialog/utils/logger.ts
Comment thread lib/dialog/index.ts Outdated
Comment thread lib/dialog/constants.ts
Comment thread lib/dialog/utils/api.ts Outdated
Comment thread lib/dialog/types/api.ts
Comment thread lib/dialog/components/InlineToggleField.vue Outdated
Comment thread lib/dialog/components/InlineToggleField.vue Outdated
Comment thread lib/dialog/SharingDialog.vue Outdated
Comment thread lib/dialog/SharingDialog.vue Outdated
Comment thread lib/dialog/SharingDialog.vue Outdated
Comment thread lib/dialog/components/SharePanel.vue Outdated
Comment thread lib/dialog/index.ts
Comment thread README.md
Add the vite lib-mode build (multi-entry: index, public, ui and the
experimental dialog, with inlined CSS and generated type declarations),
the vitest configuration, the SVG `?raw` asset typings, and the
dependencies the dialog entry point relies on.

Assisted-by: ClaudeCode:claude-opus-4-8
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
@skjnldsv
skjnldsv force-pushed the feature/vite-lib-build branch from 7a6d897 to d41a57b Compare July 23, 2026 20:46
skjnldsv added 2 commits July 23, 2026 22:50
Add an experimental `@nextcloud/sharing/dialog` entry point targeting the
Nextcloud 35 unified sharing API:

- A Share class (obtained via createShare()/getShare()) wrapping the
  reactive share schema, with chainable mutation helpers and showDialog().
- SharingDialog + SharePanel: invite people or share via public link,
  permission presets with a custom fine-grained toggle view, and editable
  share properties with debounced persistence and native-validity errors.
- Per-type recipient rendering, property hint notes, a plain-language
  expiration/password summary and a folder upload hint; datetime-local
  expiration using the backend's full UTC support.

Callable unconditionally: it shows an error toast and no-ops when the
server does not provide the unified sharing API.

Assisted-by: ClaudeCode:claude-opus-4-8
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
Cover the Share client and its mutation delegation, the property field
(rendering, debounced persistence, native validity, datetime), the inline
toggle field, recipient-to-model mapping, the outcome summary helper and
the share panel behavior (presets, permission toggles, recipient sync,
summary and folder-upload notes).

Assisted-by: ClaudeCode:claude-opus-4-8
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
@skjnldsv
skjnldsv force-pushed the feature/vite-lib-build branch from d41a57b to 640c934 Compare July 23, 2026 20:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

2. developing Work in progress

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants