@adia-ai/web-modules 0.8.36 → 0.8.37

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 (89) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/README.md +3 -3
  3. package/agent-admin/admin-roster/admin-roster.js +1 -1
  4. package/agent-admin/admin-settings/admin-settings.js +1 -1
  5. package/agent-admin/agent-admin/agent-admin.js +1 -1
  6. package/billing/billing-overview/billing-overview.a2ui.json +281 -0
  7. package/billing/billing-overview/billing-overview.class.js +838 -0
  8. package/billing/billing-overview/billing-overview.css +223 -0
  9. package/billing/billing-overview/billing-overview.js +16 -0
  10. package/billing/billing-overview/billing-overview.yaml +441 -0
  11. package/billing/index.js +21 -0
  12. package/billing/invoice-detail/invoice-detail.a2ui.json +276 -0
  13. package/billing/invoice-detail/invoice-detail.class.js +711 -0
  14. package/billing/invoice-detail/invoice-detail.css +305 -0
  15. package/billing/invoice-detail/invoice-detail.js +16 -0
  16. package/billing/invoice-detail/invoice-detail.yaml +411 -0
  17. package/billing/invoice-history/invoice-history.a2ui.json +315 -0
  18. package/billing/invoice-history/invoice-history.class.js +672 -0
  19. package/billing/invoice-history/invoice-history.css +130 -0
  20. package/billing/invoice-history/invoice-history.js +16 -0
  21. package/billing/invoice-history/invoice-history.yaml +398 -0
  22. package/billing/payment-method-form/payment-method-form.a2ui.json +310 -0
  23. package/billing/payment-method-form/payment-method-form.class.js +886 -0
  24. package/billing/payment-method-form/payment-method-form.css +149 -0
  25. package/billing/payment-method-form/payment-method-form.js +16 -0
  26. package/billing/payment-method-form/payment-method-form.yaml +430 -0
  27. package/billing/payment-method-list/payment-method-list.a2ui.json +283 -0
  28. package/billing/payment-method-list/payment-method-list.class.js +705 -0
  29. package/billing/payment-method-list/payment-method-list.css +128 -0
  30. package/billing/payment-method-list/payment-method-list.js +16 -0
  31. package/billing/payment-method-list/payment-method-list.yaml +355 -0
  32. package/billing/plan-picker/plan-picker.a2ui.json +349 -0
  33. package/billing/plan-picker/plan-picker.class.js +635 -0
  34. package/billing/plan-picker/plan-picker.css +227 -0
  35. package/billing/plan-picker/plan-picker.js +16 -0
  36. package/billing/plan-picker/plan-picker.yaml +453 -0
  37. package/chat/README.md +1 -1
  38. package/chat/chat-composer/chat-composer.js +2 -2
  39. package/chat/chat-empty/chat-empty.js +2 -2
  40. package/chat/chat-shell/chat-shell.js +4 -4
  41. package/chat/chat-sidebar/chat-sidebar.js +2 -2
  42. package/chat/chat-surfaces/chat-surfaces.js +2 -2
  43. package/chat/chat-thread/chat-thread.js +2 -2
  44. package/dashboard/dashboard-layout/dashboard-layout.a2ui.json +254 -0
  45. package/dashboard/dashboard-layout/dashboard-layout.css +190 -0
  46. package/dashboard/dashboard-layout/dashboard-layout.js +289 -0
  47. package/dashboard/dashboard-layout/dashboard-layout.yaml +374 -0
  48. package/dashboard/date-range-selector/date-range-selector.a2ui.json +236 -0
  49. package/dashboard/date-range-selector/date-range-selector.css +84 -0
  50. package/dashboard/date-range-selector/date-range-selector.js +686 -0
  51. package/dashboard/date-range-selector/date-range-selector.yaml +358 -0
  52. package/dashboard/index.js +14 -0
  53. package/dist/everything.min.js +1 -1
  54. package/editor/editor-canvas/editor-canvas.js +2 -2
  55. package/editor/editor-shell/editor-shell.js +2 -2
  56. package/editor/editor-sidebar/editor-sidebar.js +2 -2
  57. package/editor/editor-toolbar/editor-toolbar.js +2 -2
  58. package/feedback/confirm-dialog/confirm-dialog.a2ui.json +206 -0
  59. package/feedback/confirm-dialog/confirm-dialog.css +157 -0
  60. package/feedback/confirm-dialog/confirm-dialog.js +383 -0
  61. package/feedback/confirm-dialog/confirm-dialog.yaml +297 -0
  62. package/feedback/index.js +10 -0
  63. package/form/form-popover/form-popover.js +1 -1
  64. package/generative/index.d.ts +1 -1
  65. package/generative/index.js +2 -2
  66. package/onboarding/index.js +1 -0
  67. package/onboarding/onboarding-checklist/onboarding-checklist.a2ui.json +263 -0
  68. package/onboarding/onboarding-checklist/onboarding-checklist.css +157 -0
  69. package/onboarding/onboarding-checklist/onboarding-checklist.js +428 -0
  70. package/onboarding/onboarding-checklist/onboarding-checklist.yaml +236 -0
  71. package/package.json +99 -6
  72. package/runtime/a2ui-root/a2ui-root.js +3 -3
  73. package/runtime/gen-root/gen-root.js +5 -5
  74. package/settings/index.js +12 -0
  75. package/settings/integrations-page/integrations-page.a2ui.json +274 -0
  76. package/settings/integrations-page/integrations-page.css +177 -0
  77. package/settings/integrations-page/integrations-page.d.ts +77 -0
  78. package/settings/integrations-page/integrations-page.js +413 -0
  79. package/settings/integrations-page/integrations-page.yaml +317 -0
  80. package/settings/notification-preferences/notification-preferences.a2ui.json +245 -0
  81. package/settings/notification-preferences/notification-preferences.css +204 -0
  82. package/settings/notification-preferences/notification-preferences.js +622 -0
  83. package/settings/notification-preferences/notification-preferences.yaml +358 -0
  84. package/shell/admin-command/admin-command.js +2 -2
  85. package/shell/admin-shell/admin-shell.js +2 -2
  86. package/shell/admin-sidebar/admin-sidebar.js +2 -2
  87. package/shell/embed-shell/embed-shell.js +3 -3
  88. package/simple/simple-shell/simple-shell.js +1 -1
  89. package/theme/theme-panel/theme-panel.js +2 -2
@@ -0,0 +1,204 @@
1
+ /* ═══════════════════════════════════════════════════════════════
2
+ <notification-preferences-ui> — Notification types × channels matrix.
3
+
4
+ Composite over <check-ui> (cell) + <switch-ui> (column master) +
5
+ <icon-ui> + <text-ui> + <empty-state-ui>. Renders as an ARIA grid
6
+ (role="table"/row/cell/columnheader/rowheader) using CSS grid for
7
+ layout — NOT native <table> (HTML parser strips table-content tags
8
+ inside custom-element subtrees per FEEDBACK rule).
9
+
10
+ SPEC: docs/specs/implementation-ready/SPEC-064-notification-preferences.md
11
+ Two-block @scope pattern per docs/specs/component-token-contract.md.
12
+ Zero raw color values (repo hard rule); zero raw px ≥ 3 (rem only).
13
+ ═══════════════════════════════════════════════════════════════ */
14
+
15
+ /* ── Block 1: TOKEN DECLARATIONS ───────────────────────────────── */
16
+
17
+ notification-preferences-ui {
18
+ --notification-preferences-bg: var(--md-sys-color-neutral-background);
19
+ --notification-preferences-row-bg: var(--a-bg-muted);
20
+ --notification-preferences-px: var(--a-space-5);
21
+ --notification-preferences-py: var(--a-space-5);
22
+ --notification-preferences-row-py: var(--a-space-3);
23
+ --notification-preferences-row-px: var(--a-space-3);
24
+ --notification-preferences-channel-width: var(--a-space-9);
25
+ --notification-preferences-row-label-min: 12rem;
26
+ --notification-preferences-border: var(--md-sys-color-neutral-outline-variant);
27
+ --notification-preferences-radius: var(--a-radius-md);
28
+ --notification-preferences-group-fg: var(--a-fg-muted);
29
+
30
+ --notification-preferences-disabled-opacity: var(--a-opacity-disabled, 0.5);
31
+ }
32
+
33
+ /* ── Block 2: SCOPED LAYOUT ────────────────────────────────────── */
34
+
35
+ @scope (notification-preferences-ui) {
36
+
37
+ :scope {
38
+ display: flex;
39
+ flex-direction: column;
40
+ gap: var(--a-space-4);
41
+ padding: var(--notification-preferences-py)
42
+ var(--notification-preferences-px);
43
+ background: var(--notification-preferences-bg);
44
+ border: 1px solid var(--notification-preferences-border);
45
+ border-radius: var(--notification-preferences-radius);
46
+ }
47
+
48
+ /* ── Slotted header + footer ── */
49
+ :scope > [data-part="header"] {
50
+ display: flex;
51
+ flex-direction: column;
52
+ gap: var(--a-space-2);
53
+ }
54
+ :scope > [data-part="header"]:empty {
55
+ display: none;
56
+ }
57
+ :scope > [data-part="footer"] {
58
+ display: flex;
59
+ flex-direction: column;
60
+ gap: var(--a-space-2);
61
+ }
62
+ :scope > [data-part="footer"]:empty {
63
+ display: none;
64
+ }
65
+
66
+ /* ── Matrix host ── */
67
+ :scope [data-part="matrix"] {
68
+ display: flex;
69
+ flex-direction: column;
70
+ }
71
+
72
+ /* ── Row template ── row-label column + N channel columns.
73
+ The custom property --np-columns is set by the JS at render
74
+ time once `channels` is known: e.g. `repeat(3, minmax(...))`. ── */
75
+ :scope [role="row"],
76
+ :scope [data-part="header-row"] {
77
+ display: grid;
78
+ grid-template-columns:
79
+ minmax(var(--notification-preferences-row-label-min), 1fr)
80
+ var(--np-columns, repeat(3, minmax(var(--notification-preferences-channel-width),
81
+ auto)));
82
+ align-items: center;
83
+ gap: var(--a-space-2);
84
+ padding: var(--notification-preferences-row-py)
85
+ var(--notification-preferences-row-px);
86
+ border-bottom: 1px solid var(--notification-preferences-border);
87
+ }
88
+
89
+ /* Header row carries the column titles; no zebra applied. */
90
+ :scope [data-part="header-row"] {
91
+ background: transparent;
92
+ }
93
+
94
+ /* Body rows alternate via :nth-child for zebra. */
95
+ :scope [data-part="body"] [role="row"]:nth-child(even) {
96
+ background: var(--notification-preferences-row-bg);
97
+ }
98
+ :scope [data-part="body"] [role="row"]:last-child {
99
+ border-bottom: 0;
100
+ }
101
+
102
+ /* ── Header cells (column headers) ── */
103
+ :scope [role="columnheader"] {
104
+ display: flex;
105
+ align-items: center;
106
+ justify-content: center;
107
+ gap: var(--a-space-1);
108
+ flex-direction: column;
109
+ min-width: var(--notification-preferences-channel-width);
110
+ color: var(--a-fg-muted);
111
+ font-size: var(--a-text-xs, 0.75rem);
112
+ font-weight: var(--a-weight-medium, 500);
113
+ letter-spacing: 0.06em;
114
+ text-transform: uppercase;
115
+ }
116
+ :scope [role="columnheader"][data-row-label] {
117
+ align-items: flex-start;
118
+ justify-content: flex-start;
119
+ text-align: start;
120
+ flex-direction: row;
121
+ }
122
+ :scope [role="columnheader"] > icon-ui {
123
+ --a-icon-size: 1rem;
124
+ color: var(--a-fg-muted);
125
+ }
126
+ :scope [role="columnheader"] > [data-channel-label] {
127
+ display: block;
128
+ }
129
+ :scope [role="columnheader"] > switch-ui {
130
+ margin-block-start: var(--a-space-1);
131
+ }
132
+
133
+ /* ── Row header (notification-type label cell) ── */
134
+ :scope [role="rowheader"] {
135
+ display: flex;
136
+ flex-direction: column;
137
+ gap: var(--a-space-1);
138
+ align-items: flex-start;
139
+ min-width: 0;
140
+ }
141
+ :scope [role="rowheader"] > [data-row-label-text] {
142
+ color: var(--md-sys-color-neutral-on-surface);
143
+ font-weight: var(--a-weight-medium, 500);
144
+ font-size: var(--a-text-sm, 0.875rem);
145
+ }
146
+ :scope [role="rowheader"] > [data-row-description] {
147
+ color: var(--a-fg-muted);
148
+ font-size: var(--a-text-xs, 0.75rem);
149
+ line-height: 1.4;
150
+ }
151
+
152
+ /* ── Cells (per-(row,channel) check-ui) ── */
153
+ :scope [role="cell"] {
154
+ display: flex;
155
+ align-items: center;
156
+ justify-content: center;
157
+ min-width: var(--notification-preferences-channel-width);
158
+ }
159
+
160
+ /* ── Group heading row (when group-by="group") ── */
161
+ :scope [data-part="group-heading"] {
162
+ padding: var(--a-space-3)
163
+ var(--notification-preferences-row-px)
164
+ var(--a-space-2);
165
+ color: var(--notification-preferences-group-fg);
166
+ font-size: var(--a-text-xs, 0.75rem);
167
+ font-weight: var(--a-weight-medium, 500);
168
+ letter-spacing: 0.06em;
169
+ text-transform: uppercase;
170
+ }
171
+ :scope [data-part="group-heading"]:first-child {
172
+ padding-block-start: 0;
173
+ }
174
+
175
+ /* ── Empty state ── */
176
+ :scope > [data-part="empty"] {
177
+ display: none;
178
+ }
179
+ :scope[empty] > [data-part="empty"] {
180
+ display: block;
181
+ }
182
+ :scope[empty] > [data-part="matrix"] {
183
+ display: none;
184
+ }
185
+
186
+ /* ── Loading state — dim + freeze cells ── */
187
+ :scope[loading] [role="cell"] {
188
+ opacity: 0.4;
189
+ pointer-events: none;
190
+ }
191
+ :scope[loading] [role="columnheader"] > switch-ui {
192
+ opacity: 0.4;
193
+ pointer-events: none;
194
+ }
195
+
196
+ /* ── Disabled state ── */
197
+ :scope[disabled] {
198
+ opacity: var(--notification-preferences-disabled-opacity);
199
+ }
200
+ :scope[disabled] check-ui,
201
+ :scope[disabled] switch-ui {
202
+ pointer-events: none;
203
+ }
204
+ }