@recursyve/nice-ui-kit.v2 13.1.0-beta.90 → 13.2.0-beta.100

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.
Files changed (51) hide show
  1. package/_index.scss +0 -1
  2. package/esm2020/lib/api/nice.api.mjs +2 -1
  3. package/esm2020/lib/components/alert/alert.component.mjs +22 -10
  4. package/esm2020/lib/components/alert/alert.types.mjs +1 -1
  5. package/esm2020/lib/components/async-typeahead/async-typeahead.component.mjs +9 -5
  6. package/esm2020/lib/components/base-form/base-form.component.mjs +20 -5
  7. package/esm2020/lib/components/form-error/control-status.directive.mjs +21 -14
  8. package/esm2020/lib/components/navigation/vertical/components/collapsable/collapsable.component.mjs +19 -4
  9. package/esm2020/lib/components/navigation/vertical/vertical.component.mjs +8 -6
  10. package/esm2020/lib/components/sweet-alert/sweet-alert.component.mjs +3 -3
  11. package/esm2020/lib/components/toast/toast.component.mjs +1 -1
  12. package/esm2020/lib/directives/chip-async-typeahead/chip-async-typeahead.directive.mjs +39 -0
  13. package/esm2020/lib/directives/chip-async-typeahead/index.mjs +2 -0
  14. package/esm2020/lib/directives/chip-async-typeahead/public-api.mjs +2 -0
  15. package/esm2020/lib/directives/chip-list/chip-list-items/chip-list-item-label.directive.mjs +14 -0
  16. package/esm2020/lib/directives/chip-list/chip-list-items/chip-list-items.component.mjs +32 -0
  17. package/esm2020/lib/directives/chip-list/chip-list.directive.mjs +100 -0
  18. package/esm2020/lib/directives/chip-list/chip-list.module.mjs +21 -0
  19. package/esm2020/lib/directives/chip-list/index.mjs +2 -0
  20. package/esm2020/lib/directives/chip-list/public-api.mjs +5 -0
  21. package/esm2020/lib/directives/public-api.mjs +3 -1
  22. package/fesm2015/recursyve-nice-ui-kit.v2.mjs +262 -41
  23. package/fesm2015/recursyve-nice-ui-kit.v2.mjs.map +1 -1
  24. package/fesm2020/recursyve-nice-ui-kit.v2.mjs +267 -39
  25. package/fesm2020/recursyve-nice-ui-kit.v2.mjs.map +1 -1
  26. package/lib/api/nice.api.d.ts +1 -0
  27. package/lib/components/alert/alert.component.d.ts +3 -2
  28. package/lib/components/alert/alert.types.d.ts +1 -0
  29. package/lib/components/async-typeahead/async-typeahead.component.d.ts +3 -2
  30. package/lib/components/base-form/base-form.component.d.ts +4 -3
  31. package/lib/components/form-error/control-status.directive.d.ts +2 -3
  32. package/lib/components/navigation/vertical/components/collapsable/collapsable.component.d.ts +2 -0
  33. package/lib/components/navigation/vertical/vertical.component.d.ts +2 -2
  34. package/lib/directives/chip-async-typeahead/chip-async-typeahead.directive.d.ts +14 -0
  35. package/lib/directives/chip-async-typeahead/index.d.ts +1 -0
  36. package/lib/directives/chip-async-typeahead/public-api.d.ts +1 -0
  37. package/lib/directives/chip-list/chip-list-items/chip-list-item-label.directive.d.ts +8 -0
  38. package/lib/directives/chip-list/chip-list-items/chip-list-items.component.d.ts +14 -0
  39. package/lib/directives/chip-list/chip-list.directive.d.ts +27 -0
  40. package/lib/directives/chip-list/chip-list.module.d.ts +11 -0
  41. package/lib/directives/chip-list/index.d.ts +1 -0
  42. package/lib/directives/chip-list/public-api.d.ts +4 -0
  43. package/lib/directives/public-api.d.ts +2 -0
  44. package/package.json +1 -1
  45. package/src/lib/components/chip-list/chip-list.theme.scss +14 -0
  46. package/src/lib/components/chip-list/components/item-list/item-list.theme.scss +37 -0
  47. package/src/lib/directives/chip-list/chip-list-items/chip-list-items.theme.scss +35 -0
  48. package/src/lib/nice.theme.scss +5 -0
  49. package/styles/tailwind.scss +77 -74
  50. package/tailwind/plugins/theming.js +1 -1
  51. package/src/lib/nice.tailwind.scss +0 -94
@@ -9,6 +9,7 @@ export interface HttpOptions {
9
9
  headers?: HttpHeaders | {
10
10
  [header: string]: string | string[];
11
11
  };
12
+ responseType?: "text" | "json" | "arraybuffer" | "blob";
12
13
  params?: HttpParams | {
13
14
  [param: string]: string | number | boolean | ReadonlyArray<string | number | boolean>;
14
15
  };
@@ -2,7 +2,7 @@ import { BooleanInput } from "@angular/cdk/coercion";
2
2
  import { ChangeDetectorRef, EventEmitter, OnChanges, OnDestroy, OnInit, SimpleChanges } from "@angular/core";
3
3
  import { NiceUtilsService } from "../../providers/utils";
4
4
  import { NiceAlertService } from "./alert.service";
5
- import { NiceAlertType, NiceAlertAppearance } from "./alert.types";
5
+ import { NiceAlertType, NiceAlertAppearance, NiceAlertColor } from "./alert.types";
6
6
  import * as i0 from "@angular/core";
7
7
  export declare class NiceAlertComponent implements OnChanges, OnInit, OnDestroy {
8
8
  private _changeDetectorRef;
@@ -19,6 +19,7 @@ export declare class NiceAlertComponent implements OnChanges, OnInit, OnDestroy
19
19
  name: string;
20
20
  showIcon: boolean;
21
21
  type: NiceAlertType;
22
+ color?: NiceAlertColor;
22
23
  readonly dismissedChanged: EventEmitter<boolean>;
23
24
  private _unsubscribeAll;
24
25
  /**
@@ -59,5 +60,5 @@ export declare class NiceAlertComponent implements OnChanges, OnInit, OnDestroy
59
60
  */
60
61
  private _toggleDismiss;
61
62
  static ɵfac: i0.ɵɵFactoryDeclaration<NiceAlertComponent, never>;
62
- static ɵcmp: i0.ɵɵComponentDeclaration<NiceAlertComponent, "nice-alert", ["niceAlert"], { "appearance": "appearance"; "dismissed": "dismissed"; "dismissible": "dismissible"; "disableAnimation": "disableAnimation"; "name": "name"; "showIcon": "showIcon"; "type": "type"; }, { "dismissedChanged": "dismissedChanged"; }, never, ["[niceAlertIcon]", "[niceAlertTitle]", "*"]>;
63
+ static ɵcmp: i0.ɵɵComponentDeclaration<NiceAlertComponent, "nice-alert", ["niceAlert"], { "appearance": "appearance"; "dismissed": "dismissed"; "dismissible": "dismissible"; "disableAnimation": "disableAnimation"; "name": "name"; "showIcon": "showIcon"; "type": "type"; "color": "color"; }, { "dismissedChanged": "dismissedChanged"; }, never, ["[niceAlertIcon]", "[niceAlertTitle]", "*"]>;
63
64
  }
@@ -1,2 +1,3 @@
1
1
  export declare type NiceAlertAppearance = "border" | "fill" | "outline" | "soft";
2
2
  export declare type NiceAlertType = "primary" | "accent" | "warn" | "basic" | "info" | "success" | "warning" | "error";
3
+ export declare type NiceAlertColor = "primary" | "accent" | "warn";
@@ -1,5 +1,5 @@
1
1
  import { BooleanInput } from "@angular/cdk/coercion";
2
- import { ChangeDetectorRef, DoCheck, ElementRef, NgZone, OnChanges, OnDestroy, OnInit, SimpleChanges, TemplateRef } from "@angular/core";
2
+ import { ChangeDetectorRef, DoCheck, ElementRef, EventEmitter, NgZone, OnChanges, OnDestroy, OnInit, SimpleChanges, TemplateRef } from "@angular/core";
3
3
  import { ControlValueAccessor, FormControl, FormGroupDirective, NgControl, NgForm } from "@angular/forms";
4
4
  import { MatAutocompleteActivatedEvent, MatAutocompleteSelectedEvent } from "@angular/material/autocomplete";
5
5
  import { ErrorStateMatcher, MatOption } from "@angular/material/core";
@@ -53,6 +53,7 @@ export declare class NiceAsyncTypeaheadComponent extends _BaseAsyncTypeaheadComp
53
53
  emptyPlaceholder: string;
54
54
  optionTemplate: TemplateRef<HTMLElement>;
55
55
  filterFn: (value: any) => boolean | Promise<boolean> | Observable<boolean>;
56
+ selected: EventEmitter<any>;
56
57
  set labelFormatFn(labelFormatFn: (item: any) => string);
57
58
  private _labelFormatFn;
58
59
  /**
@@ -106,6 +107,6 @@ export declare class NiceAsyncTypeaheadComponent extends _BaseAsyncTypeaheadComp
106
107
  private updateSearchInput;
107
108
  private checkIfValueStillExist;
108
109
  static ɵfac: i0.ɵɵFactoryDeclaration<NiceAsyncTypeaheadComponent, [{ optional: true; self: true; }, { optional: true; }, { optional: true; }, null, null, null, null]>;
109
- static ɵcmp: i0.ɵɵComponentDeclaration<NiceAsyncTypeaheadComponent, "nice-async-typeahead", never, { "resource": "resource"; "searchOptions": "searchOptions"; "preloadResource": "preloadResource"; "allowNotFoundItems": "allowNotFoundItems"; "panelClass": "panelClass"; "bindValue": "bindValue"; "bindLabel": "bindLabel"; "placeholder": "placeholder"; "emptyPlaceholder": "emptyPlaceholder"; "optionTemplate": "optionTemplate"; "filterFn": "filterFn"; "labelFormatFn": "labelFormatFn"; "disabled": "disabled"; "value": "value"; "required": "required"; }, {}, never, never>;
110
+ static ɵcmp: i0.ɵɵComponentDeclaration<NiceAsyncTypeaheadComponent, "nice-async-typeahead", never, { "resource": "resource"; "searchOptions": "searchOptions"; "preloadResource": "preloadResource"; "allowNotFoundItems": "allowNotFoundItems"; "panelClass": "panelClass"; "bindValue": "bindValue"; "bindLabel": "bindLabel"; "placeholder": "placeholder"; "emptyPlaceholder": "emptyPlaceholder"; "optionTemplate": "optionTemplate"; "filterFn": "filterFn"; "labelFormatFn": "labelFormatFn"; "disabled": "disabled"; "value": "value"; "required": "required"; }, { "selected": "selected"; }, never, never>;
110
111
  }
111
112
  export {};
@@ -1,16 +1,17 @@
1
1
  import { EventEmitter, OnDestroy, OnInit } from "@angular/core";
2
2
  import { ControlValueAccessor, FormGroup } from "@angular/forms";
3
3
  import { GeneratedFormGroup } from "@recursyve/ngx-form-generator";
4
- import { Subscription } from "rxjs";
4
+ import { Subject } from "rxjs";
5
5
  import * as i0 from "@angular/core";
6
6
  export declare abstract class NiceBaseFormComponent<Form> implements OnInit, OnDestroy, ControlValueAccessor {
7
7
  formGroup: GeneratedFormGroup<Form>;
8
8
  private stepper;
9
9
  loading: boolean;
10
10
  submit: EventEmitter<Form>;
11
- protected valueChangeSub$: Subscription;
11
+ protected unsubscribeAll$: Subject<void>;
12
12
  private propagate;
13
- protected constructor(formGroup: GeneratedFormGroup<Form>);
13
+ constructor(formGroup: GeneratedFormGroup<Form>);
14
+ onChange(event: KeyboardEvent): void;
14
15
  ngOnInit(): void;
15
16
  ngOnDestroy(): void;
16
17
  registerOnChange(fn: (form: Form) => void): void;
@@ -1,4 +1,4 @@
1
- import { AfterViewInit, ComponentFactoryResolver, ComponentRef, ElementRef, ViewContainerRef } from "@angular/core";
1
+ import { AfterViewInit, ComponentRef, ElementRef, ViewContainerRef } from "@angular/core";
2
2
  import { NgControl } from "@angular/forms";
3
3
  import { MatFormField } from "@angular/material/form-field";
4
4
  import { TranslateService } from "@ngx-translate/core";
@@ -7,12 +7,11 @@ import * as i0 from "@angular/core";
7
7
  export declare class NiceControlStatusDirective implements AfterViewInit {
8
8
  private el;
9
9
  private vcr;
10
- private resolver;
11
10
  private formField;
12
11
  private translateService;
13
12
  ref: ComponentRef<NiceFormErrorComponent>;
14
13
  control: NgControl;
15
- constructor(el: ElementRef<HTMLElement>, vcr: ViewContainerRef, resolver: ComponentFactoryResolver, formField: MatFormField, translateService: TranslateService);
14
+ constructor(el: ElementRef<HTMLElement>, vcr: ViewContainerRef, formField: MatFormField, translateService: TranslateService);
16
15
  ngAfterViewInit(): void;
17
16
  onChange(): void;
18
17
  setError(text: string): void;
@@ -1,6 +1,7 @@
1
1
  import { BooleanInput } from "@angular/cdk/coercion";
2
2
  import { ChangeDetectorRef, OnDestroy, OnInit } from "@angular/core";
3
3
  import { Router } from "@angular/router";
4
+ import { BehaviorSubject } from "rxjs";
4
5
  import { NiceNavigationService } from "../../../navigation.service";
5
6
  import { NiceNavigationItem } from "../../../navigation.types";
6
7
  import * as i0 from "@angular/core";
@@ -16,6 +17,7 @@ export declare class NiceVerticalNavigationCollapsableItemComponent implements O
16
17
  name: string;
17
18
  isCollapsed: boolean;
18
19
  isExpanded: boolean;
20
+ hasChildActivated$: BehaviorSubject<boolean>;
19
21
  /**
20
22
  * Constructor
21
23
  */
@@ -23,7 +23,6 @@ export declare class NiceVerticalNavigationComponent extends NiceNavigationCompo
23
23
  private _asideOverlay;
24
24
  private readonly _handleAsideOverlayClick;
25
25
  private readonly _handleOverlayClick;
26
- private _hovered;
27
26
  private _overlay;
28
27
  private _player;
29
28
  private _scrollStrategy;
@@ -35,6 +34,7 @@ export declare class NiceVerticalNavigationComponent extends NiceNavigationCompo
35
34
  inner: boolean;
36
35
  mode: NiceVerticalNavigationMode;
37
36
  opened: boolean;
37
+ hovered: boolean;
38
38
  position: NiceVerticalNavigationPosition;
39
39
  transparentOverlay: boolean;
40
40
  readonly appearanceChanged: EventEmitter<NiceVerticalNavigationAppearance>;
@@ -153,5 +153,5 @@ export declare class NiceVerticalNavigationComponent extends NiceNavigationCompo
153
153
  */
154
154
  private _toggleOpened;
155
155
  static ɵfac: i0.ɵɵFactoryDeclaration<NiceVerticalNavigationComponent, never>;
156
- static ɵcmp: i0.ɵɵComponentDeclaration<NiceVerticalNavigationComponent, "nice-vertical-navigation", ["niceVerticalNavigation"], { "name": "name"; "appearance": "appearance"; "autoCollapse": "autoCollapse"; "inner": "inner"; "mode": "mode"; "opened": "opened"; "position": "position"; "transparentOverlay": "transparentOverlay"; "navigation": "navigation"; }, { "appearanceChanged": "appearanceChanged"; "modeChanged": "modeChanged"; "openedChanged": "openedChanged"; "positionChanged": "positionChanged"; }, never, ["[niceVerticalNavigationHeader]", "[niceVerticalNavigationContentHeader]", "[niceVerticalNavigationContentFooter]", "[niceVerticalNavigationFooter]"]>;
156
+ static ɵcmp: i0.ɵɵComponentDeclaration<NiceVerticalNavigationComponent, "nice-vertical-navigation", ["niceVerticalNavigation"], { "name": "name"; "appearance": "appearance"; "autoCollapse": "autoCollapse"; "inner": "inner"; "mode": "mode"; "opened": "opened"; "hovered": "hovered"; "position": "position"; "transparentOverlay": "transparentOverlay"; "navigation": "navigation"; }, { "appearanceChanged": "appearanceChanged"; "modeChanged": "modeChanged"; "openedChanged": "openedChanged"; "positionChanged": "positionChanged"; }, never, ["[niceVerticalNavigationHeader]", "[niceVerticalNavigationContentHeader]", "[niceVerticalNavigationContentFooter]", "[niceVerticalNavigationFooter]"]>;
157
157
  }
@@ -0,0 +1,14 @@
1
+ import { ElementRef, EventEmitter, OnDestroy, OnInit } from "@angular/core";
2
+ import { NiceAsyncTypeaheadComponent } from "../../components";
3
+ import * as i0 from "@angular/core";
4
+ export declare class NiceChipAsyncTypeaheadDirective implements OnInit, OnDestroy {
5
+ private typeahead;
6
+ private elementRef;
7
+ niceChipAsyncTypeaheadTokenEnd: EventEmitter<any>;
8
+ private unsubscribeAll$;
9
+ constructor(typeahead: NiceAsyncTypeaheadComponent, elementRef: ElementRef<HTMLElement>);
10
+ ngOnInit(): void;
11
+ ngOnDestroy(): void;
12
+ static ɵfac: i0.ɵɵFactoryDeclaration<NiceChipAsyncTypeaheadDirective, never>;
13
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NiceChipAsyncTypeaheadDirective, "[niceChipAsyncTypeahead]", ["niceChipAsyncTypeahead"], {}, { "niceChipAsyncTypeaheadTokenEnd": "niceChipAsyncTypeaheadTokenEnd"; }, never>;
14
+ }
@@ -0,0 +1 @@
1
+ export * from "./public-api";
@@ -0,0 +1 @@
1
+ export * from "./chip-async-typeahead.directive";
@@ -0,0 +1,8 @@
1
+ import { TemplateRef } from "@angular/core";
2
+ import * as i0 from "@angular/core";
3
+ export declare class ChipListItemLabelDirective {
4
+ template: TemplateRef<any>;
5
+ constructor(template: TemplateRef<any>);
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<ChipListItemLabelDirective, never>;
7
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ChipListItemLabelDirective, "[niceChipListItemLabel]", never, {}, {}, never>;
8
+ }
@@ -0,0 +1,14 @@
1
+ import { EventEmitter, TemplateRef } from "@angular/core";
2
+ import { CanColor, ThemePalette } from "@angular/material/core";
3
+ import { Observable } from "rxjs";
4
+ import * as i0 from "@angular/core";
5
+ export declare class NiceChipListItemsComponent implements CanColor {
6
+ itemLabel: TemplateRef<any>;
7
+ color: ThemePalette;
8
+ removeChip: EventEmitter<number>;
9
+ items$: Observable<any[]>;
10
+ defaultColor: ThemePalette;
11
+ remove(index: number): void;
12
+ static ɵfac: i0.ɵɵFactoryDeclaration<NiceChipListItemsComponent, never>;
13
+ static ɵcmp: i0.ɵɵComponentDeclaration<NiceChipListItemsComponent, "nice-chip-list-items", never, { "color": "color"; "items$": "items$"; }, { "removeChip": "removeChip"; }, ["itemLabel"], never>;
14
+ }
@@ -0,0 +1,27 @@
1
+ import { ElementRef, OnChanges, OnInit, SimpleChanges } from "@angular/core";
2
+ import { ControlValueAccessor, NgControl } from "@angular/forms";
3
+ import { NiceAsyncTypeaheadComponent } from "../../components";
4
+ import { NiceChipListItemsComponent } from "./chip-list-items/chip-list-items.component";
5
+ import * as i0 from "@angular/core";
6
+ export declare class NiceChipListDirective implements ControlValueAccessor, OnInit, OnChanges {
7
+ private asyncTypeahead;
8
+ private ngControl;
9
+ private elementRef;
10
+ withItemList: NiceChipListItemsComponent;
11
+ private unsubscribeAll$;
12
+ private values$;
13
+ private _values;
14
+ private propagateChanges;
15
+ get values(): any[];
16
+ constructor(asyncTypeahead: NiceAsyncTypeaheadComponent, ngControl: NgControl, elementRef: ElementRef<HTMLInputElement>);
17
+ onKeyDown(event: KeyboardEvent): void;
18
+ ngOnInit(): void;
19
+ ngOnChanges(changes: SimpleChanges): void;
20
+ writeValue(obj: any[]): void;
21
+ registerOnChange(fn: any): void;
22
+ registerOnTouched(fn: any): void;
23
+ private setupAsyncTypeahead;
24
+ private addValue;
25
+ static ɵfac: i0.ɵɵFactoryDeclaration<NiceChipListDirective, [{ optional: true; }, { optional: true; }, null]>;
26
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NiceChipListDirective, "input[niceChipList], nice-async-typeahead[niceChipList]", never, { "withItemList": "withItemList"; }, {}, never>;
27
+ }
@@ -0,0 +1,11 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./chip-list.directive";
3
+ import * as i2 from "./chip-list-items/chip-list-items.component";
4
+ import * as i3 from "./chip-list-items/chip-list-item-label.directive";
5
+ import * as i4 from "@angular/common";
6
+ import * as i5 from "@angular/material/icon";
7
+ export declare class NiceChipListDirectiveModule {
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<NiceChipListDirectiveModule, never>;
9
+ static ɵmod: i0.ɵɵNgModuleDeclaration<NiceChipListDirectiveModule, [typeof i1.NiceChipListDirective, typeof i2.NiceChipListItemsComponent, typeof i3.ChipListItemLabelDirective], [typeof i4.CommonModule, typeof i5.MatIconModule], [typeof i1.NiceChipListDirective, typeof i2.NiceChipListItemsComponent, typeof i3.ChipListItemLabelDirective]>;
10
+ static ɵinj: i0.ɵɵInjectorDeclaration<NiceChipListDirectiveModule>;
11
+ }
@@ -0,0 +1 @@
1
+ export * from "./public-api";
@@ -0,0 +1,4 @@
1
+ export * from "./chip-list-items/chip-list-item-label.directive";
2
+ export * from "./chip-list-items/chip-list-items.component";
3
+ export * from "./chip-list.directive";
4
+ export * from "./chip-list.module";
@@ -1,5 +1,7 @@
1
1
  export * from "./autofocus";
2
2
  export * from "./autogrow";
3
+ export * from "./chip-async-typeahead";
4
+ export * from "./chip-list";
3
5
  export * from "./dropzone";
4
6
  export * from "./image-error-placeholder";
5
7
  export * from "./material";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@recursyve/nice-ui-kit.v2",
3
- "version": "13.1.0-beta.90",
3
+ "version": "13.2.0-beta.100",
4
4
  "exports": {
5
5
  ".": {
6
6
  "sass": "./_index.scss",
@@ -0,0 +1,14 @@
1
+ @use "../../nice.utils" as nice;
2
+ @import "components/item-list/item-list.theme";
3
+
4
+ @mixin nice-chip-list-theme($theme) {
5
+ @include nice-item-list-theme($theme);
6
+
7
+ nice-chip-list {
8
+ @apply w-full;
9
+
10
+ .nice-chip-row {
11
+ @apply gap-2;
12
+ }
13
+ }
14
+ }
@@ -0,0 +1,37 @@
1
+ @use "../../../../nice.utils" as nice;
2
+
3
+ @mixin nice-item-list-theme($theme) {
4
+ mat-form-field {
5
+ nice-item-list {
6
+ .nice-items-row {
7
+ @apply mt-4;
8
+ }
9
+ }
10
+ }
11
+
12
+ nice-item-list {
13
+ .nice-items-row {
14
+ @apply flex flex-row flex-wrap items-center gap-2;
15
+
16
+ .nice-chip {
17
+ @apply flex flex-row items-center justify-start rounded-3xl gap-3 px-3 py-0.5 min-w-24;
18
+
19
+ .close-icon {
20
+ @apply mt-1 opacity-70;
21
+ }
22
+
23
+ &.primary {
24
+ @apply bg-primary;
25
+ }
26
+
27
+ &.accent {
28
+ @apply bg-accent;
29
+ }
30
+
31
+ &.warn {
32
+ @apply bg-warn;
33
+ }
34
+ }
35
+ }
36
+ }
37
+ }
@@ -0,0 +1,35 @@
1
+ @mixin nice-chip-list-items-theme($theme) {
2
+ mat-form-field {
3
+ nice-chip-list-items {
4
+ .nice-items-row {
5
+ @apply mt-4;
6
+ }
7
+ }
8
+ }
9
+
10
+ nice-chip-list-items {
11
+ .nice-items-row {
12
+ @apply flex flex-row flex-wrap items-center gap-2;
13
+
14
+ .nice-chip {
15
+ @apply flex flex-row items-center justify-start rounded-3xl gap-3 px-3 py-0.5 min-w-24;
16
+
17
+ .close-icon {
18
+ @apply mt-1 opacity-70;
19
+ }
20
+
21
+ &.primary {
22
+ @apply bg-primary;
23
+ }
24
+
25
+ &.accent {
26
+ @apply bg-accent;
27
+ }
28
+
29
+ &.warn {
30
+ @apply bg-warn;
31
+ }
32
+ }
33
+ }
34
+ }
35
+ }
@@ -13,6 +13,9 @@
13
13
  @import "./components/navigation/horizontal/horizontal.theme";
14
14
  @import "./components/navigation/vertical/vertical.theme";
15
15
  @import "./components/toggle-button-group/toggle-button-group.theme";
16
+ @import "./components/chip-list/chip-list.theme";
17
+ @import "./directives/chip-list/chip-list-items/chip-list-items.theme";
18
+
16
19
  @mixin nice-components-theme($theme) {
17
20
  @include nice-alert-theme($theme);
18
21
  @include nice-assets-carousel-theme($theme);
@@ -21,6 +24,8 @@
21
24
  @include nice-drawer-theme($theme);
22
25
  @include nice-horizontal-stepper-theme($theme);
23
26
  @include nice-toggle-button-group-theme($theme);
27
+ @include nice-chip-list-theme($theme);
28
+ @include nice-chip-list-items-theme($theme);
24
29
  }
25
30
 
26
31
  @mixin nice-custom-theme($theme) {
@@ -1,94 +1,97 @@
1
+ /* This injects Tailwind's base styles and any base styles registered by plugins. */
2
+ @tailwind base;
3
+
1
4
  /* This injects additional styles into Tailwind's base styles layer. */
2
- @mixin tailwind() {
3
- @layer base {
4
-
5
- * {
6
- /* Text rendering */
7
- text-rendering: optimizeLegibility;
8
- -o-text-rendering: optimizeLegibility;
9
- -ms-text-rendering: optimizeLegibility;
10
- -moz-text-rendering: optimizeLegibility;
11
- -webkit-text-rendering: optimizeLegibility;
12
- -webkit-tap-highlight-color: transparent;
13
-
14
- /* Remove the focus ring */
15
- &:focus {
16
- outline: none !important;
17
- }
5
+ @layer base {
6
+
7
+ * {
8
+ /* Text rendering */
9
+ text-rendering: optimizeLegibility;
10
+ -o-text-rendering: optimizeLegibility;
11
+ -ms-text-rendering: optimizeLegibility;
12
+ -moz-text-rendering: optimizeLegibility;
13
+ -webkit-text-rendering: optimizeLegibility;
14
+ -webkit-tap-highlight-color: transparent;
15
+
16
+ /* Remove the focus ring */
17
+ &:focus {
18
+ outline: none !important;
18
19
  }
20
+ }
19
21
 
20
- /* HTML and Body default styles */
21
- html,
22
- body {
23
- display: flex;
24
- flex-direction: column;
25
- flex: 1 1 auto;
26
- width: 100%;
27
- min-height: 100%;
28
- -webkit-font-smoothing: auto;
29
- -moz-osx-font-smoothing: auto;
30
- }
22
+ /* HTML and Body default styles */
23
+ html,
24
+ body {
25
+ display: flex;
26
+ flex-direction: column;
27
+ flex: 1 1 auto;
28
+ width: 100%;
29
+ min-height: 100%;
30
+ -webkit-font-smoothing: auto;
31
+ -moz-osx-font-smoothing: auto;
32
+ }
31
33
 
32
- /* Font size */
33
- html {
34
- font-size: 16px;
35
- }
34
+ /* Font size */
35
+ html {
36
+ font-size: 16px;
37
+ }
36
38
 
37
- body {
38
- font-size: 0.875rem;
39
- }
39
+ body {
40
+ font-size: 0.875rem;
41
+ }
40
42
 
41
- /* Stylistic alternates for Inter */
42
- body {
43
- font-feature-settings: 'salt';
44
- }
43
+ /* Stylistic alternates for Inter */
44
+ body {
45
+ font-feature-settings: 'salt';
46
+ }
45
47
 
46
- /* Better spacing and border for horizontal rule */
47
- hr {
48
- margin: 32px 0;
49
- border-bottom-width: 1px;
50
- }
48
+ /* Better spacing and border for horizontal rule */
49
+ hr {
50
+ margin: 32px 0;
51
+ border-bottom-width: 1px;
52
+ }
51
53
 
52
- /* Make images and videos to take up all the available space */
53
- img {
54
- width: 100%;
55
- vertical-align: top;
56
- }
54
+ /* Make images and videos to take up all the available space */
55
+ img {
56
+ width: 100%;
57
+ vertical-align: top;
58
+ }
57
59
 
58
- /* Fix: Disabled placeholder color is too faded on Safari */
59
- input[disabled] {
60
- opacity: 1;
61
- -webkit-text-fill-color: currentColor;
62
- }
60
+ /* Fix: Disabled placeholder color is too faded on Safari */
61
+ input[disabled] {
62
+ opacity: 1;
63
+ -webkit-text-fill-color: currentColor;
64
+ }
63
65
 
64
- body, .dark, .light {
65
- @apply text-default bg-default #{'!important'};
66
- }
66
+ body, .dark, .light {
67
+ @apply text-default bg-default #{'!important'};
68
+ }
67
69
 
68
- *, *::before, *::after {
69
- --tw-border-opacity: 1 !important;
70
- border-color: rgba(var(--nice-border-rgb), var(--tw-border-opacity));
70
+ *, *::before, *::after {
71
+ --tw-border-opacity: 1 !important;
72
+ border-color: rgba(var(--nice-border-rgb), var(--tw-border-opacity));
71
73
 
72
- .dark & {
73
- --tw-border-opacity: 0.12 !important;
74
- }
74
+ .dark & {
75
+ --tw-border-opacity: 0.12 !important;
75
76
  }
77
+ }
76
78
 
77
- [disabled] * {
78
- @apply text-disabled #{'!important'};
79
- }
79
+ [disabled] * {
80
+ @apply text-disabled #{'!important'};
81
+ }
80
82
 
81
- /* Print styles */
82
- @media print {
83
+ /* Print styles */
84
+ @media print {
83
85
 
84
- /* Make the base font size smaller for print so everything is scaled nicely */
85
- html {
86
- font-size: 12px !important;
87
- }
86
+ /* Make the base font size smaller for print so everything is scaled nicely */
87
+ html {
88
+ font-size: 12px !important;
89
+ }
88
90
 
89
- body, .dark, .light {
90
- background: none !important;
91
- }
91
+ body, .dark, .light {
92
+ background: none !important;
92
93
  }
93
94
  }
94
95
  }
96
+
97
+ @tailwind components;
@@ -98,7 +98,7 @@ const theming = plugin.withOptions((options) => ({
98
98
  // @ Map variable colors
99
99
  // -----------------------------------------------------------------------------------------------------
100
100
  const mapVariableColors = _.fromPairs(_.map(options.themes, (theme, themeName) => [
101
- themeName === 'default' ? 'body' : `body.theme-${e(themeName)}`,
101
+ themeName === 'default' ? 'body, .theme-default' : `body, .theme-${e(themeName)}`,
102
102
  _.fromPairs(_.flatten(_.map(flattenColorPalette(_.fromPairs(_.flatten(_.map(normalizeTheme(theme), (palette, paletteName) => [
103
103
  [
104
104
  e(paletteName),
@@ -1,94 +0,0 @@
1
- /* This injects additional styles into Tailwind's base styles layer. */
2
- @mixin tailwind() {
3
- @layer base {
4
-
5
- * {
6
- /* Text rendering */
7
- text-rendering: optimizeLegibility;
8
- -o-text-rendering: optimizeLegibility;
9
- -ms-text-rendering: optimizeLegibility;
10
- -moz-text-rendering: optimizeLegibility;
11
- -webkit-text-rendering: optimizeLegibility;
12
- -webkit-tap-highlight-color: transparent;
13
-
14
- /* Remove the focus ring */
15
- &:focus {
16
- outline: none !important;
17
- }
18
- }
19
-
20
- /* HTML and Body default styles */
21
- html,
22
- body {
23
- display: flex;
24
- flex-direction: column;
25
- flex: 1 1 auto;
26
- width: 100%;
27
- min-height: 100%;
28
- -webkit-font-smoothing: auto;
29
- -moz-osx-font-smoothing: auto;
30
- }
31
-
32
- /* Font size */
33
- html {
34
- font-size: 16px;
35
- }
36
-
37
- body {
38
- font-size: 0.875rem;
39
- }
40
-
41
- /* Stylistic alternates for Inter */
42
- body {
43
- font-feature-settings: 'salt';
44
- }
45
-
46
- /* Better spacing and border for horizontal rule */
47
- hr {
48
- margin: 32px 0;
49
- border-bottom-width: 1px;
50
- }
51
-
52
- /* Make images and videos to take up all the available space */
53
- img {
54
- width: 100%;
55
- vertical-align: top;
56
- }
57
-
58
- /* Fix: Disabled placeholder color is too faded on Safari */
59
- input[disabled] {
60
- opacity: 1;
61
- -webkit-text-fill-color: currentColor;
62
- }
63
-
64
- body, .dark, .light {
65
- @apply text-default bg-default #{'!important'};
66
- }
67
-
68
- *, *::before, *::after {
69
- --tw-border-opacity: 1 !important;
70
- border-color: rgba(var(--nice-border-rgb), var(--tw-border-opacity));
71
-
72
- .dark & {
73
- --tw-border-opacity: 0.12 !important;
74
- }
75
- }
76
-
77
- [disabled] * {
78
- @apply text-disabled #{'!important'};
79
- }
80
-
81
- /* Print styles */
82
- @media print {
83
-
84
- /* Make the base font size smaller for print so everything is scaled nicely */
85
- html {
86
- font-size: 12px !important;
87
- }
88
-
89
- body, .dark, .light {
90
- background: none !important;
91
- }
92
- }
93
- }
94
- }