@xui/scroll-area 2.0.0-alpha.19 → 2.0.0-alpha.21

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.
@@ -19,8 +19,10 @@ const [injectXuiScrollAreaConfig, provideXuiScrollAreaConfig] = createXConfigTok
19
19
  */
20
20
  class XuiScrollArea {
21
21
  config = injectXuiScrollAreaConfig();
22
+ /** Extra classes, merged into the component's own rather than replacing them. */
22
23
  class = input('', /* @ts-ignore */
23
24
  ...(ngDevMode ? [{ debugName: "class" }] : /* istanbul ignore next */ []));
25
+ /** Which axis may scroll. The other one is clipped. */
24
26
  orientation = input(this.config.orientation, /* @ts-ignore */
25
27
  ...(ngDevMode ? [{ debugName: "orientation" }] : /* istanbul ignore next */ []));
26
28
  computedClass = computed(() => xui('relative block', this.class()), /* @ts-ignore */
@@ -1 +1 @@
1
- {"version":3,"file":"xui-scroll-area.mjs","sources":["../../../../../../libs/ui/scroll-area/xui/src/lib/scroll-area.token.ts","../../../../../../libs/ui/scroll-area/xui/src/lib/scroll-area.ts","../../../../../../libs/ui/scroll-area/xui/src/index.ts","../../../../../../libs/ui/scroll-area/xui/src/xui-scroll-area.ts"],"sourcesContent":["import { createXConfigToken } from '@xui/core';\nimport type { XuiScrollOrientation } from './scroll-area';\n\n/**\n * Application-wide defaults for XuiScrollArea.\n *\n * Provide it once at the app root to change every scroll area without touching\n * call sites; individual inputs still override the configured value.\n */\nexport interface XuiScrollAreaConfig {\n orientation: XuiScrollOrientation;\n}\n\nexport const [injectXuiScrollAreaConfig, provideXuiScrollAreaConfig] = createXConfigToken<XuiScrollAreaConfig>(\n 'XuiScrollAreaConfig',\n {\n orientation: 'vertical'\n }\n);\n","import { ChangeDetectionStrategy, Component, computed, input, ViewEncapsulation } from '@angular/core';\nimport { xui } from '@xui/core';\nimport type { ClassValue } from 'clsx';\nimport { injectXuiScrollAreaConfig } from './scroll-area.token';\n\nexport type XuiScrollOrientation = 'vertical' | 'horizontal' | 'both';\n\n/**\n * A scroll container with slim, theme-aware scrollbars (WebKit and Firefox),\n * so overflowing content scrolls without the OS's default chrome. Give the host\n * a bound — a height for vertical scrolling, a width for horizontal.\n *\n * ```html\n * <xui-scroll-area class=\"h-72\">\n * <p>…long content…</p>\n * </xui-scroll-area>\n * ```\n */\n@Component({\n selector: 'xui-scroll-area',\n template: `\n <div [class]=\"viewportClass()\">\n <ng-content />\n </div>\n `,\n host: {\n '[class]': 'computedClass()'\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class XuiScrollArea {\n private readonly config = injectXuiScrollAreaConfig();\n\n readonly class = input<ClassValue>('');\n readonly orientation = input<XuiScrollOrientation>(this.config.orientation);\n\n protected readonly computedClass = computed(() => xui('relative block', this.class()));\n\n protected readonly viewportClass = computed(() => {\n const orientation = this.orientation();\n return xui(\n 'h-full w-full',\n orientation === 'vertical' && 'overflow-x-hidden overflow-y-auto',\n orientation === 'horizontal' && 'overflow-x-auto overflow-y-hidden',\n orientation === 'both' && 'overflow-auto',\n // Slim, themed scrollbars. Firefox uses `scrollbar-*`; WebKit uses the pseudo-elements.\n '[scrollbar-width:thin] [scrollbar-color:var(--color-border)_transparent]',\n '[&::-webkit-scrollbar]:h-2 [&::-webkit-scrollbar]:w-2',\n '[&::-webkit-scrollbar-track]:bg-transparent',\n '[&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-thumb]:bg-border',\n 'hover:[&::-webkit-scrollbar-thumb]:bg-foreground-subtle'\n );\n });\n}\n","import { XuiScrollArea } from './lib/scroll-area';\n\nexport * from './lib/scroll-area';\nexport * from './lib/scroll-area.token';\n\nexport const XuiScrollAreaImports = [XuiScrollArea] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAaO,MAAM,CAAC,yBAAyB,EAAE,0BAA0B,CAAC,GAAG,kBAAkB,CACvF,qBAAqB,EACrB;AACE,IAAA,WAAW,EAAE;AACd,CAAA;;ACVH;;;;;;;;;;AAUG;MAcU,aAAa,CAAA;IACP,MAAM,GAAG,yBAAyB,EAAE;IAE5C,KAAK,GAAG,KAAK,CAAa,EAAE;8EAAC;AAC7B,IAAA,WAAW,GAAG,KAAK,CAAuB,IAAI,CAAC,MAAM,CAAC,WAAW;oFAAC;AAExD,IAAA,aAAa,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;sFAAC;AAEnE,IAAA,aAAa,GAAG,QAAQ,CAAC,MAAK;AAC/C,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE;QACtC,OAAO,GAAG,CACR,eAAe,EACf,WAAW,KAAK,UAAU,IAAI,mCAAmC,EACjE,WAAW,KAAK,YAAY,IAAI,mCAAmC,EACnE,WAAW,KAAK,MAAM,IAAI,eAAe;;QAEzC,0EAA0E,EAC1E,uDAAuD,EACvD,6CAA6C,EAC7C,kFAAkF,EAClF,yDAAyD,CAC1D;IACH,CAAC;sFAAC;0HAtBS,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAb,uBAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAXd;;;;AAIT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAOU,aAAa,EAAA,UAAA,EAAA,CAAA;kBAbzB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,QAAQ,EAAE;;;;AAIT,EAAA,CAAA;AACD,oBAAA,IAAI,EAAE;AACJ,wBAAA,SAAS,EAAE;AACZ,qBAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC;AAClC,iBAAA;;;ACzBM,MAAM,oBAAoB,GAAG,CAAC,aAAa;;ACLlD;;AAEG;;;;"}
1
+ {"version":3,"file":"xui-scroll-area.mjs","sources":["../../../../../../libs/ui/scroll-area/xui/src/lib/scroll-area.token.ts","../../../../../../libs/ui/scroll-area/xui/src/lib/scroll-area.ts","../../../../../../libs/ui/scroll-area/xui/src/index.ts","../../../../../../libs/ui/scroll-area/xui/src/xui-scroll-area.ts"],"sourcesContent":["import { createXConfigToken } from '@xui/core';\nimport type { XuiScrollOrientation } from './scroll-area';\n\n/**\n * Application-wide defaults for XuiScrollArea.\n *\n * Provide it once at the app root to change every scroll area without touching\n * call sites; individual inputs still override the configured value.\n */\nexport interface XuiScrollAreaConfig {\n orientation: XuiScrollOrientation;\n}\n\nexport const [injectXuiScrollAreaConfig, provideXuiScrollAreaConfig] = createXConfigToken<XuiScrollAreaConfig>(\n 'XuiScrollAreaConfig',\n {\n orientation: 'vertical'\n }\n);\n","import { ChangeDetectionStrategy, Component, computed, input, ViewEncapsulation } from '@angular/core';\nimport { xui } from '@xui/core';\nimport type { ClassValue } from 'clsx';\nimport { injectXuiScrollAreaConfig } from './scroll-area.token';\n\nexport type XuiScrollOrientation = 'vertical' | 'horizontal' | 'both';\n\n/**\n * A scroll container with slim, theme-aware scrollbars (WebKit and Firefox),\n * so overflowing content scrolls without the OS's default chrome. Give the host\n * a bound — a height for vertical scrolling, a width for horizontal.\n *\n * ```html\n * <xui-scroll-area class=\"h-72\">\n * <p>…long content…</p>\n * </xui-scroll-area>\n * ```\n */\n@Component({\n selector: 'xui-scroll-area',\n template: `\n <div [class]=\"viewportClass()\">\n <ng-content />\n </div>\n `,\n host: {\n '[class]': 'computedClass()'\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class XuiScrollArea {\n private readonly config = injectXuiScrollAreaConfig();\n\n /** Extra classes, merged into the component's own rather than replacing them. */\n readonly class = input<ClassValue>('');\n /** Which axis may scroll. The other one is clipped. */\n readonly orientation = input<XuiScrollOrientation>(this.config.orientation);\n\n protected readonly computedClass = computed(() => xui('relative block', this.class()));\n\n protected readonly viewportClass = computed(() => {\n const orientation = this.orientation();\n return xui(\n 'h-full w-full',\n orientation === 'vertical' && 'overflow-x-hidden overflow-y-auto',\n orientation === 'horizontal' && 'overflow-x-auto overflow-y-hidden',\n orientation === 'both' && 'overflow-auto',\n // Slim, themed scrollbars. Firefox uses `scrollbar-*`; WebKit uses the pseudo-elements.\n '[scrollbar-width:thin] [scrollbar-color:var(--color-border)_transparent]',\n '[&::-webkit-scrollbar]:h-2 [&::-webkit-scrollbar]:w-2',\n '[&::-webkit-scrollbar-track]:bg-transparent',\n '[&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-thumb]:bg-border',\n 'hover:[&::-webkit-scrollbar-thumb]:bg-foreground-subtle'\n );\n });\n}\n","import { XuiScrollArea } from './lib/scroll-area';\n\nexport * from './lib/scroll-area';\nexport * from './lib/scroll-area.token';\n\nexport const XuiScrollAreaImports = [XuiScrollArea] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAaO,MAAM,CAAC,yBAAyB,EAAE,0BAA0B,CAAC,GAAG,kBAAkB,CACvF,qBAAqB,EACrB;AACE,IAAA,WAAW,EAAE;AACd,CAAA;;ACVH;;;;;;;;;;AAUG;MAcU,aAAa,CAAA;IACP,MAAM,GAAG,yBAAyB,EAAE;;IAG5C,KAAK,GAAG,KAAK,CAAa,EAAE;8EAAC;;AAE7B,IAAA,WAAW,GAAG,KAAK,CAAuB,IAAI,CAAC,MAAM,CAAC,WAAW;oFAAC;AAExD,IAAA,aAAa,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;sFAAC;AAEnE,IAAA,aAAa,GAAG,QAAQ,CAAC,MAAK;AAC/C,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE;QACtC,OAAO,GAAG,CACR,eAAe,EACf,WAAW,KAAK,UAAU,IAAI,mCAAmC,EACjE,WAAW,KAAK,YAAY,IAAI,mCAAmC,EACnE,WAAW,KAAK,MAAM,IAAI,eAAe;;QAEzC,0EAA0E,EAC1E,uDAAuD,EACvD,6CAA6C,EAC7C,kFAAkF,EAClF,yDAAyD,CAC1D;IACH,CAAC;sFAAC;0HAxBS,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAb,uBAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAXd;;;;AAIT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAOU,aAAa,EAAA,UAAA,EAAA,CAAA;kBAbzB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,QAAQ,EAAE;;;;AAIT,EAAA,CAAA;AACD,oBAAA,IAAI,EAAE;AACJ,wBAAA,SAAS,EAAE;AACZ,qBAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC;AAClC,iBAAA;;;ACzBM,MAAM,oBAAoB,GAAG,CAAC,aAAa;;ACLlD;;AAEG;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xui/scroll-area",
3
- "version": "2.0.0-alpha.19",
3
+ "version": "2.0.0-alpha.21",
4
4
  "description": "Modern Angular 22 UI Library based on TailwindCSS",
5
5
  "keywords": [
6
6
  "angular",
@@ -37,7 +37,7 @@
37
37
  },
38
38
  "peerDependencies": {
39
39
  "@angular/core": "22",
40
- "@xui/core": "2.0.0-alpha.19",
40
+ "@xui/core": "2.0.0-alpha.21",
41
41
  "clsx": "^2.1.1"
42
42
  },
43
43
  "publishConfig": {
@@ -15,7 +15,9 @@ type XuiScrollOrientation = 'vertical' | 'horizontal' | 'both';
15
15
  */
16
16
  declare class XuiScrollArea {
17
17
  private readonly config;
18
+ /** Extra classes, merged into the component's own rather than replacing them. */
18
19
  readonly class: _angular_core.InputSignal<ClassValue>;
20
+ /** Which axis may scroll. The other one is clipped. */
19
21
  readonly orientation: _angular_core.InputSignal<XuiScrollOrientation>;
20
22
  protected readonly computedClass: _angular_core.Signal<string>;
21
23
  protected readonly viewportClass: _angular_core.Signal<string>;