KamoCRM

Mabadiliko ya Tabianchi

Kila kipengele, kurekebisha na kuboresha, posted kama meli. Hakuna kitu kilichofichwa kwa ajili ya uzinduzi.

17,500
Mabadiliko ya Jumla
5,986
Features ya
5,284
Wa
30
Miradi ya Miradi
Filter ya Mradi
Miradi yote17,500AIService251APIService174BillingService157ConversionService110DaemonService138DocsService223ESigService91EmailService576InitializerService329KBService151KlusterServices740MCPGatewayService251MediaService602RAGService79SecurityService1,847TranslateService62VOIPService249VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,349kamo-login335kamo-marketing641kamo-nowww20kamo-register213kamo-shared-library1,657kamo-signer-monorepo56kamolos114
Filter ya aina
Aina zoteBuild16CI523Chore774Docs3,254Feature5,986Fix5,284Other994Performance165Refactor278Revert23Style42Test160Upgrade1
April 16, 2026
Featurekamo-internal

Implement document sharing system with share dialog, Shared With Me tab, and shareable links

- Add ShareDocumentDialog with permission-based member/team/dept/jobTitle recipient picker - Wire Share button in DocManager toolbar (MY_DOCS only) - Add Shared...

kamo·6mo ago
April 15, 2026
Featurekamo-internal

Real BLAKE3 hashing and pre-upload dedup check in doc manager

- Replace BLAKE3 placeholder with real blake3 WASM in fileHashing.ts - Add check-hashes and register-existing API proxy routes - MultiFileUploader now checks se...

kamo·6mo ago
Fixkamo-internal

Gate Folder and Doc Type columns/fields on allowFolders and allowDocType

When folder or doc type features are disabled for an assoc type, hide the corresponding datagrid columns and upload form fields consistently.

kamo·6mo ago
Fixkamo-internal

Align upload fields with consistent MUI TextFields, always show folder and doc type

Replace raw <select> elements with MUI TextField select for consistent styling and alignment with the Description field. Folder and Doc Type fields are now alwa...

kamo·6mo ago
Fixkamo-internal

Accept all file types for upload, use server-side blacklist instead of whitelist

Replace hardcoded ACCEPTED_EXTENSIONS whitelist with server-provided extBlackList from assoc-config. All file types are now uploadable unless explicitly blackli...

kamo·6mo ago
Featurekamo-internal

Add proxy route for thumbnail backfill endpoint

kamo·6mo ago
CIkamo-internal

Re-trigger build after k0m1 restart

kamo·6mo ago
Featurekamo-internal

Redesign Prepare Selected tab with reordering, preview, and bulk download

Replace mock Options panel with functional document preparation UI. Documents are reorderable via drag-and-drop and arrow buttons, with checkboxes for deselecti...

kamo·6mo ago
April 13, 2026
Fixkamo-internal

Use systemDocsOnly flag for System Docs tab, show all docs in Original Docs

Original Docs tab now shows all docs for this org/assocType without filtering by assocObjectId. System Docs tab sends systemDocsOnly: true to only get docs with...

kamo·6mo ago
Fixkamo-internal

Default assocObjectId to current member ID for proper doc tab filtering

When no oid URL param is provided, Original Docs and Modified Docs tabs now query by the current member's ID, while System Docs queries with blank assocObjectId...

kamo·6mo ago
Chorekamo-internal

Remove /doc/sign/create and /doc/sign/edit routes

Editor is now embedded inline in the doc manager page.

kamo·6mo ago
Refactorkamo-internal

Add memberType to user info, rename templateName to docDescription in template settings store

Add memberType field from Member entity discriminator column to the user-info API response and useUserInfo hook. Rename templateName to docDescription in templa...

kamo·6mo ago
April 12, 2026
Featurekamo-internal

Fix watermark above-layer z-index, add page right-click menu, add page above/below, improve drag indicator

- ModifierLayer: 'above' pass now uses zIndex 20 so watermarks render on top of fields and annotations - PdfCanvas: right-click context menu with rotate, delete...

kamo·6mo ago
Fixkamo-internal

Place dropped field at ghost's exact visual position

Use active.rect.current.translated (the DragOverlay ghost's client rect) instead matches the translated rect, so the field now lands precisely where the user re...

kamo·6mo ago
Featurekamo-internal

Drag-and-drop field placement, floating annotation toolbar, and PDF page spacing

- Replace click-to-place with @dnd-kit drag-and-drop for all signature, identity, and input field tools; drag ghost matches the exact visual appearance of the...

kamo·6mo ago
Fixkamo-internal

Route all esig API calls through forwardToApi() to fix save failures

All 10 esig route handlers were pointing to ESIG_SERVICE_URL which resolves to a non-existent kamowsesig-service proxy. Replace every handler with forwardToApi(...

kamo·6mo ago
Featurekamo-internal

Add layer position option to Watermark modifier (behind / above content)

- WatermarkModifier gains a 'layer' field: 'behind' | 'above' (defaults to 'behind') - ModifierLayer now takes a 'pass' prop ('below' | 'above'): - below pass...

kamo·6mo ago
Featurekamo-internal

Add Watermark modifier to esign toolbox

- WatermarkModifier type: logoType (full/simple), startPage, endPage, rotation (−180–180), size (10–90% of page width), opacity (2–60%), solidColor toggle, colo...

kamo·6mo ago
Featurekamo-internal

Extend Label modifier to full 8-position grid with LM/RM rotation

- LabelModifier.position now uses ModifierPosition8 (same 8-position grid as Page Numbers) - LM (Middle Left): each line rendered as a vertical pill with writin...

kamo·6mo ago
Featurekamo-internal

Add Tools/Modifiers tabs to esign Toolbox with live canvas overlays

- Split Toolbox left sidebar into Tools and Modifiers tabs - Modifiers tab: split list + settings panel (Option B) - Page Numbers modifier: start/end page, 8-...

kamo·6mo ago
Fixkamo-internal

Correct rotated thumbnail positioning and restore rotation transform

Two bugs in ThumbnailCanvas: 1. Replaced `height: \`${displayAspect * 100}%\`` (percentage height on abs- positioned element — unreliable when containing bl...

kamo·6mo ago
Featurekamo-internal

Fix floating zoom control visibility and polish thumbnail placeholders

- Move floating zoom controls outside the scroll container and use position:absolute so they remain visible at all times regardless of scroll position; offs...

kamo·6mo ago
Featurekamo-internal

Page selection with animated glow border synced between canvas and thumbnail sidebar

- DesignTab holds selectedPageIndex as the single source of truth - Clicking any page in the main canvas selects it (onPageSelect) - Clicking a thumbnail select...

kamo·6mo ago
Fixkamo-internal

Move scroll ownership from PdfCanvas to canvasContainerRef

PdfCanvas root Box previously had overflow-auto + h-full, making it its own scroll container. This meant: - scrollbarGutter: stable on canvasContainerRef had no...

kamo·6mo ago
Fixkamo-internal

Fit to Width calculates actual container width instead of resetting to zoom 1

Reads **************** (which accounts for the stable scrollbar gutter) and the page's natural width via **************** then computes fitZoom = (availableWidt...

kamo·6mo ago
Fixkamo-internal

Replace all hardcoded purple with var(--color-primary) on Settings & Signers page

Signers icon, icon background, count badge, Add Signer buttons, Add First Signer button, empty-state illustration tint, add-another hover, and the ALL_OF_TYPE s...

kamo·6mo ago
Featurekamo-internal

Auto-select first signer, fix zoom control scrollbar gap, animate properties panel

- Toolbox auto-selects the first signer's UID when signers go from 0→1 - Canvas container uses scrollbar-gutter: stable so the sticky zoom/undo control mainta...

kamo·6mo ago
Featurekamo-internal

Reorder tabs, gate field tools by signer, redesign Settings & Signers tab

- Design is now the first tab; Settings & Signers is second - Toolbox shows "Add Signer" CTA (navigates to Settings) when no signers exist - Signature Tools, Id...

kamo·6mo ago
Featurekamo-internal

Render field controls as actual-looking form elements with signer color tinting

Each field type now renders a visual representation of the real control (text input, checkbox, toggle, dropdown, radio group, date picker, etc.) tinted with the...

kamo·6mo ago
Fixkamo-internal

Remove fixed height and scroll bars from field properties panel

The panel had two vertical scrollbars: 1. DesignTab wrapper had height: 200 + overflowY: auto 2. FieldPropertiesPanel root had height: 200 + overflow: hidden, ...

kamo·6mo ago
Fixkamo-internal

Defer setTotalPages until after PDF dim loop to prevent PDF.js worker saturation

On a 50-page PDF, calling setTotalPages before the getPage() dimension loop mounts all 50 ThumbnailCanvas components immediately. Each falls back to PDF.js (ser...

kamo·6mo ago
Refactorkamo-internal

Migrate all imaging API routes from SecurityService to ConversionService/DocsService

Upload routes now call ConversionService directly via CONVERSION_SERVICE_URL: - POST /api/imaging/upload → /api/conversion/imaging/upload - POST /api/imaging/te...

kamo·6mo ago
Fixkamo-internal

Prevent page stacking, fix thumbnail slivers, add server-side thumbnails with PDF.js fallback

- Add flexShrink: 0 to page divs in PdfCanvas so pages don't compress in flex column - Add flexShrink: 0 to thumbnail items in PageThumbnailSidebar for same rea...

kamo·6mo ago
Fixkamo-internal

Eager PDF rendering, natural scale normalisation, no horizontal scroll

- PdfCanvas: replace IntersectionObserver with eager render-all-pages. The observer-based approach was unreliable when the design tab starts with display:no...

kamo·6mo ago
Fixkamo-internal

Eliminate removeChild DOM conflict in PDF thumbnail rendering

Replace container.innerHTML + appendChild pattern in ThumbnailCanvas with a React-managed <canvas> ref. The old approach cleared React-owned DOM nodes directly,...

kamo·6mo ago
Fixkamo-internal

Revert proxy routes to OTK auth, remove unused esigProxy helper

OTK is the correct auth mechanism — the prior session-header approach bypassed the established security pattern. All esig proxy routes now use generateOTK from ...

kamo·6mo ago
Fixkamo-internal

Use direct session headers instead of OTK for ESigService proxy routes

Read *** session from Redis in Next.js and pass orgId/memberId as trusted headers to ESigService via internal K8s DNS. Removes OTK dependency.

kamo·6mo ago

Je, unaona nini kuhusu usafiri?

Kila kitu kinaingia kwenye tovuti yako mwenyewe. Anza kwenye mpango wa bure na usome ukurasa huu tena katika mwezi mmoja.

Kuwa Huru MileleMtazamo wa bei