@emuanalytics/flow-rdf-ui 0.0.33 → 0.0.35

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -27,6 +27,7 @@ const overlayscrollbars = require('overlayscrollbars');
27
27
  const unsafeHtml_js = require('lit/directives/unsafe-html.js');
28
28
  const when_js = require('lit/directives/when.js');
29
29
  const choose_js = require('lit/directives/choose.js');
30
+ const flowRdfCore = require('@emuanalytics/flow-rdf-core');
30
31
 
31
32
  function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e.default : e; }
32
33
 
@@ -3256,8 +3257,11 @@ const buttonStyles = lit.css`
3256
3257
  white-space: nowrap;
3257
3258
  vertical-align: middle;
3258
3259
  padding: 0;
3259
- transition: var(--flow-ui-transition-x-fast) background-color, var(--flow-ui-transition-x-fast) color,
3260
- var(--flow-ui-transition-x-fast) border, var(--flow-ui-transition-x-fast) box-shadow;
3260
+ transition:
3261
+ var(--flow-ui-transition-x-fast) background-color,
3262
+ var(--flow-ui-transition-x-fast) color,
3263
+ var(--flow-ui-transition-x-fast) border,
3264
+ var(--flow-ui-transition-x-fast) box-shadow;
3261
3265
  cursor: inherit;
3262
3266
  }
3263
3267
 
@@ -3641,35 +3645,51 @@ const buttonStyles = lit.css`
3641
3645
  }
3642
3646
 
3643
3647
  /*
3644
- * Circle modifier
3648
+ * FAB modifier
3645
3649
  */
3646
3650
 
3647
- .button--circle {
3651
+ .button--fab {
3648
3652
  padding-left: 0;
3649
3653
  padding-right: 0;
3650
3654
  }
3651
3655
 
3652
- .button--circle.button--small {
3656
+ .button--fab.button--small {
3653
3657
  width: var(--flow-ui-input-height-small);
3654
- border-radius: 50%;
3658
+ box-shadow: var(--flow-ui-shadow-small);
3655
3659
  }
3656
3660
 
3657
- .button--circle.button--medium {
3661
+ .button--fab.button--medium {
3658
3662
  width: var(--flow-ui-input-height-medium);
3659
- border-radius: 50%;
3663
+ box-shadow: var(--flow-ui-shadow-medium);
3660
3664
  }
3661
3665
 
3662
- .button--circle.button--large {
3666
+ .button--fab.button--large {
3663
3667
  width: var(--flow-ui-input-height-large);
3664
- border-radius: 50%;
3668
+ box-shadow: var(--flow-ui-shadow-large);
3665
3669
  }
3666
3670
 
3667
- .button--circle .button__prefix,
3668
- .button--circle .button__suffix,
3669
- .button--circle .button__caret {
3671
+ .button--fab .button__prefix,
3672
+ .button--fab .button__suffix,
3673
+ .button--fab .button__caret {
3670
3674
  display: none;
3671
3675
  }
3672
3676
 
3677
+ .button--circle {
3678
+ border-radius: 50%;
3679
+ }
3680
+
3681
+ .button--square.button--small {
3682
+ border-radius: var(--flow-ui-border-radius-small);
3683
+ }
3684
+
3685
+ .button--square.button--medium {
3686
+ border-radius: var(--flow-ui-border-radius-medium);
3687
+ }
3688
+
3689
+ .button--square.button--large {
3690
+ border-radius: var(--flow-ui-border-radius-large);
3691
+ }
3692
+
3673
3693
  /*
3674
3694
  * Caret modifier
3675
3695
  */
@@ -3803,7 +3823,12 @@ const buttonStyles = lit.css`
3803
3823
  * buttons and we style them here instead.
3804
3824
  */
3805
3825
 
3806
- :host(.flow-ui-button-group__button--first:not(.flow-ui-button-group__button--last):not(.flow-ui-button-group__button--vertical)) .button {
3826
+ :host(
3827
+ .flow-ui-button-group__button--first:not(.flow-ui-button-group__button--last):not(
3828
+ .flow-ui-button-group__button--vertical
3829
+ )
3830
+ )
3831
+ .button {
3807
3832
  border-start-end-radius: 0;
3808
3833
  border-end-end-radius: 0;
3809
3834
  }
@@ -3812,13 +3837,21 @@ const buttonStyles = lit.css`
3812
3837
  border-radius: 0;
3813
3838
  }
3814
3839
 
3815
- :host(.flow-ui-button-group__button--last:not(.flow-ui-button-group__button--vertical, .flow-ui-button-group__button--first)) .button {
3840
+ :host(
3841
+ .flow-ui-button-group__button--last:not(
3842
+ .flow-ui-button-group__button--vertical,
3843
+ .flow-ui-button-group__button--first
3844
+ )
3845
+ )
3846
+ .button {
3816
3847
  border-start-start-radius: 0;
3817
3848
  border-end-start-radius: 0;
3818
3849
  }
3819
3850
 
3820
3851
  /* All except the first */
3821
- :host(.flow-ui-button-group__button:not(.flow-ui-button-group__button--vertical, .flow-ui-button-group__button--first)) {
3852
+ :host(
3853
+ .flow-ui-button-group__button:not(.flow-ui-button-group__button--vertical, .flow-ui-button-group__button--first)
3854
+ ) {
3822
3855
  margin-inline-start: calc(-1 * var(--flow-ui-input-border-width));
3823
3856
  }
3824
3857
 
@@ -3828,8 +3861,7 @@ const buttonStyles = lit.css`
3828
3861
  .flow-ui-button-group__button--first,
3829
3862
  .flow-ui-button-group__button--radio,
3830
3863
  .flow-ui-button-group__button--tool,
3831
- .flow-ui-button-group__button--vertical
3832
- [variant='default']
3864
+ .flow-ui-button-group__button--vertical [variant='default']
3833
3865
  ):not(:hover)
3834
3866
  )
3835
3867
  .button:after {
@@ -3843,7 +3875,12 @@ const buttonStyles = lit.css`
3843
3875
  }
3844
3876
 
3845
3877
  /* Variants for vertical layout of button group */
3846
- :host(.flow-ui-button-group__button--vertical.flow-ui-button-group__button--first:not(.flow-ui-button-group__button--last)) .button {
3878
+ :host(
3879
+ .flow-ui-button-group__button--vertical.flow-ui-button-group__button--first:not(
3880
+ .flow-ui-button-group__button--last
3881
+ )
3882
+ )
3883
+ .button {
3847
3884
  border-end-start-radius: 0;
3848
3885
  border-end-end-radius: 0;
3849
3886
  }
@@ -3857,7 +3894,6 @@ const buttonStyles = lit.css`
3857
3894
  margin-block-start: calc(-1 * var(--flow-ui-input-border-width));
3858
3895
  }
3859
3896
 
3860
-
3861
3897
  /* Bump hovered, focused, and checked buttons up so their focus ring isn't clipped */
3862
3898
  :host(.flow-ui-button-group__button--hover) {
3863
3899
  z-index: 1;
@@ -3868,7 +3904,8 @@ const buttonStyles = lit.css`
3868
3904
  z-index: 2;
3869
3905
  }
3870
3906
 
3871
- :host(.flow-ui-button-group__button--focus), :host(.flow-ui-button-group__button--focus[checked]) {
3907
+ :host(.flow-ui-button-group__button--focus),
3908
+ :host(.flow-ui-button-group__button--focus[checked]) {
3872
3909
  z-index: 3;
3873
3910
  }
3874
3911
  `;
@@ -3884,7 +3921,7 @@ var __decorateClass$R = (decorators, target, key, kind) => {
3884
3921
  __defProp$R(target, key, result);
3885
3922
  return result;
3886
3923
  };
3887
- exports.FlowButton = class FlowButton extends FlowRdfElement {
3924
+ let FlowButton$1 = class FlowButton extends FlowRdfElement {
3888
3925
  constructor() {
3889
3926
  super(...arguments);
3890
3927
  this.formControlController = new FormControlController(this, {
@@ -3910,7 +3947,8 @@ exports.FlowButton = class FlowButton extends FlowRdfElement {
3910
3947
  this.loading = false;
3911
3948
  this.outline = false;
3912
3949
  this.pill = false;
3913
- this.circle = false;
3950
+ this.fabCircle = false;
3951
+ this.fabSquare = false;
3914
3952
  this.type = "button";
3915
3953
  this.name = "";
3916
3954
  this.value = "";
@@ -4039,7 +4077,9 @@ exports.FlowButton = class FlowButton extends FlowRdfElement {
4039
4077
  "button--medium": this.size === "medium",
4040
4078
  "button--large": this.size === "large",
4041
4079
  "button--caret": this.caret,
4042
- "button--circle": this.circle,
4080
+ "button--fab": this.fabCircle || this.fabSquare,
4081
+ "button--circle": this.fabCircle,
4082
+ "button--square": this.fabSquare,
4043
4083
  "button--disabled": this.disabled,
4044
4084
  "button--focused": this.hasFocus,
4045
4085
  "button--loading": this.loading,
@@ -4081,88 +4121,94 @@ exports.FlowButton = class FlowButton extends FlowRdfElement {
4081
4121
  `;
4082
4122
  }
4083
4123
  };
4084
- exports.FlowButton.styles = buttonStyles;
4124
+ FlowButton$1.styles = buttonStyles;
4085
4125
  __decorateClass$R([
4086
4126
  decorators_js.query(".button")
4087
- ], exports.FlowButton.prototype, "button", 2);
4127
+ ], FlowButton$1.prototype, "button", 2);
4088
4128
  __decorateClass$R([
4089
4129
  decorators_js.state()
4090
- ], exports.FlowButton.prototype, "hasFocus", 2);
4130
+ ], FlowButton$1.prototype, "hasFocus", 2);
4091
4131
  __decorateClass$R([
4092
4132
  decorators_js.state()
4093
- ], exports.FlowButton.prototype, "invalid", 2);
4133
+ ], FlowButton$1.prototype, "invalid", 2);
4094
4134
  __decorateClass$R([
4095
4135
  decorators_js.property()
4096
- ], exports.FlowButton.prototype, "title", 2);
4136
+ ], FlowButton$1.prototype, "title", 2);
4097
4137
  __decorateClass$R([
4098
4138
  decorators_js.property({ reflect: true })
4099
- ], exports.FlowButton.prototype, "variant", 2);
4139
+ ], FlowButton$1.prototype, "variant", 2);
4100
4140
  __decorateClass$R([
4101
4141
  decorators_js.property({ reflect: true })
4102
- ], exports.FlowButton.prototype, "size", 2);
4142
+ ], FlowButton$1.prototype, "size", 2);
4103
4143
  __decorateClass$R([
4104
4144
  decorators_js.property({ type: Boolean, reflect: true })
4105
- ], exports.FlowButton.prototype, "caret", 2);
4145
+ ], FlowButton$1.prototype, "caret", 2);
4106
4146
  __decorateClass$R([
4107
4147
  decorators_js.property({ type: Boolean, reflect: true })
4108
- ], exports.FlowButton.prototype, "disabled", 2);
4148
+ ], FlowButton$1.prototype, "disabled", 2);
4109
4149
  __decorateClass$R([
4110
4150
  decorators_js.property({ type: Boolean, reflect: true })
4111
- ], exports.FlowButton.prototype, "loading", 2);
4151
+ ], FlowButton$1.prototype, "loading", 2);
4112
4152
  __decorateClass$R([
4113
4153
  decorators_js.property({ type: Boolean, reflect: true })
4114
- ], exports.FlowButton.prototype, "outline", 2);
4154
+ ], FlowButton$1.prototype, "outline", 2);
4115
4155
  __decorateClass$R([
4116
4156
  decorators_js.property({ type: Boolean, reflect: true })
4117
- ], exports.FlowButton.prototype, "pill", 2);
4157
+ ], FlowButton$1.prototype, "pill", 2);
4118
4158
  __decorateClass$R([
4119
- decorators_js.property({ type: Boolean, reflect: true })
4120
- ], exports.FlowButton.prototype, "circle", 2);
4159
+ decorators_js.property({ type: Boolean, reflect: true, attribute: "fab-circle" })
4160
+ ], FlowButton$1.prototype, "fabCircle", 2);
4161
+ __decorateClass$R([
4162
+ decorators_js.property({ type: Boolean, reflect: true, attribute: "fab-square" })
4163
+ ], FlowButton$1.prototype, "fabSquare", 2);
4121
4164
  __decorateClass$R([
4122
4165
  decorators_js.property()
4123
- ], exports.FlowButton.prototype, "type", 2);
4166
+ ], FlowButton$1.prototype, "type", 2);
4124
4167
  __decorateClass$R([
4125
4168
  decorators_js.property()
4126
- ], exports.FlowButton.prototype, "name", 2);
4169
+ ], FlowButton$1.prototype, "name", 2);
4127
4170
  __decorateClass$R([
4128
4171
  decorators_js.property()
4129
- ], exports.FlowButton.prototype, "value", 2);
4172
+ ], FlowButton$1.prototype, "value", 2);
4130
4173
  __decorateClass$R([
4131
4174
  decorators_js.property()
4132
- ], exports.FlowButton.prototype, "href", 2);
4175
+ ], FlowButton$1.prototype, "href", 2);
4133
4176
  __decorateClass$R([
4134
4177
  decorators_js.property()
4135
- ], exports.FlowButton.prototype, "target", 2);
4178
+ ], FlowButton$1.prototype, "target", 2);
4136
4179
  __decorateClass$R([
4137
4180
  decorators_js.property()
4138
- ], exports.FlowButton.prototype, "rel", 2);
4181
+ ], FlowButton$1.prototype, "rel", 2);
4139
4182
  __decorateClass$R([
4140
4183
  decorators_js.property()
4141
- ], exports.FlowButton.prototype, "download", 2);
4184
+ ], FlowButton$1.prototype, "download", 2);
4142
4185
  __decorateClass$R([
4143
4186
  decorators_js.property()
4144
- ], exports.FlowButton.prototype, "form", 2);
4187
+ ], FlowButton$1.prototype, "form", 2);
4145
4188
  __decorateClass$R([
4146
4189
  decorators_js.property({ attribute: "formaction" })
4147
- ], exports.FlowButton.prototype, "formAction", 2);
4190
+ ], FlowButton$1.prototype, "formAction", 2);
4148
4191
  __decorateClass$R([
4149
4192
  decorators_js.property({ attribute: "formenctype" })
4150
- ], exports.FlowButton.prototype, "formEnctype", 2);
4193
+ ], FlowButton$1.prototype, "formEnctype", 2);
4151
4194
  __decorateClass$R([
4152
4195
  decorators_js.property({ attribute: "formmethod" })
4153
- ], exports.FlowButton.prototype, "formMethod", 2);
4196
+ ], FlowButton$1.prototype, "formMethod", 2);
4154
4197
  __decorateClass$R([
4155
4198
  decorators_js.property({ attribute: "formnovalidate", type: Boolean })
4156
- ], exports.FlowButton.prototype, "formNoValidate", 2);
4199
+ ], FlowButton$1.prototype, "formNoValidate", 2);
4157
4200
  __decorateClass$R([
4158
4201
  decorators_js.property({ attribute: "formtarget" })
4159
- ], exports.FlowButton.prototype, "formTarget", 2);
4202
+ ], FlowButton$1.prototype, "formTarget", 2);
4160
4203
  __decorateClass$R([
4161
4204
  watch("disabled", { waitUntilFirstUpdate: true })
4162
- ], exports.FlowButton.prototype, "handleDisabledChange", 1);
4163
- exports.FlowButton = __decorateClass$R([
4205
+ ], FlowButton$1.prototype, "handleDisabledChange", 1);
4206
+ FlowButton$1 = __decorateClass$R([
4164
4207
  decorators_js.customElement("flow-ui-button")
4165
- ], exports.FlowButton);
4208
+ ], FlowButton$1);
4209
+
4210
+ const FlowButton = FlowButton$1;
4211
+ FlowButton$1.define("flow-ui-button");
4166
4212
 
4167
4213
  const isUndefined = (val) => typeof val === "undefined";
4168
4214
  const isNull = (val) => val === null;
@@ -23377,7 +23423,7 @@ const translation = {
23377
23423
  };
23378
23424
  localize.registerTranslation(translation);
23379
23425
 
23380
- const version = "0.0.33";
23426
+ const version = "0.0.34";
23381
23427
 
23382
23428
  const CONSOLE_HIGHLIGHT_STYLE = `
23383
23429
  padding: 2px 4px;
@@ -23393,6 +23439,7 @@ announce();
23393
23439
  exports.ChartJs = chart_js.Chart;
23394
23440
  exports.FlowAlert = FlowAlert;
23395
23441
  exports.FlowAnimation = SlAnimation;
23442
+ exports.FlowButton = FlowButton;
23396
23443
  exports.FlowCalendar = FlowCalendar;
23397
23444
  exports.FlowChart = FlowChart;
23398
23445
  exports.FlowDateTimePicker = FlowDatetimePicker;
@@ -23432,3 +23479,6 @@ exports.setBasePath = setBasePath;
23432
23479
  exports.setDefaultLocale = setDefaultLocale;
23433
23480
  exports.setDefaultTimeZone = setDefaultTimeZone;
23434
23481
  exports.unregisterIconLibrary = unregisterIconLibrary;
23482
+ Object.keys(flowRdfCore).forEach(function (k) {
23483
+ if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) exports[k] = flowRdfCore[k];
23484
+ });
package/dist/index.d.cts CHANGED
@@ -4,6 +4,7 @@ import * as chartjs_chart_matrix from 'chartjs-chart-matrix';
4
4
  import * as chart_js from 'chart.js';
5
5
  import { Chart, ChartTypeRegistry, ChartOptions, ChartData, Plugin, ChartComponentLike } from 'chart.js';
6
6
  export { Chart as ChartJs } from 'chart.js';
7
+ export * from '@emuanalytics/flow-rdf-core';
7
8
 
8
9
  type EventTypeRequiresDetail<T> = T extends keyof GlobalEventHandlersEventMap ? GlobalEventHandlersEventMap[T] extends CustomEvent<Record<PropertyKey, unknown>> ? GlobalEventHandlersEventMap[T] extends CustomEvent<Record<PropertyKey, never>> ? never : Partial<GlobalEventHandlersEventMap[T]['detail']> extends GlobalEventHandlersEventMap[T]['detail'] ? never : T : never : never;
9
10
  type EventTypeDoesNotRequireDetail<T> = T extends keyof GlobalEventHandlersEventMap ? GlobalEventHandlersEventMap[T] extends CustomEvent<Record<PropertyKey, unknown>> ? GlobalEventHandlersEventMap[T] extends CustomEvent<Record<PropertyKey, never>> ? T : Partial<GlobalEventHandlersEventMap[T]['detail']> extends GlobalEventHandlersEventMap[T]['detail'] ? T : never : T : T;
@@ -768,10 +769,8 @@ declare global {
768
769
  }
769
770
 
770
771
  /**
772
+ * @tagname flow-ui-button
771
773
  * @summary Buttons represent actions that are available to the user.
772
- * @documentation https://developer.emu-analytics.net/docs/flow-ui-rdf/components/button
773
- * @status stable
774
- * @since 2.0
775
774
  *
776
775
  * @dependency flow-ui-icon
777
776
  * @dependency flow-ui-spinner
@@ -814,10 +813,15 @@ declare class FlowButton extends FlowRdfElement implements FlowRdfFormControl {
814
813
  /** Draws a pill-style button with rounded edges. */
815
814
  pill: boolean;
816
815
  /**
817
- * Draws a circular icon button. When this attribute is present, the button expects a single `<flow-ui-icon>` in the
816
+ * Draws a circular FAB. When this attribute is present, the button expects a single `<flow-ui-icon>` in the
817
+ * default slot.
818
+ */
819
+ fabCircle: boolean;
820
+ /**
821
+ * Draws a square FAB. When this attribute is present, the button expects a single `<flow-ui-icon>` in the
818
822
  * default slot.
819
823
  */
820
- circle: boolean;
824
+ fabSquare: boolean;
821
825
  /**
822
826
  * The type of button. Note that the default value is `button` instead of `submit`, which is opposite of how native
823
827
  * `<button>` elements behave. When the type is `submit`, the button will submit the surrounding form.
@@ -892,6 +896,7 @@ declare class FlowButton extends FlowRdfElement implements FlowRdfFormControl {
892
896
  setCustomValidity(message: string): void;
893
897
  render(): lit.TemplateResult;
894
898
  }
899
+
895
900
  declare global {
896
901
  interface HTMLElementTagNameMap {
897
902
  'flow-ui-button': FlowButton;
package/dist/index.d.mts CHANGED
@@ -4,6 +4,7 @@ import * as chartjs_chart_matrix from 'chartjs-chart-matrix';
4
4
  import * as chart_js from 'chart.js';
5
5
  import { Chart, ChartTypeRegistry, ChartOptions, ChartData, Plugin, ChartComponentLike } from 'chart.js';
6
6
  export { Chart as ChartJs } from 'chart.js';
7
+ export * from '@emuanalytics/flow-rdf-core';
7
8
 
8
9
  type EventTypeRequiresDetail<T> = T extends keyof GlobalEventHandlersEventMap ? GlobalEventHandlersEventMap[T] extends CustomEvent<Record<PropertyKey, unknown>> ? GlobalEventHandlersEventMap[T] extends CustomEvent<Record<PropertyKey, never>> ? never : Partial<GlobalEventHandlersEventMap[T]['detail']> extends GlobalEventHandlersEventMap[T]['detail'] ? never : T : never : never;
9
10
  type EventTypeDoesNotRequireDetail<T> = T extends keyof GlobalEventHandlersEventMap ? GlobalEventHandlersEventMap[T] extends CustomEvent<Record<PropertyKey, unknown>> ? GlobalEventHandlersEventMap[T] extends CustomEvent<Record<PropertyKey, never>> ? T : Partial<GlobalEventHandlersEventMap[T]['detail']> extends GlobalEventHandlersEventMap[T]['detail'] ? T : never : T : T;
@@ -768,10 +769,8 @@ declare global {
768
769
  }
769
770
 
770
771
  /**
772
+ * @tagname flow-ui-button
771
773
  * @summary Buttons represent actions that are available to the user.
772
- * @documentation https://developer.emu-analytics.net/docs/flow-ui-rdf/components/button
773
- * @status stable
774
- * @since 2.0
775
774
  *
776
775
  * @dependency flow-ui-icon
777
776
  * @dependency flow-ui-spinner
@@ -814,10 +813,15 @@ declare class FlowButton extends FlowRdfElement implements FlowRdfFormControl {
814
813
  /** Draws a pill-style button with rounded edges. */
815
814
  pill: boolean;
816
815
  /**
817
- * Draws a circular icon button. When this attribute is present, the button expects a single `<flow-ui-icon>` in the
816
+ * Draws a circular FAB. When this attribute is present, the button expects a single `<flow-ui-icon>` in the
817
+ * default slot.
818
+ */
819
+ fabCircle: boolean;
820
+ /**
821
+ * Draws a square FAB. When this attribute is present, the button expects a single `<flow-ui-icon>` in the
818
822
  * default slot.
819
823
  */
820
- circle: boolean;
824
+ fabSquare: boolean;
821
825
  /**
822
826
  * The type of button. Note that the default value is `button` instead of `submit`, which is opposite of how native
823
827
  * `<button>` elements behave. When the type is `submit`, the button will submit the surrounding form.
@@ -892,6 +896,7 @@ declare class FlowButton extends FlowRdfElement implements FlowRdfFormControl {
892
896
  setCustomValidity(message: string): void;
893
897
  render(): lit.TemplateResult;
894
898
  }
899
+
895
900
  declare global {
896
901
  interface HTMLElementTagNameMap {
897
902
  'flow-ui-button': FlowButton;
package/dist/index.d.ts CHANGED
@@ -4,6 +4,7 @@ import * as chartjs_chart_matrix from 'chartjs-chart-matrix';
4
4
  import * as chart_js from 'chart.js';
5
5
  import { Chart, ChartTypeRegistry, ChartOptions, ChartData, Plugin, ChartComponentLike } from 'chart.js';
6
6
  export { Chart as ChartJs } from 'chart.js';
7
+ export * from '@emuanalytics/flow-rdf-core';
7
8
 
8
9
  type EventTypeRequiresDetail<T> = T extends keyof GlobalEventHandlersEventMap ? GlobalEventHandlersEventMap[T] extends CustomEvent<Record<PropertyKey, unknown>> ? GlobalEventHandlersEventMap[T] extends CustomEvent<Record<PropertyKey, never>> ? never : Partial<GlobalEventHandlersEventMap[T]['detail']> extends GlobalEventHandlersEventMap[T]['detail'] ? never : T : never : never;
9
10
  type EventTypeDoesNotRequireDetail<T> = T extends keyof GlobalEventHandlersEventMap ? GlobalEventHandlersEventMap[T] extends CustomEvent<Record<PropertyKey, unknown>> ? GlobalEventHandlersEventMap[T] extends CustomEvent<Record<PropertyKey, never>> ? T : Partial<GlobalEventHandlersEventMap[T]['detail']> extends GlobalEventHandlersEventMap[T]['detail'] ? T : never : T : T;
@@ -768,10 +769,8 @@ declare global {
768
769
  }
769
770
 
770
771
  /**
772
+ * @tagname flow-ui-button
771
773
  * @summary Buttons represent actions that are available to the user.
772
- * @documentation https://developer.emu-analytics.net/docs/flow-ui-rdf/components/button
773
- * @status stable
774
- * @since 2.0
775
774
  *
776
775
  * @dependency flow-ui-icon
777
776
  * @dependency flow-ui-spinner
@@ -814,10 +813,15 @@ declare class FlowButton extends FlowRdfElement implements FlowRdfFormControl {
814
813
  /** Draws a pill-style button with rounded edges. */
815
814
  pill: boolean;
816
815
  /**
817
- * Draws a circular icon button. When this attribute is present, the button expects a single `<flow-ui-icon>` in the
816
+ * Draws a circular FAB. When this attribute is present, the button expects a single `<flow-ui-icon>` in the
817
+ * default slot.
818
+ */
819
+ fabCircle: boolean;
820
+ /**
821
+ * Draws a square FAB. When this attribute is present, the button expects a single `<flow-ui-icon>` in the
818
822
  * default slot.
819
823
  */
820
- circle: boolean;
824
+ fabSquare: boolean;
821
825
  /**
822
826
  * The type of button. Note that the default value is `button` instead of `submit`, which is opposite of how native
823
827
  * `<button>` elements behave. When the type is `submit`, the button will submit the surrounding form.
@@ -892,6 +896,7 @@ declare class FlowButton extends FlowRdfElement implements FlowRdfFormControl {
892
896
  setCustomValidity(message: string): void;
893
897
  render(): lit.TemplateResult;
894
898
  }
899
+
895
900
  declare global {
896
901
  interface HTMLElementTagNameMap {
897
902
  'flow-ui-button': FlowButton;