@kumori/aurora-wui-components 0.0.228 → 0.0.230

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.
@@ -1,10 +1,4 @@
1
1
  import { LitElement, TemplateResult } from 'lit';
2
- /**
3
- * Template-method base for every axebow-*-input control: owns the shared
4
- * label/description/error wrapper markup and the disabled-aware value
5
- * change plumbing. Concrete inputs only implement their own field markup
6
- * via render().
7
- */
8
2
  export declare abstract class AxebowInputBase extends LitElement {
9
3
  static baseStyles: import('lit').CSSResult[];
10
4
  value: string;
@@ -19,17 +13,6 @@ export declare abstract class AxebowInputBase extends LitElement {
19
13
  callback?: (e: Event) => void;
20
14
  compact: boolean;
21
15
  protected handleChange(e: Event): void;
22
- /**
23
- * Every inter-element gap here is a single explicit margin (no
24
- * contributing flex `gap` on the container) so each one is an
25
- * independently overridable CSS custom property. Defaults reproduce
26
- * the historical spacing (16px label->description, 12px
27
- * description->content/content->error, 8px label->content when there's
28
- * no description) - concrete inputs that need different spacing (e.g.
29
- * the carousel's tighter label/description rhythm) just set
30
- * `--axebow-input-label-gap` / `--axebow-input-description-gap` on
31
- * their own :host.
32
- */
33
16
  protected renderWrapper(content: TemplateResult): TemplateResult;
34
17
  protected renderFixedField(content: TemplateResult): TemplateResult;
35
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"axebow-input-base.d.ts","sourceRoot":"","sources":["../../../src/components/axebow-input/axebow-input-base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,UAAU,EAAa,cAAc,EAAE,MAAM,KAAK,CAAC;AAIvE,OAAO,+BAA+B,CAAC;AAEvC;;;;;GAKG;AACH,8BAAsB,eAAgB,SAAQ,UAAU;IACtD,MAAM,CAAC,UAAU,4BAyDf;IAE0B,KAAK,SAAM;IACX,WAAW,SAAM;IACjB,KAAK,SAAM;IACX,WAAW,SAAM;IAChB,QAAQ,UAAS;IACjB,QAAQ,UAAS;IACjB,QAAQ,UAAS;IAClB,YAAY,SAAM;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,OAAO,UAAS;IAE7C,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,KAAK;IAO/B;;;;;;;;;;OAUG;IACH,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,cAAc;IA2ChE,SAAS,CAAC,gBAAgB,CAAC,OAAO,EAAE,cAAc,GAAG,cAAc;CA8BpE"}
1
+ {"version":3,"file":"axebow-input-base.d.ts","sourceRoot":"","sources":["../../../src/components/axebow-input/axebow-input-base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,UAAU,EAAa,cAAc,EAAE,MAAM,KAAK,CAAC;AAIvE,OAAO,+BAA+B,CAAC;AAEvC,8BAAsB,eAAgB,SAAQ,UAAU;IACtD,MAAM,CAAC,UAAU,4BAyDf;IAE0B,KAAK,SAAM;IACX,WAAW,SAAM;IACjB,KAAK,SAAM;IACX,WAAW,SAAM;IAChB,QAAQ,UAAS;IACjB,QAAQ,UAAS;IACjB,QAAQ,UAAS;IAClB,YAAY,SAAM;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,OAAO,UAAS;IAE7C,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,KAAK;IAO/B,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,cAAc;IA2ChE,SAAS,CAAC,gBAAgB,CAAC,OAAO,EAAE,cAAc,GAAG,cAAc;CA8BpE"}
@@ -45,8 +45,10 @@ export declare class AxebowInput extends LitElement {
45
45
  compact: boolean;
46
46
  fixedWidth?: string;
47
47
  fixedHeight?: string;
48
+ minWidth?: string;
48
49
  showStepper: boolean;
49
50
  stepAmount: number;
51
+ fixedField: boolean;
50
52
  render(): TemplateResult<1>;
51
53
  }
52
54
  //# sourceMappingURL=axebow-input.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"axebow-input.d.ts","sourceRoot":"","sources":["../../../src/components/axebow-input/axebow-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,UAAU,EAAa,cAAc,EAAE,MAAM,KAAK,CAAC;AAEvE,OAAO,yDAAyD,CAAC;AAGjE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,eAAe,EAA6B,MAAM,0BAA0B,CAAC;AACtF,OAAO,wBAAwB,CAAC;AAChC,OAAO,2BAA2B,CAAC;AACnC,OAAO,0BAA0B,CAAC;AAClC,OAAO,4BAA4B,CAAC;AACpC,OAAO,4BAA4B,CAAC;AACpC,OAAO,6BAA6B,CAAC;AAErC,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,WAAW,CAAC;AAC7G,MAAM,WAAW,MAAM;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,cAAc,CAAC;CAChC;AAED,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,CAAC;AAE9C;;;;;GAKG;AACH,qBACa,WAAY,SAAQ,UAAU;IACzC,MAAM,CAAC,MAAM,4BASX;IAE0B,KAAK,SAAM;IACX,WAAW,SAAM;IACjB,KAAK,SAAM;IACX,WAAW,SAAM;IAChB,QAAQ,UAAS;IACd,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;IAClC,WAAW,EAAE,WAAW,CAAW;IACpC,OAAO,EAAE,MAAM,EAAE,CAAM;IACvB,aAAa,EAAE,YAAY,EAAE,CAAM;IACf,QAAQ,UAAS;IAChC,oBAAoB,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,OAAO,CAAC;IAC3D,YAAY,SAAM;IACjB,QAAQ,UAAS;IAClB,GAAG,SAA2B;IAC9B,GAAG,SAAK;IACR,SAAS,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,UAAS;IACrB,WAAW,SAAkB;IAC7B,gBAAgB,SAAmB;IAClC,mBAAmB,UAAQ;IAC3B,SAAS,UAAQ;IACd,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACrF,eAAe,EAAE,eAAe,CAA6B;IAChE,OAAO,UAAS;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,UAAQ;IACpB,UAAU,SAAK;IAE3C,MAAM;CAiJP"}
1
+ {"version":3,"file":"axebow-input.d.ts","sourceRoot":"","sources":["../../../src/components/axebow-input/axebow-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,UAAU,EAAa,cAAc,EAAE,MAAM,KAAK,CAAC;AAEvE,OAAO,yDAAyD,CAAC;AAGjE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,eAAe,EAA6B,MAAM,0BAA0B,CAAC;AACtF,OAAO,wBAAwB,CAAC;AAChC,OAAO,2BAA2B,CAAC;AACnC,OAAO,0BAA0B,CAAC;AAClC,OAAO,4BAA4B,CAAC;AACpC,OAAO,4BAA4B,CAAC;AACpC,OAAO,6BAA6B,CAAC;AAErC,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,WAAW,CAAC;AAC7G,MAAM,WAAW,MAAM;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,cAAc,CAAC;CAChC;AAED,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,CAAC;AAE9C;;;;;GAKG;AACH,qBACa,WAAY,SAAQ,UAAU;IACzC,MAAM,CAAC,MAAM,4BASX;IAE0B,KAAK,SAAM;IACX,WAAW,SAAM;IACjB,KAAK,SAAM;IACX,WAAW,SAAM;IAChB,QAAQ,UAAS;IACd,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;IAClC,WAAW,EAAE,WAAW,CAAW;IACpC,OAAO,EAAE,MAAM,EAAE,CAAM;IACvB,aAAa,EAAE,YAAY,EAAE,CAAM;IACf,QAAQ,UAAS;IAChC,oBAAoB,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,OAAO,CAAC;IAC3D,YAAY,SAAM;IACjB,QAAQ,UAAS;IAClB,GAAG,SAA2B;IAC9B,GAAG,SAAK;IACR,SAAS,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,UAAS;IACrB,WAAW,SAAkB;IAC7B,gBAAgB,SAAmB;IAClC,mBAAmB,UAAQ;IAC3B,SAAS,UAAQ;IACd,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACrF,eAAe,EAAE,eAAe,CAA6B;IAChE,OAAO,UAAS;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,UAAQ;IACpB,UAAU,SAAK;IACd,UAAU,UAAS;IAEhD,MAAM;CAsJP"}
@@ -5,20 +5,12 @@ export declare class AxebowNumericInput extends AxebowInputBase {
5
5
  max: number;
6
6
  min: number;
7
7
  integerOnly: boolean;
8
- /** Opt-in exact size for the field itself - the sl-input box, not the
9
- * label/description column above it (e.g. fixedWidth '6.1875rem' for a
10
- * 99px-wide field, fixedHeight '2.5rem' for 40px). Left unset, every
11
- * existing caller keeps the field's previous default sizing unchanged. */
12
8
  fixedWidth?: string;
13
9
  fixedHeight?: string;
14
- /** 22x38 +/- stepper flush against the field's right border, wired to
15
- * the same min/max/integerOnly rules as typed input. This is the
16
- * app-wide standard look for every numeric/integer field (the native
17
- * browser spinner is always suppressed in favor of it) - on by default,
18
- * size varies per caller via fixedWidth/fixedHeight. Only turn it off
19
- * for a specific instance that truly needs the bare field. */
20
10
  showStepper: boolean;
21
11
  stepAmount: number;
12
+ fixedField: boolean;
13
+ minWidth?: string;
22
14
  updated(changed: PropertyValues): void;
23
15
  protected handleChange(e: Event): void;
24
16
  protected handleKeyDown(e: KeyboardEvent): void;
@@ -1 +1 @@
1
- {"version":3,"file":"axebow-numeric-input.d.ts","sourceRoot":"","sources":["../../../src/components/axebow-input/axebow-numeric-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,cAAc,EAAE,MAAM,KAAK,CAAC;AAGhD,OAAO,yDAAyD,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,qBACa,kBAAmB,SAAQ,eAAe;IACrD,MAAM,CAAC,MAAM,4BAiFX;IAE0B,GAAG,SAA2B;IAC9B,GAAG,SAAK;IACP,WAAW,UAAS;IAEjD;;;+EAG2E;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IAEjD;;;;;mEAK+D;IAClC,WAAW,UAAQ;IACpB,UAAU,SAAK;IAE3C,OAAO,CAAC,OAAO,EAAE,cAAc;IAyB/B,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,KAAK;IAgB/B,SAAS,CAAC,aAAa,CAAC,CAAC,EAAE,aAAa;IAMxC,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,cAAc;IA2BtB,MAAM;CAoBP"}
1
+ {"version":3,"file":"axebow-numeric-input.d.ts","sourceRoot":"","sources":["../../../src/components/axebow-input/axebow-numeric-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,cAAc,EAAE,MAAM,KAAK,CAAC;AAGhD,OAAO,yDAAyD,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,qBACa,kBAAmB,SAAQ,eAAe;IACrD,MAAM,CAAC,MAAM,4BAqEX;IAE0B,GAAG,SAA2B;IAC9B,GAAG,SAAK;IACP,WAAW,UAAS;IAErB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,UAAQ;IACpB,UAAU,SAAK;IACd,UAAU,UAAS;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAE9C,OAAO,CAAC,OAAO,EAAE,cAAc;IAkC/B,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,KAAK;IAgB/B,SAAS,CAAC,aAAa,CAAC,CAAC,EAAE,aAAa;IAMxC,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,cAAc;IA2BtB,MAAM;CAqBP"}
@@ -1,15 +1,9 @@
1
- import { TemplateResult } from 'lit';
1
+ import { PropertyValues, TemplateResult } from 'lit';
2
2
  import { AxebowInputBase } from './axebow-input-base.js';
3
3
  export interface SelectOption {
4
4
  value: string;
5
5
  label: string | TemplateResult;
6
6
  }
7
- /**
8
- * Copy for the built-in "add new option" dialog. Grouped into one object
9
- * (rather than flat props) since it's a single cohesive sub-feature only
10
- * relevant when allowAddNew is set; the host app supplies its own
11
- * translated strings, this component holds no i18n dependency of its own.
12
- */
13
7
  export interface AddDialogLabels {
14
8
  title: string;
15
9
  intro: string;
@@ -23,6 +17,7 @@ export interface AddDialogLabels {
23
17
  export declare const DEFAULT_ADD_DIALOG_LABELS: AddDialogLabels;
24
18
  export declare class AxebowSelectInput extends AxebowInputBase {
25
19
  static styles: import('lit').CSSResult[];
20
+ minWidth?: string;
26
21
  options: SelectOption[];
27
22
  allowAddNew: boolean;
28
23
  addNewLabel: string;
@@ -38,6 +33,7 @@ export declare class AxebowSelectInput extends AxebowInputBase {
38
33
  private showAddDialog;
39
34
  private newItemName;
40
35
  private newItemDescription;
36
+ updated(changed: PropertyValues): void;
41
37
  private handleSelectChange;
42
38
  private createSlug;
43
39
  private saveNewItem;
@@ -1 +1 @@
1
- {"version":3,"file":"axebow-select-input.d.ts","sourceRoot":"","sources":["../../../src/components/axebow-input/axebow-select-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,cAAc,EAAE,MAAM,KAAK,CAAC;AAEhD,OAAO,2DAA2D,CAAC;AACnE,OAAO,2DAA2D,CAAC;AACnE,OAAO,2DAA2D,CAAC;AACnE,OAAO,mCAAmC,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,cAAc,CAAC;CAChC;AAED;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,yBAAyB,EAAE,eASvC,CAAC;AAEF,qBACa,iBAAkB,SAAQ,eAAe;IACpD,MAAM,CAAC,MAAM,4BAiBX;IAEyB,OAAO,EAAE,YAAY,EAAE,CAAM;IAC3B,WAAW,UAAS;IACrB,WAAW,SAAkB;IAC7B,gBAAgB,SAAmB;IAClC,mBAAmB,UAAQ;IAC3B,SAAS,UAAQ;IACd,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACrF,eAAe,EAAE,eAAe,CAA6B;IAEpF,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,WAAW,CAAM;IACzB,OAAO,CAAC,kBAAkB,CAAM;IAEzC,OAAO,CAAC,kBAAkB;IAqB1B,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,WAAW;IAuBnB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,mBAAmB;IAO3B,MAAM;CA8DP"}
1
+ {"version":3,"file":"axebow-select-input.d.ts","sourceRoot":"","sources":["../../../src/components/axebow-input/axebow-select-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAEhE,OAAO,2DAA2D,CAAC;AACnE,OAAO,2DAA2D,CAAC;AACnE,OAAO,2DAA2D,CAAC;AACnE,OAAO,mCAAmC,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,cAAc,CAAC;CAChC;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,yBAAyB,EAAE,eASvC,CAAC;AAEF,qBACa,iBAAkB,SAAQ,eAAe;IACpD,MAAM,CAAC,MAAM,4BAoBX;IAE0B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAEnB,OAAO,EAAE,YAAY,EAAE,CAAM;IAC3B,WAAW,UAAS;IACrB,WAAW,SAAkB;IAC7B,gBAAgB,SAAmB;IAClC,mBAAmB,UAAQ;IAC3B,SAAS,UAAQ;IACd,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACrF,eAAe,EAAE,eAAe,CAA6B;IAEpF,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,WAAW,CAAM;IACzB,OAAO,CAAC,kBAAkB,CAAM;IAEzC,OAAO,CAAC,OAAO,EAAE,cAAc;IAa/B,OAAO,CAAC,kBAAkB;IAqB1B,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,WAAW;IAuBnB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,mBAAmB;IAO3B,MAAM;CA8DP"}
package/dist/index.js CHANGED
@@ -1332,12 +1332,6 @@ __decorate([property({ type: String })], AxebowSearch.prototype, "width", void 0
1332
1332
  AxebowSearch = __decorate([customElement("axebow-search")], AxebowSearch);
1333
1333
  //#endregion
1334
1334
  //#region src/components/axebow-input/axebow-input-base.ts
1335
- /**
1336
- * Template-method base for every axebow-*-input control: owns the shared
1337
- * label/description/error wrapper markup and the disabled-aware value
1338
- * change plumbing. Concrete inputs only implement their own field markup
1339
- * via render().
1340
- */
1341
1335
  var AxebowInputBase = class extends LitElement {
1342
1336
  constructor(..._args) {
1343
1337
  super(..._args);
@@ -1417,17 +1411,6 @@ var AxebowInputBase = class extends LitElement {
1417
1411
  this.value = target.value;
1418
1412
  this.callback?.(e);
1419
1413
  }
1420
- /**
1421
- * Every inter-element gap here is a single explicit margin (no
1422
- * contributing flex `gap` on the container) so each one is an
1423
- * independently overridable CSS custom property. Defaults reproduce
1424
- * the historical spacing (16px label->description, 12px
1425
- * description->content/content->error, 8px label->content when there's
1426
- * no description) - concrete inputs that need different spacing (e.g.
1427
- * the carousel's tighter label/description rhythm) just set
1428
- * `--axebow-input-label-gap` / `--axebow-input-description-gap` on
1429
- * their own :host.
1430
- */
1431
1414
  renderWrapper(content) {
1432
1415
  return html`
1433
1416
  <div class="flex flex-col justify-end w-full relative">
@@ -1466,12 +1449,12 @@ var AxebowInputBase = class extends LitElement {
1466
1449
  return html`
1467
1450
  <div class="fixed-field">
1468
1451
  ${this.label ? html`<div class="flex items-baseline gap-2 field-label">
1469
- ${this.required ? html`<p class="text-(--axebow-error) text-base leading-[1.0625rem] m-0">*</p>` : ""}
1470
- <h4 class="font-semibold text-base leading-[1.0625rem] m-0 overflow-hidden text-ellipsis">
1452
+ ${this.required ? html`<p class="text-(--axebow-error) text-base leading-4.25 m-0">*</p>` : ""}
1453
+ <h4 class="font-semibold text-base leading-4.25 m-0 overflow-hidden text-ellipsis">
1471
1454
  ${this.label}
1472
1455
  </h4>
1473
1456
  </div>` : ""}
1474
- ${this.description ? html`<p class="field-description text-base leading-[1.0625rem] m-0" title="${this.description}">
1457
+ ${this.description ? html`<p class="field-description text-base leading-4.25 m-0" title="${this.description}">
1475
1458
  ${this.description}
1476
1459
  </p>` : ""}
1477
1460
  ${content}
@@ -1538,6 +1521,7 @@ var AxebowNumericInput = class AxebowNumericInput extends AxebowInputBase {
1538
1521
  this.integerOnly = false;
1539
1522
  this.showStepper = true;
1540
1523
  this.stepAmount = 1;
1524
+ this.fixedField = false;
1541
1525
  }
1542
1526
  static {
1543
1527
  this.styles = [...AxebowInputBase.baseStyles, css`
@@ -1545,10 +1529,6 @@ var AxebowNumericInput = class AxebowNumericInput extends AxebowInputBase {
1545
1529
  display: block;
1546
1530
  width: 100%;
1547
1531
  }
1548
- /* Always off, unconditionally - the +/- stepper is the app-wide
1549
- replacement for the browser's native number spinner, so the native
1550
- one should never show regardless of whether the stepper itself is
1551
- opted out for a given instance. */
1552
1532
  sl-input::part(input)::-webkit-outer-spin-button,
1553
1533
  sl-input::part(input)::-webkit-inner-spin-button {
1554
1534
  -webkit-appearance: none;
@@ -1557,15 +1537,6 @@ var AxebowNumericInput = class AxebowNumericInput extends AxebowInputBase {
1557
1537
  sl-input::part(input) {
1558
1538
  -moz-appearance: textfield;
1559
1539
  }
1560
- /* All three guarded by their own host class - absent unless the
1561
- matching property is set - so none ever touch sl-input's own
1562
- default sizing/padding for every existing caller that doesn't opt
1563
- in. fixedWidth only constrains the field itself (not the host, so
1564
- the label above keeps its full width and doesn't wrap).
1565
- !important is needed on the sizing declarations - Shoelace sets its
1566
- own height internally off --sl-input-height-medium (not just the
1567
- exposed 'base' part), so both are overridden together to reliably
1568
- win regardless of which one actually drives the rendered size. */
1569
1540
  :host(.axebow-fixed-width) sl-input {
1570
1541
  width: var(--axebow-input-width) !important;
1571
1542
  }
@@ -1584,11 +1555,12 @@ var AxebowNumericInput = class AxebowNumericInput extends AxebowInputBase {
1584
1555
  margin: 0;
1585
1556
  padding: 0;
1586
1557
  }
1587
-
1588
- /* Only a left border (separating the stepper from the typed number)
1589
- and a divider between the two buttons - the top/right/bottom edges
1590
- coincide with sl-input's own border, so drawing our own there
1591
- would just double it up. */
1558
+ .fixed-field sl-input::part(base) {
1559
+ height: 2.5rem;
1560
+ }
1561
+ :host(.axebow-fixed-min-width) .fixed-field {
1562
+ min-width: var(--axebow-input-min-width) !important;
1563
+ }
1592
1564
  .axebow-numeric-stepper {
1593
1565
  display: flex;
1594
1566
  flex-direction: column;
@@ -1637,6 +1609,13 @@ var AxebowNumericInput = class AxebowNumericInput extends AxebowInputBase {
1637
1609
  this.classList.remove("axebow-fixed-height");
1638
1610
  }
1639
1611
  if (changed.has("showStepper")) this.classList.toggle("axebow-has-stepper", this.showStepper);
1612
+ if (changed.has("minWidth")) if (this.minWidth) {
1613
+ this.style.setProperty("--axebow-input-min-width", this.minWidth);
1614
+ this.classList.add("axebow-fixed-min-width");
1615
+ } else {
1616
+ this.style.removeProperty("--axebow-input-min-width");
1617
+ this.classList.remove("axebow-fixed-min-width");
1618
+ }
1640
1619
  }
1641
1620
  handleChange(e) {
1642
1621
  if (this.disabled) return;
@@ -1694,9 +1673,8 @@ var AxebowNumericInput = class AxebowNumericInput extends AxebowInputBase {
1694
1673
  `;
1695
1674
  }
1696
1675
  render() {
1697
- const containerClass = this.hasError ? "input-error" : "";
1698
- return this.renderWrapper(html`
1699
- <div class="${containerClass}">
1676
+ const content = html`
1677
+ <div class="${this.hasError ? "input-error" : ""}">
1700
1678
  <sl-input
1701
1679
  type="number"
1702
1680
  placeholder="${this.placeholder}"
@@ -1711,7 +1689,8 @@ var AxebowNumericInput = class AxebowNumericInput extends AxebowInputBase {
1711
1689
  ${this._renderStepper()}
1712
1690
  </sl-input>
1713
1691
  </div>
1714
- `);
1692
+ `;
1693
+ return this.fixedField ? this.renderFixedField(content) : this.renderWrapper(content);
1715
1694
  }
1716
1695
  };
1717
1696
  __decorate([property({ type: Number })], AxebowNumericInput.prototype, "max", void 0);
@@ -1721,6 +1700,8 @@ __decorate([property({ type: String })], AxebowNumericInput.prototype, "fixedWid
1721
1700
  __decorate([property({ type: String })], AxebowNumericInput.prototype, "fixedHeight", void 0);
1722
1701
  __decorate([property({ type: Boolean })], AxebowNumericInput.prototype, "showStepper", void 0);
1723
1702
  __decorate([property({ type: Number })], AxebowNumericInput.prototype, "stepAmount", void 0);
1703
+ __decorate([property({ type: Boolean })], AxebowNumericInput.prototype, "fixedField", void 0);
1704
+ __decorate([property({ type: String })], AxebowNumericInput.prototype, "minWidth", void 0);
1724
1705
  AxebowNumericInput = __decorate([customElement("axebow-numeric-input")], AxebowNumericInput);
1725
1706
  //#endregion
1726
1707
  //#region src/components/axebow-input/axebow-checkbox-input.ts
@@ -1922,8 +1903,21 @@ var AxebowSelectInput = class AxebowSelectInput extends AxebowInputBase {
1922
1903
  .fixed-field sl-select::part(display-input) {
1923
1904
  font-size: 0.875rem;
1924
1905
  }
1906
+ :host(.axebow-fixed-min-width) .fixed-field {
1907
+ min-width: var(--axebow-input-min-width) !important;
1908
+ }
1925
1909
  `];
1926
1910
  }
1911
+ updated(changed) {
1912
+ super.updated(changed);
1913
+ if (changed.has("minWidth")) if (this.minWidth) {
1914
+ this.style.setProperty("--axebow-input-min-width", this.minWidth);
1915
+ this.classList.add("axebow-fixed-min-width");
1916
+ } else {
1917
+ this.style.removeProperty("--axebow-input-min-width");
1918
+ this.classList.remove("axebow-fixed-min-width");
1919
+ }
1920
+ }
1927
1921
  handleSelectChange(e) {
1928
1922
  if (this.disabled) return;
1929
1923
  const target = e.target;
@@ -2039,6 +2033,7 @@ var AxebowSelectInput = class AxebowSelectInput extends AxebowInputBase {
2039
2033
  return this.compact ? this.renderWrapper(content) : this.renderFixedField(content);
2040
2034
  }
2041
2035
  };
2036
+ __decorate([property({ type: String })], AxebowSelectInput.prototype, "minWidth", void 0);
2042
2037
  __decorate([property({ type: Array })], AxebowSelectInput.prototype, "options", void 0);
2043
2038
  __decorate([property({ type: Boolean })], AxebowSelectInput.prototype, "allowAddNew", void 0);
2044
2039
  __decorate([property({ type: String })], AxebowSelectInput.prototype, "addNewLabel", void 0);
@@ -2078,6 +2073,7 @@ var AxebowInput = class AxebowInput extends LitElement {
2078
2073
  this.compact = false;
2079
2074
  this.showStepper = true;
2080
2075
  this.stepAmount = 1;
2076
+ this.fixedField = false;
2081
2077
  }
2082
2078
  static {
2083
2079
  this.styles = [
@@ -2126,6 +2122,8 @@ var AxebowInput = class AxebowInput extends LitElement {
2126
2122
  .fixedHeight=${this.fixedHeight}
2127
2123
  .showStepper=${this.showStepper}
2128
2124
  .stepAmount=${this.stepAmount}
2125
+ .fixedField=${this.fixedField}
2126
+ .minWidth=${this.minWidth}
2129
2127
  ></axebow-numeric-input>
2130
2128
  `;
2131
2129
  case "integer": return html`
@@ -2147,6 +2145,8 @@ var AxebowInput = class AxebowInput extends LitElement {
2147
2145
  .fixedHeight=${this.fixedHeight}
2148
2146
  .showStepper=${this.showStepper}
2149
2147
  .stepAmount=${this.stepAmount}
2148
+ .fixedField=${this.fixedField}
2149
+ .minWidth=${this.minWidth}
2150
2150
  ></axebow-numeric-input>
2151
2151
  `;
2152
2152
  case "select": return html`
@@ -2168,6 +2168,7 @@ var AxebowInput = class AxebowInput extends LitElement {
2168
2168
  .clearable=${this.clearable}
2169
2169
  .onAddNew=${this.onAddNew}
2170
2170
  .addDialogLabels=${this.addDialogLabels}
2171
+ .minWidth=${this.minWidth}
2171
2172
  ></axebow-select-input>
2172
2173
  `;
2173
2174
  case "checkbox": return html`
@@ -2258,8 +2259,10 @@ __decorate([property({ attribute: false })], AxebowInput.prototype, "addDialogLa
2258
2259
  __decorate([property({ type: Boolean })], AxebowInput.prototype, "compact", void 0);
2259
2260
  __decorate([property({ type: String })], AxebowInput.prototype, "fixedWidth", void 0);
2260
2261
  __decorate([property({ type: String })], AxebowInput.prototype, "fixedHeight", void 0);
2262
+ __decorate([property({ type: String })], AxebowInput.prototype, "minWidth", void 0);
2261
2263
  __decorate([property({ type: Boolean })], AxebowInput.prototype, "showStepper", void 0);
2262
2264
  __decorate([property({ type: Number })], AxebowInput.prototype, "stepAmount", void 0);
2265
+ __decorate([property({ type: Boolean })], AxebowInput.prototype, "fixedField", void 0);
2263
2266
  AxebowInput = __decorate([customElement("axebow-input")], AxebowInput);
2264
2267
  //#endregion
2265
2268
  //#region src/components/axebow-dialog/axebow-dialog.ts