feat: WeKan ticketing source
- wekan connector: board id as project key, cards assigned to the consultant's WeKan username (assignees with member fallback), archived cards skipped, client-side modifiedAt since-filtering, username/password login with token reuse (or pre-issued token), case-insensitive identity - fake-WeKan unit tests: factory validation, test-connection, fetch filtering, key listing, token reuse - admin customer wizard: WeKan option + credential fields - OpenAPI enum + credential shapes, README identity mapping docs Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -31,6 +31,7 @@
|
||||
<option value="jira">Jira Cloud</option>
|
||||
<option value="azure_devops">Azure DevOps</option>
|
||||
<option value="youtrack">YouTrack</option>
|
||||
<option value="wekan">WeKan</option>
|
||||
<option value="demo">Demo (offline)</option>
|
||||
</select>
|
||||
</div>
|
||||
@@ -58,6 +59,12 @@
|
||||
<legend>YouTrack credentials</legend>
|
||||
<div class="field"><label for="c-yt-token">Permanent token</label><input type="password" id="c-yt-token" autocomplete="off"></div>
|
||||
</fieldset>
|
||||
<fieldset id="creds-wekan" class="creds" hidden>
|
||||
<legend>WeKan credentials</legend>
|
||||
<p class="hint">Project key above = the WeKan board id; the connector imports cards assigned to each consultant's WeKan username.</p>
|
||||
<div class="field"><label for="c-wekan-user">Username</label><input type="text" id="c-wekan-user" autocomplete="off"></div>
|
||||
<div class="field"><label for="c-wekan-pass">Password</label><input type="password" id="c-wekan-pass" autocomplete="off"></div>
|
||||
</fieldset>
|
||||
<fieldset id="creds-demo" class="creds" hidden>
|
||||
<legend>Demo</legend>
|
||||
<p class="hint">No credentials required — tickets are fabricated locally.</p>
|
||||
|
||||
Reference in New Issue
Block a user