@cupra/ui-react 0.0.2-placeholder → 0.1.0-canary.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 (130) hide show
  1. package/README.md +184 -18
  2. package/dist/components/Accordion/Accordion.d.ts +17 -0
  3. package/dist/components/Accordion/Accordion.js +8 -0
  4. package/dist/components/Avatar/Avatar.d.ts +9 -0
  5. package/dist/components/Avatar/Avatar.js +11 -0
  6. package/dist/components/Bullets/Bullets.d.ts +7 -0
  7. package/dist/components/Bullets/Bullets.js +6 -0
  8. package/dist/components/Button/Button.d.ts +10 -0
  9. package/dist/components/Button/Button.js +11 -0
  10. package/dist/components/CarouselIndicator/CarouselIndicator.d.ts +8 -0
  11. package/dist/components/CarouselIndicator/CarouselIndicator.js +9 -0
  12. package/dist/components/Checkbox/Checkbox.d.ts +9 -0
  13. package/dist/components/Checkbox/Checkbox.js +11 -0
  14. package/dist/components/Chip/Chip.d.ts +9 -0
  15. package/dist/components/Chip/Chip.js +9 -0
  16. package/dist/components/Chips/Chips.d.ts +10 -0
  17. package/dist/components/Chips/Chips.js +13 -0
  18. package/dist/components/Currency/Currency.d.ts +8 -0
  19. package/dist/components/Currency/Currency.js +9 -0
  20. package/dist/components/Dialog/Dialog.d.ts +11 -0
  21. package/dist/components/Dialog/Dialog.js +15 -0
  22. package/dist/components/DialogBody/DialogBody.d.ts +9 -0
  23. package/dist/components/DialogBody/DialogBody.js +9 -0
  24. package/dist/components/DialogFooter/DialogFooter.d.ts +9 -0
  25. package/dist/components/DialogFooter/DialogFooter.js +9 -0
  26. package/dist/components/DialogHeader/DialogHeader.d.ts +9 -0
  27. package/dist/components/DialogHeader/DialogHeader.js +9 -0
  28. package/dist/components/Divider/Divider.d.ts +7 -0
  29. package/dist/components/Divider/Divider.js +8 -0
  30. package/dist/components/Hyperlink/Hyperlink.d.ts +8 -0
  31. package/dist/components/Hyperlink/Hyperlink.js +11 -0
  32. package/dist/components/Icon/Icon.d.ts +7 -0
  33. package/dist/components/Icon/Icon.js +9 -0
  34. package/dist/components/IconButton/IconButton.d.ts +9 -0
  35. package/dist/components/IconButton/IconButton.js +11 -0
  36. package/dist/components/Input/Input.d.ts +11 -0
  37. package/dist/components/Input/Input.js +14 -0
  38. package/dist/components/LinkButton/LinkButton.d.ts +9 -0
  39. package/dist/components/LinkButton/LinkButton.js +11 -0
  40. package/dist/components/Loader/Loader.d.ts +20 -0
  41. package/dist/components/Loader/Loader.js +24 -0
  42. package/dist/components/Logo/Logo.d.ts +8 -0
  43. package/dist/components/Logo/Logo.js +9 -0
  44. package/dist/components/MapPin/MapPin.d.ts +8 -0
  45. package/dist/components/MapPin/MapPin.js +11 -0
  46. package/dist/components/Modal/Modal.d.ts +26 -0
  47. package/dist/components/Modal/Modal.js +49 -0
  48. package/dist/components/PasswordInput/PasswordInput.d.ts +19 -0
  49. package/dist/components/PasswordInput/PasswordInput.js +42 -0
  50. package/dist/components/PickerItem/PickerItem.d.ts +10 -0
  51. package/dist/components/PickerItem/PickerItem.js +12 -0
  52. package/dist/components/Radio/Radio.d.ts +18 -0
  53. package/dist/components/Radio/Radio.js +14 -0
  54. package/dist/components/RadioButton/RadioButton.d.ts +10 -0
  55. package/dist/components/RadioButton/RadioButton.js +10 -0
  56. package/dist/components/RadioButtonGroup/RadioButtonGroup.d.ts +16 -0
  57. package/dist/components/RadioButtonGroup/RadioButtonGroup.js +10 -0
  58. package/dist/components/Search/Search.d.ts +9 -0
  59. package/dist/components/Search/Search.js +8 -0
  60. package/dist/components/SearchInput/SearchInput.d.ts +20 -0
  61. package/dist/components/SearchInput/SearchInput.js +46 -0
  62. package/dist/components/SecondaryNavigation/SecondaryNavigation.d.ts +18 -0
  63. package/dist/components/SecondaryNavigation/SecondaryNavigation.js +16 -0
  64. package/dist/components/SegmentedControl/SegmentedControl.d.ts +10 -0
  65. package/dist/components/SegmentedControl/SegmentedControl.js +11 -0
  66. package/dist/components/Select/Select.d.ts +9 -0
  67. package/dist/components/Select/Select.js +6 -0
  68. package/dist/components/Selection/Selection.d.ts +8 -0
  69. package/dist/components/Selection/Selection.js +9 -0
  70. package/dist/components/SidebarNavigation/SidebarNavigation.d.ts +25 -0
  71. package/dist/components/SidebarNavigation/SidebarNavigation.js +15 -0
  72. package/dist/components/Slider/Slider.d.ts +8 -0
  73. package/dist/components/Slider/Slider.js +9 -0
  74. package/dist/components/StaticBox/StaticBox.d.ts +9 -0
  75. package/dist/components/StaticBox/StaticBox.js +11 -0
  76. package/dist/components/Stepper/Stepper.d.ts +8 -0
  77. package/dist/components/Stepper/Stepper.js +6 -0
  78. package/dist/components/Tabs/Tabs.d.ts +22 -0
  79. package/dist/components/Tabs/Tabs.js +19 -0
  80. package/dist/components/Tag/Tag.d.ts +11 -0
  81. package/dist/components/Tag/Tag.js +11 -0
  82. package/dist/components/Text/Text.d.ts +9 -0
  83. package/dist/components/Text/Text.js +9 -0
  84. package/dist/components/TextInput/TextInput.d.ts +21 -0
  85. package/dist/components/TextInput/TextInput.js +44 -0
  86. package/dist/components/Textarea/Textarea.d.ts +20 -0
  87. package/dist/components/Textarea/Textarea.js +57 -0
  88. package/dist/components/ThemeProvider/ThemeProvider.d.ts +9 -0
  89. package/dist/components/ThemeProvider/ThemeProvider.js +6 -0
  90. package/dist/components/Toast/Toast.d.ts +11 -0
  91. package/dist/components/Toast/Toast.js +16 -0
  92. package/dist/components/ToastMessage/ToastMessage.d.ts +10 -0
  93. package/dist/components/ToastMessage/ToastMessage.js +13 -0
  94. package/dist/components/ToggleButton/ToggleButton.d.ts +8 -0
  95. package/dist/components/ToggleButton/ToggleButton.js +11 -0
  96. package/dist/components/ToggleSwitch/ToggleSwitch.d.ts +17 -0
  97. package/dist/components/ToggleSwitch/ToggleSwitch.js +22 -0
  98. package/dist/components/Tooltip/Tooltip.d.ts +11 -0
  99. package/dist/components/Tooltip/Tooltip.js +24 -0
  100. package/dist/components/index.d.ts +50 -0
  101. package/dist/components/interactive-card/InteractiveCard.d.ts +34 -0
  102. package/dist/components/interactive-card/InteractiveCard.js +19 -0
  103. package/dist/hooks/index.d.ts +5 -0
  104. package/dist/hooks/useBreakpoint.d.ts +3 -0
  105. package/dist/hooks/useBreakpoint.js +42 -0
  106. package/dist/hooks/useEventListeners.d.ts +9 -0
  107. package/dist/hooks/useEventListeners.js +26 -0
  108. package/dist/hooks/useHandleEvent.d.ts +5 -0
  109. package/dist/hooks/useHandleEvent.js +23 -0
  110. package/dist/hooks/useLoadScript.d.ts +2 -0
  111. package/dist/hooks/useResizeObserver/useResizeObserver.d.ts +6 -0
  112. package/dist/hooks/useResizeObserver/useResizeObserver.js +14 -0
  113. package/dist/index.d.ts +2 -0
  114. package/dist/index.js +112 -0
  115. package/dist/node_modules/.pnpm/@emotion_is-prop-valid@1.2.2/node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.esm.js +10 -0
  116. package/dist/node_modules/.pnpm/@emotion_memoize@0.8.1/node_modules/@emotion/memoize/dist/emotion-memoize.esm.js +9 -0
  117. package/dist/node_modules/.pnpm/@emotion_unitless@0.8.1/node_modules/@emotion/unitless/dist/emotion-unitless.esm.js +52 -0
  118. package/dist/node_modules/.pnpm/styled-components@6.1.19_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/styled-components/dist/styled-components.browser.esm.js +572 -0
  119. package/dist/node_modules/.pnpm/stylis@4.3.2/node_modules/stylis/src/Enum.js +12 -0
  120. package/dist/node_modules/.pnpm/stylis@4.3.2/node_modules/stylis/src/Middleware.js +49 -0
  121. package/dist/node_modules/.pnpm/stylis@4.3.2/node_modules/stylis/src/Parser.js +131 -0
  122. package/dist/node_modules/.pnpm/stylis@4.3.2/node_modules/stylis/src/Prefixer.js +187 -0
  123. package/dist/node_modules/.pnpm/stylis@4.3.2/node_modules/stylis/src/Serializer.js +27 -0
  124. package/dist/node_modules/.pnpm/stylis@4.3.2/node_modules/stylis/src/Tokenizer.js +147 -0
  125. package/dist/node_modules/.pnpm/stylis@4.3.2/node_modules/stylis/src/Utility.js +56 -0
  126. package/dist/node_modules/.pnpm/tslib@2.6.2/node_modules/tslib/tslib.es6.js +18 -0
  127. package/dist/packages/ui-kit/dist-react/index.js +9205 -0
  128. package/dist/packages/ui-kit/dist-react/utils/breakpoints.js +11 -0
  129. package/dist/packages/ui-kit/dist-react/utils/debounce.js +11 -0
  130. package/package.json +56 -28
@@ -0,0 +1,14 @@
1
+ import { useEffect as s } from "react";
2
+ function o(t) {
3
+ const { callback: r, element: n } = t;
4
+ s(() => {
5
+ if (!n) return;
6
+ const e = new ResizeObserver(r);
7
+ return e.observe(n), () => {
8
+ e == null || e.disconnect();
9
+ };
10
+ }, [n, r]);
11
+ }
12
+ export {
13
+ o as useResizeObserver
14
+ };
@@ -0,0 +1,2 @@
1
+ export * from './components';
2
+ export * from './hooks';
package/dist/index.js ADDED
@@ -0,0 +1,112 @@
1
+ import { Accordion as t } from "./components/Accordion/Accordion.js";
2
+ import { Bullets as x } from "./components/Bullets/Bullets.js";
3
+ import { Button as f } from "./components/Button/Button.js";
4
+ import { CarouselIndicator as i } from "./components/CarouselIndicator/CarouselIndicator.js";
5
+ import { Checkbox as d } from "./components/Checkbox/Checkbox.js";
6
+ import { Chip as u } from "./components/Chip/Chip.js";
7
+ import { Chips as c } from "./components/Chips/Chips.js";
8
+ import { Currency as S } from "./components/Currency/Currency.js";
9
+ import { Dialog as B } from "./components/Dialog/Dialog.js";
10
+ import { DialogBody as I } from "./components/DialogBody/DialogBody.js";
11
+ import { DialogFooter as C } from "./components/DialogFooter/DialogFooter.js";
12
+ import { DialogHeader as k } from "./components/DialogHeader/DialogHeader.js";
13
+ import { Divider as b } from "./components/Divider/Divider.js";
14
+ import { Hyperlink as P } from "./components/Hyperlink/Hyperlink.js";
15
+ import { Icon as H } from "./components/Icon/Icon.js";
16
+ import { IconButton as w } from "./components/IconButton/IconButton.js";
17
+ import { Input as E } from "./components/Input/Input.js";
18
+ import { LinkButton as z } from "./components/LinkButton/LinkButton.js";
19
+ import { Loader as G, LoaderLogo as O } from "./components/Loader/Loader.js";
20
+ import { Logo as q } from "./components/Logo/Logo.js";
21
+ import { MapPin as K } from "./components/MapPin/MapPin.js";
22
+ import { Modal as U } from "./components/Modal/Modal.js";
23
+ import { PasswordInput as W } from "./components/PasswordInput/PasswordInput.js";
24
+ import { PickerItem as Y } from "./components/PickerItem/PickerItem.js";
25
+ import { Radio as _ } from "./components/Radio/Radio.js";
26
+ import { RadioButton as oo } from "./components/RadioButton/RadioButton.js";
27
+ import { RadioButtonGroup as eo } from "./components/RadioButtonGroup/RadioButtonGroup.js";
28
+ import { Search as po } from "./components/Search/Search.js";
29
+ import { SearchInput as mo } from "./components/SearchInput/SearchInput.js";
30
+ import { SecondaryNavigation as ao } from "./components/SecondaryNavigation/SecondaryNavigation.js";
31
+ import { SegmentedControl as no } from "./components/SegmentedControl/SegmentedControl.js";
32
+ import { Select as uo } from "./components/Select/Select.js";
33
+ import { Selection as co } from "./components/Selection/Selection.js";
34
+ import { Slider as So } from "./components/Slider/Slider.js";
35
+ import { Tabs as Bo } from "./components/Tabs/Tabs.js";
36
+ import { Tag as Io } from "./components/Tag/Tag.js";
37
+ import { Text as Co } from "./components/Text/Text.js";
38
+ import { TextInput as ko } from "./components/TextInput/TextInput.js";
39
+ import { Textarea as bo } from "./components/Textarea/Textarea.js";
40
+ import { ThemeProvider as Po } from "./components/ThemeProvider/ThemeProvider.js";
41
+ import { ToggleButton as Ho } from "./components/ToggleButton/ToggleButton.js";
42
+ import { ToggleSwitch as wo } from "./components/ToggleSwitch/ToggleSwitch.js";
43
+ import { Tooltip as Eo } from "./components/Tooltip/Tooltip.js";
44
+ import { Toast as zo } from "./components/Toast/Toast.js";
45
+ import { ToastMessage as Go } from "./components/ToastMessage/ToastMessage.js";
46
+ import { Avatar as jo } from "./components/Avatar/Avatar.js";
47
+ import { StaticBox as Jo } from "./components/StaticBox/StaticBox.js";
48
+ import { Stepper as Qo } from "./components/Stepper/Stepper.js";
49
+ import { InteractiveCard as Vo } from "./components/interactive-card/InteractiveCard.js";
50
+ import { SidebarNavigation as Xo } from "./components/SidebarNavigation/SidebarNavigation.js";
51
+ import { useBreakpoint as Zo } from "./hooks/useBreakpoint.js";
52
+ import { useEventListeners as $o } from "./hooks/useEventListeners.js";
53
+ import { useHandleEvent as rr } from "./hooks/useHandleEvent.js";
54
+ import "react";
55
+ import { useResizeObserver as tr } from "./hooks/useResizeObserver/useResizeObserver.js";
56
+ export {
57
+ t as Accordion,
58
+ jo as Avatar,
59
+ x as Bullets,
60
+ f as Button,
61
+ i as CarouselIndicator,
62
+ d as Checkbox,
63
+ u as Chip,
64
+ c as Chips,
65
+ S as Currency,
66
+ B as Dialog,
67
+ I as DialogBody,
68
+ C as DialogFooter,
69
+ k as DialogHeader,
70
+ b as Divider,
71
+ P as Hyperlink,
72
+ H as Icon,
73
+ w as IconButton,
74
+ E as Input,
75
+ Vo as InteractiveCard,
76
+ z as LinkButton,
77
+ G as Loader,
78
+ O as LoaderLogo,
79
+ q as Logo,
80
+ K as MapPin,
81
+ U as Modal,
82
+ W as PasswordInput,
83
+ Y as PickerItem,
84
+ _ as Radio,
85
+ oo as RadioButton,
86
+ eo as RadioButtonGroup,
87
+ po as Search,
88
+ mo as SearchInput,
89
+ ao as SecondaryNavigation,
90
+ no as SegmentedControl,
91
+ uo as Select,
92
+ co as Selection,
93
+ Xo as SidebarNavigation,
94
+ So as Slider,
95
+ Jo as StaticBox,
96
+ Qo as Stepper,
97
+ Bo as Tabs,
98
+ Io as Tag,
99
+ Co as Text,
100
+ ko as TextInput,
101
+ bo as Textarea,
102
+ Po as ThemeProvider,
103
+ zo as Toast,
104
+ Go as ToastMessage,
105
+ Ho as ToggleButton,
106
+ wo as ToggleSwitch,
107
+ Eo as Tooltip,
108
+ Zo as useBreakpoint,
109
+ $o as useEventListeners,
110
+ rr as useHandleEvent,
111
+ tr as useResizeObserver
112
+ };
@@ -0,0 +1,10 @@
1
+ import t from "../../../../../@emotion_memoize@0.8.1/node_modules/@emotion/memoize/dist/emotion-memoize.esm.js";
2
+ var r = /^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|abbr|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|disableRemotePlayback|download|draggable|encType|enterKeyHint|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|translate|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|incremental|fallback|inert|itemProp|itemScope|itemType|itemID|itemRef|on|option|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/, a = /* @__PURE__ */ t(
3
+ function(e) {
4
+ return r.test(e) || e.charCodeAt(0) === 111 && e.charCodeAt(1) === 110 && e.charCodeAt(2) < 91;
5
+ }
6
+ /* Z+1 */
7
+ );
8
+ export {
9
+ a as default
10
+ };
@@ -0,0 +1,9 @@
1
+ function u(t) {
2
+ var n = /* @__PURE__ */ Object.create(null);
3
+ return function(e) {
4
+ return n[e] === void 0 && (n[e] = t(e)), n[e];
5
+ };
6
+ }
7
+ export {
8
+ u as default
9
+ };
@@ -0,0 +1,52 @@
1
+ var o = {
2
+ animationIterationCount: 1,
3
+ aspectRatio: 1,
4
+ borderImageOutset: 1,
5
+ borderImageSlice: 1,
6
+ borderImageWidth: 1,
7
+ boxFlex: 1,
8
+ boxFlexGroup: 1,
9
+ boxOrdinalGroup: 1,
10
+ columnCount: 1,
11
+ columns: 1,
12
+ flex: 1,
13
+ flexGrow: 1,
14
+ flexPositive: 1,
15
+ flexShrink: 1,
16
+ flexNegative: 1,
17
+ flexOrder: 1,
18
+ gridRow: 1,
19
+ gridRowEnd: 1,
20
+ gridRowSpan: 1,
21
+ gridRowStart: 1,
22
+ gridColumn: 1,
23
+ gridColumnEnd: 1,
24
+ gridColumnSpan: 1,
25
+ gridColumnStart: 1,
26
+ msGridRow: 1,
27
+ msGridRowSpan: 1,
28
+ msGridColumn: 1,
29
+ msGridColumnSpan: 1,
30
+ fontWeight: 1,
31
+ lineHeight: 1,
32
+ opacity: 1,
33
+ order: 1,
34
+ orphans: 1,
35
+ tabSize: 1,
36
+ widows: 1,
37
+ zIndex: 1,
38
+ zoom: 1,
39
+ WebkitLineClamp: 1,
40
+ // SVG-related properties
41
+ fillOpacity: 1,
42
+ floodOpacity: 1,
43
+ stopOpacity: 1,
44
+ strokeDasharray: 1,
45
+ strokeDashoffset: 1,
46
+ strokeMiterlimit: 1,
47
+ strokeOpacity: 1,
48
+ strokeWidth: 1
49
+ };
50
+ export {
51
+ o as default
52
+ };