UNPKG

@sixbell-telco/sdk

Version:

A collection of reusable components designed for use in Sixbell Telco Angular projects

539 lines (439 loc) 46.3 kB
# SDK Changelog All notable changes to the Sixbell Telco SDK component library and services will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] ## [2.0.1] - 2026-02-10 ### Fixed - CI: add rules for CI jobs to trigger on tag commits ## [2.0.0] - 2026-02-10 ### Added - **Services - Theme**: Added manifest-based runtime theme loading with catalog entries - **Services - Translation**: Added runtime-config enforcement with required meta hash metadata - **Services - Runtime Config**: Added schema version invalidation and cache validation on boot - **Tests - Runtime Config**: Added coverage for hash-based update events and required theme payloads - **Tests - Theme Assets**: Added per-theme asset config coverage for shared asset schema - **Services - Theme**: Added runtime update payload validation to require theme names for theme refresh events - **Services - Translation**: Added admin runtime support for translation updates with config hash bumping - **Docs - Theme**: Added runtime testing guide for theme updates and admin playground usage - **Docs - Theme**: Added comprehensive runtime theme documentation with manifest/theme schema, flow diagrams, and setup examples - **Docs - Translation**: Added runtime translation documentation with config schema, loader flow, and usage examples - **Docs - Runtime Config**: Added runtime-config documentation with schema-versioning, loader flow, and update adapter usage - **Services - Runtime Config**: Added runtime-config utilities with Dexie-backed store and HTTP client - **Dependencies**: Added Dexie for runtime config persistence - **Tests - Components**: Add comprehensive unit tests for AccordionComponent and AccordionItemComponent, covering functionality and rendering - **Tests - Components**: Add extensive unit tests for AvatarComponent and BadgeComponent functionality and rendering - **Tests - Components**: Add extensive unit tests for ButtonComponent covering signal inputs and rendering behavior - **Tests - Components**: Add comprehensive unit tests for CardComponent, CardTitleComponent, CardContentComponent, and CardActionsComponent - **Tests - Components**: Add comprehensive unit tests for CountdownComponent covering creation, signal inputs, type variants, default values, visibility controls, and rendering - **Tests - Components**: Add comprehensive unit tests for DialogComponent and DialogTitleComponent covering creation, input signals, CSS class generation, and lifecycle management - **Tests - Components**: Add comprehensive unit tests for DialogSubTitleComponent, DialogContentComponent, and DialogActionsComponent covering creation, content projection, and styling - **Tests - Components**: Add unit tests for DropdownComponent, DropdownTriggerComponent, and DropdownSeparatorComponent covering export and standalone behavior - **Tests - Components**: Add unit tests for DropdownLabelComponent, DropdownItemComponent, DropdownGroupComponent, and DropdownContentComponent - **Tests - Components**: Add unit tests for DropdownItemCheckboxComponent, DropdownItemRadioComponent, and DropdownChevronComponent - **Tests - Components**: Add comprehensive unit tests for all DropdownMenuComponent variants (trigger, content, item, group, label, separator, sub-component, context, bar, chevron) - **Tests - Components**: Add unit tests for all DropdownMenuBar variants (component, content, trigger, sub-trigger, item, separator, label, bar item radio, bar item checkbox) - **Tests - Components**: Add comprehensive unit tests for FileUploaderComponent and DropzoneComponent covering initialization, file selection, and computed properties - **Tests - Components**: Add comprehensive unit tests for DualListComponent covering method existence, output signals, and selection handlers - **Tests - Components**: Add comprehensive unit tests for FormErrorsComponent covering initialization, input handling, custom messages, computed properties, and error display logic - **Tests - Components**: Add comprehensive unit tests for InputComponent, InputContentComponent, and CheckboxComponent - **Tests - Components**: Add comprehensive unit tests for RadioComponent, RangeComponent, SelectComponent, SwitchComponent, and TextareaComponent - **Tests - Components**: Add comprehensive unit tests for ComboboxComponent, DatepickerComponent covering rendering, input properties, and form integration - **Tests - Components**: Add comprehensive unit tests for TableComponent covering tableContent and tableContainer functions with size and height variants - **Tests - Components**: Add unit tests for TableActionsComponent, TableHeaderCheckboxComponent, and TableRowCheckboxComponent - **Tests - Components**: Add unit tests for DataTableContainerComponent and DataTableSubComponentToggleCellComponent covering component creation and signal inputs - **Tests - Components**: Add unit tests for DataTableSortableHeaderComponent and DataTableSelectionComponent covering creation, signal inputs, and rendering - **Tests - Components**: Add comprehensive unit tests for DataTableSubToggleCellComponent, DataTableContextService, and DataTableSize handling - **Tests - Components**: Add unit tests for PaginationItemComponent and PaginatorComponent covering creation, default state, signal inputs, and page navigation - **Tests - Components**: Add comprehensive unit tests for PaginationPipe covering basic pagination, edge cases, type safety, and practical use cases - **Tests - Components**: Add unit tests for TabComponent, TabHeaderDirective, and TabContentDirective covering variants, sizes, and state management - **Tests - Components**: Add unit tests for TabHeaderDirective and TabContentDirective for definition and class type verification - **Tests - Components**: Add comprehensive unit tests for TooltipComponent and TooltipContentComponent covering creation, styling, and accessibility - **Tests - Components**: Add comprehensive unit tests for NotificationComponent covering creation, input signals, CSS class generation, and CVA integration - **Tests - Components**: Add comprehensive unit tests for LinkComponent covering creation, input signals, computed properties, and router integration - **Tests - Components**: Add comprehensive unit tests for IconComponent covering creation, required inputs, color and size handling, and CSS class generation - **Tests - Components**: Add comprehensive unit tests for ProgressComponent covering creation, input signals, CSS class generation, and CVA integration - **Tests - Components**: Add comprehensive unit tests for SonnerToasterComponent and SonnerComponent covering component creation, input signals, and edge cases - **Tests - Components**: Add comprehensive unit tests for OverlayComponent, OverlayTriggerComponent, and OverlayContentComponent covering component behavior and event emissions - **Tests - Components**: Add unit tests for ProductCardComponent, ProductCardHeaderDirective, ProductCardContentDirective, and ProductCardActionsDirective - **Tests - Components**: Add comprehensive unit tests for ToastServiceComponent, ToastMessageComponent, and ToastsContainerComponent covering toast lifecycle - **Tests - Directives**: Add comprehensive unit tests for AutofocusDirective, ClickOutsideDirective, OnlyNumbersDirective, and TypographyDirective - **Tests - Services**: Add comprehensive unit tests for WizardService covering initialization, step management, navigation, and computed properties - **Tests - Services**: Add comprehensive unit tests for LoggerService and LoggerProvider covering configuration handling and logging behavior - **Tests - Utils**: Add comprehensive unit tests for SyncUtils covering nextTick, nextFrame, waitForElement, waitForCondition, debounce, and throttle - **Tests - Utils**: Add comprehensive unit tests for cn utility function covering class merging, conditional classes, and Tailwind class merging - **Tests - Pipes**: Add comprehensive unit tests for ToBytesPipe, TimePipe, ExtractExtensionPipe, and PaginationPipe - **Tests - Utils**: Add comprehensive unit tests for DateUtils covering date formatting, parsing, and validation - **Tests - Components**: Add unit tests for AudioPlayerService, AudioPlayerComponent, TrackInfoComponent, VolumeControlComponent, ButtonPlayComponent, and AudioTimelineComponent - **Tests - Components**: Add unit tests for WizardComponent variants including StorybookWizardHostComponent, WizardContentComponent, WizardSubStepComponent, WizardStepComponent, WizardMarkerComponent, WizardActionsComponent, and WizardWrapperComponent - **Tests - API Service**: Enhance HttpClient testing patterns and error handling in MyApiService tests - **Tests - Configuration**: Add comprehensive mock for cally web component library in Jest setup for improved component testing - **Tests - Configuration**: Update Jest and SonarQube configuration for improved test coverage reporting and clarity ### Changed - **Services - Theme**: Updated runtime update flow for catalog-based themes and shared assets - **Services - Theme**: Removed unused meta name from runtime theme manifest - **Services - Translation**: Updated runtime translation loading for ngx-translate v17 and default language config - **Services - Runtime Config**: Updated runtime update event typing to require resource identifiers - **Dependencies**: Updated ngx-translate packages, multi-http-loader, and rxjs versions - **Dependencies**: Pinned cors and express versions to resolve runtime compatibility - **Services - Theme**: Updated runtime update deduplication to track events by URL and hash - **CI**: Ensured optional native dependencies install in pipeline builds for Tailwind LightningCSS - **Services - Theme**: Simplified runtime theme schema to light/dark variants with shared assets and catalog-based files - **Services - Translation**: Required runtime config metadata (hash and schemaVersion) for runtime loading - **Services - Runtime Config**: Enforced meta.hash requirement and fallback handling for missing hashes - **Docs - Theme**: Updated runtime theme guide for catalog paths and schema v3 structure - **Docs - Translation**: Updated runtime translation guide to document required meta hash and schemaVersion - **Docs - Runtime Config**: Updated runtime config guide to document required hash metadata and theme update payloads - **Services - Runtime Config**: Added schema-versioned cache keys and schema mismatch invalidation to prevent stale configs - **Services - Theme**: Exposed schema version constant and documented Tailwind token registration for new variables - **Services - Translation**: Exposed schema version constant and documented runtime loader usage - **Services - Theme**: Updated runtime provider and scheme restoration behavior for invalid saved themes - **Services - Translation**: Switched runtime translation loading to the runtime-config HTTP client with fallback defaults - **Directives - AutoFocus**: Marked AutofocusDirective as standalone and updated tests to cover signal input binding - **Tests**: Updated mocks and reduced noisy console output across component and utility specs - **Package.json**: Add clean script to remove dist directory before starting the application - **Package.json**: Update start script and add chokidar-cli dependency for improved file watching - **Components - Textarea**: Enhance code readability and stability by using readonly modifiers and improving error handling in debounce logic - **Components - Select**: Optimize active class removal logic for better performance and convert NodeList to Array - **Components - Countdown**: Mark countdownDateOnMilliseconds as readonly for clarity - **Components - Tab**: Mark element, renderer properties as readonly for better immutability - **Components - Link**: Remove unused Router dependency from LinkComponent - **Components - Data Table**: Refactor size value handling to use DataTableSize type for improved type safety - **Directives - Only Numbers**: Update exports and deprecation notices for clarity and backward compatibility - **Directives - Input**: Update input directives for numeric restriction and improve backward compatibility - **Directives - AutoFocus**: Optimize visibility handling and cleanup logic - **Services - Sync**: Update debounce method to use globalThis for setTimeout consistency - **Pipes - ToBytes**: Ensure non-negative decimals in formatBytes method for consistent byte formatting - **Utils - DateUtils**: Improve null safety in inferTimeFormat method - **Components - File Uploader**: Enhance type safety by refining type assertions in tests and mark internal properties as readonly - **Components - Dropzone**: Update type assertions for better type safety and refactor signals and validation logic - **Components - Audio Player**: Update handleTogglePlay logic for improved track handling - **Components - Audio Timeline**: Correct type for timeline viewChild to HTMLElement - **Components - Wizard**: Mark wizardService as readonly for better code clarity - **Tests - CI**: Comment out OWASP job configuration for future improvements ### Fixed - **Runtime Updates**: Avoided initial false positives and honored hash-based update events for themes and translations - **Translation Service**: Guarded undefined runtime event languages and injection-context initialization - **Theme Assets**: Updated theme asset paths to absolute URLs and reset hashes - **Services - Theme**: Replaced injected theme style blocks to ensure all variables update on refresh - **Overlay Trigger**: Added keyboard activation and button semantics for accessibility - **Dropdown Menu**: Removed debug logging from menu content component - **Tests - Configuration**: Setup Jest to suppress CSS parsing warnings from jsdom and Tailwind CSS v4 to reduce test output clutter - **Components - Badge**: Update variable initialization to use local functions - **Components - Avatar**: Correct order of operations for initials extraction - **Tests - Radio**: Update RadioComponent test fixture type for improved type safety - **Docs - Test Agent**: Update instruction file description for clarity and enhance description with improved clarity in testing instructions ## [1.6.0] - 2025-11-11 ### Added - **Dropdown Dynamic View**: Add event handling for dynamic dropdown opening to reset view for smoother animations (`fcd2942`) - **Dropdown Animation States**: Add comprehensive animation state management with proper opening/closing animations and event handling (`745b767`) - **Dropdown Animations & Events**: Implement new features for state tracking and programmatic control with enhanced event handling (`00e0052`, `21589dc`) - **Dropdown closeOnSelect**: Add new closeOnSelect functionality to dropdown items with animated morphing transitions (`00e0052`) ### Changed - **Dropdown Model Signal**: Migrate dropdown to Angular 19 signals API with model signal for programmatic control via `[(open)]="signal"` binding (`3d90015`) - **Dropdown Animation Handling**: Enhance open/close methods with proper animation state transitions and event emissions (`ee13e58`) - **Dropdown Control Flow**: Simplify conditional logic in position calculations and toggle method using early returns (`fc045e6`) - **Select Component Animations**: Implement dynamic animation classes based on overlay position changes for directional animations (`323fb53`) - **Combobox Component Animations**: Enhance animation handling with dynamic class mapping based on overlay position (`fb9e184`) ### Fixed - **Dropdown Service Removal**: Remove DropdownService dependency and update components to use signals for state management (`3d90015`) - **Dropdown Close Behavior**: Enhance close behavior with proper animation state handling and ESC key support (`d1fd97c`) - **Dropdown Default closeOnSelect**: Set default value of closeOnSelect to false for dropdown items (`896fbcd`) ### Refactored - **Dropdown Component**: Remove overlay detach handler and related logging for cleaner, production-ready code (`a8e45d6`) ## [1.5.0] - 2025-11-04 ### Added - **Logger Service**: Add comprehensive logging utility with theme-aware styling, IndexedDB persistence, and configuration options (`ee55092`, `9011968`, `3e9b8d6`, `51c6459`, `8b6362a`, `40803ab`, `12f0865`) - **Runtime Theme Provider**: Enhance with runtime configuration loading, auto-derivation of available themes, and improved asset management (`dfb9b65`, `38e964b`, `a4b9266`, `dc591ee`, `d6b68dc`, `20e76b7`) - **Runtime Translation Provider**: Enhance with improved runtime initialization, IndexedDB support, and language preference persistence (`014df6f`, `51c6459`, `29eb934`) - **Theme Constants**: Add constants for theme loader defaults, asset types, and improved configuration handling (`a2d693d`, `250b5fb`) - **Translation Constants**: Add constants for IndexedDB integration and enforce immutability across configuration (`51c6459`, `014df6f`) - **Theme i18n Structure**: Add new theme localization files for better organization and remove redundant theme/language sections from existing JSON files (`e26f2fa`) - **Data Table i18n**: Add 'perPage' entry to dataTable translations in English, Spanish, and Portuguese (`fc2f7fb`, `daa220b`, `f29ccb9`, `5d9a1f9`, `b68ec31`) - **i18n Structure**: Restructure translation files with theme localization support and multi-path loading (`221a3da`, `c3b6412`) - **Themes Configuration**: Add themes.json for comprehensive font and theme configuration with multi-variant support (`60edde2`) - **Theme Assets**: Add themed logo assets for 'sixbell_telco' theme in themes.json (`a58b4ae`) - **Testing Infrastructure**: Add comprehensive Angular 19 testing patterns with Jest and ng-mocks (`7cd3f6a`) - **Git Configuration**: Update .gitignore with OS-generated files section and additional entries (`af3d26a`) ### Changed - **Theme Service**: Integrate LoggerService for enhanced logging in theme configuration methods (`3d11375`, `40803ab`, `12f0865`) - **Translation Service**: Enhance logging and replace console methods with logger service (`f7648d1`, `9582538`, `bfe2eee`) - **Translation Provider**: Replace console.error with logger.error for improved error logging (`f7648d1`) - **Sonner Toast**: Enable rich colors for Sonner toaster component for better visual feedback (`f1b67ab`) - **Language Change**: Prevent page reload on language change for better UX (`b28c3b3`, `1707d4e`) ### Fixed - **Theme Export**: Specify theme.provider export in public API and remove redundant index file (`12f0865`) - **Translation Formatting**: Correct formatting by adding line breaks for better readability (`8520b1d`) - **Theme Restoration**: Restore freshOnNavigation default behavior for hot-reloading on navigation (`1e35dce`) - **Theme Constants**: Correct formatting and improve documentation (`91a79f9`, `6c3c33d`) ## [1.4.0] - 2025-09-23 ### Added - **Sonner Toast System**: Integrated ngx-sonner for modern toast notifications, including toaster component, custom toast component (`6cfa165`, `4183642`, `0a6a564`) - **Date Picker – New Component**: Implement a new date picker component with single and range selection modes as the foundation for time picker enhancements (`5dcd454`) - **Date Picker – Time Picker**: Add time selection for single and range modes with optional seconds and 12h/24h display formats, including quick range options (`c35fdd2`, `b8186b8`, `f9a9eed`) - **Date Picker – Quick Actions/i18n**: Add quick action labels for last hour and range selections, and time selection labels for English, Spanish, and Portuguese (`37609dc`, `15dc5da`, `2234a19`) - **Date Picker – Events**: Expose range selection change handling outputs for better integration (`ba55f10`) - **Date Picker – Typed API**: Introduce constants and types for modes, calendars, time formats, and date styles; use typed signals for date range and time handling; consolidate and document time string types (`4cfdd66`, `d7626c6`, `7832408`, `f6038a4`) - **Dependencies**: Added ngx-sonner as a dependency for enhanced toast functionality (`6cfa165`) ### Changed - **Shadow Variables**: Updated shadow variables for better consistency and clarified legacy toast system in CSS (`e2761cd`) - **Toast CSS**: Updated toast.css to clarify deprecation and migration path to ngx-sonner (`cf6889b`) - **Date Picker – Range Logic**: Improve range selection logic to avoid overriding developer/user-defined times; set default start/end times only when times are empty for different-day ranges (`77901e1`, `ced219d`) - **Date Picker – Time Handling**: Initialize time picker signals with empty values for flexibility and improve time input handling UX (`8d02b36`, `3eee460`) - **Date Picker – i18n/Locale**: Remove hardcoded language from components and demonstrate automatic language→calendar locale mapping (`8963f2b`, `6674c08`) - **Date Picker – Codebase**: Refactor component/code structure for readability and to rely on typed constants; enhance documentation with remarks and examples (`32f6b37`, `d7626c6`, `2fefde6`) - **Styling**: Customize time input indicator style; update primary light color and add scrollbar auto-hide (`2c8d9db`, `09df058`) ### Fixed - **Self-Closing Tag**: Corrected self-closing tag for st-sonner-toaster in app.component.html (`f87fa2f`) - **Date Picker – Default Times**: Ensure default full-day times are applied correctly when finalizing same-day selections, while preserving developer-defined times on different-day ranges (`ced219d`, `77901e1`) ### Deprecated - **Toast Components**: Marked legacy toast components and services as deprecated, recommending migration to ngx-sonner (`2c566e5`) ## [1.3.0] - 2025-09-02 ### Added - **Data Table**: Initial Data Grid / Data Table implementation with expandable rows, sub-component toggle cells, selection (row & header checkboxes), sortable headers, pagination (client & server side), size variants (including xs), global search, and filtering (text, number range, multi-select) components and services (`06d72e3`, `1390d0e`, `90221bd`, `4b1ed33`, `09cee68`, `be0baf7`, `b3dd548`, `172b942`, `692732a`, `0c6c188`, `c313710`, `661fefe`, `d7185a0`, `1f7f155`, `216218d`, `1f712fd`, `fd69de5`, `daa7337`, `7d7f05c`, `7c8b865`, `a025209`, `1047f92`, `0ab27b5`, `841a52a`) - **Data Table Context**: Added `DataTableContextService` for shared size synchronization and selection state management (`b5ab841`, `7d7f05c`) - **Data Table No Data / No Results**: Added states, services, and related translations for empty and no-result scenarios (`208b1ac`, `1047f92`, `a025209`, `7c8b865`) - **Pagination**: Added ellipsis variant to pagination items and enhanced `PaginationPipe` with additional overloads (`dc42c3a`, `f8eaaa7`) - **Overlay**: Introduced overlay component with trigger/content, programmatic control examples, width synchronization (`b820d2d`, `14b81b4`, `1e3652e`, `fb40a82`, `5baa1b5`, `6f8fc4e`, `f70ed62`, `10b6212`) - **Date Picker**: Added Cally-based overlay implementation, standalone date & range pickers, supported locales & language examples, quick actions, button triggers, effective min/max navigation, unified value type, range handling safeguards, and localization/translation support (`be99176`, `08aac53`, `b820d2d`, `d8ee30e`, `0cca090`, `96773f9`, `b39d934`, `5101d20`, `5166ac7`, `2bb1a33`, `46a1ba9`, `1a7d178`, `3c67069`, `6b08cad`, `1a7b5f4`, `8fad982`, `1d6b859`, `b94503e`, `8fbecef`, `b99fd0b`, `2c56fad`) - **Date Utilities**: Added date utilities module & sync utilities for DOM / async coordination (`eb5773c`, `3140d40`) - **Sync Utilities**: Added utilities for reliable DOM synchronization & timing control (`3140d40`) - **Filtering Components**: Added multi-select combobox filter with search & pagination for options (`bde8eeb`, `22c9977`, `ff01da1`, `af8724f`) - **File Validation**: Added file extension validator (`bf6eccf`) - **Typography**: Added `TypographyDirective` imports to multiple components (dual-list, table, toast, tooltip, date-picker) (`c116c8b`, `75a6923`, `aab1c95`, `d8f68f3`, `6702a40`) - **Tooling / Config**: Added path mappings for core/features/shared, Angular schematics default options, VSCode settings updates (`0a04891`, `71a6e86`, `70180c5`) - **Dependencies**: Added `cally` and `@tanstack/angular-table` dependencies; exported `@tanstack/angular-table` in public API (`aa709e0`, `aa709e0`, `e2dc99a`, `21295e0`) - **Color System**: Added primary light color variable and standardized custom color tokens (`4412e45`, `93e9749`) ### Changed - **Renaming**: Renamed Data Grid to Data Table throughout codebase & showcase for consistency (`29beed0`, `216218d`) - **Data Table Refactors**: Multiple structural & styling refactors for responsiveness, pagination handling, use of new SDK components, improved hover visibility, icon replacement with ng-icons, and import path normalization (`e45425f`, `cf9336e`, `1f712fd`, `f18c045`, `9ba1b86`, `d9bc767`, `3ba26da`, `841a52a`) - **Filtering Logic**: Updated filter handling to support multi-select for first & last name (`d3a9a9f`) - **Overlay**: Enhanced overlay component with width synchronization, simplified programmatic control examples, and removal of external signal requirement (`f70ed62`, `6f8fc4e`, `fb40a82`, `6f8fc4e`, `5baa1b5`) - **Date Picker Evolution**: Iterative refactors switching between Cally overlay approaches, restructuring navigation, improved range handling & icon support, translation & quick action format adjustments (`d8ee30e`, `0cca090`, `96773f9`, `b39d934`, `5101d20`, `46a1ba9`, `1a7d178`, `3c67069`, `6b08cad`, `1a7b5f4`, `b94503e`, `8fbecef`, `b99fd0b`, `2c56fad`) - **State Management**: Converted `BehaviorSubject` to signal for query parameters; exposed query params as observable for consumers (`1f7f155`, `d7185a0`) - **Pagination**: Updated paginator to use total pages computation and responsive logic (`a802aa3`, `e6f12f2`) - **Event API**: Standardized output event name from `checkedChange` to `checkedChanged` across dropdown, radio, checkbox, and related components (several commits: `f94cb13`, `320398b`, `a877850`, `8406745`, `5faf768`, `6863f5d`, `62c8014`) - **Color Tokens**: Refactored / standardized color tokens for consistency (`38c92b4`, `b409aa3`) - **Styling**: Updated row hover backgrounds and enhanced styling consistency across Data Table & DatePicker overlays (`6f0a342`, `9ba1b86`, `6bd3748`) - **Translations**: Added / adjusted no data & no results messages; updated table entry messages; updated theme/table translation keys (`a025209`, `7c8b865`, `9b02af4`, `9b50aec`, `c51bf9f`, `9dc6fe9`) - **Tooling**: Updated Tailwind CSS settings to use `classFunctions` and removed deprecated `classAttributes` (`106e037`) - **Imports & Paths**: Added / updated TS path mappings and refactored components usage away from hardcoded implementations (`0a04891`, `f5cd88b`, `ec84d89`) ### Fixed - **Table Classes**: Replaced `cx` with `cn` in `tableComponent` for proper class merging (`3ba26da`) - **Accessibility**: Added scope attributes to table headers (`e454e5f`) - **Selectors**: Corrected component selectors for data table header & row selection (`100278b`) - **Translations**: Updated translation keys for table & data table entries (range & per-page text) and header labels (`9b02af4`, `9b50aec`, `62456b8`, `e5a3a56`) - **Pagination**: Improved pagination handling & labels; replaced `NgxPaginationModule` with `PaginationPipe` across components & stories (audio player, dual list) (`e5a3a56`, `0131e0e`, `251d657`, `5239196`, `a9ba640`, `701bb49`) - **Dependency Cleanup**: Removed `ngx-pagination` dependency from package and imports (`88d839d`, `701bb49`) - **Overlay / Date Picker**: Updated `datePickerOverlay` reference to use `viewChild` decorator (`8fad982`) - **Theme**: Removed quotes from color-scheme values in DaisyUI theme (`0516d9d`) - **Styling**: Updated DaisyUI plugin configuration & improved scrollbar styling (`251cc81`) - **Dropdown / Selection Events**: Corrected output event name typos for checkbox & radio components ensuring consistent API (`62c8014`, `6863f5d`) - **Form Error**: Corrected `formControl` method usage in template (`5b6ca02`) - **Input**: Adjusted input component classes for improved styling (`3eae235`) ### Removed - **Services - Resource Loader**: Removed legacy resource-loader module after runtime-config migration - **Data Table**: Removed unused `ng-content` slots for controls, filters, and pagination (`df73f01`) - **Pagination Dependency**: Removed `ngx-pagination` dependency after migrating to internal `PaginationPipe` (`88d839d`) - **Time Pipe**: Removed unused time pipe alongside new file extension validator addition (`bf6eccf`) ## [1.2.1] - 2025-08-22 ### Added - **Dialog**: Add dialog injection toggle functionality with switch-case handling (28e04f5) - **Dialog**: Add basic declarative dialog with subtitle support (ae4b245) - **Dialog**: Implement dynamic class assignment for dialog title when subtitle is present (56b0a59) ### Changed - **Dialog**: Adjust margin spacing for dialog title and subtitle components for improved layout (0d499af) - **Dialog**: Replace `alignment` input with `xPosition` and `yPosition` for precise positioning (dec8614) - **Dialog**: Use paragraph element for dialog subtitle for improved semantics (3d68d28) - **App**: Remove unused `DialogModule` import from app configuration (8226140) - **Translation**: Simplify public API exports and update export paths for translation module (292cd92, 905893a) - **SDK Build**: Update builder path to use `@angular-devkit` (cdc011d) ### Fixed - **Dialog**: Improve subscription management and ensure cleanup on destroy to prevent memory leaks (884f89f, 0489ed3) - **Dialog**: Fix import paths and handling for dialog title and subtitle components (cb1a66f, e27596f, f6364be) - **Dialog**: Adjust margin for dialog subtitle component (66fec71) - **Dialog**: Remove unnecessary `alignment` attribute usage from `st-dialog` components (68be5db) - **Dropdown Menu**: Fix import paths for dropdown menu components and icons (3082a35) ## [1.2.0] - 2025-08-13 ### Added - **Dialog Component**: Implement comprehensive dialog component system with CDK Dialog integration, dynamic positioning, customizable animations, and enhanced styling options - **Dialog Component**: Add DialogConfig support with data-driven animations and improved dialog close handling - **Dialog Component**: Add positioning controls with x/y axis support and shadow style enhancements - **Dialog Component**: Integrate CDK Overlay service for improved dialog positioning and animation timing - **Animation**: Add enter and exit keyframes for improved component animations - **Watermark**: Add Sixbell watermark SVG logo to project assets - **Translation**: Add self-contained translation provider with multi-path support and automatic ngx-translate setup - **Translation**: Implement provideTranslation function for configurable translation service initialization - **Translation**: Add method to get localized language name by code - **Translation**: Enhance TranslationService configuration with additional and excluded languages support - **Translation**: Add SDK language files for English, Spanish, and Portuguese with theme and UI translations - **Theme**: Add light and dark theme configurations with custom color variables - **Theme**: Add built-in isDarkTheme signal for simplified theme detection - **Theme**: Add resolvedScheme for accurate light/dark detection and enhance theme rendering - **Theme**: Add initialization method for MFE environments and enhance provideTheme overloads - **Theme**: Add support for availableThemes in ThemeService configuration - **Theme**: Add methods for localized theme and scheme names using translations - **Styles**: Add backdrop color and shadow properties, and define Poppins font for theme - **AI Documentation**: Add AI coding agent instructions for Sixbell Telco SDK ### Changed - **App Config**: Integrate CDK Dialog module and enhance language configuration - **Translation**: Enhance translation service with improved configuration and testing - **Translation**: Replace ThemeService with provideTheme for automatic initialization - **Theme**: Update ThemeService to support additional themes and improve configuration options - **Theme**: Update default theme to 'sixbell_telco' and adjust related configurations - **Theme**: Update theme names to 'sixbell_telco_light' and 'sixbell_telco_dark' for consistency - **Theme**: Change default scheme from 'dark' to 'system' for improved user experience - **Theme**: Update default scheme to 'system' and enhance initialization logic - **i18n**: Update theme name from 'vivid_elegance' to 'sixbell_telco' in localization files - **i18n**: Add 'sixbell_telco' theme to English, Spanish, and Portuguese translations - **i18n**: Rename language display methods for consistency and localization - **Documentation**: Update README with enhanced directory structure, service configurations, and usage examples - **Documentation**: Clean up README formatting and remove unnecessary lines - **Documentation**: Update SDK description and add services section ### Fixed - **Dialog**: Remove unused dialog service export from public API - **Toast**: Update z-index for toast container to improve visibility - **Combobox**: Handle pristine and untouched state in component class determination - **Main**: Correct import order and formatting in main.ts - **Documentation**: Update README formatting and structure improvements ### Removed - **Modal Component**: Remove modal component and related files for cleanup as part of migration to dialog system - **i18n**: Remove unused UI section from English localization - **Theme**: Remove outdated manual implementation examples for isDarkTheme signal ## [1.1.0] - 2025-08-08 ### Added - **Dropdown Menu**: Add comprehensive dropdown menu component system with trigger, content, separator, group, checkbox, and radio components for enhanced menu functionality - **Dropdown Menu**: Add dropdown menu service for managing menu state and closing nested menus - **Dropdown Menu**: Add context menu trigger and bar components for horizontal menu functionality - **Theme Service**: Add theme service for managing themes and schemes with data-theme attribute support - **Translation Service**: Add translation service with language management and localization features for English, Spanish, and Portuguese - **Dropdown**: Add standalone dropdown component with improved trigger and content coordination using CDK overlay positioning - **Dropdown Chevron**: Add DropdownChevron component with size and color inputs for improved dropdown navigation (`405bcfd`) - **Dropdown Menu Chevron**: Add DropdownMenuChevron component with size and color support and state management service (`1ecf46a`, `6da96fb`) - **Avatar Component**: Enhance with DaisyUI patterns and presence indicators for improved user representation (`55b8cc3`) - **Theme Colors**: Add custom color base-50 and new gradients for improved theming capabilities (`fbea5c6`, `14b174a`) ### Changed - **Dropdown Components**: Refactor dropdown items to use radio components for better selection handling and improved component structure - **Dropdown Events**: Migrate from deprecated `onEvent` pattern to modern Angular signal-based event patterns (`selected`, `opened`, `closed`) following Angular conventions - **Dropdown Menu**: Restructure dropdown menu components and enhance functionality with improved icons and context menu support - **Button Component**: Add 'base' variant to button style variants for enhanced dropdown integration - **Code Structure**: Refactor code structure for improved readability and maintainability across dropdown components - **Dropdown Trigger**: Update dropdown trigger button styles and adjust chevron size for better visual consistency (`868f532`) - **Dropdown Menu**: Enhance dropdown menu with avatar support and improved documentation (`42e0517`) - **Dropdown**: Add chevron support to dropdown and menu components (`116bb04`) - **Dropdown Menu**: Add shadow option to dropdown menu components for enhanced visual depth (`63ac073`) - **Dropdown Trigger**: Update dropdown trigger bindings to use new syntax (`4110978`) ### Fixed - **Dropdown Content**: Update minimum width class for dropdown content to improve layout consistency - **Dropdown Trigger**: Change button to div for better accessibility and semantics in dropdown triggers - **Dropdown Menu**: Remove unnecessary absolute positioning classes and unused menu position inputs for cleaner implementation - **Dropdown Menu**: Remove unused DropdownMenuStackService for code cleanup (`27cac5b`) ### Removed - **Dropdown Menu**: Remove unused DropdownMenuShortcut component and export to streamline dropdown menu structure - **Menu Dropdown**: Remove redundant dropdown menu components and related services to avoid duplication ## [1.0.3] - 2025-07-23 ### Added - **Theme**: Enhance theme management by updating backgrounds based on effective theme preference (`b3b5457`) - **Testing**: Add Jest configuration and setup for Angular testing environment (`0a68a13`) - **Testing**: Add jest-sonar-reporter, jest-html-reporters, and jest-junit to dependencies (`ec062bf`) - **Testing**: Add CI test script for Jest coverage collection (`2a2748c`) - **Table**: Add allowClear property to paginator select component (`d010f64`) - **Components**: All 25+ reusable UI components with variants, sizes, and accessibility features - **Directives**: Click-outside, auto-focus, only-numbers, typography directives - **Utilities**: UUID generation, date utilities, sync utilities, pipes (extract-extension, time) ### Changed - **TypeScript Config**: Streamline and update exclude/include paths for improved type checking (`d06b710`, `71aa1c0`, `7a1a60c`, `2d6b416`) - **Theme**: Reorganize imports and improve theme application logic (`03ef08c`) - **Product Card**: Update directives to use 'st' prefix and define User interface (`b1d2dea`) - **Product Card**: Enhance product card stories with new actions and image support (`fa18960`) - **ESLint**: Simplify commands and update configuration for TypeScript and Angular rules (`60dbed0`, `b6f1b25`) - **Directives**: Update selectors from 'app' to 'st' prefix for consistency (`eff8030`) - **Assets**: Remove unused asset files from stories (`d5d8311`) - **Dropdown**: Update label rendering logic for clarity and remove unused link style (`ebcf301`) - **Dropdown Stories**: Remove link style and associated stories for cleaner dropdown component (`696df1f`) - **Dropdown Stories**: Change min story's min-height (`20323bb`) - **Toggle Stories**: Reorganize imports and streamline story args for better readability (`3633eac`) - **Notification**: Update badge styles for consistency and improve button shape variants (`f707e1c`) - **Notification Stories**: Update shape option to 'rounded' and improve code formatting for clarity (`290c6b1`) - **Prettier**: Add \*.mdx to .prettierignore (`7905b65`) ### Fixed - **TimePipe**: Correct test suite name and ensure pipe creation and transformation are validated (`27def6b`) - **AvatarComponent**: Simplify tests by removing unused code and redundant assertions (`dd9b895`) ### Removed - **Storybook**: Remove periodic check for story changes to reduce noise (`41580fe`) - **Storybook**: Remove custom theme handling component (`15b60d2`) ## [1.0.2] - 2025-07-18 ### Added - **Package**: Add missing keywords to package.json and update `@angular/cdk` version constraint (`8316dc6`) ### Changed - **TailwindCSS**: Remove redundant class attribute from settings (`87fffeb`) - **Dependencies**: Update peerDependencies for compatibility with Angular and Tailwind CSS (`3c871f5`) - **Theme**: Enable default and prefersdark settings for vivid_elegance_light theme (`efb2ca0`) ## [1.0.1] - 2025-07-17 ### Added - **Combobox Component**: Add output events for focus and selection changes (`9de9bf4`) - **Combobox Component**: Add event handlers for combobox value changes and blur events (`2ce3e42`) - **Combobox Component**: Add search query emission and update stories to reflect new event (`aa3c531`) - **Combobox Component**: Add search query handling for combobox component (`18d23d0`) - **Combobox Component**: Enhance component with detailed documentation, improved search handling, and keyboard navigation support (`0c32079`) - **Combobox Component**: Add keyboard navigation and selection handling for listbox options (`d784e84`) - **Combobox Component**: Enhance functionality with simple and object options, and support for multiple selection (`a75da00`) - **Combobox Component**: Enhance reactive form integration with new parentForm and formControlName properties (`012f8b1`) - **Combobox Component**: Add clear selection button for single selection mode and update icon imports (`82e5d1f`) - **Combobox Component**: Replace SVG check icon with custom icon component and enhance display value retrieval logic (`cdfd0b9`) - **Combobox Component**: Add disabled state to combobox component (`c5d99d7`) - **Combobox Component**: Refactor markup and improve accessibility with fieldset and legend elements (`ea4c0eb`) - **Combobox Component**: Enhance search input with icon and improved styling (`4a0091a`) - **Combobox Component**: Implement debounced search functionality and improve search input handling (`ff55264`) - **Combobox Component**: Enhance functionality with search input, multi-selection support, and improved state management (`80ac8bf`) - **Combobox Component**: Add data state management and improve accessibility attributes (`0ce6546`) - **Combobox Component**: Enhance trigger button with dynamic width and aria attributes (`f9ab69a`) - **Combobox Component**: Implement overlay functionality and improve animation handling (`2a81f68`) - **Dependencies**: Add Angular CDK dependency to package.json and package-lock.json (`b7a4f29`) - **All 25+ Components**: Implement complete component library with variants, sizes, colors, and extensive documentation - **Form Components**: Input, textarea, select, checkbox, radio, range, switch, toggle, combobox with full validation - **Data Components**: Table with sorting/pagination, data-table with filtering, paginator, pagination - **Display Components**: Avatar, badge, button, card, icon, link, progress, tooltip, notification, product-card - **Layout Components**: Accordion, dropdown, dropdown-menu, modal, dialog, tab, wizard, overlay - **Media Components**: Audio player, file-uploader, file-dropzone, dual-list, countdown - **Directives**: Click-outside, auto-focus, only-numbers, typography for semantic HTML - **Utilities**: UUID, date utilities, sync utilities, extraction pipes - **Translations**: English, Spanish, Portuguese for all components and services ### Changed - **Table Component**: Enhance with comprehensive documentation and internal type definitions (`4384daad`) - **Typography Directive**: Enhance with detailed documentation and additional text overflow handling (`14f1df13`) - **Modal Component**: Add detailed documentation and type definitions for component properties (`68a3ac9`) - **Tooltip Component**: Add inline-flex and items-center classes for improved alignment - **Styling**: Comprehensive updates to component styling for consistency and accessibility - **Components**: Normalize props naming, refactor variants, update icons to ng-icons library - **Type System**: Refactor interfaces to types, consolidate type definitions, improve type consistency ### Fixed - **Component Selectors**: Corrected component selectors to use 'st' prefix throughout library (`627e41d`) - **Dependencies**: Removed @ngx-translate/core dependency from component tests (`695fe30`+ multiple commits) - **Link Component**: Fixed styling issues for button variants (`d56cdf4`) - **Form Errors**: Handle case where errors are null (`fdfbe1c`) - **Link Component**: Fixed positioning problems (`250f5ce`) - **Index HTML**: Update title and enhance favicon links for improved branding (`2d53321`) - **Dual List**: Removed icon variant from input components for consistency (`f101c7c`), Enhanced row hover effect (`519b35b`) - **Table**: Removed hover effect from table body rows for cleaner design (`433a0fc`) - **Tailwind**: Updated error/warning color values for better contrast (`bfc326b`, `89c8d4f`) - **Select/Combobox**: Update ViewChild references to use viewChild decorator (`96e9e12`, `e3e1061`) - **Multiple Components**: Fixed styling, accessibility, and functionality issues across all components ### Removed - **Modal Component**: Remove modal component and related files (migration to dialog system) - **ngx-pagination**: Removed dependency after migrating to internal PaginationPipe - **Unused Exports**: Removed unused components and exports from public API [Unreleased]: https://gitlab.com/sixbell/componentes/web/libs/ui-kit/compare/2.0.1...HEAD [2.0.1]: https://gitlab.com/sixbell/componentes/web/libs/ui-kit/compare/2.0.0...2.0.1 [2.0.0]: https://gitlab.com/sixbell/componentes/web/libs/ui-kit/compare/1.6.0...2.0.0 [1.6.0]: https://gitlab.com/sixbell/componentes/web/libs/ui-kit/compare/1.5.0...1.6.0 [1.5.0]: https://gitlab.com/sixbell/componentes/web/libs/ui-kit/compare/1.4.0...1.5.0 [1.4.0]: https://gitlab.com/sixbell/componentes/web/libs/ui-kit/compare/1.3.0...1.4.0 [1.3.0]: https://gitlab.com/sixbell/componentes/web/libs/ui-kit/compare/1.2.1...1.3.0 [1.2.1]: https://gitlab.com/sixbell/componentes/web/libs/ui-kit/compare/1.2.0...1.2.1 [1.2.0]: https://gitlab.com/sixbell/componentes/web/libs/ui-kit/compare/1.1.0...1.2.0 [1.1.0]: https://gitlab.com/sixbell/componentes/web/libs/ui-kit/compare/1.0.3...1.1.0 [1.0.3]: https://gitlab.com/sixbell/componentes/web/libs/ui-kit/compare/1.0.2...1.0.3 [1.0.2]: https://gitlab.com/sixbell/componentes/web/libs/ui-kit/compare/1.0.1...1.0.2 [1.0.1]: https://gitlab.com/sixbell/componentes/web/libs/ui-kit/compare/1.0.0...1.0.1 [1.0.0]: https://gitlab.com/sixbell/componentes/web/libs/ui-kit/releases/tag/1.0.0