@origostudio/origo-design 0.0.34 → 0.0.35

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 (69) hide show
  1. package/CHANGELOG.md +2 -2
  2. package/dist/packages/angular-renderer/CHANGELOG.md +10 -0
  3. package/dist/packages/angular-renderer/package.json +3 -3
  4. package/dist/packages/angular-renderer/src/components/primitives/breadcrumbs/breadcrumbs.component.d.ts +27 -0
  5. package/dist/packages/angular-renderer/src/components/primitives/breadcrumbs/breadcrumbs.component.js +77 -0
  6. package/dist/packages/angular-renderer/src/components/primitives/breadcrumbs/breadcrumbs.component.js.map +1 -0
  7. package/dist/packages/angular-renderer/src/components/primitives/sidebar/sidebar.component.d.ts +37 -0
  8. package/dist/packages/angular-renderer/src/components/primitives/sidebar/sidebar.component.js +106 -0
  9. package/dist/packages/angular-renderer/src/components/primitives/sidebar/sidebar.component.js.map +1 -0
  10. package/dist/packages/angular-renderer/src/components/primitives/tabs/tabs.component.d.ts +34 -0
  11. package/dist/packages/angular-renderer/src/components/primitives/tabs/tabs.component.js +124 -0
  12. package/dist/packages/angular-renderer/src/components/primitives/tabs/tabs.component.js.map +1 -0
  13. package/dist/packages/angular-renderer/src/index.d.ts +3 -0
  14. package/dist/packages/angular-renderer/src/index.js +3 -0
  15. package/dist/packages/angular-renderer/src/index.js.map +1 -1
  16. package/dist/packages/angular-renderer/src/lib/primitives.provider.js +7 -0
  17. package/dist/packages/angular-renderer/src/lib/primitives.provider.js.map +1 -1
  18. package/dist/packages/cli/CHANGELOG.md +4 -0
  19. package/dist/packages/cli/package.json +2 -2
  20. package/dist/packages/cli/package.json.bak +2 -2
  21. package/dist/packages/core/CHANGELOG.md +4 -0
  22. package/dist/packages/core/package.json +1 -1
  23. package/dist/packages/core/package.json.bak +1 -1
  24. package/dist/packages/design-tokens/CHANGELOG.md +4 -0
  25. package/dist/packages/design-tokens/package.json +1 -1
  26. package/dist/packages/playground/browser/{chunk-DMSNoVia.js → chunk-1BPuEyON.js} +1 -1
  27. package/dist/packages/playground/browser/{chunk-oLVpNacy.js → chunk-2UNSqVln.js} +1 -1
  28. package/dist/packages/playground/browser/{chunk-TYlSGKBs.js → chunk-9WsVM2Jr.js} +1 -1
  29. package/dist/packages/playground/browser/{chunk-Dnt5FGKM.js → chunk-BB6BGIio.js} +1 -1
  30. package/dist/packages/playground/browser/{chunk-BpIkcGMH.js → chunk-BfpxpuVT.js} +1 -1
  31. package/dist/packages/playground/browser/{chunk-BJ5zA99p.js → chunk-CKqlZgol.js} +1 -1
  32. package/dist/packages/playground/browser/{chunk-BTeHMhVz.js → chunk-CKyrqF9T.js} +1 -1
  33. package/dist/packages/playground/browser/{chunk-Bj4KEAnJ.js → chunk-CTnGRYtS.js} +1 -1
  34. package/dist/packages/playground/browser/{chunk-DQSUREz9.js → chunk-CVJk2D1R.js} +1 -1
  35. package/dist/packages/playground/browser/{chunk-CZ8Kub1X.js → chunk-DNTfJ2xw.js} +1 -1
  36. package/dist/packages/playground/browser/{chunk-CSFZcaUo.js → chunk-DOAdNQyb.js} +1 -1
  37. package/dist/packages/playground/browser/{chunk-J4kTlbKf.js → chunk-Dx7lJ4Em.js} +1 -1
  38. package/dist/packages/playground/browser/{chunk-D2Q3NBtv.js → chunk-Dys-y4r2.js} +1 -1
  39. package/dist/packages/playground/browser/{chunk-DxuE9SOj.js → chunk-Ym0QZNDJ.js} +1 -1
  40. package/dist/packages/playground/browser/{chunk-B-wn1cXv.js → chunk-r7FVf56g.js} +1 -1
  41. package/dist/packages/playground/browser/index.html +1 -1
  42. package/dist/packages/playground/browser/{main-GTAXHZBR.js → main-JTGXHRFU.js} +69 -69
  43. package/package.json +1 -1
  44. package/packages/angular-renderer/CHANGELOG.md +10 -0
  45. package/packages/angular-renderer/package.json +3 -3
  46. package/packages/angular-renderer/src/components/primitives/breadcrumbs/breadcrumbs.component.html +24 -0
  47. package/packages/angular-renderer/src/components/primitives/breadcrumbs/breadcrumbs.component.scss +41 -0
  48. package/packages/angular-renderer/src/components/primitives/breadcrumbs/breadcrumbs.component.ts +84 -0
  49. package/packages/angular-renderer/src/components/primitives/primitives.a11y.pw.ts +51 -0
  50. package/packages/angular-renderer/src/components/primitives/sidebar/sidebar.component.html +23 -0
  51. package/packages/angular-renderer/src/components/primitives/sidebar/sidebar.component.scss +72 -0
  52. package/packages/angular-renderer/src/components/primitives/sidebar/sidebar.component.ts +122 -0
  53. package/packages/angular-renderer/src/components/primitives/tabs/tabs.component.html +27 -0
  54. package/packages/angular-renderer/src/components/primitives/tabs/tabs.component.scss +49 -0
  55. package/packages/angular-renderer/src/components/primitives/tabs/tabs.component.ts +131 -0
  56. package/packages/angular-renderer/src/index.ts +3 -0
  57. package/packages/angular-renderer/src/lib/primitives.provider.ts +7 -0
  58. package/packages/cli/CHANGELOG.md +4 -0
  59. package/packages/cli/package.json +2 -2
  60. package/packages/core/CHANGELOG.md +4 -0
  61. package/packages/core/package.json +1 -1
  62. package/packages/design-tokens/CHANGELOG.md +4 -0
  63. package/packages/design-tokens/package.json +1 -1
  64. package/packages/devtools/CHANGELOG.md +4 -0
  65. package/packages/devtools/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +1 -1
  66. package/packages/devtools/package.json +1 -1
  67. package/packages/playground/CHANGELOG.md +4 -0
  68. package/packages/playground/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +1 -1
  69. package/packages/playground/package.json +3 -3
package/CHANGELOG.md CHANGED
@@ -1,8 +1,8 @@
1
- ## 0.0.34 (2026-09-22)
1
+ ## 0.0.35 (2026-09-22)
2
2
 
3
3
  ### 🚀 Features
4
4
 
5
- - implement DataGrid, List, and Card data presentation primitives ([b057d31](https://github.com/OrigoStudio/origo-design/commit/b057d31))
5
+ - add breadcrumbs, sidebar, and tabs primitive components with accessibility tests to angular-renderer ([a801763](https://github.com/OrigoStudio/origo-design/commit/a801763))
6
6
 
7
7
  ### ❤️ Thank You
8
8
 
@@ -1,3 +1,13 @@
1
+ ## 0.0.35 (2026-09-22)
2
+
3
+ ### 🚀 Features
4
+
5
+ - add breadcrumbs, sidebar, and tabs primitive components with accessibility tests to angular-renderer ([a801763](https://github.com/OrigoStudio/origo-design/commit/a801763))
6
+
7
+ ### ❤️ Thank You
8
+
9
+ - Hardik Patel @hardikpatelse
10
+
1
11
  ## 0.0.34 (2026-09-22)
2
12
 
3
13
  ### 🚀 Features
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "angular-renderer",
3
- "version": "0.0.34",
3
+ "version": "0.0.35",
4
4
  "private": true,
5
5
  "type": "commonjs",
6
6
  "main": "./dist/index.js",
7
7
  "types": "./dist/index.d.ts",
8
8
  "dependencies": {
9
- "@origo/core": "0.0.34",
10
- "@origo/design-tokens": "0.0.34",
9
+ "@origo/core": "0.0.35",
10
+ "@origo/design-tokens": "0.0.35",
11
11
  "tslib": "^2.3.0",
12
12
  "@axe-core/playwright": "^4.13.0",
13
13
  "@playwright/test": "^1.36.0"
@@ -0,0 +1,27 @@
1
+ import { InteractionContract } from '@origo/core';
2
+ import { OrigoAdapter } from '../../../adapters/web/adapter';
3
+ export interface BreadcrumbItem {
4
+ label: string;
5
+ outcomeRef?: string;
6
+ }
7
+ export interface BreadcrumbsProps {
8
+ items?: Array<BreadcrumbItem>;
9
+ 'aria-label'?: string;
10
+ 'aria-describedby'?: string;
11
+ }
12
+ export declare class BreadcrumbsComponent implements OrigoAdapter<BreadcrumbsProps> {
13
+ static readonly contractSchema: {
14
+ items: string;
15
+ };
16
+ static readonly strictContract = false;
17
+ contract: import("@angular/core").InputSignal<InteractionContract<BreadcrumbsProps>>;
18
+ private experienceAdapter;
19
+ private sanitizer;
20
+ computedAriaLabel: import("@angular/core").Signal<string>;
21
+ computedAriaDescribedBy: import("@angular/core").Signal<string | undefined>;
22
+ computedItems: import("@angular/core").Signal<{
23
+ label: string;
24
+ outcomeRef: string | undefined;
25
+ }[]>;
26
+ onItemClick(event: Event, item: BreadcrumbItem, isLast: boolean): void;
27
+ }
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BreadcrumbsComponent = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const core_1 = require("@angular/core");
6
+ const platform_browser_1 = require("@angular/platform-browser");
7
+ const experience_adapter_service_1 = require("../../../adapters/web/experience-adapter.service");
8
+ let BreadcrumbsComponent = (() => {
9
+ let _classDecorators = [(0, core_1.Component)({
10
+ selector: 'origo-breadcrumbs',
11
+ standalone: true,
12
+ templateUrl: './breadcrumbs.component.html',
13
+ styleUrls: ['./breadcrumbs.component.scss'],
14
+ changeDetection: core_1.ChangeDetectionStrategy.OnPush,
15
+ encapsulation: core_1.ViewEncapsulation.ShadowDom,
16
+ host: {
17
+ '[class.origo-breadcrumbs]': 'true',
18
+ '[attr.data-testid]': 'contract().id',
19
+ '[attr.aria-label]': 'computedAriaLabel()',
20
+ '[attr.aria-describedby]': 'computedAriaDescribedBy()',
21
+ role: 'navigation',
22
+ },
23
+ })];
24
+ let _classDescriptor;
25
+ let _classExtraInitializers = [];
26
+ let _classThis;
27
+ var BreadcrumbsComponent = class {
28
+ static { _classThis = this; }
29
+ static {
30
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
31
+ tslib_1.__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
32
+ BreadcrumbsComponent = _classThis = _classDescriptor.value;
33
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
34
+ }
35
+ static contractSchema = {
36
+ items: 'array',
37
+ };
38
+ static strictContract = false;
39
+ contract = core_1.input.required();
40
+ experienceAdapter = (0, core_1.inject)(experience_adapter_service_1.WebExperienceAdapterService);
41
+ sanitizer = (0, core_1.inject)(platform_browser_1.DomSanitizer);
42
+ computedAriaLabel = (0, core_1.computed)(() => {
43
+ const label = this.contract().props?.['aria-label'];
44
+ return label !== undefined && label !== null ? String(label) : 'Breadcrumbs';
45
+ });
46
+ computedAriaDescribedBy = (0, core_1.computed)(() => {
47
+ const desc = this.contract().props?.['aria-describedby'];
48
+ return desc !== undefined && desc !== null ? String(desc) : undefined;
49
+ });
50
+ computedItems = (0, core_1.computed)(() => {
51
+ const items = this.contract().props?.items;
52
+ if (!Array.isArray(items))
53
+ return [];
54
+ return items
55
+ .filter(item => item != null && item.label != null)
56
+ .map(item => {
57
+ return {
58
+ label: String(item.label),
59
+ outcomeRef: item.outcomeRef ? String(item.outcomeRef) : undefined,
60
+ };
61
+ });
62
+ });
63
+ onItemClick(event, item, isLast) {
64
+ if (isLast || !item.outcomeRef) {
65
+ event.preventDefault();
66
+ return;
67
+ }
68
+ this.experienceAdapter.updateState(this.contract().id, 'activeOutcome', item.outcomeRef);
69
+ }
70
+ static {
71
+ tslib_1.__runInitializers(_classThis, _classExtraInitializers);
72
+ }
73
+ };
74
+ return BreadcrumbsComponent = _classThis;
75
+ })();
76
+ exports.BreadcrumbsComponent = BreadcrumbsComponent;
77
+ //# sourceMappingURL=breadcrumbs.component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"breadcrumbs.component.js","sourceRoot":"","sources":["../../../../../../../packages/angular-renderer/src/components/primitives/breadcrumbs/breadcrumbs.component.ts"],"names":[],"mappings":";;;;AAAA,wCAQuB;AACvB,gEAAyD;AAGzD,iGAA+F;IA4BlF,oBAAoB;4BAfhC,IAAA,gBAAS,EAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,UAAU,EAAE,IAAI;YAChB,WAAW,EAAE,8BAA8B;YAC3C,SAAS,EAAE,CAAC,8BAA8B,CAAC;YAC3C,eAAe,EAAE,8BAAuB,CAAC,MAAM;YAC/C,aAAa,EAAE,wBAAiB,CAAC,SAAS;YAC1C,IAAI,EAAE;gBACJ,2BAA2B,EAAE,MAAM;gBACnC,oBAAoB,EAAE,eAAe;gBACrC,mBAAmB,EAAE,qBAAqB;gBAC1C,yBAAyB,EAAE,2BAA2B;gBACtD,IAAI,EAAE,YAAY;aACnB;SACF,CAAC;;;;;;;;YACF,qLA2CC;;;;QA1CC,MAAM,CAAU,cAAc,GAAG;YAC/B,KAAK,EAAE,OAAO;SACf,CAAC;QACF,MAAM,CAAU,cAAc,GAAG,KAAK,CAAC;QAEvC,QAAQ,GAAG,YAAK,CAAC,QAAQ,EAAyC,CAAC;QAE3D,iBAAiB,GAAG,IAAA,aAAM,EAAC,wDAA2B,CAAC,CAAC;QACxD,SAAS,GAAG,IAAA,aAAM,EAAC,+BAAY,CAAC,CAAC;QAEzC,iBAAiB,GAAG,IAAA,eAAQ,EAAC,GAAG,EAAE;YAChC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,YAAY,CAAC,CAAC;YACpD,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;QAC/E,CAAC,CAAC,CAAC;QAEH,uBAAuB,GAAG,IAAA,eAAQ,EAAC,GAAG,EAAE;YACtC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,kBAAkB,CAAC,CAAC;YACzD,OAAO,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACxE,CAAC,CAAC,CAAC;QAEH,aAAa,GAAG,IAAA,eAAQ,EAAC,GAAG,EAAE;YAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC;YAC3C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAC;YAErC,OAAO,KAAK;iBACT,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC;iBAClD,GAAG,CAAC,IAAI,CAAC,EAAE;gBACV,OAAO;oBACL,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;oBACzB,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS;iBAClE,CAAC;YACJ,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,WAAW,CAAC,KAAY,EAAE,IAAoB,EAAE,MAAe;YAC7D,IAAI,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;gBAC/B,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,OAAO;YACT,CAAC;YAED,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,eAAe,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAC3F,CAAC;;YA1CU,+DAAoB;;;;;AAApB,oDAAoB"}
@@ -0,0 +1,37 @@
1
+ import { InteractionContract } from '@origo/core';
2
+ import { OrigoAdapter } from '../../../adapters/web/adapter';
3
+ export interface SidebarItem {
4
+ key: string;
5
+ label: string;
6
+ icon?: string;
7
+ outcomeRef: string;
8
+ }
9
+ export interface SidebarProps {
10
+ items?: Array<SidebarItem>;
11
+ activeOutcome?: string;
12
+ collapsed?: boolean;
13
+ 'aria-label'?: string;
14
+ 'aria-describedby'?: string;
15
+ }
16
+ export declare class SidebarComponent implements OrigoAdapter<SidebarProps> {
17
+ static readonly contractSchema: {
18
+ items: string;
19
+ collapsed: string;
20
+ };
21
+ static readonly strictContract = false;
22
+ contract: import("@angular/core").InputSignal<InteractionContract<SidebarProps>>;
23
+ private experienceAdapter;
24
+ private sanitizer;
25
+ computedCollapsed: import("@angular/core").Signal<boolean>;
26
+ computedAriaLabel: import("@angular/core").Signal<string>;
27
+ computedAriaDescribedBy: import("@angular/core").Signal<string | undefined>;
28
+ computedItems: import("@angular/core").Signal<{
29
+ key: string;
30
+ label: string;
31
+ icon: string | undefined;
32
+ outcomeRef: string;
33
+ }[]>;
34
+ computedActiveOutcome: import("@angular/core").Signal<string | undefined>;
35
+ onItemClick(item: SidebarItem): void;
36
+ onKeyDown(event: KeyboardEvent, item: SidebarItem, index: number): void;
37
+ }
@@ -0,0 +1,106 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SidebarComponent = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const core_1 = require("@angular/core");
6
+ const platform_browser_1 = require("@angular/platform-browser");
7
+ const experience_adapter_service_1 = require("../../../adapters/web/experience-adapter.service");
8
+ let SidebarComponent = (() => {
9
+ let _classDecorators = [(0, core_1.Component)({
10
+ selector: 'origo-sidebar',
11
+ standalone: true,
12
+ templateUrl: './sidebar.component.html',
13
+ styleUrls: ['./sidebar.component.scss'],
14
+ changeDetection: core_1.ChangeDetectionStrategy.OnPush,
15
+ encapsulation: core_1.ViewEncapsulation.ShadowDom,
16
+ host: {
17
+ '[class.origo-sidebar]': 'true',
18
+ '[class.origo-sidebar--collapsed]': 'computedCollapsed()',
19
+ '[attr.data-testid]': 'contract().id',
20
+ '[attr.aria-label]': 'computedAriaLabel()',
21
+ '[attr.aria-describedby]': 'computedAriaDescribedBy()',
22
+ role: 'navigation',
23
+ },
24
+ })];
25
+ let _classDescriptor;
26
+ let _classExtraInitializers = [];
27
+ let _classThis;
28
+ var SidebarComponent = class {
29
+ static { _classThis = this; }
30
+ static {
31
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
32
+ tslib_1.__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
33
+ SidebarComponent = _classThis = _classDescriptor.value;
34
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
35
+ }
36
+ static contractSchema = {
37
+ items: 'array',
38
+ collapsed: 'boolean',
39
+ };
40
+ static strictContract = false;
41
+ contract = core_1.input.required();
42
+ experienceAdapter = (0, core_1.inject)(experience_adapter_service_1.WebExperienceAdapterService);
43
+ sanitizer = (0, core_1.inject)(platform_browser_1.DomSanitizer);
44
+ computedCollapsed = (0, core_1.computed)(() => !!this.contract().props?.collapsed);
45
+ computedAriaLabel = (0, core_1.computed)(() => {
46
+ const label = this.contract().props?.['aria-label'];
47
+ return label !== undefined && label !== null ? String(label) : 'Sidebar';
48
+ });
49
+ computedAriaDescribedBy = (0, core_1.computed)(() => {
50
+ const desc = this.contract().props?.['aria-describedby'];
51
+ return desc !== undefined && desc !== null ? String(desc) : undefined;
52
+ });
53
+ computedItems = (0, core_1.computed)(() => {
54
+ const items = this.contract().props?.items;
55
+ if (!Array.isArray(items))
56
+ return [];
57
+ return items
58
+ .filter(item => item != null && item.key != null && item.label != null && item.outcomeRef != null)
59
+ .map(item => {
60
+ return {
61
+ key: String(item.key),
62
+ label: this.sanitizer.sanitize(core_1.SecurityContext.HTML, String(item.label)) ||
63
+ String(item.label).replace(/[<>]/g, ''),
64
+ icon: item.icon
65
+ ? this.sanitizer.sanitize(core_1.SecurityContext.HTML, String(item.icon)) ||
66
+ String(item.icon).replace(/[<>]/g, '')
67
+ : undefined,
68
+ outcomeRef: String(item.outcomeRef),
69
+ };
70
+ });
71
+ });
72
+ computedActiveOutcome = (0, core_1.computed)(() => this.contract().props?.activeOutcome);
73
+ onItemClick(item) {
74
+ if (!item.outcomeRef)
75
+ return;
76
+ this.experienceAdapter.updateState(this.contract().id, 'activeOutcome', item.outcomeRef);
77
+ }
78
+ onKeyDown(event, item, index) {
79
+ if (event.key === 'Enter' || event.key === ' ') {
80
+ event.preventDefault();
81
+ this.onItemClick(item);
82
+ return;
83
+ }
84
+ const host = event.target;
85
+ const links = Array.from(host.closest('.origo-sidebar__list')?.querySelectorAll('.origo-sidebar__link') || []);
86
+ if (event.key === 'ArrowDown') {
87
+ event.preventDefault();
88
+ const next = links[index + 1];
89
+ if (next)
90
+ next.focus();
91
+ }
92
+ else if (event.key === 'ArrowUp') {
93
+ event.preventDefault();
94
+ const prev = links[index - 1];
95
+ if (prev)
96
+ prev.focus();
97
+ }
98
+ }
99
+ static {
100
+ tslib_1.__runInitializers(_classThis, _classExtraInitializers);
101
+ }
102
+ };
103
+ return SidebarComponent = _classThis;
104
+ })();
105
+ exports.SidebarComponent = SidebarComponent;
106
+ //# sourceMappingURL=sidebar.component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sidebar.component.js","sourceRoot":"","sources":["../../../../../../../packages/angular-renderer/src/components/primitives/sidebar/sidebar.component.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ import { ElementRef, QueryList } from '@angular/core';
2
+ import { InteractionContract } from '@origo/core';
3
+ import { OrigoAdapter } from '../../../adapters/web/adapter';
4
+ export interface TabItem {
5
+ key: string;
6
+ label: string;
7
+ disabled?: boolean;
8
+ }
9
+ export interface TabsProps {
10
+ tabs?: Array<TabItem>;
11
+ activeTab?: string;
12
+ 'aria-label'?: string;
13
+ 'aria-describedby'?: string;
14
+ }
15
+ export declare class TabsComponent implements OrigoAdapter<TabsProps> {
16
+ static readonly contractSchema: {
17
+ tabs: string;
18
+ };
19
+ static readonly strictContract = false;
20
+ contract: import("@angular/core").InputSignal<InteractionContract<TabsProps>>;
21
+ private experienceAdapter;
22
+ private sanitizer;
23
+ tabButtons: QueryList<ElementRef<HTMLButtonElement>>;
24
+ computedAriaLabel: import("@angular/core").Signal<string | undefined>;
25
+ computedAriaDescribedBy: import("@angular/core").Signal<string | undefined>;
26
+ computedTabs: import("@angular/core").Signal<{
27
+ key: string;
28
+ label: string;
29
+ disabled: boolean;
30
+ }[]>;
31
+ computedActiveTab: import("@angular/core").Signal<string | undefined>;
32
+ onTabClick(tab: TabItem): void;
33
+ onKeyDown(event: KeyboardEvent, index: number): void;
34
+ }
@@ -0,0 +1,124 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TabsComponent = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const core_1 = require("@angular/core");
6
+ const platform_browser_1 = require("@angular/platform-browser");
7
+ const experience_adapter_service_1 = require("../../../adapters/web/experience-adapter.service");
8
+ let TabsComponent = (() => {
9
+ let _classDecorators = [(0, core_1.Component)({
10
+ selector: 'origo-tabs',
11
+ standalone: true,
12
+ templateUrl: './tabs.component.html',
13
+ styleUrls: ['./tabs.component.scss'],
14
+ changeDetection: core_1.ChangeDetectionStrategy.OnPush,
15
+ encapsulation: core_1.ViewEncapsulation.ShadowDom,
16
+ host: {
17
+ '[class.origo-tabs]': 'true',
18
+ '[attr.data-testid]': 'contract().id',
19
+ },
20
+ })];
21
+ let _classDescriptor;
22
+ let _classExtraInitializers = [];
23
+ let _classThis;
24
+ let _tabButtons_decorators;
25
+ let _tabButtons_initializers = [];
26
+ let _tabButtons_extraInitializers = [];
27
+ var TabsComponent = class {
28
+ static { _classThis = this; }
29
+ static {
30
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
31
+ _tabButtons_decorators = [(0, core_1.ViewChildren)('tabButton')];
32
+ tslib_1.__esDecorate(null, null, _tabButtons_decorators, { kind: "field", name: "tabButtons", static: false, private: false, access: { has: obj => "tabButtons" in obj, get: obj => obj.tabButtons, set: (obj, value) => { obj.tabButtons = value; } }, metadata: _metadata }, _tabButtons_initializers, _tabButtons_extraInitializers);
33
+ tslib_1.__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
34
+ TabsComponent = _classThis = _classDescriptor.value;
35
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
36
+ }
37
+ static contractSchema = {
38
+ tabs: 'array',
39
+ };
40
+ static strictContract = false;
41
+ contract = core_1.input.required();
42
+ experienceAdapter = (0, core_1.inject)(experience_adapter_service_1.WebExperienceAdapterService);
43
+ sanitizer = (0, core_1.inject)(platform_browser_1.DomSanitizer);
44
+ tabButtons = tslib_1.__runInitializers(this, _tabButtons_initializers, void 0);
45
+ computedAriaLabel = (tslib_1.__runInitializers(this, _tabButtons_extraInitializers), (0, core_1.computed)(() => {
46
+ const label = this.contract().props?.['aria-label'];
47
+ return label !== undefined && label !== null ? String(label) : undefined;
48
+ }));
49
+ computedAriaDescribedBy = (0, core_1.computed)(() => {
50
+ const desc = this.contract().props?.['aria-describedby'];
51
+ return desc !== undefined && desc !== null ? String(desc) : undefined;
52
+ });
53
+ computedTabs = (0, core_1.computed)(() => {
54
+ const tabs = this.contract().props?.tabs;
55
+ if (!Array.isArray(tabs))
56
+ return [];
57
+ return tabs
58
+ .filter(tab => tab != null && tab.key != null && tab.label != null)
59
+ .map(tab => {
60
+ return {
61
+ key: String(tab.key),
62
+ label: this.sanitizer.sanitize(core_1.SecurityContext.HTML, String(tab.label)) ||
63
+ String(tab.label).replace(/[<>]/g, ''),
64
+ disabled: !!tab.disabled,
65
+ };
66
+ });
67
+ });
68
+ computedActiveTab = (0, core_1.computed)(() => {
69
+ const active = this.contract().props?.activeTab;
70
+ if (active)
71
+ return active;
72
+ const tabs = this.computedTabs();
73
+ return tabs.length > 0 ? tabs[0].key : undefined;
74
+ });
75
+ onTabClick(tab) {
76
+ if (tab.disabled || !tab.key)
77
+ return;
78
+ this.experienceAdapter.updateState(this.contract().id, 'activeTab', tab.key);
79
+ }
80
+ onKeyDown(event, index) {
81
+ const tabs = this.computedTabs();
82
+ if (tabs.length === 0)
83
+ return;
84
+ let nextIndex = index;
85
+ const isRtl = typeof window !== 'undefined' && event.target instanceof Element
86
+ ? window.getComputedStyle(event.target).direction === 'rtl'
87
+ : false;
88
+ if (event.key === 'ArrowRight') {
89
+ nextIndex = isRtl ? index - 1 : index + 1;
90
+ event.preventDefault();
91
+ }
92
+ else if (event.key === 'ArrowLeft') {
93
+ nextIndex = isRtl ? index + 1 : index - 1;
94
+ event.preventDefault();
95
+ }
96
+ else if (event.key === 'Home') {
97
+ nextIndex = 0;
98
+ event.preventDefault();
99
+ }
100
+ else if (event.key === 'End') {
101
+ nextIndex = tabs.length - 1;
102
+ event.preventDefault();
103
+ }
104
+ if (nextIndex < 0)
105
+ nextIndex = tabs.length - 1;
106
+ if (nextIndex >= tabs.length)
107
+ nextIndex = 0;
108
+ if (nextIndex !== index) {
109
+ setTimeout(() => {
110
+ const buttons = this.tabButtons?.toArray();
111
+ if (buttons && buttons[nextIndex]) {
112
+ buttons[nextIndex].nativeElement.focus();
113
+ }
114
+ });
115
+ }
116
+ }
117
+ static {
118
+ tslib_1.__runInitializers(_classThis, _classExtraInitializers);
119
+ }
120
+ };
121
+ return TabsComponent = _classThis;
122
+ })();
123
+ exports.TabsComponent = TabsComponent;
124
+ //# sourceMappingURL=tabs.component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabs.component.js","sourceRoot":"","sources":["../../../../../../../packages/angular-renderer/src/components/primitives/tabs/tabs.component.ts"],"names":[],"mappings":"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"}
@@ -17,3 +17,6 @@ export * from './lib/primitives.provider';
17
17
  export * from './components/primitives/data-grid/data-grid.component';
18
18
  export * from './components/primitives/list/list.component';
19
19
  export * from './components/primitives/card/card.component';
20
+ export * from './components/primitives/sidebar/sidebar.component';
21
+ export * from './components/primitives/tabs/tabs.component';
22
+ export * from './components/primitives/breadcrumbs/breadcrumbs.component';
@@ -20,4 +20,7 @@ tslib_1.__exportStar(require("./lib/primitives.provider"), exports);
20
20
  tslib_1.__exportStar(require("./components/primitives/data-grid/data-grid.component"), exports);
21
21
  tslib_1.__exportStar(require("./components/primitives/list/list.component"), exports);
22
22
  tslib_1.__exportStar(require("./components/primitives/card/card.component"), exports);
23
+ tslib_1.__exportStar(require("./components/primitives/sidebar/sidebar.component"), exports);
24
+ tslib_1.__exportStar(require("./components/primitives/tabs/tabs.component"), exports);
25
+ tslib_1.__exportStar(require("./components/primitives/breadcrumbs/breadcrumbs.component"), exports);
23
26
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/angular-renderer/src/index.ts"],"names":[],"mappings":";;;AAAA,+DAAqC;AACrC,mEAAyC;AACzC,gEAAsC;AACtC,iEAAuC;AACvC,sFAA4D;AAC5D,kGAAwE;AACxE,0FAAgE;AAChE,qDAA2B;AAC3B,0FAAgE;AAChE,8FAAoE;AACpE,oGAA0E;AAC1E,8FAAoE;AACpE,sFAA4D;AAC5D,wFAA8D;AAC9D,kGAAwE;AACxE,oEAA0C;AAC1C,gGAAsE;AACtE,sFAA4D;AAC5D,sFAA4D"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/angular-renderer/src/index.ts"],"names":[],"mappings":";;;AAAA,+DAAqC;AACrC,mEAAyC;AACzC,gEAAsC;AACtC,iEAAuC;AACvC,sFAA4D;AAC5D,kGAAwE;AACxE,0FAAgE;AAChE,qDAA2B;AAC3B,0FAAgE;AAChE,8FAAoE;AACpE,oGAA0E;AAC1E,8FAAoE;AACpE,sFAA4D;AAC5D,wFAA8D;AAC9D,kGAAwE;AACxE,oEAA0C;AAC1C,gGAAsE;AACtE,sFAA4D;AAC5D,sFAA4D;AAC5D,4FAAkE;AAClE,sFAA4D;AAC5D,oGAA0E"}
@@ -13,6 +13,9 @@ const form_field_component_1 = require("../components/primitives/form-field/form
13
13
  const data_grid_component_1 = require("../components/primitives/data-grid/data-grid.component");
14
14
  const list_component_1 = require("../components/primitives/list/list.component");
15
15
  const card_component_1 = require("../components/primitives/card/card.component");
16
+ const sidebar_component_1 = require("../components/primitives/sidebar/sidebar.component");
17
+ const tabs_component_1 = require("../components/primitives/tabs/tabs.component");
18
+ const breadcrumbs_component_1 = require("../components/primitives/breadcrumbs/breadcrumbs.component");
16
19
  function provideOrigo9Primitives() {
17
20
  return (0, core_1.makeEnvironmentProviders)([
18
21
  {
@@ -28,6 +31,10 @@ function provideOrigo9Primitives() {
28
31
  m.set('DataGrid', data_grid_component_1.DataGridComponent);
29
32
  m.set('List', list_component_1.ListComponent);
30
33
  m.set('Card', card_component_1.CardComponent);
34
+ m.set('Sidebar', sidebar_component_1.SidebarComponent);
35
+ m.set('Tabs', tabs_component_1.TabsComponent);
36
+ m.set('Breadcrumbs', breadcrumbs_component_1.BreadcrumbsComponent);
37
+ m.set('Navigation', sidebar_component_1.SidebarComponent);
31
38
  return m;
32
39
  },
33
40
  deps: [renderer_tokens_1.RENDERER_REGISTRY],
@@ -1 +1 @@
1
- {"version":3,"file":"primitives.provider.js","sourceRoot":"","sources":["../../../../../packages/angular-renderer/src/lib/primitives.provider.ts"],"names":[],"mappings":";;AAaA,0DAoBC;AAjCD,wCAAqF;AACrF,uDAAsD;AACtD,uFAAmF;AACnF,6FAAyF;AACzF,sGAAiG;AACjG,6FAAyF;AACzF,iFAA6E;AAC7E,oFAAgF;AAChF,mGAA8F;AAC9F,gGAA2F;AAC3F,iFAA6E;AAC7E,iFAA6E;AAE7E,SAAgB,uBAAuB;IACrC,OAAO,IAAA,+BAAwB,EAAC;QAC9B;YACE,OAAO,EAAE,mCAAiB;YAC1B,UAAU,EAAE,CAAC,CAA6B,EAAE,EAAE;gBAC5C,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,kCAAe,CAAC,CAAC;gBACjC,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,sCAAiB,CAAC,CAAC;gBACrC,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,2CAAmB,CAAC,CAAC;gBACzC,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,sCAAiB,CAAC,CAAC;gBACrC,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,8BAAa,CAAC,CAAC;gBAC7B,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,gCAAc,CAAC,CAAC;gBAC/B,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,yCAAkB,CAAC,CAAC;gBACvC,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,uCAAiB,CAAC,CAAC;gBACrC,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,8BAAa,CAAC,CAAC;gBAC7B,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,8BAAa,CAAC,CAAC;gBAC7B,OAAO,CAAC,CAAC;YACX,CAAC;YACD,IAAI,EAAE,CAAC,mCAAiB,CAAC;SAC1B;KACF,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"primitives.provider.js","sourceRoot":"","sources":["../../../../../packages/angular-renderer/src/lib/primitives.provider.ts"],"names":[],"mappings":";;AAgBA,0DAwBC;AAxCD,wCAAqF;AACrF,uDAAsD;AACtD,uFAAmF;AACnF,6FAAyF;AACzF,sGAAiG;AACjG,6FAAyF;AACzF,iFAA6E;AAC7E,oFAAgF;AAChF,mGAA8F;AAC9F,gGAA2F;AAC3F,iFAA6E;AAC7E,iFAA6E;AAC7E,0FAAsF;AACtF,iFAA6E;AAC7E,sGAAkG;AAElG,SAAgB,uBAAuB;IACrC,OAAO,IAAA,+BAAwB,EAAC;QAC9B;YACE,OAAO,EAAE,mCAAiB;YAC1B,UAAU,EAAE,CAAC,CAA6B,EAAE,EAAE;gBAC5C,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,kCAAe,CAAC,CAAC;gBACjC,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,sCAAiB,CAAC,CAAC;gBACrC,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,2CAAmB,CAAC,CAAC;gBACzC,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,sCAAiB,CAAC,CAAC;gBACrC,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,8BAAa,CAAC,CAAC;gBAC7B,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,gCAAc,CAAC,CAAC;gBAC/B,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,yCAAkB,CAAC,CAAC;gBACvC,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,uCAAiB,CAAC,CAAC;gBACrC,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,8BAAa,CAAC,CAAC;gBAC7B,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,8BAAa,CAAC,CAAC;gBAC7B,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,oCAAgB,CAAC,CAAC;gBACnC,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,8BAAa,CAAC,CAAC;gBAC7B,CAAC,CAAC,GAAG,CAAC,aAAa,EAAE,4CAAoB,CAAC,CAAC;gBAC3C,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,oCAAgB,CAAC,CAAC;gBACtC,OAAO,CAAC,CAAC;YACX,CAAC;YACD,IAAI,EAAE,CAAC,mCAAiB,CAAC;SAC1B;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -1,3 +1,7 @@
1
+ ## 0.0.35 (2026-09-22)
2
+
3
+ This was a version bump only for cli to align it with other projects, there were no code changes.
4
+
1
5
  ## 0.0.34 (2026-09-22)
2
6
 
3
7
  This was a version bump only for cli to align it with other projects, there were no code changes.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@origostudio/cli",
3
- "version": "0.0.34",
3
+ "version": "0.0.35",
4
4
  "private": false,
5
5
  "type": "commonjs",
6
6
  "main": "./src/index.js",
@@ -9,7 +9,7 @@
9
9
  "origo": "./src/main.js"
10
10
  },
11
11
  "dependencies": {
12
- "@origo/core": "0.0.34",
12
+ "@origo/core": "0.0.35",
13
13
  "commander": "^15.0.0",
14
14
  "tslib": "^2.3.0"
15
15
  },
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@origostudio/cli",
3
- "version": "0.0.34",
3
+ "version": "0.0.35",
4
4
  "private": false,
5
5
  "type": "commonjs",
6
6
  "main": "./src/index.js",
@@ -9,7 +9,7 @@
9
9
  "origo": "./src/main.js"
10
10
  },
11
11
  "dependencies": {
12
- "@origo/core": "0.0.34",
12
+ "@origo/core": "0.0.35",
13
13
  "commander": "^15.0.0",
14
14
  "tslib": "^2.3.0"
15
15
  },
@@ -1,3 +1,7 @@
1
+ ## 0.0.35 (2026-09-22)
2
+
3
+ This was a version bump only for core to align it with other projects, there were no code changes.
4
+
1
5
  ## 0.0.34 (2026-09-22)
2
6
 
3
7
  This was a version bump only for core to align it with other projects, there were no code changes.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@origo/core",
3
- "version": "0.0.34",
3
+ "version": "0.0.35",
4
4
  "private": true,
5
5
  "type": "commonjs",
6
6
  "main": "./src/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@origo/core",
3
- "version": "0.0.34",
3
+ "version": "0.0.35",
4
4
  "private": true,
5
5
  "type": "commonjs",
6
6
  "main": "./src/index.js",
@@ -1,3 +1,7 @@
1
+ ## 0.0.35 (2026-09-22)
2
+
3
+ This was a version bump only for design-tokens to align it with other projects, there were no code changes.
4
+
1
5
  ## 0.0.34 (2026-09-22)
2
6
 
3
7
  This was a version bump only for design-tokens to align it with other projects, there were no code changes.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@origo/design-tokens",
3
- "version": "0.0.34",
3
+ "version": "0.0.35",
4
4
  "private": false,
5
5
  "type": "commonjs",
6
6
  "main": "./src/index.js",