@1money/component-ui 0.0.48 → 0.0.50

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 (127) hide show
  1. package/es/components/Accordion/style/Accordion.css +94 -1
  2. package/es/components/Alert/style/Alert.css +101 -1
  3. package/es/components/Button/style/Button.css +178 -1
  4. package/es/components/Calendar/style/Calendar.css +400 -1
  5. package/es/components/Carousel/style/Carousel.css +57 -1
  6. package/es/components/Cell/style/Cell.css +80 -1
  7. package/es/components/Checkbox/style/Checkbox.css +191 -1
  8. package/es/components/CoachMark/style/CoachMark.css +156 -1
  9. package/es/components/Copy/style/Clipboard.css +45 -1
  10. package/es/components/Copy/style/Copy.css +48 -1
  11. package/es/components/Dialog/style/Dialog.css +204 -1
  12. package/es/components/Divider/style/Divider.css +128 -1
  13. package/es/components/Drawer/style/Drawer.css +145 -1
  14. package/es/components/Dropdown/style/Dropdown.css +48 -1
  15. package/es/components/Empty/style/Empty.css +58 -1
  16. package/es/components/Flex/style/Flex.css +71 -1
  17. package/es/components/Grid/style/Grid.css +952 -1
  18. package/es/components/Icons/style/Icons.css +81 -1
  19. package/es/components/Input/Amount/style/Amount.css +103 -1
  20. package/es/components/Input/FieldShell/FieldShell.css +76 -1
  21. package/es/components/Input/Input/Input.css +124 -1
  22. package/es/components/Input/OTP/OTP.css +79 -1
  23. package/es/components/Input/TextArea/TextArea.css +93 -1
  24. package/es/components/Input/Trade/Trade.css +192 -1
  25. package/es/components/Link/style/Link.css +70 -1
  26. package/es/components/Navigation/style/Nav.css +158 -1
  27. package/es/components/Navigation/style/Navigation.css +373 -1
  28. package/es/components/Navigation/style/NavigationStepper.css +97 -1
  29. package/es/components/Notification/NotificationStatic.js +22 -22
  30. package/es/components/Notification/style/Notification.css +170 -1
  31. package/es/components/Pagination/style/Pagination.css +89 -1
  32. package/es/components/Popconfirm/style/Popconfirm.css +137 -1
  33. package/es/components/ProForm/ProForm.js +38 -38
  34. package/es/components/ProForm/ProFormDependency.js +5 -5
  35. package/es/components/ProForm/Submitter.js +4 -4
  36. package/es/components/ProForm/core/hooks/useForm.js +101 -101
  37. package/es/components/ProForm/core/useFormItem.js +5 -5
  38. package/es/components/ProForm/hooks/useFieldRequest.js +12 -12
  39. package/es/components/ProForm/layouts/useOverlayForm.js +5 -5
  40. package/es/components/ProForm/style/ProForm.css +168 -1
  41. package/es/components/Progress/style/Progress.css +103 -1
  42. package/es/components/Radio/style/Radio.css +362 -1
  43. package/es/components/Segment/style/Segment.css +79 -1
  44. package/es/components/Select/style/Select.css +468 -1
  45. package/es/components/Skeleton/style/Skeleton.css +54 -1
  46. package/es/components/Slider/style/Slider.css +161 -1
  47. package/es/components/Space/style/Space.css +47 -1
  48. package/es/components/Spinner/Spinner.js +7 -7
  49. package/es/components/Spinner/style/Spinner.css +99 -1
  50. package/es/components/Step/style/Step.css +107 -1
  51. package/es/components/Switch/style/Switch.css +102 -1
  52. package/es/components/Table/style/Table.css +370 -1
  53. package/es/components/Tabs/style/Tabs.css +118 -1
  54. package/es/components/Tag/style/Tag.css +87 -1
  55. package/es/components/Tooltip/style/Tooltip.css +98 -1
  56. package/es/components/Trigger/style/Trigger.css +35 -1
  57. package/es/components/Typography/style/Typography.css +444 -1
  58. package/es/components/Upload/style/Upload.css +55 -1
  59. package/es/components/Upload/style/UploadFileBar.css +88 -1
  60. package/es/components/VirtualList/style/VirtualList.css +25 -1
  61. package/es/index.css +1 -1
  62. package/es/stories/docs/storybook-docs.css +323 -1
  63. package/es/styles/index.css +5328 -1
  64. package/lib/components/Accordion/style/Accordion.css +94 -1
  65. package/lib/components/Alert/style/Alert.css +101 -1
  66. package/lib/components/Button/style/Button.css +178 -1
  67. package/lib/components/Calendar/style/Calendar.css +400 -1
  68. package/lib/components/Carousel/style/Carousel.css +57 -1
  69. package/lib/components/Cell/style/Cell.css +80 -1
  70. package/lib/components/Checkbox/style/Checkbox.css +191 -1
  71. package/lib/components/CoachMark/style/CoachMark.css +156 -1
  72. package/lib/components/Copy/style/Clipboard.css +45 -1
  73. package/lib/components/Copy/style/Copy.css +48 -1
  74. package/lib/components/Dialog/style/Dialog.css +204 -1
  75. package/lib/components/Divider/style/Divider.css +128 -1
  76. package/lib/components/Drawer/style/Drawer.css +145 -1
  77. package/lib/components/Dropdown/style/Dropdown.css +48 -1
  78. package/lib/components/Empty/style/Empty.css +58 -1
  79. package/lib/components/Flex/style/Flex.css +71 -1
  80. package/lib/components/Grid/style/Grid.css +952 -1
  81. package/lib/components/Icons/style/Icons.css +81 -1
  82. package/lib/components/Input/Amount/style/Amount.css +103 -1
  83. package/lib/components/Input/FieldShell/FieldShell.css +76 -1
  84. package/lib/components/Input/Input/Input.css +124 -1
  85. package/lib/components/Input/OTP/OTP.css +79 -1
  86. package/lib/components/Input/TextArea/TextArea.css +93 -1
  87. package/lib/components/Input/Trade/Trade.css +192 -1
  88. package/lib/components/Link/style/Link.css +70 -1
  89. package/lib/components/Navigation/style/Nav.css +158 -1
  90. package/lib/components/Navigation/style/Navigation.css +373 -1
  91. package/lib/components/Navigation/style/NavigationStepper.css +97 -1
  92. package/lib/components/Notification/NotificationStatic.js +22 -22
  93. package/lib/components/Notification/style/Notification.css +170 -1
  94. package/lib/components/Pagination/style/Pagination.css +89 -1
  95. package/lib/components/Popconfirm/style/Popconfirm.css +137 -1
  96. package/lib/components/ProForm/ProForm.js +38 -38
  97. package/lib/components/ProForm/ProFormDependency.js +5 -5
  98. package/lib/components/ProForm/Submitter.js +4 -4
  99. package/lib/components/ProForm/core/hooks/useForm.js +101 -101
  100. package/lib/components/ProForm/core/useFormItem.js +5 -5
  101. package/lib/components/ProForm/hooks/useFieldRequest.js +12 -12
  102. package/lib/components/ProForm/layouts/useOverlayForm.js +5 -5
  103. package/lib/components/ProForm/style/ProForm.css +168 -1
  104. package/lib/components/Progress/style/Progress.css +103 -1
  105. package/lib/components/Radio/style/Radio.css +362 -1
  106. package/lib/components/Segment/style/Segment.css +79 -1
  107. package/lib/components/Select/style/Select.css +468 -1
  108. package/lib/components/Skeleton/style/Skeleton.css +54 -1
  109. package/lib/components/Slider/style/Slider.css +161 -1
  110. package/lib/components/Space/style/Space.css +47 -1
  111. package/lib/components/Spinner/Spinner.js +7 -7
  112. package/lib/components/Spinner/style/Spinner.css +99 -1
  113. package/lib/components/Step/style/Step.css +107 -1
  114. package/lib/components/Switch/style/Switch.css +102 -1
  115. package/lib/components/Table/style/Table.css +370 -1
  116. package/lib/components/Tabs/style/Tabs.css +118 -1
  117. package/lib/components/Tag/style/Tag.css +87 -1
  118. package/lib/components/Tooltip/style/Tooltip.css +98 -1
  119. package/lib/components/Trigger/style/Trigger.css +35 -1
  120. package/lib/components/Typography/style/Typography.css +444 -1
  121. package/lib/components/Upload/style/Upload.css +55 -1
  122. package/lib/components/Upload/style/UploadFileBar.css +88 -1
  123. package/lib/components/VirtualList/style/VirtualList.css +25 -1
  124. package/lib/index.css +1 -1
  125. package/lib/stories/docs/storybook-docs.css +323 -1
  126. package/lib/styles/index.css +5328 -1
  127. package/package.json +65 -34
@@ -1 +1,161 @@
1
- .om-component-ui-slider{display:flex;flex-direction:column;gap:var(--om-spacing-300,12px);width:100%;min-width:120px}.om-component-ui-slider-label-row{display:flex;align-items:center;justify-content:space-between;width:100%}.om-component-ui-slider-label{flex:1 0 0;color:var(--om-text-default,#131313)}.om-component-ui-slider-output{display:flex;flex-shrink:0;align-items:center;color:var(--om-text-default,#131313);white-space:nowrap;text-align:right}.om-component-ui-slider-track-wrapper{position:relative;display:flex;align-items:center;width:100%;height:8px;cursor:pointer}.om-component-ui-slider-input{position:absolute;z-index:2;inset:0;width:100%;height:100%;margin:0;cursor:inherit;opacity:0;-moz-appearance:none;appearance:none}.om-component-ui-slider-input::-webkit-slider-thumb{width:12px;height:12px;cursor:pointer;-webkit-appearance:none}.om-component-ui-slider-input::-moz-range-thumb{width:12px;height:12px;background:transparent;border:none;cursor:pointer}.om-component-ui-slider-track{position:relative;display:flex;align-items:center;width:100%;overflow:hidden;background-color:var(--om-bg-default-tertiary,#e3e4e4)}.om-component-ui-slider-fill,.om-component-ui-slider-track{height:8px;border-radius:var(--om-radius-full,9999px);pointer-events:none}.om-component-ui-slider-fill{background-color:var(--om-bg-neutral,#131313)}.om-component-ui-slider-knob{transform:translateX(-50%);transition:box-shadow .15s ease}.om-component-ui-slider-knob,.om-component-ui-slider-knob-end{position:absolute;z-index:1;width:12px;height:12px;background-color:var(--om-bg-neutral,#131313);border-radius:var(--om-radius-full,9999px);pointer-events:none}.om-component-ui-slider-knob-end{right:0}.om-component-ui-slider-input:focus-visible~.om-component-ui-slider-knob{box-shadow:0 0 0 2px var(--om-border-brand,#073387)}.om-component-ui-slider:not(.om-component-ui-slider-disabled) .om-component-ui-slider-track-wrapper:hover .om-component-ui-slider-knob{box-shadow:var(--om-shadow-100,0 4px 8px rgba(65,91,130,.12))}.om-component-ui-slider-description{width:100%;color:var(--om-text-default-tertiary,#646465)}.om-component-ui-slider-disabled,.om-component-ui-slider-disabled .om-component-ui-slider-input,.om-component-ui-slider-disabled .om-component-ui-slider-track-wrapper{cursor:not-allowed}.om-component-ui-slider-disabled .om-component-ui-slider-label,.om-component-ui-slider-disabled .om-component-ui-slider-output{color:var(--om-text-disabled,#bbbdc1)}.om-component-ui-slider-disabled .om-component-ui-slider-track{background-color:var(--om-bg-default-tertiary,#e3e4e4)}.om-component-ui-slider-disabled .om-component-ui-slider-fill{background-color:transparent}.om-component-ui-slider-disabled .om-component-ui-slider-knob,.om-component-ui-slider-disabled .om-component-ui-slider-knob-end{background-color:var(--om-bg-disabled,#f0f0f0);border:.75px solid var(--om-border-default,#d1d2d2)}.om-component-ui-slider-disabled .om-component-ui-slider-description{color:var(--om-text-disabled,#bbbdc1)}
1
+ /**
2
+ * Retrieves the spacing value for a given token key.
3
+ *
4
+ * @param {string} $key - The spacing token key (e.g., '100', '200').
5
+ * @return {length|null} The computed spacing value or null if the key is invalid.
6
+ * @example
7
+ * .element {
8
+ * padding: om-spacing-token('200'); // Returns 8px if $om-sys-spacing-unit is 4px
9
+ * }
10
+ */
11
+ /**
12
+ * Computes the spacing value based on a token key or a direct length value.
13
+ *
14
+ * @param {string|length} $value - The spacing token key (e.g., '100') or a direct length value (e.g., '16px').
15
+ * @return {length} The computed spacing value.
16
+ * @example
17
+ * .element {
18
+ * margin: om-spacing-value('300'); // Returns 12px if $om-sys-spacing-unit is 4px
19
+ * padding: om-spacing-value(16px); // Returns 16px
20
+ * gap: om-spacing-value(2); // Returns 8px if $om-sys-spacing-unit is 4px
21
+ * }
22
+ */
23
+ .om-component-ui-slider {
24
+ display: flex;
25
+ flex-direction: column;
26
+ gap: var(--om-spacing-300, 12px);
27
+ width: 100%;
28
+ min-width: 120px;
29
+ }
30
+ .om-component-ui-slider-label-row {
31
+ display: flex;
32
+ align-items: center;
33
+ justify-content: space-between;
34
+ width: 100%;
35
+ }
36
+ .om-component-ui-slider-label {
37
+ flex: 1 0 0;
38
+ color: var(--om-text-default, #131313);
39
+ }
40
+ .om-component-ui-slider-output {
41
+ display: flex;
42
+ flex-shrink: 0;
43
+ align-items: center;
44
+ color: var(--om-text-default, #131313);
45
+ white-space: nowrap;
46
+ text-align: right;
47
+ }
48
+ .om-component-ui-slider-track-wrapper {
49
+ position: relative;
50
+ display: flex;
51
+ align-items: center;
52
+ width: 100%;
53
+ height: 8px;
54
+ cursor: pointer;
55
+ }
56
+ .om-component-ui-slider-input {
57
+ position: absolute;
58
+ z-index: 2;
59
+ inset: 0;
60
+ width: 100%;
61
+ height: 100%;
62
+ margin: 0;
63
+ cursor: inherit;
64
+ opacity: 0;
65
+ -webkit-appearance: none;
66
+ -moz-appearance: none;
67
+ appearance: none;
68
+ }
69
+ .om-component-ui-slider-input::-webkit-slider-thumb {
70
+ width: 12px;
71
+ height: 12px;
72
+ cursor: pointer;
73
+ -webkit-appearance: none;
74
+ }
75
+ .om-component-ui-slider-input::-moz-range-thumb {
76
+ width: 12px;
77
+ height: 12px;
78
+ background: transparent;
79
+ border: none;
80
+ cursor: pointer;
81
+ }
82
+ .om-component-ui-slider-track {
83
+ position: relative;
84
+ display: flex;
85
+ align-items: center;
86
+ width: 100%;
87
+ height: 8px;
88
+ overflow: hidden;
89
+ background-color: var(--om-bg-default-tertiary, #e3e4e4);
90
+ border-radius: var(--om-radius-full, 9999px);
91
+ pointer-events: none;
92
+ }
93
+ .om-component-ui-slider-fill {
94
+ height: 8px;
95
+ background-color: var(--om-bg-neutral, #131313);
96
+ border-radius: var(--om-radius-full, 9999px);
97
+ pointer-events: none;
98
+ }
99
+ .om-component-ui-slider-knob {
100
+ position: absolute;
101
+ z-index: 1;
102
+ width: 12px;
103
+ height: 12px;
104
+ background-color: var(--om-bg-neutral, #131313);
105
+ border-radius: var(--om-radius-full, 9999px);
106
+ transform: translateX(-50%);
107
+ transition: box-shadow 0.15s ease;
108
+ pointer-events: none;
109
+ }
110
+ .om-component-ui-slider-knob-end {
111
+ position: absolute;
112
+ right: 0;
113
+ z-index: 1;
114
+ width: 12px;
115
+ height: 12px;
116
+ background-color: var(--om-bg-neutral, #131313);
117
+ border-radius: var(--om-radius-full, 9999px);
118
+ pointer-events: none;
119
+ }
120
+ .om-component-ui-slider-input:focus-visible ~ .om-component-ui-slider-knob {
121
+ box-shadow: 0 0 0 2px var(--om-border-brand, #073387);
122
+ }
123
+ .om-component-ui-slider:not(.om-component-ui-slider-disabled) .om-component-ui-slider-track-wrapper:hover .om-component-ui-slider-knob {
124
+ box-shadow: var(--om-shadow-100, 0 4px 8px rgba(65, 91, 130, 0.12));
125
+ }
126
+ .om-component-ui-slider-description {
127
+ width: 100%;
128
+ color: var(--om-text-default-tertiary, #646465);
129
+ }
130
+ .om-component-ui-slider-disabled {
131
+ cursor: not-allowed;
132
+ }
133
+ .om-component-ui-slider-disabled .om-component-ui-slider-track-wrapper {
134
+ cursor: not-allowed;
135
+ }
136
+ .om-component-ui-slider-disabled .om-component-ui-slider-input {
137
+ cursor: not-allowed;
138
+ }
139
+ .om-component-ui-slider-disabled .om-component-ui-slider-label {
140
+ color: var(--om-text-disabled, #bbbdc1);
141
+ }
142
+ .om-component-ui-slider-disabled .om-component-ui-slider-output {
143
+ color: var(--om-text-disabled, #bbbdc1);
144
+ }
145
+ .om-component-ui-slider-disabled .om-component-ui-slider-track {
146
+ background-color: var(--om-bg-default-tertiary, #e3e4e4);
147
+ }
148
+ .om-component-ui-slider-disabled .om-component-ui-slider-fill {
149
+ background-color: transparent;
150
+ }
151
+ .om-component-ui-slider-disabled .om-component-ui-slider-knob {
152
+ background-color: var(--om-bg-disabled, #f0f0f0);
153
+ border: 0.75px solid var(--om-border-default, #d1d2d2);
154
+ }
155
+ .om-component-ui-slider-disabled .om-component-ui-slider-knob-end {
156
+ background-color: var(--om-bg-disabled, #f0f0f0);
157
+ border: 0.75px solid var(--om-border-default, #d1d2d2);
158
+ }
159
+ .om-component-ui-slider-disabled .om-component-ui-slider-description {
160
+ color: var(--om-text-disabled, #bbbdc1);
161
+ }
@@ -1 +1,47 @@
1
- .om-component-ui-space{display:inline-flex;gap:var(--om-space-row-gap,8px) var(--om-space-column-gap,8px)}.om-component-ui-space-vertical{flex-direction:column}.om-component-ui-space-wrap{flex-wrap:wrap}.om-component-ui-space-align-start{align-items:flex-start}.om-component-ui-space-align-end{align-items:flex-end}.om-component-ui-space-align-center{align-items:center}.om-component-ui-space-align-baseline{align-items:baseline}.om-component-ui-space-item,.om-component-ui-space-split{display:inline-flex}
1
+ /**
2
+ * Retrieves the spacing value for a given token key.
3
+ *
4
+ * @param {string} $key - The spacing token key (e.g., '100', '200').
5
+ * @return {length|null} The computed spacing value or null if the key is invalid.
6
+ * @example
7
+ * .element {
8
+ * padding: om-spacing-token('200'); // Returns 8px if $om-sys-spacing-unit is 4px
9
+ * }
10
+ */
11
+ /**
12
+ * Computes the spacing value based on a token key or a direct length value.
13
+ *
14
+ * @param {string|length} $value - The spacing token key (e.g., '100') or a direct length value (e.g., '16px').
15
+ * @return {length} The computed spacing value.
16
+ * @example
17
+ * .element {
18
+ * margin: om-spacing-value('300'); // Returns 12px if $om-sys-spacing-unit is 4px
19
+ * padding: om-spacing-value(16px); // Returns 16px
20
+ * gap: om-spacing-value(2); // Returns 8px if $om-sys-spacing-unit is 4px
21
+ * }
22
+ */
23
+ .om-component-ui-space {
24
+ display: inline-flex;
25
+ gap: var(--om-space-row-gap, 8px) var(--om-space-column-gap, 8px);
26
+ }
27
+ .om-component-ui-space-vertical {
28
+ flex-direction: column;
29
+ }
30
+ .om-component-ui-space-wrap {
31
+ flex-wrap: wrap;
32
+ }
33
+ .om-component-ui-space-align-start {
34
+ align-items: flex-start;
35
+ }
36
+ .om-component-ui-space-align-end {
37
+ align-items: flex-end;
38
+ }
39
+ .om-component-ui-space-align-center {
40
+ align-items: center;
41
+ }
42
+ .om-component-ui-space-align-baseline {
43
+ align-items: baseline;
44
+ }
45
+ .om-component-ui-space-item, .om-component-ui-space-split {
46
+ display: inline-flex;
47
+ }
@@ -118,21 +118,21 @@ var Spinner = exports.Spinner = function Spinner(props) {
118
118
  (function () {
119
119
  return __awaiter(void 0, void 0, void 0, /*#__PURE__*/_regenerator["default"].mark(function _callee() {
120
120
  var lottie;
121
- return _regenerator["default"].wrap(function _callee$(_context) {
121
+ return _regenerator["default"].wrap(function (_context) {
122
122
  while (1) switch (_context.prev = _context.next) {
123
123
  case 0:
124
- _context.next = 2;
124
+ _context.next = 1;
125
125
  return Promise.resolve().then(function () {
126
126
  return _interopRequireWildcard(require('lottie-web'));
127
127
  });
128
- case 2:
128
+ case 1:
129
129
  lottie = _context.sent["default"];
130
130
  if (!(destroyed || !lottieRef.current)) {
131
- _context.next = 5;
131
+ _context.next = 2;
132
132
  break;
133
133
  }
134
134
  return _context.abrupt("return");
135
- case 5:
135
+ case 2:
136
136
  instance = lottie.loadAnimation({
137
137
  container: lottieRef.current,
138
138
  renderer: 'svg',
@@ -140,7 +140,7 @@ var Spinner = exports.Spinner = function Spinner(props) {
140
140
  autoplay: true,
141
141
  animationData: _lottiePure["default"]
142
142
  });
143
- case 6:
143
+ case 3:
144
144
  case "end":
145
145
  return _context.stop();
146
146
  }
@@ -227,4 +227,4 @@ var Spinner = exports.Spinner = function Spinner(props) {
227
227
  }));
228
228
  };
229
229
  var _default = exports["default"] = /*#__PURE__*/(0, _react.memo)(Spinner);
230
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvU3Bpbm5lci9TcGlubmVyLnRzeCIsImNvbXBvbmVudHMvU3Bpbm5lci9TcGlubmVyLmpzIl0sIm5hbWVzIjpbIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJleHBvcnRzIiwidmFsdWUiLCJTcGlubmVyIiwiX3R5cGVvZjIiLCJfcmVnZW5lcmF0b3IiLCJfanN4UnVudGltZSIsIl9yZWFjdCIsIl9UeXBvZ3JhcGh5IiwiX2NsYXNzbmFtZXMiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9sb3R0aWVQdXJlIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJoYXMiLCJnZXQiLCJuIiwiX19wcm90b19fIiwiYSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0IiwiX19hd2FpdGVyIiwidGhpc0FyZyIsIl9hcmd1bWVudHMiLCJQIiwiZ2VuZXJhdG9yIiwiYWRvcHQiLCJyZXNvbHZlIiwiUHJvbWlzZSIsInJlamVjdCIsImZ1bGZpbGxlZCIsInN0ZXAiLCJuZXh0IiwicmVqZWN0ZWQiLCJyZXN1bHQiLCJkb25lIiwidGhlbiIsImFwcGx5IiwiX19yZXN0IiwicyIsInAiLCJwcm90b3R5cGUiLCJpbmRleE9mIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwibGVuZ3RoIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJERUZBVUxUX1NJWkUiLCJCR19MT0dPX1JBVElPIiwiQnJhbmRCZ0NpcmNsZSIsIl9yZWYiLCJzaXplIiwiY2xhc3NOYW1lIiwicmF3SWQiLCJ1c2VJZCIsImdyYWRJZCIsImNvbmNhdCIsInJlcGxhY2UiLCJfanN4cyIsIndpZHRoIiwiaGVpZ2h0Iiwidmlld0JveCIsImNoaWxkcmVuIiwiX2pzeCIsImN4IiwiY3kiLCJmaWxsIiwiaWQiLCJncmFkaWVudFVuaXRzIiwiZ3JhZGllbnRUcmFuc2Zvcm0iLCJzdG9wQ29sb3IiLCJvZmZzZXQiLCJwcm9wcyIsInN0eWxlIiwiX3Byb3BzJHByZWZpeENscyIsInByZWZpeENscyIsIl9wcm9wcyR0eXBlIiwidHlwZSIsIl9wcm9wcyRzaXplIiwiX3Byb3BzJHN0cm9rZVdpZHRoIiwic3Ryb2tlV2lkdGgiLCJjb2xvciIsInRpdGxlIiwiYm9keSIsInJlc3QiLCJjbGFzc2VzIiwiY2xhc3NuYW1lcyIsImxvdHRpZVJlZiIsInVzZVJlZiIsImlzQnJhbmQiLCJ1c2VFZmZlY3QiLCJjdXJyZW50IiwiaW5zdGFuY2UiLCJkZXN0cm95ZWQiLCJtYXJrIiwiX2NhbGxlZSIsImxvdHRpZSIsIndyYXAiLCJfY2FsbGVlJCIsIl9jb250ZXh0IiwicHJldiIsInNlbnQiLCJhYnJ1cHQiLCJsb2FkQW5pbWF0aW9uIiwiY29udGFpbmVyIiwicmVuZGVyZXIiLCJsb29wIiwiYXV0b3BsYXkiLCJhbmltYXRpb25EYXRhIiwibG90dGllUHVyZUpzb24iLCJzdG9wIiwiZGVzdHJveSIsImhhc0JnIiwibG90dGllU2l6ZSIsImxvdHRpZVN0eWxlIiwiYXNzaWduIiwiam9pbkNscyIsInJlZiIsIlR5cG9ncmFwaHkiLCJIZWFkbGluZSIsIkJvZHkiLCJyb2xlIiwiX2RlZmF1bHQiLCJtZW1vIl0sIm1hcHBpbmdzIjoiO0FBQUEsWUFBWTs7QUFBQyxJQUFBQSxzQkFBQSxHQUFBQyxPQUFBO0FBQUFDLE1BQUEsQ0FBQUMsY0FBQSxDQUFBQyxPQUFBO0VBQUFDLEtBQUE7QUFBQTtBQUFBRCxPQUFBLGNBQUFBLE9BQUEsQ0FBQUUsT0FBQTtBQUFBLElBQUFDLFFBQUEsR0FBQVAsc0JBQUEsQ0FBQUMsT0FBQTtBQUFBLElBQUFPLFlBQUEsR0FBQVIsc0JBQUEsQ0FBQUMsT0FBQTtBQ3FCYixJQUFBUSxXQUFBLEdBQUFSLE9BQUE7QURwQkEsSUFBQVMsTUFBQSxHQUFBVCxPQUFBO0FBQ0Es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QVc7TUFBQUMsUUFBQSxFQUNwRCxJQUFBQyxlQUFBLEVBQUEsUUFBQSxFQUFBO1FBQ0VYLFNBQVMsRUFBRWlDLE9BQU8sQ0FBQyxNQUFNLENBQUM7UUFDMUJyQixFQUFFLEVBQUMsSUFBSTtRQUNQQyxFQUFFLEVBQUMsSUFBSTtRQUNQekQsQ0FBQyxFQUFDLElBQUk7UUFDTjBELElBQUksRUFBQyxNQUFNO1FBQ1hjLFdBQVcsRUFBRUE7TUFBVyxDQUFBO0lBQ3hCLENBQUE7RUFDRSxDQUFBLENBQUEsQ0FDRjtBQUVWLENBQUM7QUFBQyxJQUFBMEMsUUFBQSxHQUFBaEksT0FBQSwyQkFFYSxJQUFBaUksV0FBSSxFQUFDL0gsT0FBTyxDQUFDIiwiZmlsZSI6ImNvbXBvbmVudHMvU3Bpbm5lci9TcGlubmVyLmpzIiwic291cmNlc0NvbnRlbnQiOltudWxsLCIndXNlIGNsaWVudCc7XG52YXIgX19hd2FpdGVyID0gKHRoaXMgJiYgdGhpcy5fX2F3YWl0ZXIpIHx8IGZ1bmN0aW9uICh0aGlzQXJnLCBfYXJndW1lbnRzLCBQLCBnZW5lcmF0b3IpIHtcbiAgICBmdW5jdGlvbiBhZG9wdCh2YWx1ZSkgeyByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBQID8gdmFsdWUgOiBuZXcgUChmdW5jdGlvbiAocmVzb2x2ZSkgeyByZXNvbHZlKHZhbHVlKTsgfSk7IH1cbiAgICByZXR1cm4gbmV3IChQIHx8IChQID0gUHJvbWlzZSkpKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHtcbiAgICAgICAgZnVuY3Rpb24gZnVsZmlsbGVkKHZhbHVlKSB7IHRyeSB7IHN0ZXAoZ2VuZXJhdG9yLm5leHQodmFsdWUpKTsgfSBjYXRjaCAoZSkgeyByZWplY3QoZSk7IH0gfVxuICAgICAgICBmdW5jdGlvbiByZWplY3RlZCh2YWx1ZSkgeyB0cnkgeyBzdGVwKGdlbmVyYXRvcltcInRocm93XCJdKHZhbHVlKSk7IH0gY2F0Y2ggKGUpIHsgcmVqZWN0KGUpOyB9IH1cbiAgICAgICAgZnVuY3Rpb24gc3RlcChyZXN1bHQpIHsgcmVzdWx0LmRvbmUgPyByZXNvbHZlKHJlc3VsdC52YWx1ZSkgOiBhZG9wdChyZXN1bHQudmFsdWUpLnRoZW4oZnVsZmlsbGVkLCByZWplY3RlZCk7IH1cbiAgICAgICAgc3RlcCgoZ2VuZXJhdG9yID0gZ2VuZXJhdG9yLmFwcGx5KHRoaXNBcmcsIF9hcmd1bWVudHMgfHwgW10pKS5uZXh0KCkpO1xuICAgIH0pO1xufTtcbnZhciBfX3Jlc3QgPSAodGhpcyAmJiB0aGlzLl9fcmVzdCkgfHwgZnVuY3Rpb24gKHMsIGUpIHtcbiAgICB2YXIgdCA9IHt9O1xuICAgIGZvciAodmFyIHAgaW4gcykgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzLCBwKSAmJiBlLmluZGV4T2YocCkgPCAwKVxuICAgICAgICB0W3BdID0gc1twXTtcbiAgICBpZiAocyAhPSBudWxsICYmIHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzID09PSBcImZ1bmN0aW9uXCIpXG4gICAgICAgIGZvciAodmFyIGkgPSAwLCBwID0gT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhzKTsgaSA8IHAubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChlLmluZGV4T2YocFtpXSkgPCAwICYmIE9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChzLCBwW2ldKSlcbiAgICAgICAgICAgICAgICB0W3BbaV1dID0gc1twW2ldXTtcbiAgICAgICAgfVxuICAgIHJldHVybiB0O1xufTtcbmltcG9ydCB7IGpzeCBhcyBfanN4LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcInJlYWN0L2pzeC1ydW50aW1lXCI7XG5pbXBvcnQgeyBtZW1vLCB1c2VFZmZlY3QsIHVzZUlkLCB1c2VSZWYgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBUeXBvZ3JhcGh5IH0gZnJvbSAnLi4vVHlwb2dyYXBoeSc7XG5pbXBvcnQgY2xhc3NuYW1lcywgeyBqb2luQ2xzIH0gZnJvbSAnLi4vLi4vdXRpbHMvY2xhc3NuYW1lcyc7XG5pbXBvcnQgbG90dGllUHVyZUpzb24gZnJvbSAnLi9sb3R0aWUtcHVyZS5qc29uJztcbmltcG9ydCAnLi9zdHlsZSc7XG5jb25zdCBERUZBVUxUX1NJWkUgPSAzMjtcbmNvbnN0IEJHX0xPR09fUkFUSU8gPSAyIC8gMztcbmNvbnN0IEJyYW5kQmdDaXJjbGUgPSAoeyBzaXplLCBjbGFzc05hbWUgfSkgPT4ge1xuICAgIGNvbnN0IHJhd0lkID0gdXNlSWQoKTtcbiAgICBjb25zdCBncmFkSWQgPSBgc3Bpbm5lci1iZy0ke3Jhd0lkLnJlcGxhY2UoL1teYS16QS1aMC05XS9nLCAnJyl9YDtcbiAgICByZXR1cm4gKF9qc3hzKFwic3ZnXCIsIHsgd2lkdGg6IHNpemUsIGhlaWdodDogc2l6ZSwgdmlld0JveDogXCIwIDAgNTYgNTdcIiwgY2xhc3NOYW1lOiBjbGFzc05hbWUsIFwiYXJpYS1oaWRkZW5cIjogXCJ0cnVlXCIsIGNoaWxkcmVuOiBbX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjI4XCIsIGN5OiBcIjI4Ljc1XCIsIHI6IFwiMjhcIiwgZmlsbDogYHVybCgjJHtncmFkSWR9KWAgfSksIF9qc3goXCJkZWZzXCIsIHsgY2hpbGRyZW46IF9qc3hzKFwicmFkaWFsR3JhZGllbnRcIiwgeyBpZDogZ3JhZElkLCBjeDogXCIwXCIsIGN5OiBcIjBcIiwgcjogXCIxXCIsIGdyYWRpZW50VW5pdHM6IFwidXNlclNwYWNlT25Vc2VcIiwgZ3JhZGllbnRUcmFuc2Zvcm06IFwidHJhbnNsYXRlKC0zNC45MDg1IDkyLjY2NzgpIHJvdGF0ZSgtNDUuNjU5NCkgc2NhbGUoMTA4Ljg1MyAxMDMuNjk4KVwiLCBjaGlsZHJlbjogW19qc3goXCJzdG9wXCIsIHsgc3RvcENvbG9yOiBcIiMwNzMzODdcIiB9KSwgX2pzeChcInN0b3BcIiwgeyBvZmZzZXQ6IFwiMC4yMTY4NTJcIiwgc3RvcENvbG9yOiBcIiM5MEE4Q0ZcIiB9KSwgX2pzeChcInN0b3BcIiwgeyBvZmZzZXQ6IFwiMC41NjcxMDNcIiwgc3RvcENvbG9yOiBcIiNDQkQ2RThcIiB9KSwgX2pzeChcInN0b3BcIiwgeyBvZmZzZXQ6IFwiMVwiLCBzdG9wQ29sb3I6IFwiI0Y5RjlGOVwiIH0pXSB9KSB9KV0gfSkpO1xufTtcbmV4cG9ydCBjb25zdCBTcGlubmVyID0gcHJvcHMgPT4ge1xuICAgIGNvbnN0IHsgY2xhc3NOYW1lLCBzdHlsZSwgcHJlZml4Q2xzID0gJ3NwaW5uZXInLCB0eXBlID0gJ2RlZmF1bHQnLCBzaXplID0gREVGQVVMVF9TSVpFLCBzdHJva2VXaWR0aCA9IDQsIGNvbG9yLCB0aXRsZSwgYm9keSB9ID0gcHJvcHMsIHJlc3QgPSBfX3Jlc3QocHJvcHMsIFtcImNsYXNzTmFtZVwiLCBcInN0eWxlXCIsIFwicHJlZml4Q2xzXCIsIFwidHlwZVwiLCBcInNpemVcIiwgXCJzdHJva2VXaWR0aFwiLCBcImNvbG9yXCIsIFwidGl0bGVcIiwgXCJib2R5XCJdKTtcbiAgICBjb25zdCBjbGFzc2VzID0gY2xhc3NuYW1lcyhwcmVmaXhDbHMpO1xuICAgIGNvbnN0IGxvdHRpZVJlZiA9IHVzZVJlZihudWxsKTtcbiAgICBjb25zdCBpc0JyYW5kID0gdHlwZSA9PT0gJ2JyYW5kJyB8fCB0eXBlID09PSAnYnJhbmQtYmcnO1xuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGlmICghaXNCcmFuZCB8fCAhbG90dGllUmVmLmN1cnJlbnQpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIGxldCBpbnN0YW5jZSA9IG51bGw7XG4gICAgICAgIGxldCBkZXN0cm95ZWQgPSBmYWxzZTtcbiAgICAgICAgKCgpID0+IF9fYXdhaXRlcih2b2lkIDAsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICAgICAgY29uc3QgbG90dGllID0gKHlpZWxkIGltcG9ydCgnbG90dGllLXdlYicpKS5kZWZhdWx0O1xuICAgICAgICAgICAgaWYgKGRlc3Ryb3llZCB8fCAhbG90dGllUmVmLmN1cnJlbnQpXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgaW5zdGFuY2UgPSBsb3R0aWUubG9hZEFuaW1hdGlvbih7XG4gICAgICAgICAgICAgICAgY29udGFpbmVyOiBsb3R0aWVSZWYuY3VycmVudCxcbiAgICAgICAgICAgICAgICByZW5kZXJlcjogJ3N2ZycsXG4gICAgICAgICAgICAgICAgbG9vcDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBhdXRvcGxheTogdHJ1ZSxcbiAgICAgICAgICAgICAgICBhbmltYXRpb25EYXRhOiBsb3R0aWVQdXJlSnNvbixcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KSkoKTtcbiAgICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgICAgIGRlc3Ryb3llZCA9IHRydWU7XG4gICAgICAgICAgICBpZiAoaW5zdGFuY2UpIHtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5kZXN0cm95KCk7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UgPSBudWxsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgIH0sIFtpc0JyYW5kXSk7XG4gICAgaWYgKGlzQnJhbmQpIHtcbiAgICAgICAgY29uc3QgaGFzQmcgPSB0eXBlID09PSAnYnJhbmQtYmcnO1xuICAgICAgICBjb25zdCBsb3R0aWVTaXplID0gaGFzQmcgPyBzaXplICogQkdfTE9HT19SQVRJTyA6IHNpemU7XG4gICAgICAgIGNvbnN0IGxvdHRpZVN0eWxlID0geyB3aWR0aDogbG90dGllU2l6ZSwgaGVpZ2h0OiBsb3R0aWVTaXplIH07XG4gICAgICAgIHJldHVybiAoX2pzeHMoXCJkaXZcIiwgT2JqZWN0LmFzc2lnbih7fSwgcmVzdCwgeyBjbGFzc05hbWU6IGNsYXNzZXModm9pZCAwLCBqb2luQ2xzKGNsYXNzZXMoJ2JyYW5kJyksIGhhc0JnICYmIGNsYXNzZXMoJ2JyYW5kLWJnJyksIGNsYXNzTmFtZSkpLCBjaGlsZHJlbjogW2hhc0JnID8gKF9qc3hzKFwiZGl2XCIsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKCdpY29uLXdyYXAnKSwgc3R5bGU6IHsgd2lkdGg6IHNpemUsIGhlaWdodDogc2l6ZSB9LCBjaGlsZHJlbjogW19qc3goQnJhbmRCZ0NpcmNsZSwgeyBzaXplOiBzaXplLCBjbGFzc05hbWU6IGNsYXNzZXMoJ2JnJykgfSksIF9qc3goXCJkaXZcIiwgeyByZWY6IGxvdHRpZVJlZiwgY2xhc3NOYW1lOiBjbGFzc2VzKCdsb3R0aWUnKSwgc3R5bGU6IGxvdHRpZVN0eWxlIH0pXSB9KSkgOiAoX2pzeChcImRpdlwiLCB7IHJlZjogbG90dGllUmVmLCBjbGFzc05hbWU6IGNsYXNzZXMoJ2xvdHRpZScpLCBzdHlsZTogbG90dGllU3R5bGUgfSkpLCAodGl0bGUgfHwgYm9keSkgJiYgKF9qc3hzKFwiZGl2XCIsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKCdjb250ZW50JyksIGNoaWxkcmVuOiBbdGl0bGUgJiYgKGhhc0JnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBfanN4KFR5cG9ncmFwaHkuSGVhZGxpbmUsIHsgc2l6ZTogXCJzbVwiLCBjb2xvcjogXCJkZWZhdWx0XCIsIGNsYXNzTmFtZTogY2xhc3NlcygndGl0bGUnKSwgY2hpbGRyZW46IHRpdGxlIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBfanN4KFR5cG9ncmFwaHkuQm9keSwgeyBzaXplOiBcIm1kXCIsIGNvbG9yOiBcImRlZmF1bHQtdGVydGlhcnlcIiwgY2xhc3NOYW1lOiBjbGFzc2VzKCd0aXRsZScpLCBjaGlsZHJlbjogdGl0bGUgfSkpLCBib2R5ICYmIChfanN4KFR5cG9ncmFwaHkuQm9keSwgeyBzaXplOiBcIm1kXCIsIGNvbG9yOiBcImRlZmF1bHQtdGVydGlhcnlcIiwgY2xhc3NOYW1lOiBjbGFzc2VzKCdib2R5JyksIGNoaWxkcmVuOiBib2R5IH0pKV0gfSkpXSB9KSkpO1xuICAgIH1cbiAgICByZXR1cm4gKF9qc3goXCJkaXZcIiwgT2JqZWN0LmFzc2lnbih7fSwgcmVzdCwgeyByb2xlOiBcInByb2dyZXNzYmFyXCIsIGNsYXNzTmFtZTogY2xhc3Nlcyh2b2lkIDAsIGNsYXNzTmFtZSksIHN0eWxlOiBPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oeyB3aWR0aDogc2l6ZSwgaGVpZ2h0OiBzaXplIH0sIHN0eWxlKSwgKGNvbG9yID8geyBjb2xvciB9IDogbnVsbCkpLCBjaGlsZHJlbjogX2pzeChcInN2Z1wiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygnY2lyY2xlJyksIHZpZXdCb3g6IFwiMCAwIDUwIDUwXCIsIGNoaWxkcmVuOiBfanN4KFwiY2lyY2xlXCIsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKCdwYXRoJyksIGN4OiBcIjI1XCIsIGN5OiBcIjI1XCIsIHI6IFwiMjBcIiwgZmlsbDogXCJub25lXCIsIHN0cm9rZVdpZHRoOiBzdHJva2VXaWR0aCB9KSB9KSB9KSkpO1xufTtcbmV4cG9ydCBkZWZhdWx0IG1lbW8oU3Bpbm5lcik7Il0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
230
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvU3Bpbm5lci9TcGlubmVyLnRzeCIsImNvbXBvbmVudHMvU3Bpbm5lci9TcGlubmVyLmpzIl0sIm5hbWVzIjpbIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJleHBvcnRzIiwidmFsdWUiLCJTcGlubmVyIiwiX3R5cGVvZjIiLCJfcmVnZW5lcmF0b3IiLCJfanN4UnVudGltZSIsIl9yZWFjdCIsIl9UeXBvZ3JhcGh5IiwiX2NsYXNzbmFtZXMiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9sb3R0aWVQdXJlIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJoYXMiLCJnZXQiLCJuIiwiX19wcm90b19fIiwiYSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0IiwiX19hd2FpdGVyIiwidGhpc0FyZyIsIl9hcmd1bWVudHMiLCJQIiwiZ2VuZXJhdG9yIiwiYWRvcHQiLCJyZXNvbHZlIiwiUHJvbWlzZSIsInJlamVjdCIsImZ1bGZpbGxlZCIsInN0ZXAiLCJuZXh0IiwicmVqZWN0ZWQiLCJyZXN1bHQiLCJkb25lIiwidGhlbiIsImFwcGx5IiwiX19yZXN0IiwicyIsInAiLCJwcm90b3R5cGUiLCJpbmRleE9mIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwibGVuZ3RoIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJERUZBVUxUX1NJWkUiLCJCR19MT0dPX1JBVElPIiwiQnJhbmRCZ0NpcmNsZSIsIl9yZWYiLCJzaXplIiwiY2xhc3NOYW1lIiwicmF3SWQiLCJ1c2VJZCIsImdyYWRJZCIsImNvbmNhdCIsInJlcGxhY2UiLCJfanN4cyIsIndpZHRoIiwiaGVpZ2h0Iiwidmlld0JveCIsImNoaWxkcmVuIiwiX2pzeCIsImN4IiwiY3kiLCJmaWxsIiwiaWQiLCJncmFkaWVudFVuaXRzIiwiZ3JhZGllbnRUcmFuc2Zvcm0iLCJzdG9wQ29sb3IiLCJvZmZzZXQiLCJwcm9wcyIsInN0eWxlIiwiX3Byb3BzJHByZWZpeENscyIsInByZWZpeENscyIsIl9wcm9wcyR0eXBlIiwidHlwZSIsIl9wcm9wcyRzaXplIiwiX3Byb3BzJHN0cm9rZVdpZHRoIiwic3Ryb2tlV2lkdGgiLCJjb2xvciIsInRpdGxlIiwiYm9keSIsInJlc3QiLCJjbGFzc2VzIiwiY2xhc3NuYW1lcyIsImxvdHRpZVJlZiIsInVzZVJlZiIsImlzQnJhbmQiLCJ1c2VFZmZlY3QiLCJjdXJyZW50IiwiaW5zdGFuY2UiLCJkZXN0cm95ZWQiLCJtYXJrIiwiX2NhbGxlZSIsImxvdHRpZSIsIndyYXAiLCJfY29udGV4dCIsInByZXYiLCJzZW50IiwiYWJydXB0IiwibG9hZEFuaW1hdGlvbiIsImNvbnRhaW5lciIsInJlbmRlcmVyIiwibG9vcCIsImF1dG9wbGF5IiwiYW5pbWF0aW9uRGF0YSIsImxvdHRpZVB1cmVKc29uIiwic3RvcCIsImRlc3Ryb3kiLCJoYXNCZyIsImxvdHRpZVNpemUiLCJsb3R0aWVTdHlsZSIsImFzc2lnbiIsImpvaW5DbHMiLCJyZWYiLCJUeXBvZ3JhcGh5IiwiSGVhZGxpbmUiLCJCb2R5Iiwicm9sZSIsIl9kZWZhdWx0IiwibWVtbyJdLCJtYXBwaW5ncyI6IjtBQUFBLFlBQVk7O0FBQUMsSUFBQUEsc0JBQUEsR0FBQUMsT0FBQTtBQUFBQyxNQUFBLENBQUFDLGNBQUEsQ0FBQUMsT0FBQTtFQUFBQyxLQUFBO0FBQUE7QUFBQUQsT0FBQSxjQUFBQSxPQUFBLENBQUFFLE9BQUE7QUFBQSxJQUFBQyxRQUFBLEdBQUFQLHNCQUFBLENBQUFDLE9BQUE7QUFBQSxJQUFBTyxZQUFBLEdBQUFSLHNCQUFBLENBQUFDLE9BQUE7QUNxQmIsSUFBQVEsV0FBQSxHQUFBUixPQUFBO0FEcEJBLElBQUFTLE1BQUEsR0FBQVQsT0FBQTtBQUNBLElBQUFVLFdBQUEs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cEQsSUFBQUMsZUFBQSxFQUFBLFFBQUEsRUFBQTtRQUNFWCxTQUFTLEVBQUVpQyxPQUFPLENBQUMsTUFBTSxDQUFDO1FBQzFCckIsRUFBRSxFQUFDLElBQUk7UUFDUEMsRUFBRSxFQUFDLElBQUk7UUFDUHpELENBQUMsRUFBQyxJQUFJO1FBQ04wRCxJQUFJLEVBQUMsTUFBTTtRQUNYYyxXQUFXLEVBQUVBO01BQVcsQ0FBQTtJQUN4QixDQUFBO0VBQ0UsQ0FBQSxDQUFBLENBQ0Y7QUFFVixDQUFDO0FBQUMsSUFBQXlDLFFBQUEsR0FBQS9ILE9BQUEsMkJBRWEsSUFBQWdJLFdBQUksRUFBQzlILE9BQU8sQ0FBQyIsImZpbGUiOiJjb21wb25lbnRzL1NwaW5uZXIvU3Bpbm5lci5qcyIsInNvdXJjZXNDb250ZW50IjpbbnVsbCwiJ3VzZSBjbGllbnQnO1xudmFyIF9fYXdhaXRlciA9ICh0aGlzICYmIHRoaXMuX19hd2FpdGVyKSB8fCBmdW5jdGlvbiAodGhpc0FyZywgX2FyZ3VtZW50cywgUCwgZ2VuZXJhdG9yKSB7XG4gICAgZnVuY3Rpb24gYWRvcHQodmFsdWUpIHsgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgUCA/IHZhbHVlIDogbmV3IFAoZnVuY3Rpb24gKHJlc29sdmUpIHsgcmVzb2x2ZSh2YWx1ZSk7IH0pOyB9XG4gICAgcmV0dXJuIG5ldyAoUCB8fCAoUCA9IFByb21pc2UpKShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgICAgIGZ1bmN0aW9uIGZ1bGZpbGxlZCh2YWx1ZSkgeyB0cnkgeyBzdGVwKGdlbmVyYXRvci5uZXh0KHZhbHVlKSk7IH0gY2F0Y2ggKGUpIHsgcmVqZWN0KGUpOyB9IH1cbiAgICAgICAgZnVuY3Rpb24gcmVqZWN0ZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3JbXCJ0aHJvd1wiXSh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XG4gICAgICAgIGZ1bmN0aW9uIHN0ZXAocmVzdWx0KSB7IHJlc3VsdC5kb25lID8gcmVzb2x2ZShyZXN1bHQudmFsdWUpIDogYWRvcHQocmVzdWx0LnZhbHVlKS50aGVuKGZ1bGZpbGxlZCwgcmVqZWN0ZWQpOyB9XG4gICAgICAgIHN0ZXAoKGdlbmVyYXRvciA9IGdlbmVyYXRvci5hcHBseSh0aGlzQXJnLCBfYXJndW1lbnRzIHx8IFtdKSkubmV4dCgpKTtcbiAgICB9KTtcbn07XG52YXIgX19yZXN0ID0gKHRoaXMgJiYgdGhpcy5fX3Jlc3QpIHx8IGZ1bmN0aW9uIChzLCBlKSB7XG4gICAgdmFyIHQgPSB7fTtcbiAgICBmb3IgKHZhciBwIGluIHMpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocywgcCkgJiYgZS5pbmRleE9mKHApIDwgMClcbiAgICAgICAgdFtwXSA9IHNbcF07XG4gICAgaWYgKHMgIT0gbnVsbCAmJiB0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyA9PT0gXCJmdW5jdGlvblwiKVxuICAgICAgICBmb3IgKHZhciBpID0gMCwgcCA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMocyk7IGkgPCBwLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAoZS5pbmRleE9mKHBbaV0pIDwgMCAmJiBPYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLmNhbGwocywgcFtpXSkpXG4gICAgICAgICAgICAgICAgdFtwW2ldXSA9IHNbcFtpXV07XG4gICAgICAgIH1cbiAgICByZXR1cm4gdDtcbn07XG5pbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJyZWFjdC9qc3gtcnVudGltZVwiO1xuaW1wb3J0IHsgbWVtbywgdXNlRWZmZWN0LCB1c2VJZCwgdXNlUmVmIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgVHlwb2dyYXBoeSB9IGZyb20gJy4uL1R5cG9ncmFwaHknO1xuaW1wb3J0IGNsYXNzbmFtZXMsIHsgam9pbkNscyB9IGZyb20gJy4uLy4uL3V0aWxzL2NsYXNzbmFtZXMnO1xuaW1wb3J0IGxvdHRpZVB1cmVKc29uIGZyb20gJy4vbG90dGllLXB1cmUuanNvbic7XG5pbXBvcnQgJy4vc3R5bGUnO1xuY29uc3QgREVGQVVMVF9TSVpFID0gMzI7XG5jb25zdCBCR19MT0dPX1JBVElPID0gMiAvIDM7XG5jb25zdCBCcmFuZEJnQ2lyY2xlID0gKHsgc2l6ZSwgY2xhc3NOYW1lIH0pID0+IHtcbiAgICBjb25zdCByYXdJZCA9IHVzZUlkKCk7XG4gICAgY29uc3QgZ3JhZElkID0gYHNwaW5uZXItYmctJHtyYXdJZC5yZXBsYWNlKC9bXmEtekEtWjAtOV0vZywgJycpfWA7XG4gICAgcmV0dXJuIChfanN4cyhcInN2Z1wiLCB7IHdpZHRoOiBzaXplLCBoZWlnaHQ6IHNpemUsIHZpZXdCb3g6IFwiMCAwIDU2IDU3XCIsIGNsYXNzTmFtZTogY2xhc3NOYW1lLCBcImFyaWEtaGlkZGVuXCI6IFwidHJ1ZVwiLCBjaGlsZHJlbjogW19qc3goXCJjaXJjbGVcIiwgeyBjeDogXCIyOFwiLCBjeTogXCIyOC43NVwiLCByOiBcIjI4XCIsIGZpbGw6IGB1cmwoIyR7Z3JhZElkfSlgIH0pLCBfanN4KFwiZGVmc1wiLCB7IGNoaWxkcmVuOiBfanN4cyhcInJhZGlhbEdyYWRpZW50XCIsIHsgaWQ6IGdyYWRJZCwgY3g6IFwiMFwiLCBjeTogXCIwXCIsIHI6IFwiMVwiLCBncmFkaWVudFVuaXRzOiBcInVzZXJTcGFjZU9uVXNlXCIsIGdyYWRpZW50VHJhbnNmb3JtOiBcInRyYW5zbGF0ZSgtMzQuOTA4NSA5Mi42Njc4KSByb3RhdGUoLTQ1LjY1OTQpIHNjYWxlKDEwOC44NTMgMTAzLjY5OClcIiwgY2hpbGRyZW46IFtfanN4KFwic3RvcFwiLCB7IHN0b3BDb2xvcjogXCIjMDczMzg3XCIgfSksIF9qc3goXCJzdG9wXCIsIHsgb2Zmc2V0OiBcIjAuMjE2ODUyXCIsIHN0b3BDb2xvcjogXCIjOTBBOENGXCIgfSksIF9qc3goXCJzdG9wXCIsIHsgb2Zmc2V0OiBcIjAuNTY3MTAzXCIsIHN0b3BDb2xvcjogXCIjQ0JENkU4XCIgfSksIF9qc3goXCJzdG9wXCIsIHsgb2Zmc2V0OiBcIjFcIiwgc3RvcENvbG9yOiBcIiNGOUY5RjlcIiB9KV0gfSkgfSldIH0pKTtcbn07XG5leHBvcnQgY29uc3QgU3Bpbm5lciA9IHByb3BzID0+IHtcbiAgICBjb25zdCB7IGNsYXNzTmFtZSwgc3R5bGUsIHByZWZpeENscyA9ICdzcGlubmVyJywgdHlwZSA9ICdkZWZhdWx0Jywgc2l6ZSA9IERFRkFVTFRfU0laRSwgc3Ryb2tlV2lkdGggPSA0LCBjb2xvciwgdGl0bGUsIGJvZHkgfSA9IHByb3BzLCByZXN0ID0gX19yZXN0KHByb3BzLCBbXCJjbGFzc05hbWVcIiwgXCJzdHlsZVwiLCBcInByZWZpeENsc1wiLCBcInR5cGVcIiwgXCJzaXplXCIsIFwic3Ryb2tlV2lkdGhcIiwgXCJjb2xvclwiLCBcInRpdGxlXCIsIFwiYm9keVwiXSk7XG4gICAgY29uc3QgY2xhc3NlcyA9IGNsYXNzbmFtZXMocHJlZml4Q2xzKTtcbiAgICBjb25zdCBsb3R0aWVSZWYgPSB1c2VSZWYobnVsbCk7XG4gICAgY29uc3QgaXNCcmFuZCA9IHR5cGUgPT09ICdicmFuZCcgfHwgdHlwZSA9PT0gJ2JyYW5kLWJnJztcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBpZiAoIWlzQnJhbmQgfHwgIWxvdHRpZVJlZi5jdXJyZW50KVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBsZXQgaW5zdGFuY2UgPSBudWxsO1xuICAgICAgICBsZXQgZGVzdHJveWVkID0gZmFsc2U7XG4gICAgICAgICgoKSA9PiBfX2F3YWl0ZXIodm9pZCAwLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgICAgIGNvbnN0IGxvdHRpZSA9ICh5aWVsZCBpbXBvcnQoJ2xvdHRpZS13ZWInKSkuZGVmYXVsdDtcbiAgICAgICAgICAgIGlmIChkZXN0cm95ZWQgfHwgIWxvdHRpZVJlZi5jdXJyZW50KVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGluc3RhbmNlID0gbG90dGllLmxvYWRBbmltYXRpb24oe1xuICAgICAgICAgICAgICAgIGNvbnRhaW5lcjogbG90dGllUmVmLmN1cnJlbnQsXG4gICAgICAgICAgICAgICAgcmVuZGVyZXI6ICdzdmcnLFxuICAgICAgICAgICAgICAgIGxvb3A6IHRydWUsXG4gICAgICAgICAgICAgICAgYXV0b3BsYXk6IHRydWUsXG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uRGF0YTogbG90dGllUHVyZUpzb24sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSkpKCk7XG4gICAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgICAgICBkZXN0cm95ZWQgPSB0cnVlO1xuICAgICAgICAgICAgaWYgKGluc3RhbmNlKSB7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuZGVzdHJveSgpO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlID0gbnVsbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICB9LCBbaXNCcmFuZF0pO1xuICAgIGlmIChpc0JyYW5kKSB7XG4gICAgICAgIGNvbnN0IGhhc0JnID0gdHlwZSA9PT0gJ2JyYW5kLWJnJztcbiAgICAgICAgY29uc3QgbG90dGllU2l6ZSA9IGhhc0JnID8gc2l6ZSAqIEJHX0xPR09fUkFUSU8gOiBzaXplO1xuICAgICAgICBjb25zdCBsb3R0aWVTdHlsZSA9IHsgd2lkdGg6IGxvdHRpZVNpemUsIGhlaWdodDogbG90dGllU2l6ZSB9O1xuICAgICAgICByZXR1cm4gKF9qc3hzKFwiZGl2XCIsIE9iamVjdC5hc3NpZ24oe30sIHJlc3QsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKHZvaWQgMCwgam9pbkNscyhjbGFzc2VzKCdicmFuZCcpLCBoYXNCZyAmJiBjbGFzc2VzKCdicmFuZC1iZycpLCBjbGFzc05hbWUpKSwgY2hpbGRyZW46IFtoYXNCZyA/IChfanN4cyhcImRpdlwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygnaWNvbi13cmFwJyksIHN0eWxlOiB7IHdpZHRoOiBzaXplLCBoZWlnaHQ6IHNpemUgfSwgY2hpbGRyZW46IFtfanN4KEJyYW5kQmdDaXJjbGUsIHsgc2l6ZTogc2l6ZSwgY2xhc3NOYW1lOiBjbGFzc2VzKCdiZycpIH0pLCBfanN4KFwiZGl2XCIsIHsgcmVmOiBsb3R0aWVSZWYsIGNsYXNzTmFtZTogY2xhc3NlcygnbG90dGllJyksIHN0eWxlOiBsb3R0aWVTdHlsZSB9KV0gfSkpIDogKF9qc3goXCJkaXZcIiwgeyByZWY6IGxvdHRpZVJlZiwgY2xhc3NOYW1lOiBjbGFzc2VzKCdsb3R0aWUnKSwgc3R5bGU6IGxvdHRpZVN0eWxlIH0pKSwgKHRpdGxlIHx8IGJvZHkpICYmIChfanN4cyhcImRpdlwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygnY29udGVudCcpLCBjaGlsZHJlbjogW3RpdGxlICYmIChoYXNCZ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gX2pzeChUeXBvZ3JhcGh5LkhlYWRsaW5lLCB7IHNpemU6IFwic21cIiwgY29sb3I6IFwiZGVmYXVsdFwiLCBjbGFzc05hbWU6IGNsYXNzZXMoJ3RpdGxlJyksIGNoaWxkcmVuOiB0aXRsZSB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogX2pzeChUeXBvZ3JhcGh5LkJvZHksIHsgc2l6ZTogXCJtZFwiLCBjb2xvcjogXCJkZWZhdWx0LXRlcnRpYXJ5XCIsIGNsYXNzTmFtZTogY2xhc3NlcygndGl0bGUnKSwgY2hpbGRyZW46IHRpdGxlIH0pKSwgYm9keSAmJiAoX2pzeChUeXBvZ3JhcGh5LkJvZHksIHsgc2l6ZTogXCJtZFwiLCBjb2xvcjogXCJkZWZhdWx0LXRlcnRpYXJ5XCIsIGNsYXNzTmFtZTogY2xhc3NlcygnYm9keScpLCBjaGlsZHJlbjogYm9keSB9KSldIH0pKV0gfSkpKTtcbiAgICB9XG4gICAgcmV0dXJuIChfanN4KFwiZGl2XCIsIE9iamVjdC5hc3NpZ24oe30sIHJlc3QsIHsgcm9sZTogXCJwcm9ncmVzc2JhclwiLCBjbGFzc05hbWU6IGNsYXNzZXModm9pZCAwLCBjbGFzc05hbWUpLCBzdHlsZTogT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHsgd2lkdGg6IHNpemUsIGhlaWdodDogc2l6ZSB9LCBzdHlsZSksIChjb2xvciA/IHsgY29sb3IgfSA6IG51bGwpKSwgY2hpbGRyZW46IF9qc3goXCJzdmdcIiwgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ2NpcmNsZScpLCB2aWV3Qm94OiBcIjAgMCA1MCA1MFwiLCBjaGlsZHJlbjogX2pzeChcImNpcmNsZVwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygncGF0aCcpLCBjeDogXCIyNVwiLCBjeTogXCIyNVwiLCByOiBcIjIwXCIsIGZpbGw6IFwibm9uZVwiLCBzdHJva2VXaWR0aDogc3Ryb2tlV2lkdGggfSkgfSkgfSkpKTtcbn07XG5leHBvcnQgZGVmYXVsdCBtZW1vKFNwaW5uZXIpOyJdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
@@ -1 +1,99 @@
1
- @keyframes om-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes om-dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}.om-component-ui-spinner{display:inline-flex;align-items:center;justify-content:center;color:var(--om-icon-brand,#073387)}.om-component-ui-spinner-circle{width:100%;height:100%;animation:om-spin 2s linear infinite}.om-component-ui-spinner-path{animation:om-dash 1.5s ease-in-out infinite;stroke:currentcolor;stroke-linecap:round}.om-component-ui-spinner-brand{display:flex;flex-direction:column;gap:var(--om-spacing-200,8px);align-items:center}.om-component-ui-spinner-brand.om-component-ui-spinner-brand-bg{gap:var(--om-spacing-600,24px);border-radius:var(--om-radius-600,24px)}.om-component-ui-spinner-lottie{display:block;flex-shrink:0}.om-component-ui-spinner-icon-wrap{position:relative;flex-shrink:0}.om-component-ui-spinner-icon-wrap .om-component-ui-spinner-bg{display:block;width:100%;height:100%}.om-component-ui-spinner-icon-wrap .om-component-ui-spinner-lottie{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.om-component-ui-spinner-content{display:flex;flex-direction:column;gap:var(--om-spacing-100,4px);align-items:center;white-space:nowrap}.om-component-ui-spinner-body,.om-component-ui-spinner-title{text-align:center}
1
+ /**
2
+ * Retrieves the spacing value for a given token key.
3
+ *
4
+ * @param {string} $key - The spacing token key (e.g., '100', '200').
5
+ * @return {length|null} The computed spacing value or null if the key is invalid.
6
+ * @example
7
+ * .element {
8
+ * padding: om-spacing-token('200'); // Returns 8px if $om-sys-spacing-unit is 4px
9
+ * }
10
+ */
11
+ /**
12
+ * Computes the spacing value based on a token key or a direct length value.
13
+ *
14
+ * @param {string|length} $value - The spacing token key (e.g., '100') or a direct length value (e.g., '16px').
15
+ * @return {length} The computed spacing value.
16
+ * @example
17
+ * .element {
18
+ * margin: om-spacing-value('300'); // Returns 12px if $om-sys-spacing-unit is 4px
19
+ * padding: om-spacing-value(16px); // Returns 16px
20
+ * gap: om-spacing-value(2); // Returns 8px if $om-sys-spacing-unit is 4px
21
+ * }
22
+ */
23
+ @keyframes om-spin {
24
+ 0% {
25
+ transform: rotate(0deg);
26
+ }
27
+ 100% {
28
+ transform: rotate(360deg);
29
+ }
30
+ }
31
+ @keyframes om-dash {
32
+ 0% {
33
+ stroke-dasharray: 1, 150;
34
+ stroke-dashoffset: 0;
35
+ }
36
+ 50% {
37
+ stroke-dasharray: 90, 150;
38
+ stroke-dashoffset: -35;
39
+ }
40
+ 100% {
41
+ stroke-dasharray: 90, 150;
42
+ stroke-dashoffset: -124;
43
+ }
44
+ }
45
+ .om-component-ui-spinner {
46
+ display: inline-flex;
47
+ align-items: center;
48
+ justify-content: center;
49
+ color: var(--om-icon-brand, #073387);
50
+ }
51
+ .om-component-ui-spinner-circle {
52
+ width: 100%;
53
+ height: 100%;
54
+ animation: om-spin 2s linear infinite;
55
+ }
56
+ .om-component-ui-spinner-path {
57
+ animation: om-dash 1.5s ease-in-out infinite;
58
+ stroke: currentcolor;
59
+ stroke-linecap: round;
60
+ }
61
+ .om-component-ui-spinner-brand {
62
+ display: flex;
63
+ flex-direction: column;
64
+ gap: var(--om-spacing-200, 8px);
65
+ align-items: center;
66
+ }
67
+ .om-component-ui-spinner-brand.om-component-ui-spinner-brand-bg {
68
+ gap: var(--om-spacing-600, 24px);
69
+ border-radius: var(--om-radius-600, 24px);
70
+ }
71
+ .om-component-ui-spinner-lottie {
72
+ display: block;
73
+ flex-shrink: 0;
74
+ }
75
+ .om-component-ui-spinner-icon-wrap {
76
+ position: relative;
77
+ flex-shrink: 0;
78
+ }
79
+ .om-component-ui-spinner-icon-wrap .om-component-ui-spinner-bg {
80
+ display: block;
81
+ width: 100%;
82
+ height: 100%;
83
+ }
84
+ .om-component-ui-spinner-icon-wrap .om-component-ui-spinner-lottie {
85
+ position: absolute;
86
+ top: 50%;
87
+ left: 50%;
88
+ transform: translate(-50%, -50%);
89
+ }
90
+ .om-component-ui-spinner-content {
91
+ display: flex;
92
+ flex-direction: column;
93
+ gap: var(--om-spacing-100, 4px);
94
+ align-items: center;
95
+ white-space: nowrap;
96
+ }
97
+ .om-component-ui-spinner-title, .om-component-ui-spinner-body {
98
+ text-align: center;
99
+ }
@@ -1 +1,107 @@
1
- .om-component-ui-step{--om-step-status-success-bg:var(--om-bg-positive-tertiary-hover,rgba(31,88,0,.1));--om-step-status-success-fg:var(--om-icon-positive,#1f5800);--om-step-status-error-bg:var(--om-bg-danger-tertiary-hover,rgba(174,0,0,.1));--om-step-status-error-fg:var(--om-icon-danger,#ae0000);display:flex;flex-direction:column;gap:var(--om-spacing-200,8px);width:100%}.om-component-ui-step-item{display:flex;gap:var(--om-spacing-300,12px);align-items:flex-start;width:100%;min-width:0}.om-component-ui-step-indicator-column{display:flex;flex-direction:column;flex-shrink:0;gap:var(--om-spacing-200,8px);align-items:center;align-self:stretch;width:24px}.om-component-ui-step-indicator{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:24px;height:24px}.om-component-ui-step-indicator-number{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;color:var(--om-text-on-neutral,#fff);background-color:var(--om-bg-brand,#073387);border-radius:var(--om-radius-full,9999px);font-size:var(--om-body-md-font-size);font-family:var(--om-body-md-font-family);line-height:var(--om-body-md-line-height);letter-spacing:var(--om-body-md-letter-spacing);font-weight:var(--om-body-md-font-weight)}.om-component-ui-step-indicator-icon{display:block;flex-shrink:0}.om-component-ui-step-connector{flex:1 0 0;width:1px;min-height:1px;background-color:var(--om-border-brand,#073387)}.om-component-ui-step-item-completed .om-component-ui-step-connector{background-color:var(--om-border-positive,#1f5800)}.om-component-ui-step-item-error .om-component-ui-step-connector{background-color:var(--om-border-danger,#ae0000)}.om-component-ui-step-content{display:flex;flex:1 1 auto;flex-direction:column;gap:var(--om-spacing-200,8px);min-width:0}.om-component-ui-step-content-continuation{padding-bottom:var(--om-spacing-400,16px)}.om-component-ui-step-copy{display:flex;flex-direction:column;gap:var(--om-spacing-100,4px);min-width:0}.om-component-ui-step-tag{display:flex;align-items:center}
1
+ /**
2
+ * Retrieves the spacing value for a given token key.
3
+ *
4
+ * @param {string} $key - The spacing token key (e.g., '100', '200').
5
+ * @return {length|null} The computed spacing value or null if the key is invalid.
6
+ * @example
7
+ * .element {
8
+ * padding: om-spacing-token('200'); // Returns 8px if $om-sys-spacing-unit is 4px
9
+ * }
10
+ */
11
+ /**
12
+ * Computes the spacing value based on a token key or a direct length value.
13
+ *
14
+ * @param {string|length} $value - The spacing token key (e.g., '100') or a direct length value (e.g., '16px').
15
+ * @return {length} The computed spacing value.
16
+ * @example
17
+ * .element {
18
+ * margin: om-spacing-value('300'); // Returns 12px if $om-sys-spacing-unit is 4px
19
+ * padding: om-spacing-value(16px); // Returns 16px
20
+ * gap: om-spacing-value(2); // Returns 8px if $om-sys-spacing-unit is 4px
21
+ * }
22
+ */
23
+ .om-component-ui-step {
24
+ --om-step-status-success-bg: var(--om-bg-positive-tertiary-hover, rgba(31, 88, 0, 0.1));
25
+ --om-step-status-success-fg: var(--om-icon-positive, #1f5800);
26
+ --om-step-status-error-bg: var(--om-bg-danger-tertiary-hover, rgba(174, 0, 0, 0.1));
27
+ --om-step-status-error-fg: var(--om-icon-danger, #ae0000);
28
+ display: flex;
29
+ flex-direction: column;
30
+ gap: var(--om-spacing-200, 8px);
31
+ width: 100%;
32
+ }
33
+ .om-component-ui-step-item {
34
+ display: flex;
35
+ gap: var(--om-spacing-300, 12px);
36
+ align-items: flex-start;
37
+ width: 100%;
38
+ min-width: 0;
39
+ }
40
+ .om-component-ui-step-indicator-column {
41
+ display: flex;
42
+ flex-direction: column;
43
+ flex-shrink: 0;
44
+ gap: var(--om-spacing-200, 8px);
45
+ align-items: center;
46
+ align-self: stretch;
47
+ width: 24px;
48
+ }
49
+ .om-component-ui-step-indicator {
50
+ display: flex;
51
+ flex-shrink: 0;
52
+ align-items: center;
53
+ justify-content: center;
54
+ width: 24px;
55
+ height: 24px;
56
+ }
57
+ .om-component-ui-step-indicator-number {
58
+ display: inline-flex;
59
+ align-items: center;
60
+ justify-content: center;
61
+ width: 22px;
62
+ height: 22px;
63
+ color: var(--om-text-on-neutral, #fff);
64
+ background-color: var(--om-bg-brand, #073387);
65
+ border-radius: var(--om-radius-full, 9999px);
66
+ font-size: var(--om-body-md-font-size);
67
+ font-family: var(--om-body-md-font-family);
68
+ line-height: var(--om-body-md-line-height);
69
+ letter-spacing: var(--om-body-md-letter-spacing);
70
+ font-weight: var(--om-body-md-font-weight);
71
+ }
72
+ .om-component-ui-step-indicator-icon {
73
+ display: block;
74
+ flex-shrink: 0;
75
+ }
76
+ .om-component-ui-step-connector {
77
+ flex: 1 0 0;
78
+ width: 1px;
79
+ min-height: 1px;
80
+ background-color: var(--om-border-brand, #073387);
81
+ }
82
+ .om-component-ui-step-item-completed .om-component-ui-step-connector {
83
+ background-color: var(--om-border-positive, #1f5800);
84
+ }
85
+ .om-component-ui-step-item-error .om-component-ui-step-connector {
86
+ background-color: var(--om-border-danger, #ae0000);
87
+ }
88
+ .om-component-ui-step-content {
89
+ display: flex;
90
+ flex: 1 1 auto;
91
+ flex-direction: column;
92
+ gap: var(--om-spacing-200, 8px);
93
+ min-width: 0;
94
+ }
95
+ .om-component-ui-step-content-continuation {
96
+ padding-bottom: var(--om-spacing-400, 16px);
97
+ }
98
+ .om-component-ui-step-copy {
99
+ display: flex;
100
+ flex-direction: column;
101
+ gap: var(--om-spacing-100, 4px);
102
+ min-width: 0;
103
+ }
104
+ .om-component-ui-step-tag {
105
+ display: flex;
106
+ align-items: center;
107
+ }
@@ -1 +1,102 @@
1
- .om-component-ui-switch{display:inline-flex;gap:var(--om-spacing-300,12px);align-items:center;cursor:pointer}.om-component-ui-switch-track-wrapper{position:relative;display:flex;flex-shrink:0;align-items:center}.om-component-ui-switch-input{position:absolute;inset:0;margin:0;cursor:inherit;opacity:0}.om-component-ui-switch-track{position:relative;display:flex;align-items:center;width:40px;height:24px;background-color:var(--om-bg-neutral-secondary,#e3e4e4);border-radius:var(--om-radius-full,9999px);transition:background-color .2s ease,border-color .2s ease}.om-component-ui-switch-thumb{position:absolute;left:2px;width:20px;height:20px;background-color:var(--om-bg-default,#fff);border-radius:var(--om-radius-full,9999px);box-shadow:var(--om-shadow-100,0 4px 8px rgba(65,91,130,.12));transform:translateX(0);transition:transform .2s ease}.om-component-ui-switch-input:focus-visible+.om-component-ui-switch-track{box-shadow:0 0 0 2px var(--om-border-brand,#073387)}.om-component-ui-switch-content{display:flex;flex:1 0 0;flex-direction:column;min-width:0}.om-component-ui-switch-description{min-height:20px}.om-component-ui-switch:not(.om-component-ui-switch-disabled):hover .om-component-ui-switch-track{background-color:var(--om-bg-neutral-secondary-hover,#d1d2d2)}.om-component-ui-switch-checked .om-component-ui-switch-track{background-color:var(--om-bg-brand,#073387)}.om-component-ui-switch-checked .om-component-ui-switch-thumb{transform:translateX(16px)}.om-component-ui-switch-checked:not(.om-component-ui-switch-disabled):hover .om-component-ui-switch-track{background-color:var(--om-bg-brand-hover,#052561)}.om-component-ui-switch-disabled{cursor:not-allowed}.om-component-ui-switch-disabled .om-component-ui-switch-track{background-color:var(--om-bg-disabled,#f0f0f0)}.om-component-ui-switch-disabled .om-component-ui-switch-thumb{background-color:var(--om-bg-default,#fff);box-shadow:none}.om-component-ui-switch-disabled .om-component-ui-switch-content{color:var(--om-text-disabled,#bbbdc1)}.om-component-ui-switch-right .om-component-ui-switch-track-wrapper{order:-1}
1
+ /**
2
+ * Retrieves the spacing value for a given token key.
3
+ *
4
+ * @param {string} $key - The spacing token key (e.g., '100', '200').
5
+ * @return {length|null} The computed spacing value or null if the key is invalid.
6
+ * @example
7
+ * .element {
8
+ * padding: om-spacing-token('200'); // Returns 8px if $om-sys-spacing-unit is 4px
9
+ * }
10
+ */
11
+ /**
12
+ * Computes the spacing value based on a token key or a direct length value.
13
+ *
14
+ * @param {string|length} $value - The spacing token key (e.g., '100') or a direct length value (e.g., '16px').
15
+ * @return {length} The computed spacing value.
16
+ * @example
17
+ * .element {
18
+ * margin: om-spacing-value('300'); // Returns 12px if $om-sys-spacing-unit is 4px
19
+ * padding: om-spacing-value(16px); // Returns 16px
20
+ * gap: om-spacing-value(2); // Returns 8px if $om-sys-spacing-unit is 4px
21
+ * }
22
+ */
23
+ .om-component-ui-switch {
24
+ display: inline-flex;
25
+ gap: var(--om-spacing-300, 12px);
26
+ align-items: center;
27
+ cursor: pointer;
28
+ }
29
+ .om-component-ui-switch-track-wrapper {
30
+ position: relative;
31
+ display: flex;
32
+ flex-shrink: 0;
33
+ align-items: center;
34
+ }
35
+ .om-component-ui-switch-input {
36
+ position: absolute;
37
+ inset: 0;
38
+ margin: 0;
39
+ cursor: inherit;
40
+ opacity: 0;
41
+ }
42
+ .om-component-ui-switch-track {
43
+ position: relative;
44
+ display: flex;
45
+ align-items: center;
46
+ width: 40px;
47
+ height: 24px;
48
+ background-color: var(--om-bg-neutral-secondary, #e3e4e4);
49
+ border-radius: var(--om-radius-full, 9999px);
50
+ transition: background-color 0.2s ease, border-color 0.2s ease;
51
+ }
52
+ .om-component-ui-switch-thumb {
53
+ position: absolute;
54
+ left: 2px;
55
+ width: 20px;
56
+ height: 20px;
57
+ background-color: var(--om-bg-default, #fff);
58
+ border-radius: var(--om-radius-full, 9999px);
59
+ box-shadow: var(--om-shadow-100, 0 4px 8px rgba(65, 91, 130, 0.12));
60
+ transform: translateX(0);
61
+ transition: transform 0.2s ease;
62
+ }
63
+ .om-component-ui-switch-input:focus-visible + .om-component-ui-switch-track {
64
+ box-shadow: 0 0 0 2px var(--om-border-brand, #073387);
65
+ }
66
+ .om-component-ui-switch-content {
67
+ display: flex;
68
+ flex: 1 0 0;
69
+ flex-direction: column;
70
+ min-width: 0;
71
+ }
72
+ .om-component-ui-switch-description {
73
+ min-height: 20px;
74
+ }
75
+ .om-component-ui-switch:not(.om-component-ui-switch-disabled):hover .om-component-ui-switch-track {
76
+ background-color: var(--om-bg-neutral-secondary-hover, #d1d2d2);
77
+ }
78
+ .om-component-ui-switch-checked .om-component-ui-switch-track {
79
+ background-color: var(--om-bg-brand, #073387);
80
+ }
81
+ .om-component-ui-switch-checked .om-component-ui-switch-thumb {
82
+ transform: translateX(16px);
83
+ }
84
+ .om-component-ui-switch-checked:not(.om-component-ui-switch-disabled):hover .om-component-ui-switch-track {
85
+ background-color: var(--om-bg-brand-hover, #052561);
86
+ }
87
+ .om-component-ui-switch-disabled {
88
+ cursor: not-allowed;
89
+ }
90
+ .om-component-ui-switch-disabled .om-component-ui-switch-track {
91
+ background-color: var(--om-bg-disabled, #f0f0f0);
92
+ }
93
+ .om-component-ui-switch-disabled .om-component-ui-switch-thumb {
94
+ background-color: var(--om-bg-default, #fff);
95
+ box-shadow: none;
96
+ }
97
+ .om-component-ui-switch-disabled .om-component-ui-switch-content {
98
+ color: var(--om-text-disabled, #bbbdc1);
99
+ }
100
+ .om-component-ui-switch-right .om-component-ui-switch-track-wrapper {
101
+ order: -1;
102
+ }