oolib 2.230.3 → 2.231.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.
@@ -37,7 +37,7 @@ exports.LoaderOverlay = void 0;
37
37
  var react_1 = __importStar(require("react"));
38
38
  var react_dom_1 = require("react-dom");
39
39
  var themes_1 = require("../../../themes");
40
- var LoaderCircle_1 = require("../LoaderCircle");
40
+ var LoaderCircle_1 = require("../../../v2/components/LoaderCircle");
41
41
  /**
42
42
  * @component Renders a loader overlay component with customizable text and styling.
43
43
  *
@@ -58,6 +58,6 @@ var LoaderOverlay = function (_a) {
58
58
  left: 0,
59
59
  zIndex: 1000000000,
60
60
  } },
61
- react_1.default.createElement(LoaderCircle_1.LoaderCircle, { text: loaderText || "Loading...", isBlock: true, invert: true }))), document.getElementById("loader-root")));
61
+ react_1.default.createElement(LoaderCircle_1.LoaderCircleV2, { text: loaderText || "Loading...", isBlock: true, color: "#FFFFFF" }))), document.getElementById("loader-root")));
62
62
  };
63
63
  exports.LoaderOverlay = LoaderOverlay;
package/dist/index.d.ts CHANGED
@@ -73,6 +73,7 @@ export { CheckboxList } from "./v2/components/RadioAndCheckbox/comps/CheckboxLis
73
73
  export { CheckboxInput } from "./v2/components/RadioAndCheckbox/comps/CheckboxList/comps/CheckboxInput";
74
74
  export { CheckboxButton } from "./v2/components/RadioAndCheckbox/comps/CheckboxList/comps/CheckboxButton";
75
75
  export { RadioList } from "./v2/components/RadioAndCheckbox/comps/RadioList/index";
76
+ export { LoaderCircleV2 } from "./v2/components/LoaderCircle";
76
77
  export { List } from "./v2/components/List";
77
78
  export { ListItem } from "./v2/components/List/comps/ListItem";
78
79
  export { default as TooltipV2 } from "./v2/components/Tooltip";
package/dist/index.js CHANGED
@@ -40,8 +40,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
40
40
  };
41
41
  Object.defineProperty(exports, "__esModule", { value: true });
42
42
  exports.BannerInfo = exports.BannerAlert = exports.GroupQuestionsInputSingle = exports.ResourceInput = exports.IFrameInput = exports.PDFInput = exports.AudioInput = exports.VideoInput = exports.ProfileImageInput = exports.ImageInput = exports.MetaBlock = exports.parseCardConfig = exports.ListProfile = exports.CardProfile = exports.CardEmbed = exports.DateTimeRangePicker = exports.DateTimePicker = exports.TimeRangePicker = exports.TimePicker = exports.DateRangePicker = exports.DatePicker = exports.TextLoader = exports.PageScrollIndicator = exports.HomeCover = exports.EmptyStates = exports.ModalSmall = exports.Modal = exports.ModalForms = exports.ModalConfirm = exports.SkeletonLoader = exports.Divider = exports.PercentCompletedPie = exports.Accordion = exports.ActionMenu = exports.Tooltip = exports.OKELink = exports.UserRoleBadge = exports.Section = exports.TagDisplay = exports.TagSelect = exports.TagLink = exports.TagClear = exports.LoaderOverlay = exports.Loader = exports.ProgressBar = exports.LoaderCircle = exports.applyBlackOverlayOnHover = exports.icons = exports.colors = exports.GlobalStyles = void 0;
43
- exports.ListItem = exports.List = exports.SwitchDouble = exports.SwitchSingle = exports.RadioButton = exports.RadioInput = exports.RadioList = exports.CheckboxButton = exports.CheckboxInput = exports.CheckboxList = exports.AccordionV2 = exports.HomeCoverV2 = exports.DateRangePickerV2 = exports.MetaBlockV2 = exports.typoV2_CSS = exports.colors2 = exports.TabBarV2 = exports.ButtonUpload = exports.ButtonGhostCompact = exports.ButtonTertiaryCompact = exports.ButtonSecondaryCompact = exports.ButtonPrimaryCompact = exports.ButtonGhostV2 = exports.ButtonTertiaryV2 = exports.ButtonSecondaryV2 = exports.ButtonPrimaryV2 = exports.TagClearV2 = exports.TagLinkV2 = exports.TagDisplayV2 = exports.generateOptions = exports.genTagComp = exports.OptionsSingle = exports.DropdownMulti = exports.DropdownSingle = exports.HintsProvider = exports.BlockLabel = exports.ListContent = exports.CardContent = exports.URLInput = exports.PasswordInput = exports.PhoneInput = exports.NumberInput = exports.EmailInput = exports.TextInput = exports.TableCellResizerPlugin = exports.styledOKELinkCSS = exports.ModalConfirmAction = exports.BannerProvider = exports.useBannerContext = exports.BannerContext = void 0;
44
- exports.FloatingPortal = exports.FloatingFocusManager = exports.useFloatingPosition = exports.baseStyling = exports.TooltipV2 = void 0;
43
+ exports.List = exports.LoaderCircleV2 = exports.SwitchDouble = exports.SwitchSingle = exports.RadioButton = exports.RadioInput = exports.RadioList = exports.CheckboxButton = exports.CheckboxInput = exports.CheckboxList = exports.AccordionV2 = exports.HomeCoverV2 = exports.DateRangePickerV2 = exports.MetaBlockV2 = exports.typoV2_CSS = exports.colors2 = exports.TabBarV2 = exports.ButtonUpload = exports.ButtonGhostCompact = exports.ButtonTertiaryCompact = exports.ButtonSecondaryCompact = exports.ButtonPrimaryCompact = exports.ButtonGhostV2 = exports.ButtonTertiaryV2 = exports.ButtonSecondaryV2 = exports.ButtonPrimaryV2 = exports.TagClearV2 = exports.TagLinkV2 = exports.TagDisplayV2 = exports.generateOptions = exports.genTagComp = exports.OptionsSingle = exports.DropdownMulti = exports.DropdownSingle = exports.HintsProvider = exports.BlockLabel = exports.ListContent = exports.CardContent = exports.URLInput = exports.PasswordInput = exports.PhoneInput = exports.NumberInput = exports.EmailInput = exports.TextInput = exports.TableCellResizerPlugin = exports.styledOKELinkCSS = exports.ModalConfirmAction = exports.BannerProvider = exports.useBannerContext = exports.BannerContext = void 0;
44
+ exports.FloatingPortal = exports.FloatingFocusManager = exports.useFloatingPosition = exports.baseStyling = exports.TooltipV2 = exports.ListItem = void 0;
45
45
  //css and styling related ( styled-components )
46
46
  var globalStyles_1 = require("./globalStyles");
47
47
  Object.defineProperty(exports, "GlobalStyles", { enumerable: true, get: function () { return globalStyles_1.GlobalStyles; } });
@@ -243,6 +243,8 @@ Object.defineProperty(exports, "RadioButton", { enumerable: true, get: function
243
243
  var Switches_1 = require("./v2/components/Switches");
244
244
  Object.defineProperty(exports, "SwitchSingle", { enumerable: true, get: function () { return Switches_1.SwitchSingle; } });
245
245
  Object.defineProperty(exports, "SwitchDouble", { enumerable: true, get: function () { return Switches_1.SwitchDouble; } });
246
+ var LoaderCircle_1 = require("./v2/components/LoaderCircle");
247
+ Object.defineProperty(exports, "LoaderCircleV2", { enumerable: true, get: function () { return LoaderCircle_1.LoaderCircleV2; } });
246
248
  var List_1 = require("./v2/components/List");
247
249
  Object.defineProperty(exports, "List", { enumerable: true, get: function () { return List_1.List; } });
248
250
  var ListItem_1 = require("./v2/components/List/comps/ListItem");
@@ -0,0 +1,159 @@
1
+ declare namespace _default {
2
+ let title: string;
3
+ namespace argTypes {
4
+ namespace size {
5
+ let name: string;
6
+ let options: string[];
7
+ namespace mapping {
8
+ let Small: string;
9
+ let Medium: string;
10
+ let Large: string;
11
+ }
12
+ namespace control {
13
+ let type: string;
14
+ }
15
+ }
16
+ namespace text {
17
+ let name_1: string;
18
+ export { name_1 as name };
19
+ export namespace control_1 {
20
+ let type_1: string;
21
+ export { type_1 as type };
22
+ }
23
+ export { control_1 as control };
24
+ }
25
+ namespace color {
26
+ let name_2: string;
27
+ export { name_2 as name };
28
+ export { colorOptions as options };
29
+ export namespace control_2 {
30
+ let type_2: string;
31
+ export { type_2 as type };
32
+ }
33
+ export { control_2 as control };
34
+ }
35
+ namespace isBlock {
36
+ let name_3: string;
37
+ export { name_3 as name };
38
+ export namespace control_3 {
39
+ let type_3: string;
40
+ export { type_3 as type };
41
+ }
42
+ export { control_3 as control };
43
+ }
44
+ namespace blockHeight {
45
+ let name_4: string;
46
+ export { name_4 as name };
47
+ export { blockHeightOptions as options };
48
+ export namespace control_4 {
49
+ let type_4: string;
50
+ export { type_4 as type };
51
+ }
52
+ export { control_4 as control };
53
+ }
54
+ namespace customDiameter {
55
+ let name_5: string;
56
+ export { name_5 as name };
57
+ export namespace control_5 {
58
+ let type_5: string;
59
+ export { type_5 as type };
60
+ }
61
+ export { control_5 as control };
62
+ }
63
+ namespace customTrackThickness {
64
+ let name_6: string;
65
+ export { name_6 as name };
66
+ export namespace control_6 {
67
+ let type_6: string;
68
+ export { type_6 as type };
69
+ }
70
+ export { control_6 as control };
71
+ }
72
+ namespace background {
73
+ let name_7: string;
74
+ export { name_7 as name };
75
+ let options_1: string[];
76
+ export { options_1 as options };
77
+ export namespace control_7 {
78
+ let type_7: string;
79
+ export { type_7 as type };
80
+ }
81
+ export { control_7 as control };
82
+ }
83
+ }
84
+ namespace args {
85
+ let size_1: string;
86
+ export { size_1 as size };
87
+ let text_1: string;
88
+ export { text_1 as text };
89
+ let color_1: any;
90
+ export { color_1 as color };
91
+ let isBlock_1: boolean;
92
+ export { isBlock_1 as isBlock };
93
+ let blockHeight_1: string;
94
+ export { blockHeight_1 as blockHeight };
95
+ let customDiameter_1: any;
96
+ export { customDiameter_1 as customDiameter };
97
+ let customTrackThickness_1: any;
98
+ export { customTrackThickness_1 as customTrackThickness };
99
+ let background_1: string;
100
+ export { background_1 as background };
101
+ }
102
+ }
103
+ export default _default;
104
+ export function Playground(args: any): React.JSX.Element;
105
+ export function Sizes(): React.JSX.Element;
106
+ export namespace Sizes {
107
+ namespace parameters {
108
+ namespace controls {
109
+ let disable: boolean;
110
+ }
111
+ }
112
+ }
113
+ export function WithText(): React.JSX.Element;
114
+ export namespace WithText {
115
+ export namespace parameters_1 {
116
+ export namespace controls_1 {
117
+ let disable_1: boolean;
118
+ export { disable_1 as disable };
119
+ }
120
+ export { controls_1 as controls };
121
+ }
122
+ export { parameters_1 as parameters };
123
+ }
124
+ export function Colors(): React.JSX.Element;
125
+ export namespace Colors {
126
+ export namespace parameters_2 {
127
+ export namespace controls_2 {
128
+ let disable_2: boolean;
129
+ export { disable_2 as disable };
130
+ }
131
+ export { controls_2 as controls };
132
+ }
133
+ export { parameters_2 as parameters };
134
+ }
135
+ export function CustomSizes(): React.JSX.Element;
136
+ export namespace CustomSizes {
137
+ export namespace parameters_3 {
138
+ export namespace controls_3 {
139
+ let disable_3: boolean;
140
+ export { disable_3 as disable };
141
+ }
142
+ export { controls_3 as controls };
143
+ }
144
+ export { parameters_3 as parameters };
145
+ }
146
+ export function BlockVsInline(): React.JSX.Element;
147
+ export namespace BlockVsInline {
148
+ export namespace parameters_4 {
149
+ export namespace controls_4 {
150
+ let disable_4: boolean;
151
+ export { disable_4 as disable };
152
+ }
153
+ export { controls_4 as controls };
154
+ }
155
+ export { parameters_4 as parameters };
156
+ }
157
+ declare const colorOptions: string[];
158
+ declare const blockHeightOptions: string[];
159
+ import React from "react";
@@ -0,0 +1,208 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
14
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
15
+ if (ar || !(i in from)) {
16
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
17
+ ar[i] = from[i];
18
+ }
19
+ }
20
+ return to.concat(ar || Array.prototype.slice.call(from));
21
+ };
22
+ var __importDefault = (this && this.__importDefault) || function (mod) {
23
+ return (mod && mod.__esModule) ? mod : { "default": mod };
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.BlockVsInline = exports.CustomSizes = exports.Colors = exports.WithText = exports.Sizes = exports.Playground = void 0;
27
+ var react_1 = __importDefault(require("react"));
28
+ var LoaderCircle_1 = require("../../../v2/components/LoaderCircle");
29
+ var themes_1 = require("../../../v2/themes");
30
+ var colorOptions = __spreadArray([undefined], Object.keys(themes_1.colors).sort(), true);
31
+ var blockHeightOptions = ["100%", "10vh", "20vh", "30vh", "50vh", "80vh", "100vh"];
32
+ exports.default = {
33
+ title: "Oolib V 2.0/components/LoaderCircle",
34
+ argTypes: {
35
+ size: {
36
+ name: "Size",
37
+ options: ["Small", "Medium", "Large"],
38
+ mapping: {
39
+ Small: "S",
40
+ Medium: "M",
41
+ Large: "L",
42
+ },
43
+ control: { type: "inline-radio" },
44
+ },
45
+ text: {
46
+ name: "Text",
47
+ control: { type: "text" },
48
+ },
49
+ color: {
50
+ name: "Color",
51
+ options: colorOptions,
52
+ control: { type: "select" },
53
+ },
54
+ isBlock: {
55
+ name: "Is Block",
56
+ control: { type: "boolean" },
57
+ },
58
+ blockHeight: {
59
+ name: "Block Height",
60
+ options: blockHeightOptions,
61
+ control: { type: "select" },
62
+ },
63
+ customDiameter: {
64
+ name: "Custom Diameter (px)",
65
+ control: { type: "number" },
66
+ },
67
+ customTrackThickness: {
68
+ name: "Custom Track Thickness (px)",
69
+ control: { type: "number" },
70
+ },
71
+ background: {
72
+ name: "Background",
73
+ options: ["none", "dark", "light"],
74
+ control: { type: "inline-radio" },
75
+ },
76
+ },
77
+ args: {
78
+ size: "Medium",
79
+ text: "",
80
+ color: undefined,
81
+ isBlock: true,
82
+ blockHeight: "50vh",
83
+ customDiameter: undefined,
84
+ customTrackThickness: undefined,
85
+ background: "none",
86
+ },
87
+ };
88
+ var getBackground = function (bg) {
89
+ if (bg === "dark")
90
+ return themes_1.colors.grey80;
91
+ if (bg === "light")
92
+ return themes_1.colors.surfaceContainerLow;
93
+ return "transparent";
94
+ };
95
+ // --- Interactive playground ---
96
+ var Playground = function (args) {
97
+ var props = {};
98
+ props[args.size] = true;
99
+ if (args.text)
100
+ props.text = args.text;
101
+ if (args.color)
102
+ props.color = themes_1.colors[args.color];
103
+ props.isBlock = args.isBlock;
104
+ if (args.isBlock)
105
+ props.blockHeight = args.blockHeight;
106
+ if (args.customDiameter)
107
+ props.diameter = args.customDiameter;
108
+ if (args.customTrackThickness)
109
+ props.trackThickness = args.customTrackThickness;
110
+ return (react_1.default.createElement("div", { style: {
111
+ background: getBackground(args.background),
112
+ padding: "2rem",
113
+ borderRadius: "8px",
114
+ } },
115
+ react_1.default.createElement(LoaderCircle_1.LoaderCircleV2, __assign({}, props))));
116
+ };
117
+ exports.Playground = Playground;
118
+ // --- All sizes side by side ---
119
+ var Sizes = function () {
120
+ return (react_1.default.createElement("div", { style: { display: "flex", alignItems: "center", gap: "3rem", padding: "2rem" } },
121
+ react_1.default.createElement("div", { style: { textAlign: "center" } },
122
+ react_1.default.createElement(LoaderCircle_1.LoaderCircleV2, { S: true, isBlock: false }),
123
+ react_1.default.createElement("div", { style: { marginTop: "0.5rem", fontSize: "12px", color: themes_1.colors.grey50 } }, "Small (20px)")),
124
+ react_1.default.createElement("div", { style: { textAlign: "center" } },
125
+ react_1.default.createElement(LoaderCircle_1.LoaderCircleV2, { M: true, isBlock: false }),
126
+ react_1.default.createElement("div", { style: { marginTop: "0.5rem", fontSize: "12px", color: themes_1.colors.grey50 } }, "Medium (43px)")),
127
+ react_1.default.createElement("div", { style: { textAlign: "center" } },
128
+ react_1.default.createElement(LoaderCircle_1.LoaderCircleV2, { L: true, isBlock: false }),
129
+ react_1.default.createElement("div", { style: { marginTop: "0.5rem", fontSize: "12px", color: themes_1.colors.grey50 } }, "Large (70px)"))));
130
+ };
131
+ exports.Sizes = Sizes;
132
+ exports.Sizes.parameters = { controls: { disable: true } };
133
+ // --- With text ---
134
+ var WithText = function () {
135
+ return (react_1.default.createElement("div", { style: { display: "flex", flexDirection: "column", gap: "3rem", padding: "2rem" } },
136
+ react_1.default.createElement("div", null,
137
+ react_1.default.createElement("div", { style: { marginBottom: "1rem", fontSize: "13px", fontWeight: 600, color: themes_1.colors.grey50 } }, "Block (centered, with text below)"),
138
+ react_1.default.createElement("div", { style: { border: "1px dashed ".concat(themes_1.colors.grey20), borderRadius: "8px" } },
139
+ react_1.default.createElement(LoaderCircle_1.LoaderCircleV2, { text: "Loading data...", blockHeight: "20vh" }))),
140
+ react_1.default.createElement("div", null,
141
+ react_1.default.createElement("div", { style: { marginBottom: "1rem", fontSize: "13px", fontWeight: 600, color: themes_1.colors.grey50 } }, "Inline (text beside spinner)"),
142
+ react_1.default.createElement(LoaderCircle_1.LoaderCircleV2, { S: true, isBlock: false, text: "Loading..." })),
143
+ react_1.default.createElement("div", null,
144
+ react_1.default.createElement("div", { style: { marginBottom: "1rem", fontSize: "13px", fontWeight: 600, color: themes_1.colors.grey50 } }, "Large with text"),
145
+ react_1.default.createElement("div", { style: { border: "1px dashed ".concat(themes_1.colors.grey20), borderRadius: "8px" } },
146
+ react_1.default.createElement(LoaderCircle_1.LoaderCircleV2, { L: true, text: "Generating Platform...", blockHeight: "30vh" })))));
147
+ };
148
+ exports.WithText = WithText;
149
+ exports.WithText.parameters = { controls: { disable: true } };
150
+ // --- Color variants ---
151
+ var Colors = function () {
152
+ var colorSamples = [
153
+ { name: "Default (onSecondary)", color: undefined },
154
+ { name: "Primary", color: themes_1.colors.primary },
155
+ { name: "Red", color: themes_1.colors.red },
156
+ { name: "Green", color: themes_1.colors.green },
157
+ { name: "Purple", color: themes_1.colors.purple },
158
+ { name: "Grey50", color: themes_1.colors.grey50 },
159
+ { name: "White (on dark)", color: themes_1.colors.white, bg: themes_1.colors.grey80 },
160
+ ];
161
+ return (react_1.default.createElement("div", { style: { display: "flex", flexWrap: "wrap", gap: "2rem", padding: "2rem" } }, colorSamples.map(function (_a) {
162
+ var name = _a.name, color = _a.color, bg = _a.bg;
163
+ return (react_1.default.createElement("div", { key: name, style: {
164
+ display: "flex",
165
+ flexDirection: "column",
166
+ alignItems: "center",
167
+ gap: "0.75rem",
168
+ padding: "1.5rem",
169
+ borderRadius: "8px",
170
+ background: bg || themes_1.colors.surfaceContainerLow,
171
+ minWidth: "120px",
172
+ } },
173
+ react_1.default.createElement(LoaderCircle_1.LoaderCircleV2, { M: true, isBlock: false, color: color }),
174
+ react_1.default.createElement("div", { style: { fontSize: "12px", color: bg ? themes_1.colors.white : themes_1.colors.grey50 } }, name)));
175
+ })));
176
+ };
177
+ exports.Colors = Colors;
178
+ exports.Colors.parameters = { controls: { disable: true } };
179
+ // --- Custom diameter ---
180
+ var CustomSizes = function () {
181
+ var customSizes = [12, 16, 24, 32, 48, 64, 100];
182
+ return (react_1.default.createElement("div", { style: { display: "flex", alignItems: "center", gap: "2rem", padding: "2rem" } }, customSizes.map(function (d) { return (react_1.default.createElement("div", { key: d, style: { textAlign: "center" } },
183
+ react_1.default.createElement(LoaderCircle_1.LoaderCircleV2, { isBlock: false, diameter: d }),
184
+ react_1.default.createElement("div", { style: { marginTop: "0.5rem", fontSize: "12px", color: themes_1.colors.grey50 } },
185
+ d,
186
+ "px"))); })));
187
+ };
188
+ exports.CustomSizes = CustomSizes;
189
+ exports.CustomSizes.parameters = { controls: { disable: true } };
190
+ // --- Block vs Inline ---
191
+ var BlockVsInline = function () {
192
+ return (react_1.default.createElement("div", { style: { display: "flex", flexDirection: "column", gap: "3rem", padding: "2rem" } },
193
+ react_1.default.createElement("div", null,
194
+ react_1.default.createElement("div", { style: { marginBottom: "1rem", fontSize: "13px", fontWeight: 600, color: themes_1.colors.grey50 } }, "isBlock=true (centers in container)"),
195
+ react_1.default.createElement("div", { style: {
196
+ border: "1px dashed ".concat(themes_1.colors.grey20),
197
+ borderRadius: "8px",
198
+ height: "200px",
199
+ } },
200
+ react_1.default.createElement(LoaderCircle_1.LoaderCircleV2, { isBlock: true, blockHeight: "200px", text: "Centered in block" }))),
201
+ react_1.default.createElement("div", null,
202
+ react_1.default.createElement("div", { style: { marginBottom: "1rem", fontSize: "13px", fontWeight: 600, color: themes_1.colors.grey50 } }, "isBlock=false (inline, flows with content)"),
203
+ react_1.default.createElement("div", { style: { display: "flex", alignItems: "center", gap: "1rem" } },
204
+ react_1.default.createElement("span", { style: { fontSize: "14px", color: themes_1.colors.grey60 } }, "Status:"),
205
+ react_1.default.createElement(LoaderCircle_1.LoaderCircleV2, { S: true, isBlock: false, text: "Processing..." })))));
206
+ };
207
+ exports.BlockVsInline = BlockVsInline;
208
+ exports.BlockVsInline.parameters = { controls: { disable: true } };
@@ -0,0 +1,21 @@
1
+ import React, { FunctionComponent } from "react";
2
+ export interface LoaderCircleV2Props {
3
+ /** Preset size. Ignored if `diameter` is provided. */
4
+ L?: boolean;
5
+ S?: boolean;
6
+ M?: boolean;
7
+ /** Custom diameter in px — overrides L/M/S */
8
+ diameter?: number;
9
+ /** Custom stroke thickness in px */
10
+ trackThickness?: number;
11
+ /** Stroke color. Defaults to theme onSecondary */
12
+ color?: string;
13
+ /** Optional text displayed next to (inline) or below (block) the spinner */
14
+ text?: string;
15
+ children?: React.ReactNode;
16
+ /** When true, centers the loader in a full-height block container. Default: true */
17
+ isBlock?: boolean;
18
+ /** Height of the block container. Only applies when isBlock is true. Default: "100%" */
19
+ blockHeight?: string;
20
+ }
21
+ export declare const LoaderCircleV2: FunctionComponent<LoaderCircleV2Props>;
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7
+ if (k2 === undefined) k2 = k;
8
+ var desc = Object.getOwnPropertyDescriptor(m, k);
9
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
10
+ desc = { enumerable: true, get: function() { return m[k]; } };
11
+ }
12
+ Object.defineProperty(o, k2, desc);
13
+ }) : (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ o[k2] = m[k];
16
+ }));
17
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
18
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
19
+ }) : function(o, v) {
20
+ o["default"] = v;
21
+ });
22
+ var __importStar = (this && this.__importStar) || (function () {
23
+ var ownKeys = function(o) {
24
+ ownKeys = Object.getOwnPropertyNames || function (o) {
25
+ var ar = [];
26
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
27
+ return ar;
28
+ };
29
+ return ownKeys(o);
30
+ };
31
+ return function (mod) {
32
+ if (mod && mod.__esModule) return mod;
33
+ var result = {};
34
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
35
+ __setModuleDefault(result, mod);
36
+ return result;
37
+ };
38
+ })();
39
+ var __importDefault = (this && this.__importDefault) || function (mod) {
40
+ return (mod && mod.__esModule) ? mod : { "default": mod };
41
+ };
42
+ Object.defineProperty(exports, "__esModule", { value: true });
43
+ exports.LoaderCircleV2 = void 0;
44
+ var react_1 = __importDefault(require("react"));
45
+ var styled_components_1 = __importStar(require("styled-components"));
46
+ var themes_1 = require("../../themes");
47
+ var Typo2_1 = require("../Typo2");
48
+ var spin = (0, styled_components_1.keyframes)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n from { transform: rotate(0deg); }\n to { transform: rotate(360deg); }\n"], ["\n from { transform: rotate(0deg); }\n to { transform: rotate(360deg); }\n"])));
49
+ /** diameter / 10 — e.g. 20px → 2px, 43px → 4.3px, 70px → 7px */
50
+ var getTrackThickness = function (diameter) { return diameter / 10; };
51
+ var sizeConfig = {
52
+ L: { diameter: 70, TypoComp: Typo2_1.UI_TITLE },
53
+ M: { diameter: 43, TypoComp: Typo2_1.UI_BODY_DF },
54
+ S: { diameter: 20, TypoComp: Typo2_1.UI_BODY_SM_DF },
55
+ };
56
+ var BlockWrapper = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n background-color: transparent;\n width: 100%;\n height: ", ";\n display: grid;\n place-items: center;\n"], ["\n background-color: transparent;\n width: 100%;\n height: ", ";\n display: grid;\n place-items: center;\n"])), function (_a) {
57
+ var blockHeight = _a.blockHeight;
58
+ return blockHeight;
59
+ });
60
+ var InlineWrapper = styled_components_1.default.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n display: inline-flex;\n align-items: center;\n gap: 0.5rem;\n"], ["\n display: inline-flex;\n align-items: center;\n gap: 0.5rem;\n"])));
61
+ var BlockInner = styled_components_1.default.div(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 1.2rem;\n text-align: center;\n"], ["\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 1.2rem;\n text-align: center;\n"])));
62
+ var SpinningSvg = styled_components_1.default.svg(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n flex-shrink: 0;\n display: inline-block;\n animation: ", " 1.2s linear infinite;\n"], ["\n flex-shrink: 0;\n display: inline-block;\n animation: ", " 1.2s linear infinite;\n"])), spin);
63
+ var LoaderCircleV2 = function (_a) {
64
+ var L = _a.L, S = _a.S, M = _a.M, _diameter = _a.diameter, _trackThickness = _a.trackThickness, _b = _a.color, color = _b === void 0 ? themes_1.colors.onSecondary : _b, _text = _a.text, children = _a.children, _c = _a.isBlock, isBlock = _c === void 0 ? true : _c, _d = _a.blockHeight, blockHeight = _d === void 0 ? "100%" : _d;
65
+ var size = L ? "L" : S ? "S" : "M";
66
+ var config = sizeConfig[size];
67
+ var diameter = _diameter !== null && _diameter !== void 0 ? _diameter : config.diameter;
68
+ var trackThickness = _trackThickness !== null && _trackThickness !== void 0 ? _trackThickness : getTrackThickness(diameter);
69
+ var TypoComp = config.TypoComp;
70
+ var text = _text || children;
71
+ var radius = (diameter - trackThickness) / 2;
72
+ var circumference = 2 * Math.PI * radius;
73
+ var dashOffset = circumference * 0.18;
74
+ var spinner = (react_1.default.createElement(SpinningSvg, { width: diameter, height: diameter },
75
+ react_1.default.createElement("circle", { cx: diameter / 2, cy: diameter / 2, r: radius, fill: "none", stroke: color, strokeWidth: trackThickness, strokeLinecap: "round", strokeDasharray: circumference, strokeDashoffset: dashOffset })));
76
+ if (!isBlock) {
77
+ return (react_1.default.createElement(InlineWrapper, null,
78
+ spinner,
79
+ text && react_1.default.createElement(TypoComp, { style: { color: color } }, text)));
80
+ }
81
+ return (react_1.default.createElement(BlockWrapper, { blockHeight: blockHeight },
82
+ react_1.default.createElement(BlockInner, null,
83
+ spinner,
84
+ text && react_1.default.createElement(TypoComp, { style: { color: color } }, text))));
85
+ };
86
+ exports.LoaderCircleV2 = LoaderCircleV2;
87
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5;
@@ -126,6 +126,7 @@ function TextInput(_a) {
126
126
  var size = S
127
127
  ? (screenWidth >= (0, mixins_1.getBreakPoint)('md') ? "S" : "M") //wat this basically means is, a defined 'small' text input will dynamically become 'medium' when on mobile, which is in sync with the pattern of the rest of our components
128
128
  : "M";
129
+ var ClearBtnComp = (clearBtn === null || clearBtn === void 0 ? void 0 : clearBtn.variant) === "tertiary" ? Buttons_1.ButtonTertiaryCompact : Buttons_1.ButtonSecondaryCompact;
129
130
  var handleValidate = function (e, onBlur) { return __awaiter(_this, void 0, void 0, function () {
130
131
  var value, res, validationPlugin, pluginResponse;
131
132
  return __generator(this, function (_a) {
@@ -205,7 +206,7 @@ function TextInput(_a) {
205
206
  react_1.default.createElement(LoadersAndProgress_1.LoaderCircle, { S: true }))),
206
207
  (validationStatus === null || validationStatus === void 0 ? void 0 : validationStatus.type) === "success" && (react_1.default.createElement("div", null,
207
208
  react_1.default.createElement(BadgeVetted, { size: 26 }))),
208
- (clearBtn && clearBtnEnabled) && (react_1.default.createElement(Buttons_1.ButtonSecondaryCompact, { onClick: function () { return onChange(id, ""); }, value: (clearBtn === null || clearBtn === void 0 ? void 0 : clearBtn.text) || "Clear", disabled: !clearBtnEnabled, style: { marginRight: size === "S" ? '-0.4rem' : '-0.2rem' } /** so that it stays ahead of the before element inside InputContainerStyled */ })),
209
+ (clearBtn && clearBtnEnabled) && (react_1.default.createElement(ClearBtnComp, { onClick: function () { return onChange(id, ""); }, value: (clearBtn === null || clearBtn === void 0 ? void 0 : clearBtn.text) || "Clear", disabled: !clearBtnEnabled, style: { marginRight: size === "S" ? '-0.4rem' : '-0.2rem' } /** so that it stays ahead of the before element inside InputContainerStyled */ })),
209
210
  actionBtn && (react_1.default.createElement(Buttons_1.ButtonPrimaryCompact, { value: (actionBtn === null || actionBtn === void 0 ? void 0 : actionBtn.text) || "Action", onClick: actionBtnEnabaled && actionBtn.onClick, disabled: !actionBtnEnabaled, style: { marginRight: size === "S" ? '-0.4rem' : '-0.2rem' } /** so that it stays ahead of the before element inside InputContainerStyled */ }))),
210
211
  displayValidationMsg && (validationStatus === null || validationStatus === void 0 ? void 0 : validationStatus.msg) && (react_1.default.createElement(index_styled_1.MsgContainerStyled, { status: validationStatus === null || validationStatus === void 0 ? void 0 : validationStatus.type },
211
212
  (validationStatus === null || validationStatus === void 0 ? void 0 : validationStatus.type) === "error" && (react_1.default.createElement(DisplayIcon_1.DisplayIcon, { size: 12, icon: "WarningDiamond", weight: "fill", color: themes_1.colors.red })),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oolib",
3
- "version": "2.230.3",
3
+ "version": "2.231.0",
4
4
  "description": " OKE Component Library",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",