@forgeroute/ui 0.4.19 → 0.4.20
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/fesm2022/forgeroute-ui-messaging.mjs +4 -0
- package/fesm2022/forgeroute-ui-messaging.mjs.map +1 -1
- package/fesm2022/forgeroute-ui-stripe.mjs +1 -0
- package/fesm2022/forgeroute-ui-stripe.mjs.map +1 -1
- package/fesm2022/forgeroute-ui.mjs +737 -19
- package/fesm2022/forgeroute-ui.mjs.map +1 -1
- package/package.json +1 -1
- package/types/forgeroute-ui.d.ts +210 -1
|
@@ -4742,6 +4742,7 @@ var TextInputComponent = class TextInputComponent {
|
|
|
4742
4742
|
constructor() {
|
|
4743
4743
|
this.label = input("", ...ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []);
|
|
4744
4744
|
this.ariaLabel = input("", ...ngDevMode ? [{ debugName: "ariaLabel" }] : /* istanbul ignore next */ []);
|
|
4745
|
+
this.inputTestId = input("", ...ngDevMode ? [{ debugName: "inputTestId" }] : /* istanbul ignore next */ []);
|
|
4745
4746
|
this.placeholder = input("", ...ngDevMode ? [{ debugName: "placeholder" }] : /* istanbul ignore next */ []);
|
|
4746
4747
|
this.prefix = input("", ...ngDevMode ? [{ debugName: "prefix" }] : /* istanbul ignore next */ []);
|
|
4747
4748
|
this.revealable = input(false, ...ngDevMode ? [{ debugName: "revealable" }] : /* istanbul ignore next */ []);
|
|
@@ -4973,6 +4974,13 @@ var TextInputComponent = class TextInputComponent {
|
|
|
4973
4974
|
isRequired: false,
|
|
4974
4975
|
transformFunction: null
|
|
4975
4976
|
},
|
|
4977
|
+
inputTestId: {
|
|
4978
|
+
classPropertyName: "inputTestId",
|
|
4979
|
+
publicName: "inputTestId",
|
|
4980
|
+
isSignal: true,
|
|
4981
|
+
isRequired: false,
|
|
4982
|
+
transformFunction: null
|
|
4983
|
+
},
|
|
4976
4984
|
placeholder: {
|
|
4977
4985
|
classPropertyName: "placeholder",
|
|
4978
4986
|
publicName: "placeholder",
|
|
@@ -5163,16 +5171,20 @@ var TextInputComponent = class TextInputComponent {
|
|
|
5163
5171
|
<div class="ti-field" [class.ti-error]="_activeError()" [class.ti-disabled]="disabled()"
|
|
5164
5172
|
[class.ti-prefixed]="!!prefix() || _revealable()" [style.--ti-input-row]="(prefix() || _revealable()) ? (label() ? 2 : 1) : null">
|
|
5165
5173
|
@if (label()) {
|
|
5166
|
-
<
|
|
5167
|
-
|
|
5168
|
-
|
|
5169
|
-
|
|
5174
|
+
<div class="ti-label-row">
|
|
5175
|
+
<label class="ti-label" [for]="_inputId">
|
|
5176
|
+
{{ label() }}
|
|
5177
|
+
@if (required()) { <span class="ti-required" aria-hidden="true">*</span> }
|
|
5178
|
+
</label>
|
|
5179
|
+
<ng-content select="[uiLabelEnd]" />
|
|
5180
|
+
</div>
|
|
5170
5181
|
}
|
|
5171
5182
|
<input
|
|
5172
5183
|
class="ti-input"
|
|
5173
5184
|
[style.padding-left]="_prefixPadding()"
|
|
5174
5185
|
[style.padding-right]="_revealable() ? '44px' : null"
|
|
5175
5186
|
[id]="_inputId"
|
|
5187
|
+
[attr.data-testid]="inputTestId() || null"
|
|
5176
5188
|
[type]="_inputType()"
|
|
5177
5189
|
[attr.inputmode]="inputmode() || (type() === 'tel' ? 'tel' : integer() ? 'numeric' : null)"
|
|
5178
5190
|
[placeholder]="placeholder()"
|
|
@@ -5214,7 +5226,7 @@ var TextInputComponent = class TextInputComponent {
|
|
|
5214
5226
|
</div>
|
|
5215
5227
|
`,
|
|
5216
5228
|
isInline: true,
|
|
5217
|
-
styles: [":host{display:block}.ti-field{display:flex;flex-direction:column;gap:6px}.ti-label{font-size:.8125rem;font-weight:600;color:#374151;line-height:1}.ti-required{color:#dc2626;margin-left:2px}.ti-prefixed{display:grid;grid-template-columns:minmax(0,1fr)}.ti-prefixed .ti-input{grid-row:var(--ti-input-row);grid-column:1}.ti-prefix{grid-row:var(--ti-input-row);grid-column:1;justify-self:start;align-self:center;margin-left:12px;font-size:.875rem;line-height:1;color:#64748b;pointer-events:none}@media(max-width:480px){.ti-prefix{font-size:1rem}}.ti-disabled .ti-prefix{opacity:.5}.ti-reveal{grid-row:var(--ti-input-row);grid-column:1;justify-self:end;align-self:center;margin-right:6px;position:relative;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:0;border-radius:6px;background:transparent;color:#64748b;cursor:pointer}.ti-reveal:hover:not(:disabled){color:#1e293b;background:#f1f5f9}.ti-reveal:focus-visible{outline:2px solid #3b82f6;outline-offset:0}.ti-reveal:disabled{opacity:.5;cursor:not-allowed}@media(pointer:coarse),(max-width:480px){.ti-reveal{width:44px;height:44px;margin-right:0}}.ti-input{width:100%;box-sizing:border-box;padding:9px 12px;font-size:.875rem;font-family:inherit;color:#1e293b;background:#fff;border:1px solid #e2e8f0;border-radius:8px;outline:none;transition:border-color .15s,box-shadow .15s}.ti-input::placeholder{color:#94a3b8}.ti-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61f}.ti-input:read-only{background:#f8fafc;cursor:default}.ti-error .ti-input{border-color:#ef4444}.ti-error .ti-input:focus{box-shadow:0 0 0 3px #ef44441f}.ti-disabled .ti-input{opacity:.5;cursor:not-allowed}.ti-desc{margin:0;font-size:.75rem;line-height:1.4;color:#64748b}.ti-desc-error{color:#dc2626}@media(max-width:480px){.ti-input{font-size:1rem}}@media(pointer:coarse),(max-width:480px){.ti-input{min-height:44px}}\n"],
|
|
5229
|
+
styles: [":host{display:block}.ti-field{display:flex;flex-direction:column;gap:6px}.ti-label-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.ti-label-row>[uiLabelEnd]{margin-left:auto}.ti-label{font-size:.8125rem;font-weight:600;color:#374151;line-height:1}.ti-required{color:#dc2626;margin-left:2px}.ti-prefixed{display:grid;grid-template-columns:minmax(0,1fr)}.ti-prefixed .ti-input{grid-row:var(--ti-input-row);grid-column:1}.ti-prefix{grid-row:var(--ti-input-row);grid-column:1;justify-self:start;align-self:center;margin-left:12px;font-size:.875rem;line-height:1;color:#64748b;pointer-events:none}@media(max-width:480px){.ti-prefix{font-size:1rem}}.ti-disabled .ti-prefix{opacity:.5}.ti-reveal{grid-row:var(--ti-input-row);grid-column:1;justify-self:end;align-self:center;margin-right:6px;position:relative;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:0;border-radius:6px;background:transparent;color:#64748b;cursor:pointer}.ti-reveal:hover:not(:disabled){color:#1e293b;background:#f1f5f9}.ti-reveal:focus-visible{outline:2px solid #3b82f6;outline-offset:0}.ti-reveal:disabled{opacity:.5;cursor:not-allowed}@media(pointer:coarse),(max-width:480px){.ti-reveal{width:44px;height:44px;margin-right:0}}.ti-input{width:100%;box-sizing:border-box;padding:9px 12px;font-size:.875rem;font-family:inherit;color:#1e293b;background:#fff;border:1px solid #e2e8f0;border-radius:8px;outline:none;transition:border-color .15s,box-shadow .15s}.ti-input::placeholder{color:#94a3b8}.ti-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61f}.ti-input:read-only{background:#f8fafc;cursor:default}.ti-error .ti-input{border-color:#ef4444}.ti-error .ti-input:focus{box-shadow:0 0 0 3px #ef44441f}.ti-disabled .ti-input{opacity:.5;cursor:not-allowed}.ti-desc{margin:0;font-size:.75rem;line-height:1.4;color:#64748b}.ti-desc-error{color:#dc2626}@media(max-width:480px){.ti-input{font-size:1rem}}@media(pointer:coarse),(max-width:480px){.ti-input{min-height:44px}}\n"],
|
|
5218
5230
|
dependencies: [{
|
|
5219
5231
|
kind: "component",
|
|
5220
5232
|
type: PasswordRequirementsComponent,
|
|
@@ -5261,16 +5273,20 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
5261
5273
|
<div class="ti-field" [class.ti-error]="_activeError()" [class.ti-disabled]="disabled()"
|
|
5262
5274
|
[class.ti-prefixed]="!!prefix() || _revealable()" [style.--ti-input-row]="(prefix() || _revealable()) ? (label() ? 2 : 1) : null">
|
|
5263
5275
|
@if (label()) {
|
|
5264
|
-
<
|
|
5265
|
-
|
|
5266
|
-
|
|
5267
|
-
|
|
5276
|
+
<div class="ti-label-row">
|
|
5277
|
+
<label class="ti-label" [for]="_inputId">
|
|
5278
|
+
{{ label() }}
|
|
5279
|
+
@if (required()) { <span class="ti-required" aria-hidden="true">*</span> }
|
|
5280
|
+
</label>
|
|
5281
|
+
<ng-content select="[uiLabelEnd]" />
|
|
5282
|
+
</div>
|
|
5268
5283
|
}
|
|
5269
5284
|
<input
|
|
5270
5285
|
class="ti-input"
|
|
5271
5286
|
[style.padding-left]="_prefixPadding()"
|
|
5272
5287
|
[style.padding-right]="_revealable() ? '44px' : null"
|
|
5273
5288
|
[id]="_inputId"
|
|
5289
|
+
[attr.data-testid]="inputTestId() || null"
|
|
5274
5290
|
[type]="_inputType()"
|
|
5275
5291
|
[attr.inputmode]="inputmode() || (type() === 'tel' ? 'tel' : integer() ? 'numeric' : null)"
|
|
5276
5292
|
[placeholder]="placeholder()"
|
|
@@ -5311,7 +5327,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
5311
5327
|
}
|
|
5312
5328
|
</div>
|
|
5313
5329
|
`,
|
|
5314
|
-
styles: [":host{display:block}.ti-field{display:flex;flex-direction:column;gap:6px}.ti-label{font-size:.8125rem;font-weight:600;color:#374151;line-height:1}.ti-required{color:#dc2626;margin-left:2px}.ti-prefixed{display:grid;grid-template-columns:minmax(0,1fr)}.ti-prefixed .ti-input{grid-row:var(--ti-input-row);grid-column:1}.ti-prefix{grid-row:var(--ti-input-row);grid-column:1;justify-self:start;align-self:center;margin-left:12px;font-size:.875rem;line-height:1;color:#64748b;pointer-events:none}@media(max-width:480px){.ti-prefix{font-size:1rem}}.ti-disabled .ti-prefix{opacity:.5}.ti-reveal{grid-row:var(--ti-input-row);grid-column:1;justify-self:end;align-self:center;margin-right:6px;position:relative;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:0;border-radius:6px;background:transparent;color:#64748b;cursor:pointer}.ti-reveal:hover:not(:disabled){color:#1e293b;background:#f1f5f9}.ti-reveal:focus-visible{outline:2px solid #3b82f6;outline-offset:0}.ti-reveal:disabled{opacity:.5;cursor:not-allowed}@media(pointer:coarse),(max-width:480px){.ti-reveal{width:44px;height:44px;margin-right:0}}.ti-input{width:100%;box-sizing:border-box;padding:9px 12px;font-size:.875rem;font-family:inherit;color:#1e293b;background:#fff;border:1px solid #e2e8f0;border-radius:8px;outline:none;transition:border-color .15s,box-shadow .15s}.ti-input::placeholder{color:#94a3b8}.ti-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61f}.ti-input:read-only{background:#f8fafc;cursor:default}.ti-error .ti-input{border-color:#ef4444}.ti-error .ti-input:focus{box-shadow:0 0 0 3px #ef44441f}.ti-disabled .ti-input{opacity:.5;cursor:not-allowed}.ti-desc{margin:0;font-size:.75rem;line-height:1.4;color:#64748b}.ti-desc-error{color:#dc2626}@media(max-width:480px){.ti-input{font-size:1rem}}@media(pointer:coarse),(max-width:480px){.ti-input{min-height:44px}}\n"]
|
|
5330
|
+
styles: [":host{display:block}.ti-field{display:flex;flex-direction:column;gap:6px}.ti-label-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.ti-label-row>[uiLabelEnd]{margin-left:auto}.ti-label{font-size:.8125rem;font-weight:600;color:#374151;line-height:1}.ti-required{color:#dc2626;margin-left:2px}.ti-prefixed{display:grid;grid-template-columns:minmax(0,1fr)}.ti-prefixed .ti-input{grid-row:var(--ti-input-row);grid-column:1}.ti-prefix{grid-row:var(--ti-input-row);grid-column:1;justify-self:start;align-self:center;margin-left:12px;font-size:.875rem;line-height:1;color:#64748b;pointer-events:none}@media(max-width:480px){.ti-prefix{font-size:1rem}}.ti-disabled .ti-prefix{opacity:.5}.ti-reveal{grid-row:var(--ti-input-row);grid-column:1;justify-self:end;align-self:center;margin-right:6px;position:relative;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:0;border-radius:6px;background:transparent;color:#64748b;cursor:pointer}.ti-reveal:hover:not(:disabled){color:#1e293b;background:#f1f5f9}.ti-reveal:focus-visible{outline:2px solid #3b82f6;outline-offset:0}.ti-reveal:disabled{opacity:.5;cursor:not-allowed}@media(pointer:coarse),(max-width:480px){.ti-reveal{width:44px;height:44px;margin-right:0}}.ti-input{width:100%;box-sizing:border-box;padding:9px 12px;font-size:.875rem;font-family:inherit;color:#1e293b;background:#fff;border:1px solid #e2e8f0;border-radius:8px;outline:none;transition:border-color .15s,box-shadow .15s}.ti-input::placeholder{color:#94a3b8}.ti-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61f}.ti-input:read-only{background:#f8fafc;cursor:default}.ti-error .ti-input{border-color:#ef4444}.ti-error .ti-input:focus{box-shadow:0 0 0 3px #ef44441f}.ti-disabled .ti-input{opacity:.5;cursor:not-allowed}.ti-desc{margin:0;font-size:.75rem;line-height:1.4;color:#64748b}.ti-desc-error{color:#dc2626}@media(max-width:480px){.ti-input{font-size:1rem}}@media(pointer:coarse),(max-width:480px){.ti-input{min-height:44px}}\n"]
|
|
5315
5331
|
}]
|
|
5316
5332
|
}],
|
|
5317
5333
|
ctorParameters: () => [],
|
|
@@ -5332,6 +5348,14 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
5332
5348
|
required: false
|
|
5333
5349
|
}]
|
|
5334
5350
|
}],
|
|
5351
|
+
inputTestId: [{
|
|
5352
|
+
type: i0.Input,
|
|
5353
|
+
args: [{
|
|
5354
|
+
isSignal: true,
|
|
5355
|
+
alias: "inputTestId",
|
|
5356
|
+
required: false
|
|
5357
|
+
}]
|
|
5358
|
+
}],
|
|
5335
5359
|
placeholder: [{
|
|
5336
5360
|
type: i0.Input,
|
|
5337
5361
|
args: [{
|
|
@@ -5987,6 +6011,7 @@ var TableToolbarComponent = class TableToolbarComponent {
|
|
|
5987
6011
|
inputs: [
|
|
5988
6012
|
"label",
|
|
5989
6013
|
"ariaLabel",
|
|
6014
|
+
"inputTestId",
|
|
5990
6015
|
"placeholder",
|
|
5991
6016
|
"prefix",
|
|
5992
6017
|
"revealable",
|
|
@@ -17205,6 +17230,7 @@ var PhoneNumberPickerComponent = class PhoneNumberPickerComponent {
|
|
|
17205
17230
|
inputs: [
|
|
17206
17231
|
"label",
|
|
17207
17232
|
"ariaLabel",
|
|
17233
|
+
"inputTestId",
|
|
17208
17234
|
"placeholder",
|
|
17209
17235
|
"prefix",
|
|
17210
17236
|
"revealable",
|
|
@@ -19349,6 +19375,7 @@ var BulkMessagePanelComponent = class BulkMessagePanelComponent {
|
|
|
19349
19375
|
inputs: [
|
|
19350
19376
|
"label",
|
|
19351
19377
|
"ariaLabel",
|
|
19378
|
+
"inputTestId",
|
|
19352
19379
|
"placeholder",
|
|
19353
19380
|
"prefix",
|
|
19354
19381
|
"revealable",
|
|
@@ -24562,7 +24589,7 @@ var ListItemComponent = class ListItemComponent {
|
|
|
24562
24589
|
</div>
|
|
24563
24590
|
`,
|
|
24564
24591
|
isInline: true,
|
|
24565
|
-
styles: ["ui-list-item{display:block}ui-list-item
|
|
24592
|
+
styles: ["ui-list-item{display:block}ui-list-item.li-bordered{border:1px solid var(--border, #e2e8f0);border-radius:12px;overflow:hidden;background:var(--surface, #fff);box-shadow:0 1px 2px #0f172a0a;margin-bottom:8px;transition:border-color .15s ease,box-shadow .15s ease}ui-list-item.li-bordered:last-child{margin-bottom:0}ui-list-item.li-bordered:hover{border-color:#cbd5e1;box-shadow:0 2px 6px #0f172a12}@media(prefers-reduced-motion:reduce){ui-list-item.li-bordered{transition:none}}.li-row{display:flex;align-items:flex-start;gap:14px;padding:12px 16px;border-bottom:1px solid var(--border, #e2e8f0);transition:background .12s}.li-row:last-child{border-bottom:none}.li-row:hover{background:var(--surface-hover, #f8fafc)}ui-list-item.li-bordered .li-row{border-bottom:none;padding:14px 16px}.li-row.li-row--highlighted{background:#f0fdf4}.li-row.li-row--highlighted:hover{background:#dcfce7}.li-row.li-row--static:hover{background:transparent}.li-row.li-row--static.li-row--highlighted,.li-row.li-row--static.li-row--highlighted:hover{background:#f0fdf4}.li-body.li-body--static{cursor:default}.li-row [list-item-action],.li-row [li-action]{flex-shrink:0;align-self:center}.li-input{margin-top:3px;flex-shrink:0;accent-color:#16a34a;width:1rem;height:1rem;cursor:pointer}.li-icon{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px}.li-icon--slate{background:#f1f5f9;color:#475569}.li-icon--amber{background:#fef3c7;color:#b45309}.li-icon--orange{background:#ffedd5;color:#c2410c}.li-icon--red{background:#fee2e2;color:#b91c1c}.li-icon--blue{background:#dbeafe;color:#1d4ed8}.li-icon--green{background:#dcfce7;color:#15803d}.li-icon--purple{background:#f3e8ff;color:#7e22ce}.li-icon--teal{background:#ccfbf1;color:#0f766e}.li-body{flex:1;min-width:0;cursor:pointer;display:flex;flex-direction:column;gap:6px}.li-title-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.li-title{font-size:.9375rem;font-weight:600;line-height:1.4;letter-spacing:-.005em;color:var(--text-primary, #0f172a)}.li-row--wrap .li-title{min-width:0;word-break:break-word;overflow-wrap:anywhere}.li-details{display:flex;flex-direction:column;gap:3px;font-size:.8125rem;line-height:1.4;color:var(--text-secondary, #64748b)}.li-detail{display:flex;align-items:center;gap:6px;min-width:0}.li-detail-icon{flex:0 0 auto;color:#94a3b8}.li-detail--warning,.li-detail--warning .li-detail-icon{color:#b45309}.li-detail--danger,.li-detail--danger .li-detail-icon{color:#b91c1c}.li-row--wrap .li-detail-text{min-width:0;word-break:break-word;overflow-wrap:anywhere}\n"],
|
|
24566
24593
|
dependencies: [{
|
|
24567
24594
|
kind: "component",
|
|
24568
24595
|
type: BadgeComponent,
|
|
@@ -24662,7 +24689,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
24662
24689
|
|
|
24663
24690
|
</div>
|
|
24664
24691
|
`,
|
|
24665
|
-
styles: ["ui-list-item{display:block}ui-list-item
|
|
24692
|
+
styles: ["ui-list-item{display:block}ui-list-item.li-bordered{border:1px solid var(--border, #e2e8f0);border-radius:12px;overflow:hidden;background:var(--surface, #fff);box-shadow:0 1px 2px #0f172a0a;margin-bottom:8px;transition:border-color .15s ease,box-shadow .15s ease}ui-list-item.li-bordered:last-child{margin-bottom:0}ui-list-item.li-bordered:hover{border-color:#cbd5e1;box-shadow:0 2px 6px #0f172a12}@media(prefers-reduced-motion:reduce){ui-list-item.li-bordered{transition:none}}.li-row{display:flex;align-items:flex-start;gap:14px;padding:12px 16px;border-bottom:1px solid var(--border, #e2e8f0);transition:background .12s}.li-row:last-child{border-bottom:none}.li-row:hover{background:var(--surface-hover, #f8fafc)}ui-list-item.li-bordered .li-row{border-bottom:none;padding:14px 16px}.li-row.li-row--highlighted{background:#f0fdf4}.li-row.li-row--highlighted:hover{background:#dcfce7}.li-row.li-row--static:hover{background:transparent}.li-row.li-row--static.li-row--highlighted,.li-row.li-row--static.li-row--highlighted:hover{background:#f0fdf4}.li-body.li-body--static{cursor:default}.li-row [list-item-action],.li-row [li-action]{flex-shrink:0;align-self:center}.li-input{margin-top:3px;flex-shrink:0;accent-color:#16a34a;width:1rem;height:1rem;cursor:pointer}.li-icon{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px}.li-icon--slate{background:#f1f5f9;color:#475569}.li-icon--amber{background:#fef3c7;color:#b45309}.li-icon--orange{background:#ffedd5;color:#c2410c}.li-icon--red{background:#fee2e2;color:#b91c1c}.li-icon--blue{background:#dbeafe;color:#1d4ed8}.li-icon--green{background:#dcfce7;color:#15803d}.li-icon--purple{background:#f3e8ff;color:#7e22ce}.li-icon--teal{background:#ccfbf1;color:#0f766e}.li-body{flex:1;min-width:0;cursor:pointer;display:flex;flex-direction:column;gap:6px}.li-title-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.li-title{font-size:.9375rem;font-weight:600;line-height:1.4;letter-spacing:-.005em;color:var(--text-primary, #0f172a)}.li-row--wrap .li-title{min-width:0;word-break:break-word;overflow-wrap:anywhere}.li-details{display:flex;flex-direction:column;gap:3px;font-size:.8125rem;line-height:1.4;color:var(--text-secondary, #64748b)}.li-detail{display:flex;align-items:center;gap:6px;min-width:0}.li-detail-icon{flex:0 0 auto;color:#94a3b8}.li-detail--warning,.li-detail--warning .li-detail-icon{color:#b45309}.li-detail--danger,.li-detail--danger .li-detail-icon{color:#b91c1c}.li-row--wrap .li-detail-text{min-width:0;word-break:break-word;overflow-wrap:anywhere}\n"]
|
|
24666
24693
|
}]
|
|
24667
24694
|
}],
|
|
24668
24695
|
propDecorators: {
|
|
@@ -25346,7 +25373,7 @@ var ListComponent = class ListComponent {
|
|
|
25346
25373
|
}
|
|
25347
25374
|
`,
|
|
25348
25375
|
isInline: true,
|
|
25349
|
-
styles: ["ui-list{display:block;min-width:0}.ul-list{margin:0;padding:0;min-width:0}.ul-list--unordered{list-style:none}.ul-list--ordered{list-style:decimal;-webkit-padding-start:1.75rem;padding-inline-start:1.75rem}.ul-list--ordered>.ul-item::marker{color:var(--text-secondary, #64748b);font-size:.875rem}.ul-item{min-width:0;transition:background-color .4s ease}.ul-item.ul-item--moved{background-color:var(--surface-hover, #f1f5f9)}.ul-list:not(.ul-list--grid)>.ul-item+.ul-item{margin-top:var(--ul-gap, 0px)}.ul-row{display:flex;align-items:center;gap:8px;min-width:0}.ul-content{flex:1 1 auto;min-width:0;word-break:break-word;overflow-wrap:anywhere}.ul-controls{display:flex;flex:0 0 auto;align-items:center;gap:2px}.ul-item--nav{cursor:pointer;border-radius:10px;transition:background-color .12s ease}.ul-item--nav:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.ul-item--nav:hover{background:var(--surface-hover, #f8fafc)}.ul-item--nav>.ul-row{padding-inline-end:
|
|
25376
|
+
styles: ["ui-list{display:block;min-width:0}.ul-list{margin:0;padding:0;min-width:0}.ul-list--unordered{list-style:none}.ul-list--ordered{list-style:decimal;-webkit-padding-start:1.75rem;padding-inline-start:1.75rem}.ul-list--ordered>.ul-item::marker{color:var(--text-secondary, #64748b);font-size:.875rem}.ul-item{min-width:0;transition:background-color .4s ease}.ul-item.ul-item--moved{background-color:var(--surface-hover, #f1f5f9)}.ul-list:not(.ul-list--grid)>.ul-item+.ul-item{margin-top:var(--ul-gap, 0px)}.ul-row{display:flex;align-items:center;gap:8px;min-width:0}.ul-content{flex:1 1 auto;min-width:0;word-break:break-word;overflow-wrap:anywhere}.ul-controls{display:flex;flex:0 0 auto;align-items:center;gap:2px}.ul-item--nav{cursor:pointer;border-radius:10px;transition:background-color .12s ease}.ul-item--nav:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.ul-item--nav:hover{background:var(--surface-hover, #f8fafc)}.ul-item--nav:hover:has(>.ul-row>.ul-content>ui-list-item.li-bordered){background:transparent}.ul-item--nav>.ul-row{padding-inline-end:8px}.ul-item--nav:hover .ul-chevron{color:#0f172a;transform:translate(2px)}.ul-chevron{flex:0 0 auto;color:#94a3b8;transition:color .15s ease,transform .15s ease}@media(prefers-reduced-motion:reduce){.ul-chevron{transition:none;transform:none!important}}.ul-list.ul-list--grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(var(--ul-min, 130px),100%),1fr));gap:var(--ul-gap, 12px);list-style:none;-webkit-padding-start:0;padding-inline-start:0}.ul-list--grid>.ul-item>.ul-row{flex-direction:column;align-items:stretch;gap:6px}.ul-list--grid>.ul-item>.ul-row>.ul-controls{align-self:center}@media(pointer:coarse),(max-width:480px){.ul-controls{gap:16px}}.ul-item--draggable{-webkit-user-select:none;user-select:none;-webkit-user-drag:element}@media(hover:hover)and (pointer:fine){.ul-item--draggable{cursor:grab}.ul-item--draggable:active{cursor:grabbing}}.ul-item--draggable:focus{outline:2px solid #3b82f6;outline-offset:2px;border-radius:6px}.ul-item--draggable:focus:not(:focus-visible){outline:none}ui-list .ul-item--draggable img,ui-list .ul-item--draggable ui-image-preview{pointer-events:none;-webkit-user-drag:none}.ul-item--dragging{opacity:.5}.ul-item--over{outline:2px dashed #3b82f6;outline-offset:2px;border-radius:6px}@media(prefers-reduced-motion:reduce){.ul-item{transition:none}}@media(forced-colors:active){.ul-item.ul-item--moved{outline:2px solid Highlight;outline-offset:-2px}}@media(forced-colors:active){.ul-item.ul-item--dragging{outline:2px dotted Highlight;outline-offset:2px}.ul-item.ul-item--over{outline:2px dashed Highlight;outline-offset:2px}.ul-item--draggable:focus{outline:2px solid Highlight;outline-offset:2px}}.ul-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}\n"],
|
|
25350
25377
|
dependencies: [{
|
|
25351
25378
|
kind: "directive",
|
|
25352
25379
|
type: NgTemplateOutlet,
|
|
@@ -25474,7 +25501,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
25474
25501
|
<div class="ul-sr" role="status" aria-live="polite" aria-atomic="true">{{ announcement() }}</div>
|
|
25475
25502
|
}
|
|
25476
25503
|
`,
|
|
25477
|
-
styles: ["ui-list{display:block;min-width:0}.ul-list{margin:0;padding:0;min-width:0}.ul-list--unordered{list-style:none}.ul-list--ordered{list-style:decimal;-webkit-padding-start:1.75rem;padding-inline-start:1.75rem}.ul-list--ordered>.ul-item::marker{color:var(--text-secondary, #64748b);font-size:.875rem}.ul-item{min-width:0;transition:background-color .4s ease}.ul-item.ul-item--moved{background-color:var(--surface-hover, #f1f5f9)}.ul-list:not(.ul-list--grid)>.ul-item+.ul-item{margin-top:var(--ul-gap, 0px)}.ul-row{display:flex;align-items:center;gap:8px;min-width:0}.ul-content{flex:1 1 auto;min-width:0;word-break:break-word;overflow-wrap:anywhere}.ul-controls{display:flex;flex:0 0 auto;align-items:center;gap:2px}.ul-item--nav{cursor:pointer;border-radius:10px;transition:background-color .12s ease}.ul-item--nav:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.ul-item--nav:hover{background:var(--surface-hover, #f8fafc)}.ul-item--nav>.ul-row{padding-inline-end:
|
|
25504
|
+
styles: ["ui-list{display:block;min-width:0}.ul-list{margin:0;padding:0;min-width:0}.ul-list--unordered{list-style:none}.ul-list--ordered{list-style:decimal;-webkit-padding-start:1.75rem;padding-inline-start:1.75rem}.ul-list--ordered>.ul-item::marker{color:var(--text-secondary, #64748b);font-size:.875rem}.ul-item{min-width:0;transition:background-color .4s ease}.ul-item.ul-item--moved{background-color:var(--surface-hover, #f1f5f9)}.ul-list:not(.ul-list--grid)>.ul-item+.ul-item{margin-top:var(--ul-gap, 0px)}.ul-row{display:flex;align-items:center;gap:8px;min-width:0}.ul-content{flex:1 1 auto;min-width:0;word-break:break-word;overflow-wrap:anywhere}.ul-controls{display:flex;flex:0 0 auto;align-items:center;gap:2px}.ul-item--nav{cursor:pointer;border-radius:10px;transition:background-color .12s ease}.ul-item--nav:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.ul-item--nav:hover{background:var(--surface-hover, #f8fafc)}.ul-item--nav:hover:has(>.ul-row>.ul-content>ui-list-item.li-bordered){background:transparent}.ul-item--nav>.ul-row{padding-inline-end:8px}.ul-item--nav:hover .ul-chevron{color:#0f172a;transform:translate(2px)}.ul-chevron{flex:0 0 auto;color:#94a3b8;transition:color .15s ease,transform .15s ease}@media(prefers-reduced-motion:reduce){.ul-chevron{transition:none;transform:none!important}}.ul-list.ul-list--grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(var(--ul-min, 130px),100%),1fr));gap:var(--ul-gap, 12px);list-style:none;-webkit-padding-start:0;padding-inline-start:0}.ul-list--grid>.ul-item>.ul-row{flex-direction:column;align-items:stretch;gap:6px}.ul-list--grid>.ul-item>.ul-row>.ul-controls{align-self:center}@media(pointer:coarse),(max-width:480px){.ul-controls{gap:16px}}.ul-item--draggable{-webkit-user-select:none;user-select:none;-webkit-user-drag:element}@media(hover:hover)and (pointer:fine){.ul-item--draggable{cursor:grab}.ul-item--draggable:active{cursor:grabbing}}.ul-item--draggable:focus{outline:2px solid #3b82f6;outline-offset:2px;border-radius:6px}.ul-item--draggable:focus:not(:focus-visible){outline:none}ui-list .ul-item--draggable img,ui-list .ul-item--draggable ui-image-preview{pointer-events:none;-webkit-user-drag:none}.ul-item--dragging{opacity:.5}.ul-item--over{outline:2px dashed #3b82f6;outline-offset:2px;border-radius:6px}@media(prefers-reduced-motion:reduce){.ul-item{transition:none}}@media(forced-colors:active){.ul-item.ul-item--moved{outline:2px solid Highlight;outline-offset:-2px}}@media(forced-colors:active){.ul-item.ul-item--dragging{outline:2px dotted Highlight;outline-offset:2px}.ul-item.ul-item--over{outline:2px dashed Highlight;outline-offset:2px}.ul-item--draggable:focus{outline:2px solid Highlight;outline-offset:2px}}.ul-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}\n"]
|
|
25478
25505
|
}]
|
|
25479
25506
|
}],
|
|
25480
25507
|
propDecorators: {
|
|
@@ -33509,7 +33536,7 @@ var DetailCardComponent = class DetailCardComponent {
|
|
|
33509
33536
|
},
|
|
33510
33537
|
ngImport: i0,
|
|
33511
33538
|
template: `
|
|
33512
|
-
<div class="dc" [class.dc-fill]="fill()" [class.dc-has-text-color]="!!textColor()" [class.dc-selectable]="selectable()" [class.dc-selected]="selectable() && selected()"
|
|
33539
|
+
<div class="dc" [class.dc-fill]="fill()" [class.dc-has-text-color]="!!textColor()" [class.dc-has-bg]="!!((selectable() && selected() && selectedBackground()) || background())" [class.dc-selectable]="selectable()" [class.dc-selected]="selectable() && selected()"
|
|
33513
33540
|
[style.outline-color]="selectable() && selected() ? selectedColor() : null"
|
|
33514
33541
|
[style.background]="(selectable() && selected() && selectedBackground()) || background() || null" (click)="onCardClick($event)"
|
|
33515
33542
|
[style.color]="textColor() || null" [style.--dc-text]="textColor() || null">
|
|
@@ -33554,7 +33581,7 @@ var DetailCardComponent = class DetailCardComponent {
|
|
|
33554
33581
|
</div>
|
|
33555
33582
|
`,
|
|
33556
33583
|
isInline: true,
|
|
33557
|
-
styles: [":host{display:block;margin-bottom:16px}:host(:last-child){margin-bottom:0}:host(.dc-fill-host){height:100%;margin-bottom:0}.dc.dc-fill{height:100%;box-sizing:border-box;display:flex;flex-direction:column}.dc.dc-fill .dc-body-wrap{flex:1 1 auto;min-height:0}.dc.dc-fill .dc-body{display:flex;flex-direction:column}.dc-selectable{cursor:pointer}.dc-selected{outline:2px solid #3b82f6;outline-offset:-1px}.dc{background:#fff;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.dc-header{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;padding:14px 18px}.dc-header.open{border-bottom:1px solid #f1f5f9}.dc-header.collapsible{cursor:pointer;-webkit-user-select:none;user-select:none}@media(hover:hover){.dc-header.collapsible:hover{background:#f8fafc}}.dc-chevron{flex-shrink:0;color:var(--dc-text, #64748b)}.dc-chevron svg{transition:transform .2s}.dc-chevron svg.rotated{transform:rotate(-90deg)}.dc-header-text{display:flex;flex-direction:column;gap:2px;flex:1 1 160px;min-width:0;word-break:break-word;overflow-wrap:anywhere}.dc-title{font-size:.8125rem;font-weight:800;letter-spacing:.07em;color:var(--dc-text, #1e293b);line-height:1.3;text-transform:uppercase}.dc-title--as-written{text-transform:none}.dc-subtitle{font-size:.75rem;color:var(--dc-text, #475569)}.dc-has-text-color .dc-subtitle{opacity:.8}.dc-has-text-color .dc-header.open{border-bottom-color:#94a3b859}.dc-edit{flex-shrink:0;margin-left:auto}.dc-edit-action{display:inline-flex;align-items:center;justify-content:center;gap:5px;font-family:inherit;font-size:.8rem;font-weight:500;line-height:1.4;color:#64748b;background:none;border:1px solid #e2e8f0;border-radius:6px;padding:4px 10px;cursor:pointer;white-space:nowrap;transition:background-color .15s ease,color .15s ease}.dc-edit-action:hover{background:#f1f5f9;color:#1e293b}.dc-edit-action:focus-visible{outline:2px solid var(--ui-focus, #3b82f6);outline-offset:2px}@media(pointer:coarse),(max-width:480px){.dc-edit-action{min-height:44px}}.dc-body-wrap{display:grid;grid-template-rows:1fr;transition:grid-template-rows .25s ease}.dc-body-wrap.collapsed{grid-template-rows:0fr}.dc-body{padding:16px 18px;min-height:0;overflow:hidden}@media(max-width:480px){.dc-header{padding:12px 14px}.dc-body{padding:14px}.dc-edit{margin-left:0}}@media(prefers-reduced-motion:reduce){.dc-body-wrap,.dc-chevron svg{transition:none}}\n"],
|
|
33584
|
+
styles: [":host{display:block;margin-bottom:16px}:host(:last-child){margin-bottom:0}:host(.dc-fill-host){height:100%;margin-bottom:0}.dc.dc-fill{height:100%;box-sizing:border-box;display:flex;flex-direction:column}.dc.dc-fill .dc-body-wrap{flex:1 1 auto;min-height:0}.dc.dc-fill .dc-body{display:flex;flex-direction:column}.dc-selectable{cursor:pointer}.dc-selected{outline:2px solid #3b82f6;outline-offset:-1px}.dc{background:#fff;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.dc-header{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;padding:14px 18px}.dc-header.open{border-bottom:1px solid #f1f5f9}.dc-has-bg .dc-header.open{border-bottom-color:#94a3b859}.dc-header.collapsible{cursor:pointer;-webkit-user-select:none;user-select:none}@media(hover:hover){.dc-header.collapsible:hover{background:#f8fafc}}.dc-chevron{flex-shrink:0;color:var(--dc-text, #64748b)}.dc-chevron svg{transition:transform .2s}.dc-chevron svg.rotated{transform:rotate(-90deg)}.dc-header-text{display:flex;flex-direction:column;gap:2px;flex:1 1 160px;min-width:0;word-break:break-word;overflow-wrap:anywhere}.dc-title{font-size:.8125rem;font-weight:800;letter-spacing:.07em;color:var(--dc-text, #1e293b);line-height:1.3;text-transform:uppercase}.dc-title--as-written{text-transform:none}.dc-subtitle{font-size:.75rem;color:var(--dc-text, #475569)}.dc-has-text-color .dc-subtitle{opacity:.8}.dc-has-text-color .dc-header.open{border-bottom-color:#94a3b859}.dc-edit{flex-shrink:0;margin-left:auto}.dc-edit-action{display:inline-flex;align-items:center;justify-content:center;gap:5px;font-family:inherit;font-size:.8rem;font-weight:500;line-height:1.4;color:#64748b;background:none;border:1px solid #e2e8f0;border-radius:6px;padding:4px 10px;cursor:pointer;white-space:nowrap;transition:background-color .15s ease,color .15s ease}.dc-edit-action:hover{background:#f1f5f9;color:#1e293b}.dc-edit-action:focus-visible{outline:2px solid var(--ui-focus, #3b82f6);outline-offset:2px}@media(pointer:coarse),(max-width:480px){.dc-edit-action{min-height:44px}}.dc-body-wrap{display:grid;grid-template-rows:1fr;transition:grid-template-rows .25s ease}.dc-body-wrap.collapsed{grid-template-rows:0fr}.dc-body{padding:16px 18px;min-height:0;overflow:hidden}@media(max-width:480px){.dc-header{padding:12px 14px}.dc-body{padding:14px}.dc-edit{margin-left:0}}@media(prefers-reduced-motion:reduce){.dc-body-wrap,.dc-chevron svg{transition:none}}\n"],
|
|
33558
33585
|
dependencies: [{
|
|
33559
33586
|
kind: "component",
|
|
33560
33587
|
type: ButtonComponent,
|
|
@@ -33609,7 +33636,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
33609
33636
|
"[attr.aria-label]": "groupLabel()"
|
|
33610
33637
|
},
|
|
33611
33638
|
template: `
|
|
33612
|
-
<div class="dc" [class.dc-fill]="fill()" [class.dc-has-text-color]="!!textColor()" [class.dc-selectable]="selectable()" [class.dc-selected]="selectable() && selected()"
|
|
33639
|
+
<div class="dc" [class.dc-fill]="fill()" [class.dc-has-text-color]="!!textColor()" [class.dc-has-bg]="!!((selectable() && selected() && selectedBackground()) || background())" [class.dc-selectable]="selectable()" [class.dc-selected]="selectable() && selected()"
|
|
33613
33640
|
[style.outline-color]="selectable() && selected() ? selectedColor() : null"
|
|
33614
33641
|
[style.background]="(selectable() && selected() && selectedBackground()) || background() || null" (click)="onCardClick($event)"
|
|
33615
33642
|
[style.color]="textColor() || null" [style.--dc-text]="textColor() || null">
|
|
@@ -33653,7 +33680,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
33653
33680
|
</div>
|
|
33654
33681
|
</div>
|
|
33655
33682
|
`,
|
|
33656
|
-
styles: [":host{display:block;margin-bottom:16px}:host(:last-child){margin-bottom:0}:host(.dc-fill-host){height:100%;margin-bottom:0}.dc.dc-fill{height:100%;box-sizing:border-box;display:flex;flex-direction:column}.dc.dc-fill .dc-body-wrap{flex:1 1 auto;min-height:0}.dc.dc-fill .dc-body{display:flex;flex-direction:column}.dc-selectable{cursor:pointer}.dc-selected{outline:2px solid #3b82f6;outline-offset:-1px}.dc{background:#fff;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.dc-header{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;padding:14px 18px}.dc-header.open{border-bottom:1px solid #f1f5f9}.dc-header.collapsible{cursor:pointer;-webkit-user-select:none;user-select:none}@media(hover:hover){.dc-header.collapsible:hover{background:#f8fafc}}.dc-chevron{flex-shrink:0;color:var(--dc-text, #64748b)}.dc-chevron svg{transition:transform .2s}.dc-chevron svg.rotated{transform:rotate(-90deg)}.dc-header-text{display:flex;flex-direction:column;gap:2px;flex:1 1 160px;min-width:0;word-break:break-word;overflow-wrap:anywhere}.dc-title{font-size:.8125rem;font-weight:800;letter-spacing:.07em;color:var(--dc-text, #1e293b);line-height:1.3;text-transform:uppercase}.dc-title--as-written{text-transform:none}.dc-subtitle{font-size:.75rem;color:var(--dc-text, #475569)}.dc-has-text-color .dc-subtitle{opacity:.8}.dc-has-text-color .dc-header.open{border-bottom-color:#94a3b859}.dc-edit{flex-shrink:0;margin-left:auto}.dc-edit-action{display:inline-flex;align-items:center;justify-content:center;gap:5px;font-family:inherit;font-size:.8rem;font-weight:500;line-height:1.4;color:#64748b;background:none;border:1px solid #e2e8f0;border-radius:6px;padding:4px 10px;cursor:pointer;white-space:nowrap;transition:background-color .15s ease,color .15s ease}.dc-edit-action:hover{background:#f1f5f9;color:#1e293b}.dc-edit-action:focus-visible{outline:2px solid var(--ui-focus, #3b82f6);outline-offset:2px}@media(pointer:coarse),(max-width:480px){.dc-edit-action{min-height:44px}}.dc-body-wrap{display:grid;grid-template-rows:1fr;transition:grid-template-rows .25s ease}.dc-body-wrap.collapsed{grid-template-rows:0fr}.dc-body{padding:16px 18px;min-height:0;overflow:hidden}@media(max-width:480px){.dc-header{padding:12px 14px}.dc-body{padding:14px}.dc-edit{margin-left:0}}@media(prefers-reduced-motion:reduce){.dc-body-wrap,.dc-chevron svg{transition:none}}\n"]
|
|
33683
|
+
styles: [":host{display:block;margin-bottom:16px}:host(:last-child){margin-bottom:0}:host(.dc-fill-host){height:100%;margin-bottom:0}.dc.dc-fill{height:100%;box-sizing:border-box;display:flex;flex-direction:column}.dc.dc-fill .dc-body-wrap{flex:1 1 auto;min-height:0}.dc.dc-fill .dc-body{display:flex;flex-direction:column}.dc-selectable{cursor:pointer}.dc-selected{outline:2px solid #3b82f6;outline-offset:-1px}.dc{background:#fff;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.dc-header{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;padding:14px 18px}.dc-header.open{border-bottom:1px solid #f1f5f9}.dc-has-bg .dc-header.open{border-bottom-color:#94a3b859}.dc-header.collapsible{cursor:pointer;-webkit-user-select:none;user-select:none}@media(hover:hover){.dc-header.collapsible:hover{background:#f8fafc}}.dc-chevron{flex-shrink:0;color:var(--dc-text, #64748b)}.dc-chevron svg{transition:transform .2s}.dc-chevron svg.rotated{transform:rotate(-90deg)}.dc-header-text{display:flex;flex-direction:column;gap:2px;flex:1 1 160px;min-width:0;word-break:break-word;overflow-wrap:anywhere}.dc-title{font-size:.8125rem;font-weight:800;letter-spacing:.07em;color:var(--dc-text, #1e293b);line-height:1.3;text-transform:uppercase}.dc-title--as-written{text-transform:none}.dc-subtitle{font-size:.75rem;color:var(--dc-text, #475569)}.dc-has-text-color .dc-subtitle{opacity:.8}.dc-has-text-color .dc-header.open{border-bottom-color:#94a3b859}.dc-edit{flex-shrink:0;margin-left:auto}.dc-edit-action{display:inline-flex;align-items:center;justify-content:center;gap:5px;font-family:inherit;font-size:.8rem;font-weight:500;line-height:1.4;color:#64748b;background:none;border:1px solid #e2e8f0;border-radius:6px;padding:4px 10px;cursor:pointer;white-space:nowrap;transition:background-color .15s ease,color .15s ease}.dc-edit-action:hover{background:#f1f5f9;color:#1e293b}.dc-edit-action:focus-visible{outline:2px solid var(--ui-focus, #3b82f6);outline-offset:2px}@media(pointer:coarse),(max-width:480px){.dc-edit-action{min-height:44px}}.dc-body-wrap{display:grid;grid-template-rows:1fr;transition:grid-template-rows .25s ease}.dc-body-wrap.collapsed{grid-template-rows:0fr}.dc-body{padding:16px 18px;min-height:0;overflow:hidden}@media(max-width:480px){.dc-header{padding:12px 14px}.dc-body{padding:14px}.dc-edit{margin-left:0}}@media(prefers-reduced-motion:reduce){.dc-body-wrap,.dc-chevron svg{transition:none}}\n"]
|
|
33657
33684
|
}]
|
|
33658
33685
|
}],
|
|
33659
33686
|
propDecorators: {
|
|
@@ -33951,6 +33978,697 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
33951
33978
|
}]
|
|
33952
33979
|
}
|
|
33953
33980
|
});
|
|
33981
|
+
var BoardCardDirective = class BoardCardDirective {
|
|
33982
|
+
constructor() {
|
|
33983
|
+
this.template = inject(TemplateRef);
|
|
33984
|
+
}
|
|
33985
|
+
static ngTemplateContextGuard(_dir, _ctx) {
|
|
33986
|
+
return true;
|
|
33987
|
+
}
|
|
33988
|
+
static {
|
|
33989
|
+
this.ɵfac = i0.ɵɵngDeclareFactory({
|
|
33990
|
+
minVersion: "12.0.0",
|
|
33991
|
+
version: "22.2.2",
|
|
33992
|
+
ngImport: i0,
|
|
33993
|
+
type: BoardCardDirective,
|
|
33994
|
+
deps: [],
|
|
33995
|
+
target: i0.ɵɵFactoryTarget.Directive
|
|
33996
|
+
});
|
|
33997
|
+
}
|
|
33998
|
+
static {
|
|
33999
|
+
this.ɵdir = i0.ɵɵngDeclareDirective({
|
|
34000
|
+
minVersion: "14.0.0",
|
|
34001
|
+
version: "22.2.2",
|
|
34002
|
+
type: BoardCardDirective,
|
|
34003
|
+
isStandalone: true,
|
|
34004
|
+
selector: "ng-template[uiBoardCard]",
|
|
34005
|
+
ngImport: i0
|
|
34006
|
+
});
|
|
34007
|
+
}
|
|
34008
|
+
};
|
|
34009
|
+
i0.ɵɵngDeclareClassMetadata({
|
|
34010
|
+
minVersion: "12.0.0",
|
|
34011
|
+
version: "22.2.2",
|
|
34012
|
+
ngImport: i0,
|
|
34013
|
+
type: BoardCardDirective,
|
|
34014
|
+
decorators: [{
|
|
34015
|
+
type: Directive,
|
|
34016
|
+
args: [{
|
|
34017
|
+
selector: "ng-template[uiBoardCard]",
|
|
34018
|
+
standalone: true
|
|
34019
|
+
}]
|
|
34020
|
+
}]
|
|
34021
|
+
});
|
|
34022
|
+
const DOT_COLORS = {
|
|
34023
|
+
blue: "#3b82f6",
|
|
34024
|
+
cyan: "#06b6d4",
|
|
34025
|
+
green: "#22c55e",
|
|
34026
|
+
teal: "#14b8a6",
|
|
34027
|
+
amber: "#f59e0b",
|
|
34028
|
+
orange: "#f97316",
|
|
34029
|
+
red: "#ef4444",
|
|
34030
|
+
pink: "#ec4899",
|
|
34031
|
+
slate: "#64748b",
|
|
34032
|
+
gray: "#6b7280"
|
|
34033
|
+
};
|
|
34034
|
+
var BoardComponent = class BoardComponent {
|
|
34035
|
+
constructor() {
|
|
34036
|
+
this.columns = input.required(...ngDevMode ? [{ debugName: "columns" }] : /* istanbul ignore next */ []);
|
|
34037
|
+
this.itemKey = input.required(...ngDevMode ? [{ debugName: "itemKey" }] : /* istanbul ignore next */ []);
|
|
34038
|
+
this.itemLabel = input.required(...ngDevMode ? [{ debugName: "itemLabel" }] : /* istanbul ignore next */ []);
|
|
34039
|
+
this.cardActions = input([], ...ngDevMode ? [{ debugName: "cardActions" }] : /* istanbul ignore next */ []);
|
|
34040
|
+
this.loading = input(false, ...ngDevMode ? [{ debugName: "loading" }] : /* istanbul ignore next */ []);
|
|
34041
|
+
this.error = input(null, ...ngDevMode ? [{ debugName: "error" }] : /* istanbul ignore next */ []);
|
|
34042
|
+
this.readOnly = input(false, ...ngDevMode ? [{ debugName: "readOnly" }] : /* istanbul ignore next */ []);
|
|
34043
|
+
this.moveDisabled = input(false, ...ngDevMode ? [{ debugName: "moveDisabled" }] : /* istanbul ignore next */ []);
|
|
34044
|
+
this.canMove = input(null, ...ngDevMode ? [{ debugName: "canMove" }] : /* istanbul ignore next */ []);
|
|
34045
|
+
this.ariaLabel = input("Board", ...ngDevMode ? [{ debugName: "ariaLabel" }] : /* istanbul ignore next */ []);
|
|
34046
|
+
this.emptyMessage = input("Nothing to show.", ...ngDevMode ? [{ debugName: "emptyMessage" }] : /* istanbul ignore next */ []);
|
|
34047
|
+
this.emptyColumnText = input("Nothing here yet", ...ngDevMode ? [{ debugName: "emptyColumnText" }] : /* istanbul ignore next */ []);
|
|
34048
|
+
this.itemNoun = input("item", ...ngDevMode ? [{ debugName: "itemNoun" }] : /* istanbul ignore next */ []);
|
|
34049
|
+
this.itemNounPlural = input("items", ...ngDevMode ? [{ debugName: "itemNounPlural" }] : /* istanbul ignore next */ []);
|
|
34050
|
+
this.retryLabel = input("Retry", ...ngDevMode ? [{ debugName: "retryLabel" }] : /* istanbul ignore next */ []);
|
|
34051
|
+
this.cardClick = output();
|
|
34052
|
+
this.cardAction = output();
|
|
34053
|
+
this.itemMove = output();
|
|
34054
|
+
this.retry = output();
|
|
34055
|
+
this.card = contentChild(BoardCardDirective, ...ngDevMode ? [{ debugName: "card" }] : /* istanbul ignore next */ []);
|
|
34056
|
+
this.cols = linkedSignal(() => this.columns(), ...ngDevMode ? [{ debugName: "cols" }] : /* istanbul ignore next */ []);
|
|
34057
|
+
this.overKey = signal(null, ...ngDevMode ? [{ debugName: "overKey" }] : /* istanbul ignore next */ []);
|
|
34058
|
+
this.draggingKey = signal(null, ...ngDevMode ? [{ debugName: "draggingKey" }] : /* istanbul ignore next */ []);
|
|
34059
|
+
this.announcement = signal("", ...ngDevMode ? [{ debugName: "announcement" }] : /* istanbul ignore next */ []);
|
|
34060
|
+
this.host = inject(ElementRef);
|
|
34061
|
+
this.drag = null;
|
|
34062
|
+
this.skeletonColumns = computed(() => Array.from({ length: Math.max(this.columns().length, 4) }, (_, i) => i), ...ngDevMode ? [{ debugName: "skeletonColumns" }] : /* istanbul ignore next */ []);
|
|
34063
|
+
this.canDrag = computed(() => !this.readOnly() && !this.moveDisabled(), ...ngDevMode ? [{ debugName: "canDrag" }] : /* istanbul ignore next */ []);
|
|
34064
|
+
this.canMoveAny = this.canDrag;
|
|
34065
|
+
}
|
|
34066
|
+
dot(color) {
|
|
34067
|
+
return color && DOT_COLORS[color] || color || "#3b82f6";
|
|
34068
|
+
}
|
|
34069
|
+
onDragStart(event, item, col) {
|
|
34070
|
+
if (!this.canDrag()) {
|
|
34071
|
+
event.preventDefault();
|
|
34072
|
+
return;
|
|
34073
|
+
}
|
|
34074
|
+
this.drag = {
|
|
34075
|
+
item,
|
|
34076
|
+
from: col.key
|
|
34077
|
+
};
|
|
34078
|
+
this.draggingKey.set(this.itemKey()(item));
|
|
34079
|
+
if (event.dataTransfer) {
|
|
34080
|
+
event.dataTransfer.effectAllowed = "move";
|
|
34081
|
+
event.dataTransfer.setData("text/plain", this.itemKey()(item));
|
|
34082
|
+
}
|
|
34083
|
+
}
|
|
34084
|
+
onDragEnd() {
|
|
34085
|
+
this.drag = null;
|
|
34086
|
+
this.draggingKey.set(null);
|
|
34087
|
+
this.overKey.set(null);
|
|
34088
|
+
}
|
|
34089
|
+
onDragOver(event, col) {
|
|
34090
|
+
if (!this.drag || !this.accepts(this.drag.item, this.drag.from, col)) {
|
|
34091
|
+
if (event.dataTransfer) event.dataTransfer.dropEffect = "none";
|
|
34092
|
+
return;
|
|
34093
|
+
}
|
|
34094
|
+
event.preventDefault();
|
|
34095
|
+
if (event.dataTransfer) event.dataTransfer.dropEffect = "move";
|
|
34096
|
+
if (this.overKey() !== col.key) this.overKey.set(col.key);
|
|
34097
|
+
}
|
|
34098
|
+
onDragLeave(event, col) {
|
|
34099
|
+
const related = event.relatedTarget;
|
|
34100
|
+
if ((!related || !event.currentTarget.contains(related)) && this.overKey() === col.key) this.overKey.set(null);
|
|
34101
|
+
}
|
|
34102
|
+
onDrop(event, col) {
|
|
34103
|
+
event.preventDefault();
|
|
34104
|
+
const drag = this.drag;
|
|
34105
|
+
this.onDragEnd();
|
|
34106
|
+
if (drag && this.accepts(drag.item, drag.from, col)) this.move(drag.item, drag.from, col.key);
|
|
34107
|
+
}
|
|
34108
|
+
onCardKey(event, item, col) {
|
|
34109
|
+
if (event.target !== event.currentTarget) return;
|
|
34110
|
+
if (event.key === "Enter" || event.key === " ") {
|
|
34111
|
+
event.preventDefault();
|
|
34112
|
+
this.cardClick.emit(item);
|
|
34113
|
+
return;
|
|
34114
|
+
}
|
|
34115
|
+
if (!event.shiftKey || event.key !== "ArrowLeft" && event.key !== "ArrowRight") return;
|
|
34116
|
+
event.preventDefault();
|
|
34117
|
+
if (!this.canDrag()) return;
|
|
34118
|
+
const cols = this.cols();
|
|
34119
|
+
const step = event.key === "ArrowRight" ? 1 : -1;
|
|
34120
|
+
for (let i = cols.findIndex((c) => c.key === col.key) + step; i >= 0 && i < cols.length; i += step) if (this.accepts(item, col.key, cols[i])) {
|
|
34121
|
+
this.move(item, col.key, cols[i].key);
|
|
34122
|
+
this.announcement.set(`${this.itemLabel()(item)} moved to ${cols[i].label}`);
|
|
34123
|
+
const key = this.itemKey()(item);
|
|
34124
|
+
setTimeout(() => {
|
|
34125
|
+
const cards = this.host.nativeElement.querySelectorAll(".ub-card");
|
|
34126
|
+
Array.from(cards).find((c) => c.dataset["boardKey"] === key)?.focus();
|
|
34127
|
+
});
|
|
34128
|
+
return;
|
|
34129
|
+
}
|
|
34130
|
+
}
|
|
34131
|
+
accepts(item, from, to) {
|
|
34132
|
+
if (from === to.key || to.dropDisabled || this.moveDisabled() || this.readOnly()) return false;
|
|
34133
|
+
const rule = this.canMove();
|
|
34134
|
+
return !rule || rule(item, from, to.key);
|
|
34135
|
+
}
|
|
34136
|
+
move(item, from, to) {
|
|
34137
|
+
const before = this.cols();
|
|
34138
|
+
const key = this.itemKey()(item);
|
|
34139
|
+
this.cols.set(before.map((c) => {
|
|
34140
|
+
if (c.key === from) return {
|
|
34141
|
+
...c,
|
|
34142
|
+
items: c.items.filter((i) => this.itemKey()(i) !== key)
|
|
34143
|
+
};
|
|
34144
|
+
if (c.key === to) return {
|
|
34145
|
+
...c,
|
|
34146
|
+
items: [item, ...c.items]
|
|
34147
|
+
};
|
|
34148
|
+
return c;
|
|
34149
|
+
}));
|
|
34150
|
+
this.itemMove.emit({
|
|
34151
|
+
item,
|
|
34152
|
+
from,
|
|
34153
|
+
to,
|
|
34154
|
+
revert: () => this.cols.set(before)
|
|
34155
|
+
});
|
|
34156
|
+
}
|
|
34157
|
+
static {
|
|
34158
|
+
this.ɵfac = i0.ɵɵngDeclareFactory({
|
|
34159
|
+
minVersion: "12.0.0",
|
|
34160
|
+
version: "22.2.2",
|
|
34161
|
+
ngImport: i0,
|
|
34162
|
+
type: BoardComponent,
|
|
34163
|
+
deps: [],
|
|
34164
|
+
target: i0.ɵɵFactoryTarget.Component
|
|
34165
|
+
});
|
|
34166
|
+
}
|
|
34167
|
+
static {
|
|
34168
|
+
this.ɵcmp = i0.ɵɵngDeclareComponent({
|
|
34169
|
+
minVersion: "17.0.0",
|
|
34170
|
+
version: "22.2.2",
|
|
34171
|
+
type: BoardComponent,
|
|
34172
|
+
isStandalone: true,
|
|
34173
|
+
selector: "ui-board",
|
|
34174
|
+
inputs: {
|
|
34175
|
+
columns: {
|
|
34176
|
+
classPropertyName: "columns",
|
|
34177
|
+
publicName: "columns",
|
|
34178
|
+
isSignal: true,
|
|
34179
|
+
isRequired: true,
|
|
34180
|
+
transformFunction: null
|
|
34181
|
+
},
|
|
34182
|
+
itemKey: {
|
|
34183
|
+
classPropertyName: "itemKey",
|
|
34184
|
+
publicName: "itemKey",
|
|
34185
|
+
isSignal: true,
|
|
34186
|
+
isRequired: true,
|
|
34187
|
+
transformFunction: null
|
|
34188
|
+
},
|
|
34189
|
+
itemLabel: {
|
|
34190
|
+
classPropertyName: "itemLabel",
|
|
34191
|
+
publicName: "itemLabel",
|
|
34192
|
+
isSignal: true,
|
|
34193
|
+
isRequired: true,
|
|
34194
|
+
transformFunction: null
|
|
34195
|
+
},
|
|
34196
|
+
cardActions: {
|
|
34197
|
+
classPropertyName: "cardActions",
|
|
34198
|
+
publicName: "cardActions",
|
|
34199
|
+
isSignal: true,
|
|
34200
|
+
isRequired: false,
|
|
34201
|
+
transformFunction: null
|
|
34202
|
+
},
|
|
34203
|
+
loading: {
|
|
34204
|
+
classPropertyName: "loading",
|
|
34205
|
+
publicName: "loading",
|
|
34206
|
+
isSignal: true,
|
|
34207
|
+
isRequired: false,
|
|
34208
|
+
transformFunction: null
|
|
34209
|
+
},
|
|
34210
|
+
error: {
|
|
34211
|
+
classPropertyName: "error",
|
|
34212
|
+
publicName: "error",
|
|
34213
|
+
isSignal: true,
|
|
34214
|
+
isRequired: false,
|
|
34215
|
+
transformFunction: null
|
|
34216
|
+
},
|
|
34217
|
+
readOnly: {
|
|
34218
|
+
classPropertyName: "readOnly",
|
|
34219
|
+
publicName: "readOnly",
|
|
34220
|
+
isSignal: true,
|
|
34221
|
+
isRequired: false,
|
|
34222
|
+
transformFunction: null
|
|
34223
|
+
},
|
|
34224
|
+
moveDisabled: {
|
|
34225
|
+
classPropertyName: "moveDisabled",
|
|
34226
|
+
publicName: "moveDisabled",
|
|
34227
|
+
isSignal: true,
|
|
34228
|
+
isRequired: false,
|
|
34229
|
+
transformFunction: null
|
|
34230
|
+
},
|
|
34231
|
+
canMove: {
|
|
34232
|
+
classPropertyName: "canMove",
|
|
34233
|
+
publicName: "canMove",
|
|
34234
|
+
isSignal: true,
|
|
34235
|
+
isRequired: false,
|
|
34236
|
+
transformFunction: null
|
|
34237
|
+
},
|
|
34238
|
+
ariaLabel: {
|
|
34239
|
+
classPropertyName: "ariaLabel",
|
|
34240
|
+
publicName: "ariaLabel",
|
|
34241
|
+
isSignal: true,
|
|
34242
|
+
isRequired: false,
|
|
34243
|
+
transformFunction: null
|
|
34244
|
+
},
|
|
34245
|
+
emptyMessage: {
|
|
34246
|
+
classPropertyName: "emptyMessage",
|
|
34247
|
+
publicName: "emptyMessage",
|
|
34248
|
+
isSignal: true,
|
|
34249
|
+
isRequired: false,
|
|
34250
|
+
transformFunction: null
|
|
34251
|
+
},
|
|
34252
|
+
emptyColumnText: {
|
|
34253
|
+
classPropertyName: "emptyColumnText",
|
|
34254
|
+
publicName: "emptyColumnText",
|
|
34255
|
+
isSignal: true,
|
|
34256
|
+
isRequired: false,
|
|
34257
|
+
transformFunction: null
|
|
34258
|
+
},
|
|
34259
|
+
itemNoun: {
|
|
34260
|
+
classPropertyName: "itemNoun",
|
|
34261
|
+
publicName: "itemNoun",
|
|
34262
|
+
isSignal: true,
|
|
34263
|
+
isRequired: false,
|
|
34264
|
+
transformFunction: null
|
|
34265
|
+
},
|
|
34266
|
+
itemNounPlural: {
|
|
34267
|
+
classPropertyName: "itemNounPlural",
|
|
34268
|
+
publicName: "itemNounPlural",
|
|
34269
|
+
isSignal: true,
|
|
34270
|
+
isRequired: false,
|
|
34271
|
+
transformFunction: null
|
|
34272
|
+
},
|
|
34273
|
+
retryLabel: {
|
|
34274
|
+
classPropertyName: "retryLabel",
|
|
34275
|
+
publicName: "retryLabel",
|
|
34276
|
+
isSignal: true,
|
|
34277
|
+
isRequired: false,
|
|
34278
|
+
transformFunction: null
|
|
34279
|
+
}
|
|
34280
|
+
},
|
|
34281
|
+
outputs: {
|
|
34282
|
+
cardClick: "cardClick",
|
|
34283
|
+
cardAction: "cardAction",
|
|
34284
|
+
itemMove: "itemMove",
|
|
34285
|
+
retry: "retry"
|
|
34286
|
+
},
|
|
34287
|
+
queries: [{
|
|
34288
|
+
propertyName: "card",
|
|
34289
|
+
first: true,
|
|
34290
|
+
predicate: BoardCardDirective,
|
|
34291
|
+
descendants: true,
|
|
34292
|
+
isSignal: true
|
|
34293
|
+
}],
|
|
34294
|
+
ngImport: i0,
|
|
34295
|
+
template: `
|
|
34296
|
+
<!-- The card's "⋮" menu. Place it in the card's top row: <ng-container [ngTemplateOutlet]="menu" [ngTemplateOutletContext]="{ $implicit: item }" /> -->
|
|
34297
|
+
<ng-template #menuTpl let-item>
|
|
34298
|
+
@if (cardActions().length) {
|
|
34299
|
+
<div class="ub-card__top-right" (click)="$event.stopPropagation()" (keydown)="$event.stopPropagation()">
|
|
34300
|
+
<ui-more-menu [actions]="cardActions()" [ariaLabel]="'Actions for ' + itemLabel()(item)"
|
|
34301
|
+
(actionClick)="cardAction.emit({ type: $event, item })" />
|
|
34302
|
+
</div>
|
|
34303
|
+
}
|
|
34304
|
+
</ng-template>
|
|
34305
|
+
<div class="ub-wrap">
|
|
34306
|
+
@if (loading()) {
|
|
34307
|
+
<div class="ub-skeleton" role="status" [attr.aria-label]="'Loading ' + ariaLabel()">
|
|
34308
|
+
@for (n of skeletonColumns(); track n) {
|
|
34309
|
+
<div class="ub-col-skeleton" aria-hidden="true">
|
|
34310
|
+
<div class="ub-col-skeleton__header"></div>
|
|
34311
|
+
@for (c of [1, 2, 3]; track c) { <div class="ub-col-skeleton__card"></div> }
|
|
34312
|
+
</div>
|
|
34313
|
+
}
|
|
34314
|
+
</div>
|
|
34315
|
+
} @else if (error()) {
|
|
34316
|
+
<div class="ub-message" role="alert">
|
|
34317
|
+
<p>{{ error() }}</p>
|
|
34318
|
+
<ui-button variant="secondary" size="sm" (click)="retry.emit()">{{ retryLabel() }}</ui-button>
|
|
34319
|
+
</div>
|
|
34320
|
+
} @else if (cols().length === 0) {
|
|
34321
|
+
<div class="ub-message" role="status"><p>{{ emptyMessage() }}</p></div>
|
|
34322
|
+
} @else {
|
|
34323
|
+
<div class="ub-board" role="region" [attr.aria-label]="ariaLabel()">
|
|
34324
|
+
@for (col of cols(); track col.key) {
|
|
34325
|
+
<div class="ub-col"
|
|
34326
|
+
[class.ub-col--over]="overKey() === col.key"
|
|
34327
|
+
[class.ub-col--success]="col.tone === 'success'"
|
|
34328
|
+
role="group"
|
|
34329
|
+
[attr.aria-label]="col.label + ' — ' + col.items.length + ' ' + (col.items.length === 1 ? itemNoun() : itemNounPlural())"
|
|
34330
|
+
(dragover)="onDragOver($event, col)"
|
|
34331
|
+
(dragleave)="onDragLeave($event, col)"
|
|
34332
|
+
(drop)="onDrop($event, col)">
|
|
34333
|
+
<div class="ub-col__header">
|
|
34334
|
+
<div class="ub-col__title">
|
|
34335
|
+
<span class="ub-col__dot" [style.background]="dot(col.color)" aria-hidden="true"></span>
|
|
34336
|
+
<span class="ub-col__label">{{ col.label }}</span>
|
|
34337
|
+
<span class="ub-col__count" aria-hidden="true">{{ col.items.length }}</span>
|
|
34338
|
+
</div>
|
|
34339
|
+
@if (col.summary) {
|
|
34340
|
+
<div class="ub-col__summary" [attr.aria-label]="col.summaryLabel || col.summary">{{ col.summary }}</div>
|
|
34341
|
+
}
|
|
34342
|
+
</div>
|
|
34343
|
+
<div class="ub-col__cards" role="list">
|
|
34344
|
+
@for (item of col.items; track itemKey()(item)) {
|
|
34345
|
+
<div class="ub-card"
|
|
34346
|
+
[class.ub-card--success]="col.tone === 'success'"
|
|
34347
|
+
[class.ub-card--dragging]="draggingKey() === itemKey()(item)"
|
|
34348
|
+
role="listitem"
|
|
34349
|
+
tabindex="0"
|
|
34350
|
+
[attr.data-board-key]="itemKey()(item)"
|
|
34351
|
+
[attr.aria-label]="itemLabel()(item)"
|
|
34352
|
+
[attr.aria-keyshortcuts]="canMoveAny() ? 'Shift+ArrowLeft Shift+ArrowRight' : null"
|
|
34353
|
+
[attr.draggable]="canDrag() ? 'true' : null"
|
|
34354
|
+
(dragstart)="onDragStart($event, item, col)"
|
|
34355
|
+
(dragend)="onDragEnd()"
|
|
34356
|
+
(click)="cardClick.emit(item)"
|
|
34357
|
+
(keydown)="onCardKey($event, item, col)">
|
|
34358
|
+
@if (card(); as tpl) {
|
|
34359
|
+
<ng-container [ngTemplateOutlet]="tpl.template" [ngTemplateOutletContext]="{ $implicit: item, column: col, menu: menuTpl }" />
|
|
34360
|
+
}
|
|
34361
|
+
</div>
|
|
34362
|
+
}
|
|
34363
|
+
@if (col.items.length === 0) {
|
|
34364
|
+
<div class="ub-col__empty" role="status">{{ col.emptyText || emptyColumnText() }}</div>
|
|
34365
|
+
}
|
|
34366
|
+
</div>
|
|
34367
|
+
</div>
|
|
34368
|
+
}
|
|
34369
|
+
</div>
|
|
34370
|
+
<div class="ub-sr-only" role="status" aria-live="polite">{{ announcement() }}</div>
|
|
34371
|
+
}
|
|
34372
|
+
</div>
|
|
34373
|
+
`,
|
|
34374
|
+
isInline: true,
|
|
34375
|
+
styles: ["ui-board{display:flex;flex-direction:column;flex:1;min-height:0}.ub-wrap{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.ub-board{display:flex;gap:12px;padding:0 0 16px;overflow-x:auto;overflow-y:hidden;height:100%;align-items:flex-start}.ub-board::-webkit-scrollbar{height:6px}.ub-board::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.ub-board::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.ub-col{flex:0 0 280px;min-width:280px;max-width:280px;display:flex;flex-direction:column;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;max-height:calc(100vh - 200px);transition:border-color .15s,background .15s}.ub-col--over{border-color:#3b82f6;background:#eff6ff}.ub-col--success{background:#f0fdf4;border-color:#bbf7d0}.ub-col--success.ub-col--over{border-color:#22c55e;background:#dcfce7}.ub-col__header{padding:12px 14px 10px;border-bottom:1px solid #e2e8f0;flex-shrink:0}.ub-col__title{display:flex;align-items:center;gap:7px;margin-bottom:2px}.ub-col__dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.ub-col__label{font-size:12px;font-weight:700;color:#374151;text-transform:uppercase;letter-spacing:.04em;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ub-col__count{font-size:11px;font-weight:600;color:#fff;background:#94a3b8;border-radius:10px;padding:1px 7px;flex-shrink:0}.ub-col__summary{font-size:11px;color:#64748b;font-weight:500;margin-top:2px}.ub-col__cards{flex:1;overflow-y:auto;padding:10px;display:flex;flex-direction:column;gap:8px;min-height:60px}.ub-col__cards::-webkit-scrollbar{width:4px}.ub-col__cards::-webkit-scrollbar-track{background:transparent}.ub-col__cards::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:2px}.ub-col__empty{text-align:center;padding:24px 12px;color:#94a3b8;font-size:12px;border:1.5px dashed #e2e8f0;border-radius:8px;margin:4px 0}.ub-card{position:relative;background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;padding:11px 12px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:box-shadow .12s,border-color .12s,opacity .12s,transform .12s}.ub-card[draggable=true]{cursor:grab}.ub-card[draggable=true]:active{cursor:grabbing}.ub-card:hover{border-color:#94a3b8;box-shadow:0 2px 8px #00000012}.ub-card:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.ub-card--dragging{opacity:.4;transform:scale(.98);box-shadow:none}.ub-card--success{border-left:3px solid #22c55e}.ub-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:4px}.ub-card__title{font-size:13px;font-weight:600;color:#1e293b;line-height:1.35;flex:1;min-width:0;word-break:break-word}.ub-card:hover .ub-card__title{color:#2563eb}.ub-card__top-right{flex-shrink:0;margin-top:-2px}.ub-card__status-row{margin-bottom:5px}.ub-card__contact{font-size:12px;color:#475569;margin-bottom:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ub-card__property{font-size:11px;color:#94a3b8;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ub-card__next-step{display:flex;align-items:flex-start;gap:4px;font-size:11px;color:#64748b;margin-bottom:6px;line-height:1.4}.ub-card__next-step svg{flex-shrink:0;margin-top:1px;color:#94a3b8}.ub-card__footer{display:flex;align-items:center;justify-content:space-between;margin-top:6px;padding-top:6px;border-top:1px solid #f1f5f9}.ub-card__value{font-size:12px;font-weight:700;color:#0f172a}.ub-card__activity{font-size:11px;color:#94a3b8}.ub-card__activity--stale{color:#d97706;font-weight:600}.ub-skeleton{display:flex;gap:12px;padding-bottom:16px}.ub-col-skeleton{flex:0 0 280px;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:10px}.ub-col-skeleton__header,.ub-col-skeleton__card{background:linear-gradient(90deg,#e2e8f0 25%,#f1f5f9,#e2e8f0 75%);background-size:200% 100%;animation:ub-shimmer 1.4s infinite}.ub-col-skeleton__header{height:32px;border-radius:6px}.ub-col-skeleton__card{height:90px;border-radius:8px}@keyframes ub-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.ub-col-skeleton__header,.ub-col-skeleton__card{animation:none}}.ub-message{display:flex;flex-direction:column;align-items:center;gap:12px;padding:48px;color:#64748b;font-size:14px;text-align:center}.ub-message p{margin:0}.ub-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media(max-width:640px){.ub-board{flex-direction:column;overflow-x:hidden;overflow-y:auto;height:auto;align-items:stretch}.ub-col{flex:none;min-width:0;max-width:100%;width:100%;max-height:none}.ub-skeleton{flex-direction:column}.ub-col-skeleton{flex:none;width:100%}}\n"],
|
|
34376
|
+
dependencies: [
|
|
34377
|
+
{
|
|
34378
|
+
kind: "directive",
|
|
34379
|
+
type: NgTemplateOutlet,
|
|
34380
|
+
selector: "[ngTemplateOutlet]",
|
|
34381
|
+
inputs: [
|
|
34382
|
+
"ngTemplateOutletContext",
|
|
34383
|
+
"ngTemplateOutlet",
|
|
34384
|
+
"ngTemplateOutletInjector"
|
|
34385
|
+
]
|
|
34386
|
+
},
|
|
34387
|
+
{
|
|
34388
|
+
kind: "component",
|
|
34389
|
+
type: ButtonComponent,
|
|
34390
|
+
selector: "ui-button",
|
|
34391
|
+
inputs: [
|
|
34392
|
+
"variant",
|
|
34393
|
+
"routerLink",
|
|
34394
|
+
"queryParams",
|
|
34395
|
+
"fragment",
|
|
34396
|
+
"state",
|
|
34397
|
+
"href",
|
|
34398
|
+
"target",
|
|
34399
|
+
"rel",
|
|
34400
|
+
"shortLabel",
|
|
34401
|
+
"shortBelow",
|
|
34402
|
+
"color",
|
|
34403
|
+
"active",
|
|
34404
|
+
"size",
|
|
34405
|
+
"type",
|
|
34406
|
+
"disabled",
|
|
34407
|
+
"loading",
|
|
34408
|
+
"fullWidth",
|
|
34409
|
+
"ariaLabel",
|
|
34410
|
+
"ariaExpanded",
|
|
34411
|
+
"ariaPressed",
|
|
34412
|
+
"ariaDescribedBy",
|
|
34413
|
+
"modal-footer-left",
|
|
34414
|
+
"modal-footer-right"
|
|
34415
|
+
]
|
|
34416
|
+
},
|
|
34417
|
+
{
|
|
34418
|
+
kind: "component",
|
|
34419
|
+
type: MoreMenuComponent,
|
|
34420
|
+
selector: "ui-more-menu",
|
|
34421
|
+
inputs: ["ariaLabel", "actions"],
|
|
34422
|
+
outputs: ["actionClick"]
|
|
34423
|
+
}
|
|
34424
|
+
],
|
|
34425
|
+
changeDetection: i0.ChangeDetectionStrategy.OnPush,
|
|
34426
|
+
encapsulation: i0.ViewEncapsulation.None
|
|
34427
|
+
});
|
|
34428
|
+
}
|
|
34429
|
+
};
|
|
34430
|
+
i0.ɵɵngDeclareClassMetadata({
|
|
34431
|
+
minVersion: "12.0.0",
|
|
34432
|
+
version: "22.2.2",
|
|
34433
|
+
ngImport: i0,
|
|
34434
|
+
type: BoardComponent,
|
|
34435
|
+
decorators: [{
|
|
34436
|
+
type: Component,
|
|
34437
|
+
args: [{
|
|
34438
|
+
selector: "ui-board",
|
|
34439
|
+
standalone: true,
|
|
34440
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
34441
|
+
encapsulation: ViewEncapsulation.None,
|
|
34442
|
+
imports: [
|
|
34443
|
+
NgTemplateOutlet,
|
|
34444
|
+
ButtonComponent,
|
|
34445
|
+
MoreMenuComponent
|
|
34446
|
+
],
|
|
34447
|
+
template: `
|
|
34448
|
+
<!-- The card's "⋮" menu. Place it in the card's top row: <ng-container [ngTemplateOutlet]="menu" [ngTemplateOutletContext]="{ $implicit: item }" /> -->
|
|
34449
|
+
<ng-template #menuTpl let-item>
|
|
34450
|
+
@if (cardActions().length) {
|
|
34451
|
+
<div class="ub-card__top-right" (click)="$event.stopPropagation()" (keydown)="$event.stopPropagation()">
|
|
34452
|
+
<ui-more-menu [actions]="cardActions()" [ariaLabel]="'Actions for ' + itemLabel()(item)"
|
|
34453
|
+
(actionClick)="cardAction.emit({ type: $event, item })" />
|
|
34454
|
+
</div>
|
|
34455
|
+
}
|
|
34456
|
+
</ng-template>
|
|
34457
|
+
<div class="ub-wrap">
|
|
34458
|
+
@if (loading()) {
|
|
34459
|
+
<div class="ub-skeleton" role="status" [attr.aria-label]="'Loading ' + ariaLabel()">
|
|
34460
|
+
@for (n of skeletonColumns(); track n) {
|
|
34461
|
+
<div class="ub-col-skeleton" aria-hidden="true">
|
|
34462
|
+
<div class="ub-col-skeleton__header"></div>
|
|
34463
|
+
@for (c of [1, 2, 3]; track c) { <div class="ub-col-skeleton__card"></div> }
|
|
34464
|
+
</div>
|
|
34465
|
+
}
|
|
34466
|
+
</div>
|
|
34467
|
+
} @else if (error()) {
|
|
34468
|
+
<div class="ub-message" role="alert">
|
|
34469
|
+
<p>{{ error() }}</p>
|
|
34470
|
+
<ui-button variant="secondary" size="sm" (click)="retry.emit()">{{ retryLabel() }}</ui-button>
|
|
34471
|
+
</div>
|
|
34472
|
+
} @else if (cols().length === 0) {
|
|
34473
|
+
<div class="ub-message" role="status"><p>{{ emptyMessage() }}</p></div>
|
|
34474
|
+
} @else {
|
|
34475
|
+
<div class="ub-board" role="region" [attr.aria-label]="ariaLabel()">
|
|
34476
|
+
@for (col of cols(); track col.key) {
|
|
34477
|
+
<div class="ub-col"
|
|
34478
|
+
[class.ub-col--over]="overKey() === col.key"
|
|
34479
|
+
[class.ub-col--success]="col.tone === 'success'"
|
|
34480
|
+
role="group"
|
|
34481
|
+
[attr.aria-label]="col.label + ' — ' + col.items.length + ' ' + (col.items.length === 1 ? itemNoun() : itemNounPlural())"
|
|
34482
|
+
(dragover)="onDragOver($event, col)"
|
|
34483
|
+
(dragleave)="onDragLeave($event, col)"
|
|
34484
|
+
(drop)="onDrop($event, col)">
|
|
34485
|
+
<div class="ub-col__header">
|
|
34486
|
+
<div class="ub-col__title">
|
|
34487
|
+
<span class="ub-col__dot" [style.background]="dot(col.color)" aria-hidden="true"></span>
|
|
34488
|
+
<span class="ub-col__label">{{ col.label }}</span>
|
|
34489
|
+
<span class="ub-col__count" aria-hidden="true">{{ col.items.length }}</span>
|
|
34490
|
+
</div>
|
|
34491
|
+
@if (col.summary) {
|
|
34492
|
+
<div class="ub-col__summary" [attr.aria-label]="col.summaryLabel || col.summary">{{ col.summary }}</div>
|
|
34493
|
+
}
|
|
34494
|
+
</div>
|
|
34495
|
+
<div class="ub-col__cards" role="list">
|
|
34496
|
+
@for (item of col.items; track itemKey()(item)) {
|
|
34497
|
+
<div class="ub-card"
|
|
34498
|
+
[class.ub-card--success]="col.tone === 'success'"
|
|
34499
|
+
[class.ub-card--dragging]="draggingKey() === itemKey()(item)"
|
|
34500
|
+
role="listitem"
|
|
34501
|
+
tabindex="0"
|
|
34502
|
+
[attr.data-board-key]="itemKey()(item)"
|
|
34503
|
+
[attr.aria-label]="itemLabel()(item)"
|
|
34504
|
+
[attr.aria-keyshortcuts]="canMoveAny() ? 'Shift+ArrowLeft Shift+ArrowRight' : null"
|
|
34505
|
+
[attr.draggable]="canDrag() ? 'true' : null"
|
|
34506
|
+
(dragstart)="onDragStart($event, item, col)"
|
|
34507
|
+
(dragend)="onDragEnd()"
|
|
34508
|
+
(click)="cardClick.emit(item)"
|
|
34509
|
+
(keydown)="onCardKey($event, item, col)">
|
|
34510
|
+
@if (card(); as tpl) {
|
|
34511
|
+
<ng-container [ngTemplateOutlet]="tpl.template" [ngTemplateOutletContext]="{ $implicit: item, column: col, menu: menuTpl }" />
|
|
34512
|
+
}
|
|
34513
|
+
</div>
|
|
34514
|
+
}
|
|
34515
|
+
@if (col.items.length === 0) {
|
|
34516
|
+
<div class="ub-col__empty" role="status">{{ col.emptyText || emptyColumnText() }}</div>
|
|
34517
|
+
}
|
|
34518
|
+
</div>
|
|
34519
|
+
</div>
|
|
34520
|
+
}
|
|
34521
|
+
</div>
|
|
34522
|
+
<div class="ub-sr-only" role="status" aria-live="polite">{{ announcement() }}</div>
|
|
34523
|
+
}
|
|
34524
|
+
</div>
|
|
34525
|
+
`,
|
|
34526
|
+
styles: ["ui-board{display:flex;flex-direction:column;flex:1;min-height:0}.ub-wrap{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.ub-board{display:flex;gap:12px;padding:0 0 16px;overflow-x:auto;overflow-y:hidden;height:100%;align-items:flex-start}.ub-board::-webkit-scrollbar{height:6px}.ub-board::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.ub-board::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.ub-col{flex:0 0 280px;min-width:280px;max-width:280px;display:flex;flex-direction:column;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;max-height:calc(100vh - 200px);transition:border-color .15s,background .15s}.ub-col--over{border-color:#3b82f6;background:#eff6ff}.ub-col--success{background:#f0fdf4;border-color:#bbf7d0}.ub-col--success.ub-col--over{border-color:#22c55e;background:#dcfce7}.ub-col__header{padding:12px 14px 10px;border-bottom:1px solid #e2e8f0;flex-shrink:0}.ub-col__title{display:flex;align-items:center;gap:7px;margin-bottom:2px}.ub-col__dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.ub-col__label{font-size:12px;font-weight:700;color:#374151;text-transform:uppercase;letter-spacing:.04em;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ub-col__count{font-size:11px;font-weight:600;color:#fff;background:#94a3b8;border-radius:10px;padding:1px 7px;flex-shrink:0}.ub-col__summary{font-size:11px;color:#64748b;font-weight:500;margin-top:2px}.ub-col__cards{flex:1;overflow-y:auto;padding:10px;display:flex;flex-direction:column;gap:8px;min-height:60px}.ub-col__cards::-webkit-scrollbar{width:4px}.ub-col__cards::-webkit-scrollbar-track{background:transparent}.ub-col__cards::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:2px}.ub-col__empty{text-align:center;padding:24px 12px;color:#94a3b8;font-size:12px;border:1.5px dashed #e2e8f0;border-radius:8px;margin:4px 0}.ub-card{position:relative;background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;padding:11px 12px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:box-shadow .12s,border-color .12s,opacity .12s,transform .12s}.ub-card[draggable=true]{cursor:grab}.ub-card[draggable=true]:active{cursor:grabbing}.ub-card:hover{border-color:#94a3b8;box-shadow:0 2px 8px #00000012}.ub-card:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.ub-card--dragging{opacity:.4;transform:scale(.98);box-shadow:none}.ub-card--success{border-left:3px solid #22c55e}.ub-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:4px}.ub-card__title{font-size:13px;font-weight:600;color:#1e293b;line-height:1.35;flex:1;min-width:0;word-break:break-word}.ub-card:hover .ub-card__title{color:#2563eb}.ub-card__top-right{flex-shrink:0;margin-top:-2px}.ub-card__status-row{margin-bottom:5px}.ub-card__contact{font-size:12px;color:#475569;margin-bottom:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ub-card__property{font-size:11px;color:#94a3b8;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ub-card__next-step{display:flex;align-items:flex-start;gap:4px;font-size:11px;color:#64748b;margin-bottom:6px;line-height:1.4}.ub-card__next-step svg{flex-shrink:0;margin-top:1px;color:#94a3b8}.ub-card__footer{display:flex;align-items:center;justify-content:space-between;margin-top:6px;padding-top:6px;border-top:1px solid #f1f5f9}.ub-card__value{font-size:12px;font-weight:700;color:#0f172a}.ub-card__activity{font-size:11px;color:#94a3b8}.ub-card__activity--stale{color:#d97706;font-weight:600}.ub-skeleton{display:flex;gap:12px;padding-bottom:16px}.ub-col-skeleton{flex:0 0 280px;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:10px}.ub-col-skeleton__header,.ub-col-skeleton__card{background:linear-gradient(90deg,#e2e8f0 25%,#f1f5f9,#e2e8f0 75%);background-size:200% 100%;animation:ub-shimmer 1.4s infinite}.ub-col-skeleton__header{height:32px;border-radius:6px}.ub-col-skeleton__card{height:90px;border-radius:8px}@keyframes ub-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.ub-col-skeleton__header,.ub-col-skeleton__card{animation:none}}.ub-message{display:flex;flex-direction:column;align-items:center;gap:12px;padding:48px;color:#64748b;font-size:14px;text-align:center}.ub-message p{margin:0}.ub-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media(max-width:640px){.ub-board{flex-direction:column;overflow-x:hidden;overflow-y:auto;height:auto;align-items:stretch}.ub-col{flex:none;min-width:0;max-width:100%;width:100%;max-height:none}.ub-skeleton{flex-direction:column}.ub-col-skeleton{flex:none;width:100%}}\n"]
|
|
34527
|
+
}]
|
|
34528
|
+
}],
|
|
34529
|
+
propDecorators: {
|
|
34530
|
+
columns: [{
|
|
34531
|
+
type: i0.Input,
|
|
34532
|
+
args: [{
|
|
34533
|
+
isSignal: true,
|
|
34534
|
+
alias: "columns",
|
|
34535
|
+
required: true
|
|
34536
|
+
}]
|
|
34537
|
+
}],
|
|
34538
|
+
itemKey: [{
|
|
34539
|
+
type: i0.Input,
|
|
34540
|
+
args: [{
|
|
34541
|
+
isSignal: true,
|
|
34542
|
+
alias: "itemKey",
|
|
34543
|
+
required: true
|
|
34544
|
+
}]
|
|
34545
|
+
}],
|
|
34546
|
+
itemLabel: [{
|
|
34547
|
+
type: i0.Input,
|
|
34548
|
+
args: [{
|
|
34549
|
+
isSignal: true,
|
|
34550
|
+
alias: "itemLabel",
|
|
34551
|
+
required: true
|
|
34552
|
+
}]
|
|
34553
|
+
}],
|
|
34554
|
+
cardActions: [{
|
|
34555
|
+
type: i0.Input,
|
|
34556
|
+
args: [{
|
|
34557
|
+
isSignal: true,
|
|
34558
|
+
alias: "cardActions",
|
|
34559
|
+
required: false
|
|
34560
|
+
}]
|
|
34561
|
+
}],
|
|
34562
|
+
loading: [{
|
|
34563
|
+
type: i0.Input,
|
|
34564
|
+
args: [{
|
|
34565
|
+
isSignal: true,
|
|
34566
|
+
alias: "loading",
|
|
34567
|
+
required: false
|
|
34568
|
+
}]
|
|
34569
|
+
}],
|
|
34570
|
+
error: [{
|
|
34571
|
+
type: i0.Input,
|
|
34572
|
+
args: [{
|
|
34573
|
+
isSignal: true,
|
|
34574
|
+
alias: "error",
|
|
34575
|
+
required: false
|
|
34576
|
+
}]
|
|
34577
|
+
}],
|
|
34578
|
+
readOnly: [{
|
|
34579
|
+
type: i0.Input,
|
|
34580
|
+
args: [{
|
|
34581
|
+
isSignal: true,
|
|
34582
|
+
alias: "readOnly",
|
|
34583
|
+
required: false
|
|
34584
|
+
}]
|
|
34585
|
+
}],
|
|
34586
|
+
moveDisabled: [{
|
|
34587
|
+
type: i0.Input,
|
|
34588
|
+
args: [{
|
|
34589
|
+
isSignal: true,
|
|
34590
|
+
alias: "moveDisabled",
|
|
34591
|
+
required: false
|
|
34592
|
+
}]
|
|
34593
|
+
}],
|
|
34594
|
+
canMove: [{
|
|
34595
|
+
type: i0.Input,
|
|
34596
|
+
args: [{
|
|
34597
|
+
isSignal: true,
|
|
34598
|
+
alias: "canMove",
|
|
34599
|
+
required: false
|
|
34600
|
+
}]
|
|
34601
|
+
}],
|
|
34602
|
+
ariaLabel: [{
|
|
34603
|
+
type: i0.Input,
|
|
34604
|
+
args: [{
|
|
34605
|
+
isSignal: true,
|
|
34606
|
+
alias: "ariaLabel",
|
|
34607
|
+
required: false
|
|
34608
|
+
}]
|
|
34609
|
+
}],
|
|
34610
|
+
emptyMessage: [{
|
|
34611
|
+
type: i0.Input,
|
|
34612
|
+
args: [{
|
|
34613
|
+
isSignal: true,
|
|
34614
|
+
alias: "emptyMessage",
|
|
34615
|
+
required: false
|
|
34616
|
+
}]
|
|
34617
|
+
}],
|
|
34618
|
+
emptyColumnText: [{
|
|
34619
|
+
type: i0.Input,
|
|
34620
|
+
args: [{
|
|
34621
|
+
isSignal: true,
|
|
34622
|
+
alias: "emptyColumnText",
|
|
34623
|
+
required: false
|
|
34624
|
+
}]
|
|
34625
|
+
}],
|
|
34626
|
+
itemNoun: [{
|
|
34627
|
+
type: i0.Input,
|
|
34628
|
+
args: [{
|
|
34629
|
+
isSignal: true,
|
|
34630
|
+
alias: "itemNoun",
|
|
34631
|
+
required: false
|
|
34632
|
+
}]
|
|
34633
|
+
}],
|
|
34634
|
+
itemNounPlural: [{
|
|
34635
|
+
type: i0.Input,
|
|
34636
|
+
args: [{
|
|
34637
|
+
isSignal: true,
|
|
34638
|
+
alias: "itemNounPlural",
|
|
34639
|
+
required: false
|
|
34640
|
+
}]
|
|
34641
|
+
}],
|
|
34642
|
+
retryLabel: [{
|
|
34643
|
+
type: i0.Input,
|
|
34644
|
+
args: [{
|
|
34645
|
+
isSignal: true,
|
|
34646
|
+
alias: "retryLabel",
|
|
34647
|
+
required: false
|
|
34648
|
+
}]
|
|
34649
|
+
}],
|
|
34650
|
+
cardClick: [{
|
|
34651
|
+
type: i0.Output,
|
|
34652
|
+
args: ["cardClick"]
|
|
34653
|
+
}],
|
|
34654
|
+
cardAction: [{
|
|
34655
|
+
type: i0.Output,
|
|
34656
|
+
args: ["cardAction"]
|
|
34657
|
+
}],
|
|
34658
|
+
itemMove: [{
|
|
34659
|
+
type: i0.Output,
|
|
34660
|
+
args: ["itemMove"]
|
|
34661
|
+
}],
|
|
34662
|
+
retry: [{
|
|
34663
|
+
type: i0.Output,
|
|
34664
|
+
args: ["retry"]
|
|
34665
|
+
}],
|
|
34666
|
+
card: [{
|
|
34667
|
+
type: i0.ContentChild,
|
|
34668
|
+
args: [i0.forwardRef(() => BoardCardDirective), { isSignal: true }]
|
|
34669
|
+
}]
|
|
34670
|
+
}
|
|
34671
|
+
});
|
|
33954
34672
|
let nextId = 0;
|
|
33955
34673
|
var ReadonlyFieldsetComponent = class ReadonlyFieldsetComponent {
|
|
33956
34674
|
constructor() {
|
|
@@ -37781,6 +38499,6 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
37781
38499
|
}]
|
|
37782
38500
|
}
|
|
37783
38501
|
});
|
|
37784
|
-
export { ActionBarComponent, AlertComponent, AppShellComponent, AudioPlayerComponent, AvatarComponent, BADGE_VARIANT_STYLES, BadgeComponent, BarRowComponent, BulkMessagePanelComponent, BusinessHoursComponent, ButtonComponent, CalendarComponent, CheckboxComponent, CheckboxTrailingDirective, ChipComponent, ChipGroupComponent, ColorInputComponent, ColumnFilterComponent, ColumnsComponent, ComboboxComponent, ConfirmOutletComponent, ConfirmService, ContactPickerComponent, DEFAULT_PASSWORD_RULES, DROPDOWN_GROUP, DataTableComponent, DateInputComponent, DateRangePickerComponent, DatetimeInputComponent, DetailCardComponent, DiscountSelectorComponent, DividerComponent, DropdownComponent, EmptyStateComponent, ErrorComponent, ErrorStateComponent, FORGEROUTE_CONFIG, FadeComponent, FileInputComponent, FormColSpanDirective, FormComponent, FormRowComponent, FormSectionComponent, HintComponent, IconComponent, ImageComponent, ImageGalleryComponent, ImageGalleryDialogComponent, ImagePreviewComponent, ImageRepositionComponent, ImportExportComponent, KpiCardComponent, LAYOUT_GAP_PX, ListComponent, ListItemComponent, LiveRegionComponent, ModalComponent, MoreMenuComponent, MultiSelectComponent, PHONE_NUMBER_AREA_CODE_LENGTH, PHONE_NUMBER_ZIP_LENGTH, PageComponent, PaginationComponent, PanelInfoListComponent, PasswordRequirementsComponent, PdfHotspotComponent, PhoneNumberPickerComponent, PillTabsComponent, ProgressBarComponent, ProgressRingComponent, QrCodeComponent, QuickFilterTabsComponent, RICH_TEXT_OPTIONS, RadioComponent, RadioGroupComponent, RadioMatrixComponent, RadioOptionContentDirective, ReadonlyFieldsetComponent, RichTextEditorComponent, SEMANTIC_BADGE_MAP, SearchInputComponent, SectionHeaderComponent, SelectComponent, ShowComponent, SidePanelComponent, SignaturePadComponent, SkeletonComponent, StackComponent, StarComponent, StepperComponent, TableToolbarComponent, TextComponent, TextInputComponent, TextareaInputComponent, TimeInputComponent, TimelineComponent, ToastComponent, ToastService, ToggleBadgeComponent, ToggleComponent, TooltipDirective, US_STATES, UiFieldValidity, acceptLabel, appShellGroupsStorageKey, autoVariant, buildDefaultSchedule, builtInActionIcon, businessTimeOptions, createFieldReveal, decodeFilterValues, digitsOnly, downloadBlob, encodeFilterValue, encodeFilterValues, errorContextInterceptor, fileMatchesAccept, formatAddress, formatCurrency, formatFileSize, formatIsoDate, formatIsoDateTime, formatTime, getEligibleIds, getEligibleOptions, getErrorMessage, humanReadableMessage, iconPath, isoKey, issueToErrors, maxLengthIssue, normalizeHexColor, parseBizHours, parseIso, parseTime, passwordMeetsRules, pluralize, provideForgerouteToast, reorderItems, requiredIssue, resolveLayoutGap, resolvePreset, serializeBizHours };
|
|
38502
|
+
export { ActionBarComponent, AlertComponent, AppShellComponent, AudioPlayerComponent, AvatarComponent, BADGE_VARIANT_STYLES, BadgeComponent, BarRowComponent, BoardCardDirective, BoardComponent, BulkMessagePanelComponent, BusinessHoursComponent, ButtonComponent, CalendarComponent, CheckboxComponent, CheckboxTrailingDirective, ChipComponent, ChipGroupComponent, ColorInputComponent, ColumnFilterComponent, ColumnsComponent, ComboboxComponent, ConfirmOutletComponent, ConfirmService, ContactPickerComponent, DEFAULT_PASSWORD_RULES, DROPDOWN_GROUP, DataTableComponent, DateInputComponent, DateRangePickerComponent, DatetimeInputComponent, DetailCardComponent, DiscountSelectorComponent, DividerComponent, DropdownComponent, EmptyStateComponent, ErrorComponent, ErrorStateComponent, FORGEROUTE_CONFIG, FadeComponent, FileInputComponent, FormColSpanDirective, FormComponent, FormRowComponent, FormSectionComponent, HintComponent, IconComponent, ImageComponent, ImageGalleryComponent, ImageGalleryDialogComponent, ImagePreviewComponent, ImageRepositionComponent, ImportExportComponent, KpiCardComponent, LAYOUT_GAP_PX, ListComponent, ListItemComponent, LiveRegionComponent, ModalComponent, MoreMenuComponent, MultiSelectComponent, PHONE_NUMBER_AREA_CODE_LENGTH, PHONE_NUMBER_ZIP_LENGTH, PageComponent, PaginationComponent, PanelInfoListComponent, PasswordRequirementsComponent, PdfHotspotComponent, PhoneNumberPickerComponent, PillTabsComponent, ProgressBarComponent, ProgressRingComponent, QrCodeComponent, QuickFilterTabsComponent, RICH_TEXT_OPTIONS, RadioComponent, RadioGroupComponent, RadioMatrixComponent, RadioOptionContentDirective, ReadonlyFieldsetComponent, RichTextEditorComponent, SEMANTIC_BADGE_MAP, SearchInputComponent, SectionHeaderComponent, SelectComponent, ShowComponent, SidePanelComponent, SignaturePadComponent, SkeletonComponent, StackComponent, StarComponent, StepperComponent, TableToolbarComponent, TextComponent, TextInputComponent, TextareaInputComponent, TimeInputComponent, TimelineComponent, ToastComponent, ToastService, ToggleBadgeComponent, ToggleComponent, TooltipDirective, US_STATES, UiFieldValidity, acceptLabel, appShellGroupsStorageKey, autoVariant, buildDefaultSchedule, builtInActionIcon, businessTimeOptions, createFieldReveal, decodeFilterValues, digitsOnly, downloadBlob, encodeFilterValue, encodeFilterValues, errorContextInterceptor, fileMatchesAccept, formatAddress, formatCurrency, formatFileSize, formatIsoDate, formatIsoDateTime, formatTime, getEligibleIds, getEligibleOptions, getErrorMessage, humanReadableMessage, iconPath, isoKey, issueToErrors, maxLengthIssue, normalizeHexColor, parseBizHours, parseIso, parseTime, passwordMeetsRules, pluralize, provideForgerouteToast, reorderItems, requiredIssue, resolveLayoutGap, resolvePreset, serializeBizHours };
|
|
37785
38503
|
|
|
37786
38504
|
//# sourceMappingURL=forgeroute-ui.mjs.map
|