@koalarx/ui 20.0.39 → 20.0.41

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/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # Koala UI - A Design System Angular
1
+ # Koala UI - A component library Angular
2
2
  Koala UI is a modern and accessible component library designed to speed up interface development in Angular projects. With simple integration and clear documentation, you can easily build robust and visually appealing applications.
3
3
 
4
4
  It provides a set of reusable components and utilities to help you build your Angular applications faster and more efficiently.
@@ -36,11 +36,11 @@ class Dropdown {
36
36
  }
37
37
  }
38
38
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: Dropdown, deps: [], target: i0.ɵɵFactoryTarget.Component });
39
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.0.6", type: Dropdown, isStandalone: true, selector: "kl-dropdown", viewQueries: [{ propertyName: "dropdownTriggerElement", first: true, predicate: ["dropdownTrigger"], descendants: true, isSignal: true }, { propertyName: "dropdownContentElement", first: true, predicate: ["dropdownContent"], descendants: true, isSignal: true }], ngImport: i0, template: "<button #dropdownTrigger\n tabindex=\"0\"\n role=\"button\"\n [attr.popovertarget]=\"id\"\n (click)=\"ajustPosition()\">\n <ng-content select=\"[trigger]\" />\n</button>\n\n<div #dropdownContent\n tabindex=\"0\"\n popover\n [id]=\"id\"\n class=\"dropdown bg-base-100 rounded-box mt-3 min-w-52 w-auto max-w-[30vw] max-h-[40vh] shadow-sm border border-neutral-200 dark:border-neutral-900 rounded-md overflow-y-auto\">\n <ng-content select=\"[options]\" />\n</div>\n" });
39
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.0.6", type: Dropdown, isStandalone: true, selector: "kl-dropdown", viewQueries: [{ propertyName: "dropdownTriggerElement", first: true, predicate: ["dropdownTrigger"], descendants: true, isSignal: true }, { propertyName: "dropdownContentElement", first: true, predicate: ["dropdownContent"], descendants: true, isSignal: true }], ngImport: i0, template: "<button #dropdownTrigger\n tabindex=\"0\"\n role=\"button\"\n [attr.popovertarget]=\"id\"\n (click)=\"ajustPosition()\">\n <ng-content select=\"[trigger]\" />\n</button>\n\n<div #dropdownContent\n tabindex=\"0\"\n popover\n [id]=\"id\"\n class=\"dropdown bg-base-200 rounded-box mt-3 min-w-52 w-auto max-w-[30vw] max-h-[40vh] shadow-sm border-2 border-neutral-200 dark:border-neutral-800 rounded-md overflow-y-auto\">\n <ng-content select=\"[options]\" />\n</div>\n" });
40
40
  }
41
41
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: Dropdown, decorators: [{
42
42
  type: Component,
43
- args: [{ selector: 'kl-dropdown', template: "<button #dropdownTrigger\n tabindex=\"0\"\n role=\"button\"\n [attr.popovertarget]=\"id\"\n (click)=\"ajustPosition()\">\n <ng-content select=\"[trigger]\" />\n</button>\n\n<div #dropdownContent\n tabindex=\"0\"\n popover\n [id]=\"id\"\n class=\"dropdown bg-base-100 rounded-box mt-3 min-w-52 w-auto max-w-[30vw] max-h-[40vh] shadow-sm border border-neutral-200 dark:border-neutral-900 rounded-md overflow-y-auto\">\n <ng-content select=\"[options]\" />\n</div>\n" }]
43
+ args: [{ selector: 'kl-dropdown', template: "<button #dropdownTrigger\n tabindex=\"0\"\n role=\"button\"\n [attr.popovertarget]=\"id\"\n (click)=\"ajustPosition()\">\n <ng-content select=\"[trigger]\" />\n</button>\n\n<div #dropdownContent\n tabindex=\"0\"\n popover\n [id]=\"id\"\n class=\"dropdown bg-base-200 rounded-box mt-3 min-w-52 w-auto max-w-[30vw] max-h-[40vh] shadow-sm border-2 border-neutral-200 dark:border-neutral-800 rounded-md overflow-y-auto\">\n <ng-content select=\"[options]\" />\n</div>\n" }]
44
44
  }], ctorParameters: () => [] });
45
45
 
46
46
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"koalarx-ui-shared-components-dropdown.mjs","sources":["../../projects/koala-ui/shared/components/dropdown/dropdown.ts","../../projects/koala-ui/shared/components/dropdown/dropdown.html","../../projects/koala-ui/shared/components/dropdown/koalarx-ui-shared-components-dropdown.ts"],"sourcesContent":["import { Component, effect, ElementRef, viewChild } from '@angular/core';\nimport { KlString, randomString } from '@koalarx/utils/KlString';\n\n@Component({\n selector: 'kl-dropdown',\n templateUrl: './dropdown.html',\n})\nexport class Dropdown {\n private readonly dropdownTriggerElement =\n viewChild<ElementRef<HTMLButtonElement>>('dropdownTrigger');\n private readonly dropdownContentElement =\n viewChild<ElementRef<HTMLDivElement>>('dropdownContent');\n\n id = randomString(10, { numbers: true, uppercase: false, lowercase: false });\n\n private readonly anchorName = new KlString('--anchor-').concat(this.id);\n\n constructor() {\n effect(() => {\n const triggerElement = this.dropdownTriggerElement()?.nativeElement;\n const contentElement = this.dropdownContentElement()?.nativeElement;\n\n if (triggerElement && contentElement) {\n triggerElement.style = `anchor-name: ${this.anchorName};`;\n contentElement.style = `position-anchor: ${this.anchorName};`;\n }\n });\n }\n\n ajustPosition() {\n const triggerElement = this.dropdownTriggerElement()?.nativeElement;\n const contentElement = this.dropdownContentElement()?.nativeElement;\n\n if (triggerElement && contentElement) {\n setTimeout(() => {\n const position = contentElement.getBoundingClientRect();\n const screenWidth = document.body.clientWidth;\n const screenHeight = document.body.clientHeight;\n\n if (position.right > screenWidth) {\n contentElement.classList.add('dropdown-left');\n contentElement.classList.add('dropdown-start');\n }\n\n if (position.bottom > screenHeight) {\n contentElement.classList.add('dropdown-top');\n }\n });\n }\n }\n}\n","<button #dropdownTrigger\n tabindex=\"0\"\n role=\"button\"\n [attr.popovertarget]=\"id\"\n (click)=\"ajustPosition()\">\n <ng-content select=\"[trigger]\" />\n</button>\n\n<div #dropdownContent\n tabindex=\"0\"\n popover\n [id]=\"id\"\n class=\"dropdown bg-base-100 rounded-box mt-3 min-w-52 w-auto max-w-[30vw] max-h-[40vh] shadow-sm border border-neutral-200 dark:border-neutral-900 rounded-md overflow-y-auto\">\n <ng-content select=\"[options]\" />\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;MAOa,QAAQ,CAAA;AACF,IAAA,sBAAsB,GACrC,SAAS,CAAgC,iBAAiB,CAAC;AAC5C,IAAA,sBAAsB,GACrC,SAAS,CAA6B,iBAAiB,CAAC;AAE1D,IAAA,EAAE,GAAG,YAAY,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;AAE3D,IAAA,UAAU,GAAG,IAAI,QAAQ,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;AAEvE,IAAA,WAAA,GAAA;QACE,MAAM,CAAC,MAAK;YACV,MAAM,cAAc,GAAG,IAAI,CAAC,sBAAsB,EAAE,EAAE,aAAa;YACnE,MAAM,cAAc,GAAG,IAAI,CAAC,sBAAsB,EAAE,EAAE,aAAa;AAEnE,YAAA,IAAI,cAAc,IAAI,cAAc,EAAE;gBACpC,cAAc,CAAC,KAAK,GAAG,CAAA,aAAA,EAAgB,IAAI,CAAC,UAAU,GAAG;gBACzD,cAAc,CAAC,KAAK,GAAG,CAAA,iBAAA,EAAoB,IAAI,CAAC,UAAU,GAAG;;AAEjE,SAAC,CAAC;;IAGJ,aAAa,GAAA;QACX,MAAM,cAAc,GAAG,IAAI,CAAC,sBAAsB,EAAE,EAAE,aAAa;QACnE,MAAM,cAAc,GAAG,IAAI,CAAC,sBAAsB,EAAE,EAAE,aAAa;AAEnE,QAAA,IAAI,cAAc,IAAI,cAAc,EAAE;YACpC,UAAU,CAAC,MAAK;AACd,gBAAA,MAAM,QAAQ,GAAG,cAAc,CAAC,qBAAqB,EAAE;AACvD,gBAAA,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW;AAC7C,gBAAA,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,YAAY;AAE/C,gBAAA,IAAI,QAAQ,CAAC,KAAK,GAAG,WAAW,EAAE;AAChC,oBAAA,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC;AAC7C,oBAAA,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC;;AAGhD,gBAAA,IAAI,QAAQ,CAAC,MAAM,GAAG,YAAY,EAAE;AAClC,oBAAA,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC;;AAEhD,aAAC,CAAC;;;uGAxCK,QAAQ,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAR,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,QAAQ,8UCPrB,2dAeA,EAAA,CAAA;;2FDRa,QAAQ,EAAA,UAAA,EAAA,CAAA;kBAJpB,SAAS;+BACE,aAAa,EAAA,QAAA,EAAA,2dAAA,EAAA;;;AEJzB;;AAEG;;;;"}
1
+ {"version":3,"file":"koalarx-ui-shared-components-dropdown.mjs","sources":["../../projects/koala-ui/shared/components/dropdown/dropdown.ts","../../projects/koala-ui/shared/components/dropdown/dropdown.html","../../projects/koala-ui/shared/components/dropdown/koalarx-ui-shared-components-dropdown.ts"],"sourcesContent":["import { Component, effect, ElementRef, viewChild } from '@angular/core';\nimport { KlString, randomString } from '@koalarx/utils/KlString';\n\n@Component({\n selector: 'kl-dropdown',\n templateUrl: './dropdown.html',\n})\nexport class Dropdown {\n private readonly dropdownTriggerElement =\n viewChild<ElementRef<HTMLButtonElement>>('dropdownTrigger');\n private readonly dropdownContentElement =\n viewChild<ElementRef<HTMLDivElement>>('dropdownContent');\n\n id = randomString(10, { numbers: true, uppercase: false, lowercase: false });\n\n private readonly anchorName = new KlString('--anchor-').concat(this.id);\n\n constructor() {\n effect(() => {\n const triggerElement = this.dropdownTriggerElement()?.nativeElement;\n const contentElement = this.dropdownContentElement()?.nativeElement;\n\n if (triggerElement && contentElement) {\n triggerElement.style = `anchor-name: ${this.anchorName};`;\n contentElement.style = `position-anchor: ${this.anchorName};`;\n }\n });\n }\n\n ajustPosition() {\n const triggerElement = this.dropdownTriggerElement()?.nativeElement;\n const contentElement = this.dropdownContentElement()?.nativeElement;\n\n if (triggerElement && contentElement) {\n setTimeout(() => {\n const position = contentElement.getBoundingClientRect();\n const screenWidth = document.body.clientWidth;\n const screenHeight = document.body.clientHeight;\n\n if (position.right > screenWidth) {\n contentElement.classList.add('dropdown-left');\n contentElement.classList.add('dropdown-start');\n }\n\n if (position.bottom > screenHeight) {\n contentElement.classList.add('dropdown-top');\n }\n });\n }\n }\n}\n","<button #dropdownTrigger\n tabindex=\"0\"\n role=\"button\"\n [attr.popovertarget]=\"id\"\n (click)=\"ajustPosition()\">\n <ng-content select=\"[trigger]\" />\n</button>\n\n<div #dropdownContent\n tabindex=\"0\"\n popover\n [id]=\"id\"\n class=\"dropdown bg-base-200 rounded-box mt-3 min-w-52 w-auto max-w-[30vw] max-h-[40vh] shadow-sm border-2 border-neutral-200 dark:border-neutral-800 rounded-md overflow-y-auto\">\n <ng-content select=\"[options]\" />\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;MAOa,QAAQ,CAAA;AACF,IAAA,sBAAsB,GACrC,SAAS,CAAgC,iBAAiB,CAAC;AAC5C,IAAA,sBAAsB,GACrC,SAAS,CAA6B,iBAAiB,CAAC;AAE1D,IAAA,EAAE,GAAG,YAAY,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;AAE3D,IAAA,UAAU,GAAG,IAAI,QAAQ,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;AAEvE,IAAA,WAAA,GAAA;QACE,MAAM,CAAC,MAAK;YACV,MAAM,cAAc,GAAG,IAAI,CAAC,sBAAsB,EAAE,EAAE,aAAa;YACnE,MAAM,cAAc,GAAG,IAAI,CAAC,sBAAsB,EAAE,EAAE,aAAa;AAEnE,YAAA,IAAI,cAAc,IAAI,cAAc,EAAE;gBACpC,cAAc,CAAC,KAAK,GAAG,CAAA,aAAA,EAAgB,IAAI,CAAC,UAAU,GAAG;gBACzD,cAAc,CAAC,KAAK,GAAG,CAAA,iBAAA,EAAoB,IAAI,CAAC,UAAU,GAAG;;AAEjE,SAAC,CAAC;;IAGJ,aAAa,GAAA;QACX,MAAM,cAAc,GAAG,IAAI,CAAC,sBAAsB,EAAE,EAAE,aAAa;QACnE,MAAM,cAAc,GAAG,IAAI,CAAC,sBAAsB,EAAE,EAAE,aAAa;AAEnE,QAAA,IAAI,cAAc,IAAI,cAAc,EAAE;YACpC,UAAU,CAAC,MAAK;AACd,gBAAA,MAAM,QAAQ,GAAG,cAAc,CAAC,qBAAqB,EAAE;AACvD,gBAAA,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW;AAC7C,gBAAA,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,YAAY;AAE/C,gBAAA,IAAI,QAAQ,CAAC,KAAK,GAAG,WAAW,EAAE;AAChC,oBAAA,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC;AAC7C,oBAAA,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC;;AAGhD,gBAAA,IAAI,QAAQ,CAAC,MAAM,GAAG,YAAY,EAAE;AAClC,oBAAA,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC;;AAEhD,aAAC,CAAC;;;uGAxCK,QAAQ,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAR,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,QAAQ,8UCPrB,6dAeA,EAAA,CAAA;;2FDRa,QAAQ,EAAA,UAAA,EAAA,CAAA;kBAJpB,SAAS;+BACE,aAAa,EAAA,QAAA,EAAA,6dAAA,EAAA;;;AEJzB;;AAEG;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@koalarx/ui",
3
- "version": "20.0.39",
3
+ "version": "20.0.41",
4
4
  "peerDependencies": {
5
5
  "@angular/common": ">=20.0.0",
6
6
  "@angular/core": ">=20.0.0"