@ostack.tech/ui 0.6.5 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. package/dist/chunks/{en-C2peM913.js → en-BfgHKQwn.js} +2 -1
  2. package/dist/chunks/en-BfgHKQwn.js.map +1 -0
  3. package/dist/locales/en-GB.js +1 -1
  4. package/dist/locales/en-US.js +1 -1
  5. package/dist/locales/fr-FR.js +1 -0
  6. package/dist/locales/fr-FR.js.map +1 -1
  7. package/dist/locales/pt-PT.js +1 -0
  8. package/dist/locales/pt-PT.js.map +1 -1
  9. package/dist/ostack-ui.css +15 -12
  10. package/dist/ostack-ui.css.map +1 -1
  11. package/dist/ostack-ui.js +1266 -1086
  12. package/dist/ostack-ui.js.map +1 -1
  13. package/dist/types/components/Alert/Alert.d.ts +1 -1
  14. package/dist/types/components/Alert/AlertTitle.d.ts +7 -3
  15. package/dist/types/components/AlertDialog/AlertDialogTitle.d.ts +7 -2
  16. package/dist/types/components/Button/Button.d.ts +43 -13
  17. package/dist/types/components/Calendar/Calendar.d.ts +2 -2
  18. package/dist/types/components/Card/CardTitle.d.ts +8 -11
  19. package/dist/types/components/Checkbox/Checkbox.d.ts +26 -2
  20. package/dist/types/components/CheckboxGroup/CheckboxGroup.d.ts +29 -2
  21. package/dist/types/components/CheckboxGroup/CheckboxGroupContext.d.ts +4 -0
  22. package/dist/types/components/CloseButton/CloseButton.d.ts +1 -1
  23. package/dist/types/components/CommandMenu/CommandMenuItem.d.ts +1 -1
  24. package/dist/types/components/DataTable/DataTablePagination.d.ts +2 -2
  25. package/dist/types/components/DataTable/DataTableSelectionTrigger.d.ts +1 -1
  26. package/dist/types/components/DateRangeInput/DateRangeInput.d.ts +47 -12
  27. package/dist/types/components/Dialog/DialogTitle.d.ts +7 -2
  28. package/dist/types/components/DropdownMenu/DropdownMenuCheckboxItem.d.ts +1 -1
  29. package/dist/types/components/DropdownMenu/DropdownMenuItem.d.ts +1 -1
  30. package/dist/types/components/DropdownMenu/DropdownMenuRadioItem.d.ts +1 -1
  31. package/dist/types/components/ErrorBoundary/ErrorBoundary.d.ts +1 -1
  32. package/dist/types/components/FeedbackPopover/FeedbackPopover.d.ts +1 -1
  33. package/dist/types/components/Field/FieldContext.d.ts +1 -0
  34. package/dist/types/components/FieldGroup/FieldGroupTitle.d.ts +7 -10
  35. package/dist/types/components/Heading/Heading.d.ts +13 -6
  36. package/dist/types/components/IconButton/IconButton.d.ts +44 -12
  37. package/dist/types/components/Input/Input.d.ts +32 -2
  38. package/dist/types/components/Label/Label.d.ts +1 -1
  39. package/dist/types/components/Link/Link.d.ts +8 -3
  40. package/dist/types/components/MenuList/MenuListItem.d.ts +36 -17
  41. package/dist/types/components/Output/Output.d.ts +20 -2
  42. package/dist/types/components/RadioGroup/Radio.d.ts +26 -2
  43. package/dist/types/components/RadioGroup/RadioGroup.d.ts +26 -2
  44. package/dist/types/components/Select/Select.d.ts +2 -2
  45. package/dist/types/components/Table/TableColumn.d.ts +2 -2
  46. package/dist/types/index.d.ts +3 -1
  47. package/dist/types/providers/AlertDialogProvider/AlertDialogProviderContext.d.ts +2 -2
  48. package/dist/types/providers/LocalizationProvider/LocalizationObject.d.ts +1 -1
  49. package/dist/types/utils/combineAriaIds.d.ts +2 -0
  50. package/dist/types/utils/control.d.ts +1 -0
  51. package/dist/types/utils/polymorphicTypes.d.ts +23 -0
  52. package/dist/types/utils/setNativeProperty.d.ts +8 -0
  53. package/package.json +1 -1
  54. package/scss/components/Checkbox/_Checkbox.scss +1 -1
  55. package/scss/components/ControlAddon/_ControlAddon.scss +3 -3
  56. package/scss/components/DropdownMenu/_DropdownMenu.scss +1 -1
  57. package/scss/components/FieldGroup/_FieldGroup-variables.scss +3 -3
  58. package/scss/components/RadioGroup/_Radio.scss +1 -1
  59. package/scss/components/Select/_Select-variables.scss +1 -1
  60. package/scss/components/Select/_Select.scss +1 -1
  61. package/scss/scss/placeholders/checkable/_checkable.scss +3 -3
  62. package/scss/scss/placeholders/control/_control.scss +1 -1
  63. package/scss/scss/placeholders/menu/_menu.scss +8 -3
  64. package/scss/scss/placeholders/popover/_popover.scss +10 -12
  65. package/scss/scss/utils/_breakpoints.scss +4 -5
  66. package/scss/scss/utils/_css-color-functions.scss +10 -6
  67. package/scss/scss/utils/_declare-var.scss +1 -1
  68. package/scss/scss/utils/_maybe-important.scss +1 -1
  69. package/scss/scss/utils/_spacing.scss +10 -5
  70. package/dist/chunks/en-C2peM913.js.map +0 -1
  71. package/dist/types/utils/mergeAriaIds.d.ts +0 -2
  72. package/dist/types/utils/setNativeValue.d.ts +0 -7
@@ -74,17 +74,22 @@
74
74
 
75
75
  &:is(button):not(:disabled):not([data-disabled=""]):not(
76
76
  [data-disabled="true"]
77
- ) {
77
+ ):not([data-loading]) {
78
78
  cursor: $menu-item-button-cursor;
79
79
  }
80
80
 
81
81
  &:any-link:not(:disabled):not([data-disabled=""]):not(
82
82
  [data-disabled="true"]
83
- ) {
83
+ ):not([data-loading]) {
84
84
  cursor: $menu-item-link-cursor;
85
85
  }
86
86
 
87
- &:is(:disabled, [data-disabled=""], [data-disabled="true"]) {
87
+ &:is(
88
+ :disabled,
89
+ [data-disabled=""],
90
+ [data-disabled="true"],
91
+ [data-loading]
92
+ ) {
88
93
  cursor: $menu-item-disabled-cursor;
89
94
  opacity: $menu-item-disabled-opacity;
90
95
  }
@@ -42,14 +42,14 @@
42
42
  &__arrow {
43
43
  fill: $popover-arrow-color;
44
44
  filter: if(
45
- $popover-arrow-border-width > 0,
46
- drop-shadow(0 $popover-arrow-border-width 0 $popover-arrow-border-color),
47
- null
45
+ sass($popover-arrow-border-width > 0): drop-shadow(
46
+ 0 $popover-arrow-border-width 0 $popover-arrow-border-color
47
+ )
48
48
  );
49
49
  margin-top: if(
50
- $popover-arrow-border-width > 0,
51
- calc($popover-arrow-border-width * -1),
52
- null
50
+ sass($popover-arrow-border-width > 0): calc(
51
+ $popover-arrow-border-width * -1
52
+ )
53
53
  );
54
54
 
55
55
  // XXX: Firefox doesn't seem to properly rotate the shadow at 180º
@@ -57,12 +57,10 @@
57
57
  @-moz-document url-prefix() {
58
58
  #{$popover}[data-side="bottom"] & {
59
59
  filter: if(
60
- $popover-arrow-border-width > 0,
61
- drop-shadow(
62
- 0 calc($popover-arrow-border-width * -1) 0
63
- $popover-arrow-border-color
64
- ),
65
- null
60
+ sass($popover-arrow-border-width > 0): drop-shadow(
61
+ 0 calc($popover-arrow-border-width * -1) 0
62
+ $popover-arrow-border-color
63
+ )
66
64
  );
67
65
  }
68
66
  }
@@ -8,23 +8,22 @@
8
8
  // Minimum breakpoint width.
9
9
  @function breakpoint-min($size, $breakpoint-by-size: $breakpoint-by-size) {
10
10
  $min: map.get($breakpoint-by-size, $size);
11
- @return if($min != 0, $min, null);
11
+ @return if(sass($min != 0): $min);
12
12
  }
13
13
 
14
14
  // Maximum breakpoint width (-0.02 to work around limitations of `-min`/`-max`
15
15
  // prefixes and 0.02 instead of 0.01 to work around a Safari rounding bug).
16
16
  @function breakpoint-max($size, $breakpoint-by-size: $breakpoint-by-size) {
17
17
  $max: map.get($breakpoint-by-size, $size);
18
- @return if($max and $max > 0, $max - 0.02, null);
18
+ @return if(sass($max and $max > 0): $max - 0.02);
19
19
  }
20
20
 
21
21
  // Returns a blank string if smallest breakpoint, otherwise returns the name
22
22
  // with a dash in front.
23
23
  @function breakpoint-infix($size, $breakpoint-by-size: $breakpoint-by-size) {
24
24
  @return if(
25
- breakpoint-min($size, $breakpoint-by-size) == null,
26
- "",
27
- "-#{$size}"
25
+ sass(breakpoint-min($size, $breakpoint-by-size) == null): "" ;
26
+ else: "-#{$size}"
28
27
  );
29
28
  }
30
29
 
@@ -1,15 +1,19 @@
1
1
  @function css-transparentize($color, $opacity) {
2
2
  @return if(
3
- $color == null or $opacity == null,
4
- null,
5
- color-mix(in srgb, $color calc($opacity * 100%), transparent)
3
+ sass($color != null and $opacity != null): color-mix(
4
+ in srgb,
5
+ $color calc($opacity * 100%),
6
+ transparent
7
+ )
6
8
  );
7
9
  }
8
10
 
9
11
  @function css-lighten($color, $percentage) {
10
12
  @return if(
11
- $color == null or $percentage == null,
12
- null,
13
- color-mix(in srgb, $color calc(100% - $percentage), #fff)
13
+ sass($color != null and $percentage != null): color-mix(
14
+ in srgb,
15
+ $color calc(100% - $percentage),
16
+ #fff
17
+ )
14
18
  );
15
19
  }
@@ -3,6 +3,6 @@
3
3
  // Declares a CSS variable when the values isn't `null`.
4
4
  @mixin declare-var($var, $value: null) {
5
5
  @if ($value != null and $value != NULL) {
6
- #{$var}: #{if($value == "", "", meta.inspect($value))};
6
+ #{$var}: #{if(sass($value == ""): "" ; else: meta.inspect($value))};
7
7
  }
8
8
  }
@@ -1,5 +1,5 @@
1
1
  // Returns the value with `!important` appended if it isn't `null`, or `null`
2
2
  // otherwise
3
3
  @function maybe-important($v) {
4
- @return if($v == null, null, #{$v} !important);
4
+ @return if(sass($v != null): #{$v} !important);
5
5
  }
@@ -4,9 +4,14 @@ $space-var: var(--#{$prefix}space);
4
4
 
5
5
  // Function returning a multiple of the theme's space
6
6
  @function spacing($v) {
7
- @return if(
8
- $v == null,
9
- null,
10
- if($v == 0, 0, if($v == 1, $space-var, calc($space-var * $v)))
11
- );
7
+ @if $v == null {
8
+ @return null;
9
+ }
10
+ @if $v == 0 {
11
+ @return 0;
12
+ }
13
+ @if $v == 1 {
14
+ @return $space-var;
15
+ }
16
+ @return calc($space-var * $v);
12
17
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"en-C2peM913.js","sources":["../../src/locales/en.tsx"],"sourcesContent":["import type { LocalizationObject } from \"../providers/LocalizationProvider\";\n\n/** `en` locale (partial). */\nexport const en: Omit<LocalizationObject, \"languageTag\" | \"dateFnsLocale\"> = {\n AlertDialog: {\n okText: \"OK\",\n },\n Calendar: {\n previousMonthLabel: \"Previous month\",\n nextMonthLabel: \"Next month\",\n },\n CloseButton: {\n label: \"Close\",\n },\n CommandMenu: {\n searchPlaceholder: \"Search…\",\n listLabel: \"Suggestions\",\n loadingLabel: \"Loading…\",\n emptyMessage: \"No results found.\",\n },\n CommandMenuDialog: {\n title: \"Command palette\",\n description: \"Search for a command…\",\n },\n ConfirmDialog: {\n cancelText: \"Cancel\",\n },\n ControlCode: {\n visuallyHiddenPrefix: \"Field\",\n },\n DataTable: {\n emptyMessage: \"Nothing to show.\",\n },\n DataTableFilter: {\n \"aria-label\": \"Table filter\",\n placeholder: \"Filter\",\n },\n DataTablePagination: {\n rowsRange: (range, total) => (\n <>\n Rows&nbsp;{range}&nbsp;of {total}\n </>\n ),\n previousPageButtonLabel: \"Previous page\",\n nextPageButtonLabel: \"Next page\",\n },\n DataTableRowsPerPage: {\n label: \"Rows per page\",\n },\n DateInput: {\n calendarButtonLabel: (selectedDate, editable) =>\n editable\n ? selectedDate\n ? `Open calendar to change selected date: ${selectedDate}`\n : \"Open calendar to select date\"\n : selectedDate\n ? `Open calendar with selected date: ${selectedDate}`\n : \"Open calendar with no selected date\",\n },\n DateRangeInput: {\n startInputLabel: \"Start date\",\n endInputLabel: \"End date\",\n calendarButtonLabel: (selectedDateRange, editable) =>\n editable\n ? selectedDateRange\n ? `Open calendar to change selected date-range: ${selectedDateRange}`\n : \"Open calendar to select date-range\"\n : selectedDateRange\n ? `Open calendar with selected date-range: ${selectedDateRange}`\n : \"Open calendar with no selected date-range\",\n },\n ErrorBoundary: {\n fallbackMessage: (\n <>\n Something went wrong.\n <br />\n Press the button on the right to try again. If the problem persists,\n please try again later.\n </>\n ),\n resetButtonLabel: \"Retry\",\n },\n Feedback: {\n visuallyHiddenPrefix: (type) =>\n type === \"error\" ? \"Error:\" : type === \"warning\" ? \"Warning:\" : null,\n },\n FeedbackPopover: {\n label: \"Show feedback\",\n },\n FieldGroupHeader: {\n visuallyHiddenCodePrefix: \"Group\",\n },\n Input: {\n clearButtonLabel: \"Clear\",\n },\n Label: {\n requiredIconLabel: \"Required\",\n helperButtonLabel: \"Show help\",\n },\n NumericInput: {\n decimalSeparator: \".\",\n groupingStyle: \"thousand\",\n groupSeparator: \",\",\n },\n Select: {\n optionsLabel: \"Options\",\n },\n TableColumn: {\n helperButtonLabel: \"Show help\",\n },\n TableHead: {\n sortByColumnDescription: (columnName, sortDirection) =>\n sortDirection === null\n ? `Stop sorting table by column “${columnName}”`\n : `Sort table by column “${columnName}” in ${\n sortDirection === \"asc\" ? \"ascending\" : \"descending\"\n } order`,\n },\n ToastProvider: {\n label: \"Notification\",\n },\n ToastViewport: {\n label: \"Notifications ({hotkey})\",\n },\n};\n"],"names":[],"mappings":";AAGO,MAAM,KAAgE;AAAA,EAC3E,aAAa;AAAA,IACX,QAAQ;AAAA,EAAA;AAAA,EAEV,UAAU;AAAA,IACR,oBAAoB;AAAA,IACpB,gBAAgB;AAAA,EAAA;AAAA,EAElB,aAAa;AAAA,IACX,OAAO;AAAA,EAAA;AAAA,EAET,aAAa;AAAA,IACX,mBAAmB;AAAA,IACnB,WAAW;AAAA,IACX,cAAc;AAAA,IACd,cAAc;AAAA,EAAA;AAAA,EAEhB,mBAAmB;AAAA,IACjB,OAAO;AAAA,IACP,aAAa;AAAA,EAAA;AAAA,EAEf,eAAe;AAAA,IACb,YAAY;AAAA,EAAA;AAAA,EAEd,aAAa;AAAA,IACX,sBAAsB;AAAA,EAAA;AAAA,EAExB,WAAW;AAAA,IACT,cAAc;AAAA,EAAA;AAAA,EAEhB,iBAAiB;AAAA,IACf,cAAc;AAAA,IACd,aAAa;AAAA,EAAA;AAAA,EAEf,qBAAqB;AAAA,IACnB,WAAW,CAAC,OAAO,UACjB,qBAAA,UAAA,EAAE,UAAA;AAAA,MAAA;AAAA,MACW;AAAA,MAAM;AAAA,MAAU;AAAA,IAAA,GAC7B;AAAA,IAEF,yBAAyB;AAAA,IACzB,qBAAqB;AAAA,EAAA;AAAA,EAEvB,sBAAsB;AAAA,IACpB,OAAO;AAAA,EAAA;AAAA,EAET,WAAW;AAAA,IACT,qBAAqB,CAAC,cAAc,aAClC,WACI,eACE,0CAA0C,YAAY,KACtD,iCACF,eACE,qCAAqC,YAAY,KACjD;AAAA,EAAA;AAAA,EAEV,gBAAgB;AAAA,IACd,iBAAiB;AAAA,IACjB,eAAe;AAAA,IACf,qBAAqB,CAAC,mBAAmB,aACvC,WACI,oBACE,gDAAgD,iBAAiB,KACjE,uCACF,oBACE,2CAA2C,iBAAiB,KAC5D;AAAA,EAAA;AAAA,EAEV,eAAe;AAAA,IACb,iBACE,qBAAA,UAAA,EAAE,UAAA;AAAA,MAAA;AAAA,0BAEC,MAAA,EAAG;AAAA,MAAE;AAAA,IAAA,GAGR;AAAA,IAEF,kBAAkB;AAAA,EAAA;AAAA,EAEpB,UAAU;AAAA,IACR,sBAAsB,CAAC,SACrB,SAAS,UAAU,WAAW,SAAS,YAAY,aAAa;AAAA,EAAA;AAAA,EAEpE,iBAAiB;AAAA,IACf,OAAO;AAAA,EAAA;AAAA,EAET,kBAAkB;AAAA,IAChB,0BAA0B;AAAA,EAAA;AAAA,EAE5B,OAAO;AAAA,IACL,kBAAkB;AAAA,EAAA;AAAA,EAEpB,OAAO;AAAA,IACL,mBAAmB;AAAA,IACnB,mBAAmB;AAAA,EAAA;AAAA,EAErB,cAAc;AAAA,IACZ,kBAAkB;AAAA,IAClB,eAAe;AAAA,IACf,gBAAgB;AAAA,EAAA;AAAA,EAElB,QAAQ;AAAA,IACN,cAAc;AAAA,EAAA;AAAA,EAEhB,aAAa;AAAA,IACX,mBAAmB;AAAA,EAAA;AAAA,EAErB,WAAW;AAAA,IACT,yBAAyB,CAAC,YAAY,kBACpC,kBAAkB,OACd,iCAAiC,UAAU,MAC3C,yBAAyB,UAAU,QACjC,kBAAkB,QAAQ,cAAc,YAC1C;AAAA,EAAA;AAAA,EAER,eAAe;AAAA,IACb,OAAO;AAAA,EAAA;AAAA,EAET,eAAe;AAAA,IACb,OAAO;AAAA,EAAA;AAEX;"}
@@ -1,2 +0,0 @@
1
- /** Merges `aria` identifiers for usage in, for example, `aria-describedby`. */
2
- export declare function mergeAriaIds(...args: unknown[]): string | undefined;
@@ -1,7 +0,0 @@
1
- /**
2
- * Sets the native value of an HTML element in a way that isn't detected by
3
- * React; meaning that we can then dispatch an event that React will handle.
4
- *
5
- * See: https://github.com/facebook/react/issues/10135
6
- */
7
- export declare function setNativeValue(element: HTMLElement, value: string): void;