codexly-ui 0.0.94 → 0.0.96
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/assets/styles/_theme.css
CHANGED
|
@@ -79,6 +79,8 @@
|
|
|
79
79
|
--color-clx-text-muted: var(--clx-text-muted);
|
|
80
80
|
--color-clx-text-subtle: var(--clx-text-subtle);
|
|
81
81
|
--color-clx-text-faint: var(--clx-text-faint);
|
|
82
|
-
--color-clx-border:
|
|
83
|
-
--color-clx-border-soft:
|
|
82
|
+
--color-clx-border: var(--clx-border);
|
|
83
|
+
--color-clx-border-soft: var(--clx-border-soft);
|
|
84
|
+
--color-clx-primary: var(--clx-primary);
|
|
85
|
+
--color-clx-primary-light: var(--clx-primary-light);
|
|
84
86
|
}
|
package/fesm2022/codexly-ui.mjs
CHANGED
|
@@ -140,6 +140,15 @@ const CLX_COLOR_HEX = {
|
|
|
140
140
|
neutral: '#737373', stone: '#78716c', white: '#ffffff',
|
|
141
141
|
slate100: '#f1f5f9', slate200: '#e2e8f0', slate300: '#cbd5e1', slate400: '#94a3b8',
|
|
142
142
|
};
|
|
143
|
+
// ── Hex values at shade-100 (for soft backgrounds) ────────────────────────────
|
|
144
|
+
const CLX_COLOR_HEX_100 = {
|
|
145
|
+
red: '#fee2e2', orange: '#ffedd5', amber: '#fef3c7', yellow: '#fef9c3',
|
|
146
|
+
lime: '#dcfce7', green: '#dcfce7', emerald: '#d1fae5', teal: '#ccfbf1',
|
|
147
|
+
cyan: '#cffafe', sky: '#e0f2fe', blue: '#dbeafe', indigo: '#e0e7ff',
|
|
148
|
+
violet: '#ede9fe', purple: '#f3e8ff', fuchsia: '#fae8ff', pink: '#fce7f3',
|
|
149
|
+
rose: '#ffe4e6', slate: '#f1f5f9', gray: '#f3f4f6', zinc: '#f4f4f5',
|
|
150
|
+
neutral: '#f5f5f5', stone: '#f5f5f4', white: '#ffffff',
|
|
151
|
+
};
|
|
143
152
|
|
|
144
153
|
const BADGE_SIZE_MAP = {
|
|
145
154
|
xs: 'text-[10px] px-1.5 py-0.5',
|
|
@@ -226,6 +235,18 @@ class ClxThemeService {
|
|
|
226
235
|
return;
|
|
227
236
|
document.documentElement.setAttribute('data-clx-theme', this.isDark() ? 'dark' : 'light');
|
|
228
237
|
});
|
|
238
|
+
effect(() => {
|
|
239
|
+
if (!this._isBrowser)
|
|
240
|
+
return;
|
|
241
|
+
const primaryColor = this._config().primaryColor;
|
|
242
|
+
if (!primaryColor)
|
|
243
|
+
return;
|
|
244
|
+
const { color } = parseColorInput(primaryColor);
|
|
245
|
+
const hex500 = CLX_COLOR_HEX[color] ?? CLX_COLOR_HEX.indigo;
|
|
246
|
+
const hex100 = CLX_COLOR_HEX_100[color] ?? CLX_COLOR_HEX_100.indigo;
|
|
247
|
+
document.documentElement.style.setProperty('--clx-primary', hex500);
|
|
248
|
+
document.documentElement.style.setProperty('--clx-primary-light', hex100);
|
|
249
|
+
});
|
|
229
250
|
if (this._isBrowser) {
|
|
230
251
|
const mq = window.matchMedia('(prefers-color-scheme: dark)');
|
|
231
252
|
mq.addEventListener('change', e => this._sysDark.set(e.matches));
|
|
@@ -11447,7 +11468,7 @@ class ClxAppLayoutComponent {
|
|
|
11447
11468
|
const isOverlay = isDesktopCollapsed && hovered;
|
|
11448
11469
|
return [
|
|
11449
11470
|
`fixed inset-y-0 left-0 z-30 ${width} flex flex-col`,
|
|
11450
|
-
'bg-
|
|
11471
|
+
'bg-clx-surface border-r border-clx-border overflow-hidden shrink-0',
|
|
11451
11472
|
'transition-[width,transform] duration-300 ease-in-out',
|
|
11452
11473
|
isOverlay ? 'shadow-2xl' : '',
|
|
11453
11474
|
'lg:transition-[width] lg:relative lg:inset-auto lg:z-30 lg:translate-x-0',
|
|
@@ -11675,7 +11696,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImpo
|
|
|
11675
11696
|
const NAV_ITEM_BASE = 'flex items-center gap-3 w-full text-sm font-medium transition-colors duration-150 cursor-pointer select-none';
|
|
11676
11697
|
const NAV_ITEM_L1 = 'px-6 py-3';
|
|
11677
11698
|
const NAV_ITEM_L2 = 'pl-4 pr-3 py-2';
|
|
11678
|
-
const NAV_ITEM_IDLE = 'text-
|
|
11699
|
+
const NAV_ITEM_IDLE = 'text-clx-text-subtle';
|
|
11679
11700
|
// ── Children container ─────────────────────────────────────────────────────────
|
|
11680
11701
|
const NAV_CHILDREN_WRAPPER = 'grid transition-all duration-300 ease-in-out';
|
|
11681
11702
|
const NAV_CHILDREN_INNER = 'overflow-hidden';
|
|
@@ -11723,7 +11744,7 @@ class ClxMenuItemComponent {
|
|
|
11723
11744
|
[class]="rla.isActive ? _activeCls() : _idleCls()"
|
|
11724
11745
|
[title]="collapsed() ? label() : ''">
|
|
11725
11746
|
@if (icon()) {
|
|
11726
|
-
<span clx-icon [name]="icon()" size="sm" [class]="rla.isActive ? _iconCls() : 'text-
|
|
11747
|
+
<span clx-icon [name]="icon()" size="sm" [class]="rla.isActive ? _iconCls() : 'text-clx-text-subtle'"></span>
|
|
11727
11748
|
}
|
|
11728
11749
|
@if (!collapsed()) {
|
|
11729
11750
|
<span class="flex-1 text-left truncate">{{ label() }}</span>
|
|
@@ -11736,7 +11757,7 @@ class ClxMenuItemComponent {
|
|
|
11736
11757
|
[title]="collapsed() ? label() : ''"
|
|
11737
11758
|
(click)="itemClick.emit()">
|
|
11738
11759
|
@if (icon()) {
|
|
11739
|
-
<span clx-icon [name]="icon()" size="sm" [class]="active() ? _iconCls() : 'text-
|
|
11760
|
+
<span clx-icon [name]="icon()" size="sm" [class]="active() ? _iconCls() : 'text-clx-text-subtle'"></span>
|
|
11740
11761
|
}
|
|
11741
11762
|
@if (!collapsed()) {
|
|
11742
11763
|
<span class="flex-1 text-left truncate">{{ label() }}</span>
|
|
@@ -11761,7 +11782,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImpo
|
|
|
11761
11782
|
[class]="rla.isActive ? _activeCls() : _idleCls()"
|
|
11762
11783
|
[title]="collapsed() ? label() : ''">
|
|
11763
11784
|
@if (icon()) {
|
|
11764
|
-
<span clx-icon [name]="icon()" size="sm" [class]="rla.isActive ? _iconCls() : 'text-
|
|
11785
|
+
<span clx-icon [name]="icon()" size="sm" [class]="rla.isActive ? _iconCls() : 'text-clx-text-subtle'"></span>
|
|
11765
11786
|
}
|
|
11766
11787
|
@if (!collapsed()) {
|
|
11767
11788
|
<span class="flex-1 text-left truncate">{{ label() }}</span>
|
|
@@ -11774,7 +11795,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImpo
|
|
|
11774
11795
|
[title]="collapsed() ? label() : ''"
|
|
11775
11796
|
(click)="itemClick.emit()">
|
|
11776
11797
|
@if (icon()) {
|
|
11777
|
-
<span clx-icon [name]="icon()" size="sm" [class]="active() ? _iconCls() : 'text-
|
|
11798
|
+
<span clx-icon [name]="icon()" size="sm" [class]="active() ? _iconCls() : 'text-clx-text-subtle'"></span>
|
|
11778
11799
|
}
|
|
11779
11800
|
@if (!collapsed()) {
|
|
11780
11801
|
<span class="flex-1 text-left truncate">{{ label() }}</span>
|
|
@@ -11984,10 +12005,10 @@ class ClxNavGroupComponent {
|
|
|
11984
12005
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: ClxNavGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
11985
12006
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.15", type: ClxNavGroupComponent, isStandalone: true, selector: "clx-nav-group", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: true, transformFunction: null }, collapsed: { classPropertyName: "collapsed", publicName: "collapsed", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "block" }, ngImport: i0, template: `
|
|
11986
12007
|
@if (!collapsed()) {
|
|
11987
|
-
<span class="block px-6 pt-5 pb-1 text-[10px] font-bold uppercase tracking-widest text-
|
|
12008
|
+
<span class="block px-6 pt-5 pb-1 text-[10px] font-bold uppercase tracking-widest text-clx-text-subtle select-none">{{ label() }}</span>
|
|
11988
12009
|
} @else {
|
|
11989
12010
|
<span class="flex items-center justify-center w-full py-3">
|
|
11990
|
-
<span class="w-1.5 h-1.5 rounded-full bg-
|
|
12011
|
+
<span class="w-1.5 h-1.5 rounded-full bg-clx-border"></span>
|
|
11991
12012
|
</span>
|
|
11992
12013
|
}
|
|
11993
12014
|
`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
@@ -11999,10 +12020,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImpo
|
|
|
11999
12020
|
standalone: true,
|
|
12000
12021
|
template: `
|
|
12001
12022
|
@if (!collapsed()) {
|
|
12002
|
-
<span class="block px-6 pt-5 pb-1 text-[10px] font-bold uppercase tracking-widest text-
|
|
12023
|
+
<span class="block px-6 pt-5 pb-1 text-[10px] font-bold uppercase tracking-widest text-clx-text-subtle select-none">{{ label() }}</span>
|
|
12003
12024
|
} @else {
|
|
12004
12025
|
<span class="flex items-center justify-center w-full py-3">
|
|
12005
|
-
<span class="w-1.5 h-1.5 rounded-full bg-
|
|
12026
|
+
<span class="w-1.5 h-1.5 rounded-full bg-clx-border"></span>
|
|
12006
12027
|
</span>
|
|
12007
12028
|
}
|
|
12008
12029
|
`,
|
|
@@ -14852,5 +14873,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.15", ngImpo
|
|
|
14852
14873
|
* Generated bundle index. Do not edit.
|
|
14853
14874
|
*/
|
|
14854
14875
|
|
|
14855
|
-
export { CLX_ADDON_BORDER, CLX_ADDON_TEXT, CLX_ALERT_OPTIONS, CLX_ALERT_RESOLVE, CLX_BG_ADDON, CLX_BG_DISABLED, CLX_BG_ICON_WRAP, CLX_BG_SECTION, CLX_BG_SURFACE, CLX_BORDER_DEFAULT, CLX_BORDER_DISABLED, CLX_BORDER_MEDIUM, CLX_COLOR_HEX, CLX_COLOR_MAP, CLX_MODAL_ANIM_CONFIG, CLX_MODAL_DATA, CLX_MODAL_REF, CLX_OPTION_DISABLED, CLX_PLACEHOLDER, CLX_RADIO_GROUP, CLX_RADIUS_MAP, CLX_TEXT_BODY, CLX_TEXT_DISABLED, CLX_TEXT_HEADING, CLX_TEXT_HINT, CLX_TEXT_IDLE, CLX_TEXT_INPUT, CLX_TEXT_LABEL, CLX_TEXT_OPTION, CLX_TEXT_SUBTITLE, CLX_TEXT_TITLE, CLX_THEME_CONFIG, CLX_THEME_DEFAULTS, CLX_TOAST_DEFAULTS, ClxAlertComponent, ClxAlertService, ClxAnimateDirective, ClxAnimateGroupDirective, ClxAnimateService, ClxAppLayoutComponent, ClxAvatarComponent, ClxBadgeComponent, ClxBrandComponent, ClxButtonComponent, ClxButtonGroupComponent, ClxCardBodyDirective, ClxCardComponent, ClxCardFooterDirective, ClxCardHeaderDirective, ClxCarouselComponent, ClxCarouselDirective, ClxCartComponent, ClxCartSummaryDrawer, ClxCellDirective, ClxChartComponent, ClxCheckboxComponent, ClxColorPickerComponent, ClxColumnDefDirective, ClxDateRangePickerComponent, ClxDatepickerComponent, ClxDrawerComponent, ClxDrawerService, ClxEditorComponent, ClxEditorLinkModalComponent, ClxFilterPanelComponent, ClxHeaderCellDirective, ClxIconComponent, ClxInputComponent, ClxListComponent, ClxListItemComponent, ClxMenuComponent, ClxMenuItemComponent, ClxModalComponent, ClxModalService, ClxNavGroupComponent, ClxNumberComponent, ClxPageEmptyComponent, ClxPageNotFoundComponent, ClxPageServerErrorComponent, ClxPageUnauthorizedComponent, ClxPaginationComponent, ClxProductComponent, ClxProductDetailComponent, ClxProfileComponent, ClxProgressBarComponent, ClxRadioComponent, ClxRadioGroupComponent, ClxRatingComponent, ClxSelectComponent, ClxSkeletonComponent, ClxSliderComponent, ClxSpinnerComponent, ClxStatCardComponent, ClxStepComponent, ClxStepperComponent, ClxSwitchComponent, ClxTabDirective, ClxTableComponent, ClxTabsComponent, ClxTagComponent, ClxTextareaComponent, ClxThemeService, ClxTimelineComponent, ClxTimelineItemComponent, ClxTimepickerComponent, ClxToastComponent, ClxToastContainerComponent, ClxToastService, ClxTooltipComponent, ClxTooltipDirective, ClxTreeComponent, ClxUploadComponent, ClxWishlistComponent, ClxWizardComponent, TIMEPICKER_SIZE_MAP, parseColorInput, provideCodexlyTheme, resolveColor, resolveContainerRadius, resolveRadius };
|
|
14876
|
+
export { CLX_ADDON_BORDER, CLX_ADDON_TEXT, CLX_ALERT_OPTIONS, CLX_ALERT_RESOLVE, CLX_BG_ADDON, CLX_BG_DISABLED, CLX_BG_ICON_WRAP, CLX_BG_SECTION, CLX_BG_SURFACE, CLX_BORDER_DEFAULT, CLX_BORDER_DISABLED, CLX_BORDER_MEDIUM, CLX_COLOR_HEX, CLX_COLOR_HEX_100, CLX_COLOR_MAP, CLX_MODAL_ANIM_CONFIG, CLX_MODAL_DATA, CLX_MODAL_REF, CLX_OPTION_DISABLED, CLX_PLACEHOLDER, CLX_RADIO_GROUP, CLX_RADIUS_MAP, CLX_TEXT_BODY, CLX_TEXT_DISABLED, CLX_TEXT_HEADING, CLX_TEXT_HINT, CLX_TEXT_IDLE, CLX_TEXT_INPUT, CLX_TEXT_LABEL, CLX_TEXT_OPTION, CLX_TEXT_SUBTITLE, CLX_TEXT_TITLE, CLX_THEME_CONFIG, CLX_THEME_DEFAULTS, CLX_TOAST_DEFAULTS, ClxAlertComponent, ClxAlertService, ClxAnimateDirective, ClxAnimateGroupDirective, ClxAnimateService, ClxAppLayoutComponent, ClxAvatarComponent, ClxBadgeComponent, ClxBrandComponent, ClxButtonComponent, ClxButtonGroupComponent, ClxCardBodyDirective, ClxCardComponent, ClxCardFooterDirective, ClxCardHeaderDirective, ClxCarouselComponent, ClxCarouselDirective, ClxCartComponent, ClxCartSummaryDrawer, ClxCellDirective, ClxChartComponent, ClxCheckboxComponent, ClxColorPickerComponent, ClxColumnDefDirective, ClxDateRangePickerComponent, ClxDatepickerComponent, ClxDrawerComponent, ClxDrawerService, ClxEditorComponent, ClxEditorLinkModalComponent, ClxFilterPanelComponent, ClxHeaderCellDirective, ClxIconComponent, ClxInputComponent, ClxListComponent, ClxListItemComponent, ClxMenuComponent, ClxMenuItemComponent, ClxModalComponent, ClxModalService, ClxNavGroupComponent, ClxNumberComponent, ClxPageEmptyComponent, ClxPageNotFoundComponent, ClxPageServerErrorComponent, ClxPageUnauthorizedComponent, ClxPaginationComponent, ClxProductComponent, ClxProductDetailComponent, ClxProfileComponent, ClxProgressBarComponent, ClxRadioComponent, ClxRadioGroupComponent, ClxRatingComponent, ClxSelectComponent, ClxSkeletonComponent, ClxSliderComponent, ClxSpinnerComponent, ClxStatCardComponent, ClxStepComponent, ClxStepperComponent, ClxSwitchComponent, ClxTabDirective, ClxTableComponent, ClxTabsComponent, ClxTagComponent, ClxTextareaComponent, ClxThemeService, ClxTimelineComponent, ClxTimelineItemComponent, ClxTimepickerComponent, ClxToastComponent, ClxToastContainerComponent, ClxToastService, ClxTooltipComponent, ClxTooltipDirective, ClxTreeComponent, ClxUploadComponent, ClxWishlistComponent, ClxWizardComponent, TIMEPICKER_SIZE_MAP, parseColorInput, provideCodexlyTheme, resolveColor, resolveContainerRadius, resolveRadius };
|
|
14856
14877
|
//# sourceMappingURL=codexly-ui.mjs.map
|