@tcn/ui 0.0.4 → 0.2.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 (198) hide show
  1. package/README.md +38 -3
  2. package/dist/actions/button/base_button/base_button.d.ts.map +1 -1
  3. package/dist/actions/button/base_button/base_button.js +17 -12
  4. package/dist/actions/button/base_button/base_button.js.map +1 -1
  5. package/dist/actions/button/button/button.d.ts.map +1 -1
  6. package/dist/actions/button/button/button.js +7 -7
  7. package/dist/actions/button/button/button.js.map +1 -1
  8. package/dist/actions/button/slim_button/slim_button.js +2 -2
  9. package/dist/actions/button/slim_button/slim_button.js.map +1 -1
  10. package/dist/button.css +1 -1
  11. package/dist/draggable.css +1 -0
  12. package/dist/feedback/progress/progress_bar.js +1 -1
  13. package/dist/footer.css +1 -1
  14. package/dist/form/field/common/field_description.js +1 -1
  15. package/dist/form/field/common/field_error.js +4 -3
  16. package/dist/form/field/common/field_error.js.map +1 -1
  17. package/dist/form/field/common/field_label.js +1 -1
  18. package/dist/inputs/date_picker/date_picker_date.js +1 -1
  19. package/dist/inputs/date_picker/date_picker_day.js +1 -1
  20. package/dist/inputs/date_picker/date_picker_time_selector.js +1 -1
  21. package/dist/inputs/date_picker/date_picker_year_selector.js +1 -1
  22. package/dist/inputs/input/input.d.ts +2 -2
  23. package/dist/inputs/input/input.d.ts.map +1 -1
  24. package/dist/inputs/input/input.js.map +1 -1
  25. package/dist/inputs/options/option.d.ts +1 -0
  26. package/dist/inputs/options/option.d.ts.map +1 -1
  27. package/dist/inputs/options/option.js.map +1 -1
  28. package/dist/inputs/phone_number_input/phone_number_input.d.ts +8 -1
  29. package/dist/inputs/phone_number_input/phone_number_input.d.ts.map +1 -1
  30. package/dist/inputs/phone_number_input/phone_number_input.js +187 -137
  31. package/dist/inputs/phone_number_input/phone_number_input.js.map +1 -1
  32. package/dist/inputs/suggestions/suggestion_item.d.ts +1 -1
  33. package/dist/inputs/suggestions/suggestion_item.d.ts.map +1 -1
  34. package/dist/inputs/suggestions/suggestion_item.js +23 -18
  35. package/dist/inputs/suggestions/suggestion_item.js.map +1 -1
  36. package/dist/inputs/suggestions/suggestion_list.d.ts +1 -1
  37. package/dist/inputs/suggestions/suggestion_list.d.ts.map +1 -1
  38. package/dist/inputs/suggestions/suggestion_list.js +106 -96
  39. package/dist/inputs/suggestions/suggestion_list.js.map +1 -1
  40. package/dist/inputs/textarea/textarea.d.ts +2 -2
  41. package/dist/inputs/textarea/textarea.d.ts.map +1 -1
  42. package/dist/inputs/textarea/textarea.js.map +1 -1
  43. package/dist/layouts/footer/footer.js +5 -5
  44. package/dist/layouts/footer/footer.js.map +1 -1
  45. package/dist/layouts/header/header.d.ts.map +1 -1
  46. package/dist/layouts/header/header.js.map +1 -1
  47. package/dist/layouts/index.d.ts +3 -2
  48. package/dist/layouts/index.d.ts.map +1 -1
  49. package/dist/layouts/index.js +26 -24
  50. package/dist/layouts/index.js.map +1 -1
  51. package/dist/layouts/list/item.d.ts +1 -0
  52. package/dist/layouts/list/item.d.ts.map +1 -1
  53. package/dist/layouts/list/item.js +17 -6
  54. package/dist/layouts/list/item.js.map +1 -1
  55. package/dist/layouts/list/list.js +10 -10
  56. package/dist/layouts/list/list.js.map +1 -1
  57. package/dist/overlay/context_menu/context_menu.js +4 -4
  58. package/dist/overlay/frame/frame.d.ts +11 -0
  59. package/dist/overlay/frame/frame.d.ts.map +1 -0
  60. package/dist/overlay/frame/frame.js +18 -0
  61. package/dist/overlay/frame/frame.js.map +1 -0
  62. package/dist/overlay/index.d.ts +1 -0
  63. package/dist/overlay/index.d.ts.map +1 -1
  64. package/dist/overlay/index.js +5 -3
  65. package/dist/overlay/index.js.map +1 -1
  66. package/dist/overlay/popper/popper.js +12 -12
  67. package/dist/{portal-qqIp4SIl.js → overlay/portal/portal.js} +3 -3
  68. package/dist/overlay/portal/portal.js.map +1 -0
  69. package/dist/overlay/portal/portal_platform.js +3 -4
  70. package/dist/overlay/portal/portal_platform.js.map +1 -1
  71. package/dist/phone_number_input.css +1 -1
  72. package/dist/slim_button.css +1 -1
  73. package/dist/stacks/box/box.d.ts +1 -1
  74. package/dist/stacks/box/box.d.ts.map +1 -1
  75. package/dist/stacks/box/box.js.map +1 -1
  76. package/dist/surfaces/card/card.d.ts.map +1 -1
  77. package/dist/surfaces/card/card.js +7 -16
  78. package/dist/surfaces/card/card.js.map +1 -1
  79. package/dist/surfaces/confirm/confirm.js +4 -4
  80. package/dist/surfaces/index.d.ts +2 -2
  81. package/dist/surfaces/index.d.ts.map +1 -1
  82. package/dist/surfaces/index.js +22 -22
  83. package/dist/surfaces/modal/modal.d.ts +3 -2
  84. package/dist/surfaces/modal/modal.d.ts.map +1 -1
  85. package/dist/surfaces/modal/modal.js +14 -13
  86. package/dist/surfaces/modal/modal.js.map +1 -1
  87. package/dist/surfaces/window/window.d.ts +3 -2
  88. package/dist/surfaces/window/window.d.ts.map +1 -1
  89. package/dist/surfaces/window/window.js +17 -7
  90. package/dist/surfaces/window/window.js.map +1 -1
  91. package/dist/themes/index.js +6 -141
  92. package/dist/themes/index.js.map +1 -1
  93. package/dist/themes/stylesheets/reset.js +140 -0
  94. package/dist/themes/stylesheets/reset.js.map +1 -0
  95. package/dist/themes/themes/ergo/ergo_theme.js +664 -0
  96. package/dist/themes/themes/ergo/ergo_theme.js.map +1 -0
  97. package/dist/tokens/bubble/bubble.js +17 -16
  98. package/dist/tokens/bubble/bubble.js.map +1 -1
  99. package/dist/tokens/chip/chip.js +9 -8
  100. package/dist/tokens/chip/chip.js.map +1 -1
  101. package/dist/typography/title/title.d.ts +2 -1
  102. package/dist/typography/title/title.d.ts.map +1 -1
  103. package/dist/typography/title/title.js +24 -23
  104. package/dist/typography/title/title.js.map +1 -1
  105. package/dist/utils/dnd/context.d.ts +4 -0
  106. package/dist/utils/dnd/context.d.ts.map +1 -0
  107. package/dist/utils/dnd/context.js +20 -0
  108. package/dist/utils/dnd/context.js.map +1 -0
  109. package/dist/utils/dnd/draggable/draggable.d.ts +7 -0
  110. package/dist/utils/dnd/draggable/draggable.d.ts.map +1 -0
  111. package/dist/utils/dnd/draggable/draggable.js +27 -0
  112. package/dist/utils/dnd/draggable/draggable.js.map +1 -0
  113. package/dist/utils/dnd/handle.d.ts +6 -0
  114. package/dist/utils/dnd/handle.d.ts.map +1 -0
  115. package/dist/utils/dnd/handle.js +22 -0
  116. package/dist/utils/dnd/handle.js.map +1 -0
  117. package/dist/utils/dnd/hooks/use_drag_container.d.ts +7 -0
  118. package/dist/utils/dnd/hooks/use_drag_container.d.ts.map +1 -0
  119. package/dist/utils/dnd/hooks/use_drag_container.js +30 -0
  120. package/dist/utils/dnd/hooks/use_drag_container.js.map +1 -0
  121. package/dist/utils/{hooks → dnd/hooks}/use_draggable.d.ts +3 -3
  122. package/dist/utils/dnd/hooks/use_draggable.d.ts.map +1 -0
  123. package/dist/utils/dnd/hooks/use_draggable.js +41 -0
  124. package/dist/utils/dnd/hooks/use_draggable.js.map +1 -0
  125. package/dist/utils/dnd/types.d.ts +10 -0
  126. package/dist/utils/dnd/types.d.ts.map +1 -0
  127. package/dist/utils/dnd/types.js +2 -0
  128. package/dist/utils/dnd/types.js.map +1 -0
  129. package/dist/utils/index.d.ts +1 -1
  130. package/dist/utils/index.d.ts.map +1 -1
  131. package/dist/utils/index.js +1 -1
  132. package/package.json +9 -3
  133. package/src/actions/button/base_button/base_button.tsx +7 -2
  134. package/src/actions/button/button/button.module.css +0 -78
  135. package/src/actions/button/button/button.tsx +2 -4
  136. package/src/actions/button/slim_button/slim_button.module.css +0 -26
  137. package/src/actions/button/slim_button/slim_button.tsx +1 -1
  138. package/src/inputs/input/input.tsx +3 -2
  139. package/src/inputs/options/option.tsx +1 -0
  140. package/src/inputs/phone_number_input/phone_number_input.module.css +12 -0
  141. package/src/inputs/phone_number_input/phone_number_input.stories.tsx +8 -0
  142. package/src/inputs/phone_number_input/phone_number_input.tsx +107 -21
  143. package/src/inputs/suggestions/suggestion_item.tsx +12 -2
  144. package/src/inputs/suggestions/suggestion_list.tsx +22 -3
  145. package/src/inputs/textarea/textarea.tsx +2 -2
  146. package/src/layouts/footer/footer.module.css +0 -1
  147. package/src/layouts/footer/footer.tsx +1 -1
  148. package/src/layouts/header/header.tsx +0 -1
  149. package/src/layouts/index.ts +3 -2
  150. package/src/layouts/list/item.tsx +10 -2
  151. package/src/layouts/list/list.tsx +2 -2
  152. package/src/overlay/frame/frame.stories.tsx +40 -0
  153. package/src/overlay/frame/frame.tsx +34 -0
  154. package/src/overlay/frame/frame_stories.module.css +14 -0
  155. package/src/overlay/index.ts +1 -0
  156. package/src/stacks/box/box.tsx +8 -2
  157. package/src/surfaces/card/card.tsx +2 -8
  158. package/src/surfaces/index.ts +2 -2
  159. package/src/surfaces/modal/__stories__/modal.stories.tsx +19 -27
  160. package/src/surfaces/modal/modal.tsx +13 -10
  161. package/src/surfaces/panel/__stories__/panel.stories.tsx +13 -12
  162. package/src/surfaces/window/window.stories.tsx +37 -4
  163. package/src/surfaces/window/window.tsx +14 -6
  164. package/src/themes/themes/ergo/__stories__/components/material_picker/sb_inverted_materials.module.css +34 -0
  165. package/src/themes/themes/ergo/__stories__/components/material_picker/sb_material_picker.tsx +52 -0
  166. package/src/themes/themes/ergo/__stories__/components/tone_picker/sb_card.module.css +5 -0
  167. package/src/themes/themes/ergo/__stories__/components/tone_picker/sb_tone_card.tsx +40 -0
  168. package/src/themes/themes/ergo/__stories__/components/tone_picker/sb_tone_picker.tsx +83 -0
  169. package/src/themes/themes/ergo/__stories__/components/tone_picker/types.ts +7 -0
  170. package/src/themes/themes/ergo/__stories__/material.stories.tsx +154 -0
  171. package/src/themes/themes/ergo/__stories__/sb_materials.module.css +110 -0
  172. package/src/themes/themes/ergo/__stories__/utils.ts +92 -0
  173. package/src/themes/themes/ergo/ergo_theme.css +358 -26
  174. package/src/typography/title/title.tsx +23 -19
  175. package/src/utils/dnd/__stories__/draggable.stories.tsx +48 -0
  176. package/src/utils/dnd/__stories__/draggable_stories.module.css +21 -0
  177. package/src/utils/{__stories__ → dnd/__stories__}/use_draggable.stories.tsx +15 -10
  178. package/src/utils/dnd/context.ts +24 -0
  179. package/src/utils/dnd/draggable/draggable.module.css +8 -0
  180. package/src/utils/dnd/draggable/draggable.tsx +42 -0
  181. package/src/utils/dnd/handle.tsx +32 -0
  182. package/src/utils/dnd/hooks/use_drag_container.ts +42 -0
  183. package/src/utils/{hooks → dnd/hooks}/use_draggable.ts +23 -17
  184. package/src/utils/dnd/types.ts +6 -0
  185. package/src/utils/index.ts +1 -1
  186. package/tsconfig.json +0 -3
  187. package/dist/card.css +0 -1
  188. package/dist/portal-qqIp4SIl.js.map +0 -1
  189. package/dist/themes/stylesheets/reset.css +0 -1
  190. package/dist/themes/themes/ergo/ergo_theme.css +0 -1
  191. package/dist/themes/themes/windows_98/windows_98.css +0 -1
  192. package/dist/title.module-B16de2jd.js +0 -5
  193. package/dist/title.module-B16de2jd.js.map +0 -1
  194. package/dist/utils/hooks/use_draggable.d.ts.map +0 -1
  195. package/dist/utils/hooks/use_draggable.js +0 -30
  196. package/dist/utils/hooks/use_draggable.js.map +0 -1
  197. package/src/surfaces/card/card.module.css +0 -5
  198. /package/dist/{overlay/portal/portal.css → portal_platform.css} +0 -0
@@ -0,0 +1,42 @@
1
+ import React, { useMemo, type CSSProperties } from 'react';
2
+
3
+ import { DragContainerContext } from '../context.js';
4
+ import clsx from 'clsx';
5
+ import { useMakeDragContainer } from '../hooks/use_drag_container.js';
6
+
7
+ import styles from './draggable.module.css';
8
+
9
+ export interface DraggableProps {
10
+ children: React.ReactElement;
11
+ draggable?: boolean;
12
+ }
13
+
14
+ export const Draggable: React.FC<DraggableProps> = ({
15
+ children,
16
+ draggable: isDraggable = true,
17
+ }) => {
18
+ const context = useMakeDragContainer({});
19
+
20
+ const cssVariables = useMemo(
21
+ () =>
22
+ ({
23
+ '--position-x': `${context.position.x}px`,
24
+ '--position-y': `${context.position.y}px`,
25
+ }) as CSSProperties,
26
+
27
+ [context.position]
28
+ );
29
+
30
+ const clonedChildren = React.cloneElement(children, {
31
+ className: clsx('tcn-draggable', styles.draggable, children.props.className),
32
+ style: { ...cssVariables, ...children.props.style },
33
+ 'data-is-dragging': context.isDragging,
34
+ 'data-is-draggable': isDraggable,
35
+ });
36
+
37
+ return (
38
+ <DragContainerContext.Provider value={context}>
39
+ {clonedChildren}
40
+ </DragContainerContext.Provider>
41
+ );
42
+ };
@@ -0,0 +1,32 @@
1
+ import React, { useEffect, useRef } from 'react';
2
+ import clsx from 'clsx';
3
+ import { useDragContainer } from './context.js';
4
+ import { useForkRef } from '../hooks/use_fork_ref.js';
5
+
6
+ export interface DragHandleProps {
7
+ children: React.ReactElement;
8
+ }
9
+
10
+ export const DragHandle: React.FC<DragHandleProps> = ({ children }) => {
11
+ const { registerHandle, unregisterHandle } = useDragContainer();
12
+ const ref = useRef<HTMLElement | null>(null);
13
+
14
+ useEffect(() => {
15
+ if (ref.current == null) {
16
+ return;
17
+ }
18
+ registerHandle(ref);
19
+ return () => {
20
+ if (ref.current == null) {
21
+ return;
22
+ }
23
+ unregisterHandle(ref);
24
+ };
25
+ }, [registerHandle, unregisterHandle]);
26
+
27
+ const mergedRef = useForkRef(ref, children.props.ref);
28
+ return React.cloneElement(children, {
29
+ className: clsx('tcn-drag-handle', children.props.className),
30
+ ref: mergedRef,
31
+ });
32
+ };
@@ -0,0 +1,42 @@
1
+ import { useCallback, useRef, useState } from 'react';
2
+ import { useDraggable } from './use_draggable.js';
3
+ import type { Position } from '../../index.js';
4
+ import type { DragContainer } from '../types.js';
5
+
6
+ export interface UseDragContainerOptions {
7
+ initialPosition?: Position;
8
+ }
9
+
10
+ export function useMakeDragContainer(options: UseDragContainerOptions): DragContainer {
11
+ const [handles, setHandles] = useState<React.RefObject<HTMLElement>[]>([]);
12
+ const positionRef = useRef<Position>(options.initialPosition ?? { x: 0, y: 0 });
13
+ const [position, setPosition] = useState(positionRef.current);
14
+ const [isDragging, setIsDragging] = useState(false);
15
+
16
+ useDraggable({
17
+ handles: handles,
18
+ startDragCallback: () => {
19
+ setIsDragging(true);
20
+ },
21
+ dragCallback: (deltaX, deltaY) => {
22
+ setPosition({
23
+ x: positionRef.current.x + deltaX,
24
+ y: positionRef.current.y + deltaY,
25
+ });
26
+ },
27
+ endDragCallback: () => {
28
+ setIsDragging(false);
29
+ positionRef.current = position;
30
+ },
31
+ });
32
+
33
+ const registerHandle = useCallback((handle: React.RefObject<HTMLElement>) => {
34
+ setHandles(prev => [...prev, handle]);
35
+ }, []);
36
+
37
+ const unregisterHandle = useCallback((handle: React.RefObject<HTMLElement>) => {
38
+ setHandles(prev => prev.filter(h => h !== handle));
39
+ }, []);
40
+
41
+ return { registerHandle, unregisterHandle, position, isDragging };
42
+ }
@@ -1,6 +1,6 @@
1
1
  import { useEffect, useRef } from 'react';
2
2
 
3
- interface DraggableOptions {
3
+ export interface UseDraggableOptions {
4
4
  startDragCallback: (startX: number, startY: number) => void;
5
5
  dragCallback: (deltaX: number, deltaY: number, startX: number, startY: number) => void;
6
6
  endDragCallback: (
@@ -9,16 +9,10 @@ interface DraggableOptions {
9
9
  startX: number,
10
10
  startY: number
11
11
  ) => void;
12
+ handles?: React.RefObject<HTMLElement>[] | React.RefObject<HTMLElement>;
12
13
  }
13
14
 
14
- // const handleRef: Ref<HTMLElement> = useDraggable(
15
- // (startX: number, startY: number) => {},
16
- // (deltaX: number, deltaY: number, startX: number, startY: number) => {},
17
- // (deltaX: number, deltaY: number, startX: number, startY: number) => {}
18
- // );
19
-
20
- export function useDraggable(options: DraggableOptions) {
21
- const ref = useRef<HTMLElement | null>(null);
15
+ export function useDraggable(options: UseDraggableOptions) {
22
16
  const startDragCallbackRef = useRef(options.startDragCallback);
23
17
  startDragCallbackRef.current = options.startDragCallback;
24
18
  const dragCallbackRef = useRef(options.dragCallback);
@@ -27,7 +21,8 @@ export function useDraggable(options: DraggableOptions) {
27
21
  endDragCallbackRef.current = options.endDragCallback;
28
22
 
29
23
  useEffect(() => {
30
- const element = ref.current;
24
+ const handles = options.handles;
25
+ if (handles === undefined) return;
31
26
  let startX = 0;
32
27
  let startY = 0;
33
28
 
@@ -58,17 +53,28 @@ export function useDraggable(options: DraggableOptions) {
58
53
  document.body.addEventListener('mouseleave', endDrag);
59
54
  }
60
55
 
61
- if (element != null) {
62
- element.addEventListener('mousedown', startDrag);
56
+ if (Array.isArray(handles)) {
57
+ for (const element of handles) {
58
+ if (element != null) {
59
+ element.current?.addEventListener('mousedown', startDrag);
60
+ }
61
+ }
62
+ } else {
63
+ handles?.current?.addEventListener('mousedown', startDrag);
63
64
  }
64
-
65
65
  return () => {
66
- element?.removeEventListener('mousedown', startDrag);
66
+ if (Array.isArray(handles)) {
67
+ for (const element of handles) {
68
+ if (element != null) {
69
+ element.current?.removeEventListener('mousedown', startDrag);
70
+ }
71
+ }
72
+ } else {
73
+ handles?.current?.removeEventListener('mousedown', startDrag);
74
+ }
67
75
  document.body.removeEventListener('mousemove', drag);
68
76
  document.body.removeEventListener('mouseup', endDrag);
69
77
  document.body.removeEventListener('mouseleave', endDrag);
70
78
  };
71
- }, []);
72
-
73
- return ref;
79
+ }, [options.handles]);
74
80
  }
@@ -0,0 +1,6 @@
1
+ export interface DragContainer {
2
+ registerHandle: (handle: React.RefObject<HTMLElement>) => void;
3
+ unregisterHandle: (handle: React.RefObject<HTMLElement>) => void;
4
+ isDragging: boolean;
5
+ position: { x: number; y: number };
6
+ }
@@ -3,7 +3,7 @@ export * from './click_away_listener.js';
3
3
  export * from './scroll_away_listener.js';
4
4
 
5
5
  export * from './hooks/make_context_hook.js';
6
- export * from './hooks/use_draggable.js';
6
+ export * from './dnd/hooks/use_draggable.js';
7
7
  export * from './hooks/use_fork_ref.js';
8
8
  export * from './hooks/use_media_query.js';
9
9
  export * from './hooks/use_resize_observer.js';
package/tsconfig.json CHANGED
@@ -3,9 +3,6 @@
3
3
  "esModuleInterop": true,
4
4
  "jsx": "react-jsx",
5
5
  "paths": {
6
- "~tooling/*": [
7
- "../tooling/src/*"
8
- ],
9
6
  "~aip-160/*": [
10
7
  "../aip-160/src/*"
11
8
  ],
package/dist/card.css DELETED
@@ -1 +0,0 @@
1
- ._card_a3c9492{box-shadow:0 2px 10px #00000040;padding:16px;gap:8px}
@@ -1 +0,0 @@
1
- {"version":3,"file":"portal-qqIp4SIl.js","sources":["../src/overlay/portal/portal.tsx"],"sourcesContent":["import React, { useState, useLayoutEffect } from 'react';\nimport { usePortalPlatform } from './portal_platform_context.js';\n\nexport interface PortalProps {\n children: React.ReactNode | React.ReactNode[];\n zIndex?: number;\n}\n\nexport const Portal = ({ children, zIndex }: PortalProps) => {\n const portalPlatform = usePortalPlatform();\n\n const [portal] = useState(() => {\n return portalPlatform.createPortal();\n });\n\n useLayoutEffect(() => {\n portal.setZIndex(zIndex);\n }, [portal, zIndex]);\n\n useLayoutEffect(() => {\n portalPlatform.mountPortal(portal);\n return () => portalPlatform.unmountPortal(portal);\n }, [portal, portalPlatform]);\n\n return portal.render(children);\n};\n"],"names":["Portal","children","zIndex","portalPlatform","usePortalPlatform","portal","useState","useLayoutEffect"],"mappings":";;AAQO,MAAMA,IAAS,CAAC,EAAE,UAAAC,GAAU,QAAAC,QAA0B;AAC3D,QAAMC,IAAiBC,EAAA,GAEjB,CAACC,CAAM,IAAIC,EAAS,MACjBH,EAAe,aAAA,CACvB;AAED,SAAAI,EAAgB,MAAM;AACpB,IAAAF,EAAO,UAAUH,CAAM;AAAA,EACzB,GAAG,CAACG,GAAQH,CAAM,CAAC,GAEnBK,EAAgB,OACdJ,EAAe,YAAYE,CAAM,GAC1B,MAAMF,EAAe,cAAcE,CAAM,IAC/C,CAACA,GAAQF,CAAc,CAAC,GAEpBE,EAAO,OAAOJ,CAAQ;AAC/B;"}
@@ -1 +0,0 @@
1
- html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}legend{all:unset;display:block;margin:0;padding:0;font:inherit;color:inherit}
@@ -1 +0,0 @@
1
- html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}legend{all:unset;display:block;margin:0;padding:0;font:inherit;color:inherit}:root{--scalar: 1;--gap-small: 4px;--gap-medium: 8px;--gap-large: 16px;--padding-small: 4px;--padding-medium: 8px;--padding-large: 16px;--status-color-disabled: #7f7f7f;--status-color-info: #008cff;--status-color-warning: #ff0000;--status-color-error: #ff0000;--async-color-initial: #c0c0c0;--async-color-pending: #008cff;--async-color-success: #00ff00;--async-color-failed: #ff0000;--primary-color-faint: #c0c0c0;--primary-color: #008cff;--primary-color-strong: #008cff;--secondary-color-faint: #c0c0c0;--secondary-color: #008cff;--secondary-color-strong: #008cff;--tertiary-color-faint: #c0c0c0;--tertiary-color: #008cff;--tertiary-color-strong: #008cff;--quaternary-color-faint: #c0c0c0;--quaternary-color: #008cff;--quaternary-color-strong: #008cff;--font-color: #395578;--font-family: "Lato", sans-serif;--font-size: 12px;--background-color-primary: #ffffff;--background-color-secondary: #ffffff;--background-color-tertiary: #ffffff;--background-color-quaternary: #ffffff;--foreground-color-primary: #aaa;--foreground-color-secondary: #222222;--foreground-color-tertiary: #222222;--foreground-color-quaternary: #222222;--accent-color: #008cff;--shape-radius-small: 2px;--shape-radius-medium: 4px;--shape-radius-large: 8px}*{position:relative;box-sizing:border-box}.tcn-veil{background-color:#00000080}.tcn-modal{--v-inset: var(--padding-large);background-color:var(--background-color-primary);border-radius:var(--shape-radius-medium);border:1px solid rgba(170,170,170,1);overflow:hidden}.tcn-modal :where(.tcn-header){min-height:40px;background-color:#497485;color:#fff;padding:0 var(--v-inset);gap:var(--gap-medium)}.tcn-modal :where(.tcn-header) :where(.tcn-title){color:#fff}.tcn-modal :where(.tcn-header) :where(.tcn-button){padding:0;min-width:18px;min-height:18px;color:#fff}.tcn-modal :where(.tcn-header) :where(.tcn-button)[data-hierarchy=tertiary]{color:#fff}.tcn-modal :where(.tcn-header) :where(.tcn-divider){padding:4px 0}.tcn-modal :where(.tcn-header) :where(.tcn-divider) :where(.tcn-divider-line){width:1.5px;min-height:18px;height:auto}.tcn-modal :where(.tcn-utility-bar){min-height:32px;border-bottom:1px solid var(--foreground-color-primary);padding:0 var(--v-inset)}.tcn-modal :where(.tcn-utility-bar) :where(.tcn-button){padding:0;min-width:18px;min-height:18px}.tcn-modal :where(.tcn-body){padding:0 var(--v-inset);gap:var(--gap-medium)}.tcn-modal :where(.tcn-footer){gap:var(--gap-medium);min-height:40px;border-top:1px solid var(--foreground-color-primary);padding:0 var(--v-inset)}.tcn-panel{--v-inset: var(--padding-large);background-color:var(--background-color-primary);border-radius:var(--shape-radius-medium)}.tcn-panel :where(.tcn-header){min-height:40px;border-bottom:1px solid var(--foreground-color-primary);padding:0 var(--v-inset);gap:var(--gap-medium)}.tcn-panel :where(.tcn-header) :where(.tcn-title){font-weight:700}.tcn-panel :where(.tcn-header) :where(.tcn-button){padding:0;min-width:18px;min-height:18px}.tcn-panel :where(.tcn-header) :where(.tcn-divider){padding:4px 0}.tcn-panel :where(.tcn-header) :where(.tcn-divider) :where(.tcn-divider-line){width:1.5px;min-height:18px;height:auto}.tcn-panel :where(.tcn-utility-bar){min-height:32px;border-bottom:1px solid var(--foreground-color-primary);padding:0 var(--v-inset)}.tcn-panel :where(.tcn-utility-bar) :where(.tcn-button){padding:0;min-width:18px;min-height:18px}.tcn-panel :where(.tcn-body){padding:0 var(--v-inset);gap:var(--gap-medium)}.tcn-panel :where(.tcn-footer){gap:var(--gap-medium);min-height:40px;border-top:1px solid var(--foreground-color-primary);padding:0 var(--v-inset)}
@@ -1 +0,0 @@
1
- html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}legend{all:unset;display:block;margin:0;padding:0;font:inherit;color:inherit}*{position:relative;box-sizing:border-box}:root{--scalar: 1;--gap-small: 2px;--gap-medium: 4px;--gap-large: 8px;--padding-small: 2px;--padding-medium: 4px;--padding-large: 8px;--status-color-disabled: #7f7f7f;--status-color-info: #000080;--status-color-warning: #000080;--status-color-error: #be0000;--async-color-initial: #c0c0c0;--async-color-pending: #000080;--async-color-success: #00ff00;--async-color-failed: #be0000;--primary-color-faint: #c0c0c0;--primary-color: #000080;--primary-color-strong: #000080;--secondary-color-faint: #c0c0c0;--secondary-color: #000080;--secondary-color-strong: #000080;--tertiary-color-faint: #c0c0c0;--tertiary-color: #000080;--tertiary-color-strong: #000080;--quaternary-color-faint: #c0c0c0;--quaternary-color: #000080;--quaternary-color-strong: #000080;--font-color: #222222;--font-family: "Pixelated MS Sans Serif", Arial;--font-size: 12px;--background-color-primary: #c0c0c0;--background-color-secondary: #c0c0c0;--background-color-tertiary: #c0c0c0;--background-color-quaternary: #c0c0c0;--foreground-color-primary: #222222;--foreground-color-secondary: #222222;--foreground-color-tertiary: #222222;--foreground-color-quaternary: #222222;--accent-color: #000080}.title[data-size=sm]{font-size:10px}.title[data-size=md]{font-size:12px}.title[data-size=lg]{font-size:14px}.body-text[data-size=sm]{font-size:10px}.body-text[data-size=md]{font-size:11px}.body-text[data-size=lg]{font-size:12px}.button-text{position:relative;opacity:1;font-size:12px!important}.button,.button[data-hierarchy=primary],.button[data-hierarchy=secondary],.button[data-hierarchy=primary]:hover,.button[data-hierarchy=secondary]:hover{background:silver;border:none;border-radius:0;box-shadow:inset -1px -1px #0a0a0a,inset 1px 1px #fff,inset -2px -2px gray,inset 2px 2px silver;box-sizing:border-box;color:#222;min-height:23px;min-width:0;padding:0 12px;font-size:12px;text-decoration:none;outline:none}.button[data-hierarchy=primary]>*,.button[data-hierarchy=secondary]>*{position:relative}.button[data-hierarchy=primary]:active>*,.button[data-hierarchy=secondary]:active>*{position:relative;top:0;left:1px}.button[data-hierarchy=primary]:focus:not(:active):before,.button[data-hierarchy=secondary]:focus:not(:active):before{content:"";position:absolute;inset:1px 2px 2px 1px;outline:1px dotted #222;outline-offset:-3px}.button[data-hierarchy=primary],.button[data-hierarchy=primary]:hover{box-shadow:inset -2px -2px #0a0a0a,inset 1px 1px #0a0a0a,inset -3px -3px gray,inset 2px 2px #fff,inset 3px 3px silver}.button[data-hierarchy=primary]:active,.button[data-hierarchy=secondary]:active{background:silver;box-shadow:inset -1px -1px #fff,inset 1px 1px #0a0a0a,inset -2px -2px silver,inset 2px 2px gray;color:#222;border:none;text-decoration:none}.button[data-hierarchy=primary]:focus,.button[data-hierarchy=secondary]:focus,.button[data-hierarchy=primary]:focus:not(:active),.button[data-hierarchy=secondary]:focus:not(:active){background:silver;border:none;text-decoration:none}.button[data-hierarchy=tertiary]{padding:0 4px;background:none;border:none;border-radius:0;box-shadow:none;box-sizing:border-box;color:navy;min-height:auto;min-width:auto;text-decoration:none}.button[data-hierarchy=tertiary]:hover{background:none;border:none;border-radius:0;box-shadow:none;box-sizing:border-box;color:navy;min-height:auto;min-width:auto;text-decoration:none}.button[data-hierarchy=tertiary]:active{background:none;border:none;border-radius:0;box-shadow:none;box-sizing:border-box;color:#00008099;min-height:auto;min-width:auto;text-decoration:none}.button[data-hierarchy=tertiary]:focus,.button[data-hierarchy=tertiary]:focus:not(:active){background:none;outline:1px dotted #000080;outline-offset:0;border:none;text-decoration:none}.button[data-hierarchy=secondary][data-is-disabled=true]{box-shadow:inset -1px -1px #717171,inset 1px 1px #fff,inset -2px -2px #999,inset 2px 2px silver}.button[data-hierarchy=primary][data-is-disabled=true]{box-shadow:inset -2px -2px #717171,inset 1px 1px #717171,inset -3px -3px #999,inset 2px 2px #fff,inset 3px 3px silver}.button[data-hierarchy=primary][data-is-disabled=true],.button[data-hierarchy=secondary][data-is-disabled=true],.button[data-hierarchy=tertiary][data-is-disabled=true]{color:#7f7f7f;cursor:not-allowed}.button.select,.button.select:hover{position:relative;padding-inline-end:20px;padding-inline-start:4px}.button.select:dir(ltr):after{content:"";position:absolute;right:calc(4px * var(--scalar, 1));top:50%;transform:translateY(-50%);width:calc(12px * var(--scalar, 1));height:calc(12px * var(--scalar, 1));background-color:currentColor;-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='100%25' height='100%25' viewBox='0 0 12 12' fill='currentColor' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 4l4 4 4-4z' fill='currentColor'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='100%25' height='100%25' viewBox='0 0 12 12' fill='currentColor' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 4l4 4 4-4z' fill='currentColor'/%3E%3C/svg%3E");-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain;pointer-events:none}.button.select:dir(rtl):after{content:"";position:absolute;left:calc(4px * var(--scalar, 1));top:50%;transform:translateY(-50%);width:calc(12px * var(--scalar, 1));height:calc(12px * var(--scalar, 1));background-color:#222;-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='100%25' height='100%25' viewBox='0 0 12 12' fill='black' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 4l4 4 4-4z' fill='black'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='100%25' height='100%25' viewBox='0 0 12 12' fill='black' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 4l4 4 4-4z' fill='black'/%3E%3C/svg%3E");-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain;pointer-events:none}.slim-button,.slim-button[data-hierarchy=primary],.slim-button[data-hierarchy=secondary],.slim-button[data-hierarchy=primary]:hover,.slim-button[data-hierarchy=secondary]:hover{padding:2px;min-width:0;min-height:0;height:auto;width:auto}.slim-button[data-size=sm],.slim-button[data-hierarchy=primary][data-size=sm],.slim-button[data-hierarchy=secondary][data-size=sm],.slim-button[data-hierarchy=primary][data-size=sm]:hover,.slim-button[data-hierarchy=secondary][data-size=sm]:hover{padding:1px}.slim-button[data-size=md],.slim-button[data-hierarchy=primary][data-size=md],.slim-button[data-hierarchy=secondary][data-size=md],.slim-button[data-hierarchy=primary][data-size=md]:hover,.slim-button[data-hierarchy=secondary][data-size=md]:hover{padding:2px}.slim-button[data-size=lg],.slim-button[data-hierarchy=primary][data-size=lg],.slim-button[data-hierarchy=secondary][data-size=lg],.slim-button[data-hierarchy=primary][data-size=lg]:hover,.slim-button[data-hierarchy=secondary][data-size=lg]:hover{padding:4px}.select-group .button[data-hierarchy=primary],.select-group .button[data-hierarchy=primary]:hover,.select-group .button[data-hierarchy=primary]:focus{background-color:navy;box-shadow:inset -1px -1px #0a0a0a,inset 1px 1px #fff,inset -2px -2px gray,inset 2px 2px silver;color:#fff}.select-group .button:hover,.select-group .button:focus,.button-group .button:hover,.button-group .button:focus{z-index:1}.input,.textarea,.suggestion-list-search-input,.multi-combo-box-values-container,.multiselect-values-container{border-radius:0;outline:none;border:none;background-color:#fff;box-shadow:inset -1px -1px #fff,inset 1px 1px gray,inset -2px -2px #dfdfdf,inset 2px 2px #0a0a0a;box-sizing:border-box;padding:3px 4px}.suggestion-list-search-input{box-shadow:inset -1px -1px #fff,inset 1px 1px gray,inset -2px -2px #dfdfdf,inset 2px 2px #0a0a0a,0 -2px 0 2px silver}.input,.textarea,.suggestion-list-search-input{height:23px}.input:is(:focus,:focus-visible,:active,:hover),.input:is(:focus,:focus-visible,:active,:hover)[data-is-disabled=false],.textarea:is(:focus,:focus-visible,:active,:hover),.textarea:is(:focus,:focus-visible,:active,:hover)[data-is-disabled=false]{outline:none;border:none}.input[data-is-disabled=true],.textarea[data-is-disabled=true],.suggestion-list-search-input[data-is-disabled=true],.multiselect-values-container[data-is-disabled=true]{box-shadow:inset -1px -1px #fff,inset 1px 1px #999,inset -2px -2px #dfdfdf,inset 2px 2px #717171}.input[data-is-disabled=true],.textarea[data-is-disabled=true],.suggestion-list-search-input[data-is-disabled=true],.multiselect-values-container[data-is-disabled=true],.input[data-is-disabled=true]::placeholder,.textarea[data-is-disabled=true]::placeholder,.suggestion-list-search-input[data-is-disabled=true]::placeholder,.multiselect-values-container[data-is-disabled=true]::placeholder{color:#7f7f7f;cursor:not-allowed;background-color:silver}.select-group .button[data-hierarchy=primary]:active{box-shadow:inset -1px -1px #fff,inset 1px 1px #0a0a0a,inset -2px -2px silver,inset 2px 2px gray;color:#fff}.select-group .button[data-hierarchy=primary]:focus:not(:active):before{outline:1px dotted #fcfcfc}.suggestion-list{padding:2px}.suggestion-item{padding:0;background:transparent;border:none;min-height:0}.suggestion-item:hover{background:navy;color:#fff}.suggestion-item[data-is-selected=true],.suggestion-item[data-is-focused=true]{padding:0;background:navy;color:#fff;border:none}.suggestion-list-search-input{border-radius:0;padding:4px;height:24px;min-height:24px}.title{color:#000}.header .title{color:#fff}.header[data-kind=window]{padding:4px;background:linear-gradient(90deg,navy,#1084d0);border:none;color:#fff}.header[data-kind=window]>.button{color:#222}.header[data-kind=toolbar],.header[data-kind=app],.header[data-kind=nav]{padding:4px 0;background:silver;color:#222;border-bottom:1px solid #808080;border-top:1px solid #f5f5f5;border-right:1px solid #808080;border-left:1px solid #f5f5f5;padding-inline-start:4px}.header[data-kind=panel]{padding:4px;background:linear-gradient(90deg,#7c7c7c,#aeaeae);border:none;color:#fff}.main[data-kind=window],.main[data-kind=app],.main[data-kind=nav],.main[data-kind=toolbar],.main[data-kind=section],.main[data-kind=panel],.main[data-kind=drawer],.main[data-kind=card],.panel,.h-panel,.v-panel,.sidebar-start[data-hierarchy],.sidebar-end[data-hierarchy]{border-radius:0;background:silver;color:#222;border-bottom:1px solid #808080;border-top:1px solid #f5f5f5;border-right:1px solid #808080;border-left:1px solid #f5f5f5}.column:after{content:"";position:absolute;bottom:var(--padding);top:var(--padding);right:0;width:0px;border-bottom:1px solid #f5f5f5;border-top:1px solid #808080;border-right:1px solid #f5f5f5;border-left:1px solid #808080}.column:last-child:after{display:none}.main[data-kind=panel],.sidebar-start[data-kind=panel],.sidebar-end[data-kind=panel]{padding:0}.sidebar-start[data-hierarchy=tertiary],.sidebar-start[data-hierarchy=secondary]{background:silver;color:#222}.sidebar-start[data-kind=nav],.v-nav{background:#fff;padding:2px;border-top:1px solid #808080;border-bottom:1px solid #f5f5f5;border-right:1px solid #f5f5f5;border-left:1px solid #808080}.sidebar-end[data-hierarchy=tertiary],.sidebar-end[data-hierarchy=secondary]{background:silver;color:#222}.sidebar-end[data-hierarchy=primary],.sidebar-start[data-hierarchy=primary]{background:#fff;color:#222}.footer[data-kind=window]{padding:4px;background:silver;box-shadow:inset 1px 1px gray,inset -1px -1px #f5f5f5,inset 2px 2px #c1c1c1,inset -2px -2px silver;color:#222}.window,.date-picker-popover,.date-picker-year-selector,.menu,.suggestion-list{border-radius:0;background:silver;padding:4px;box-shadow:inset -1px -1px #0a0a0a,inset 1px 1px #f5f5f5,inset -2px -2px gray,inset 2px 2px silver}.suggestion-list-header{background:silver}.date-picker-box{background:silver;padding:0}.date-picker-date,.date-picker-year-button{box-shadow:none!important}.date-picker-header{height:20px}.button.phone-number-input-select,.button.phone-number-input-select:hover{min-width:0}.phone-number-input[data-has-phone-book=false]{border-end-end-radius:0px;border-start-end-radius:0px}.button.phone-number-input-phone-book{max-width:23px!important;max-height:23px!important;height:23px!important;min-width:23px!important;min-height:23px!important}.button.date-picker-year-select{padding-inline-end:20px}.button.date-picker-year-select:dir(ltr):after{width:calc(12px * var(--scalar, 1));height:calc(12px * var(--scalar, 1));-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='100%25' height='100%25' viewBox='0 0 12 12' fill='black' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 4l4 4 4-4z' fill='black'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='100%25' height='100%25' viewBox='0 0 12 12' fill='black' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 4l4 4 4-4z' fill='black'/%3E%3C/svg%3E")}.button.date-picker-year-select:dir(rtl):after{width:calc(12px * var(--scalar, 1));height:calc(12px * var(--scalar, 1));-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='100%25' height='100%25' viewBox='0 0 12 12' fill='black' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 4l4 4 4-4z' fill='black'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='100%25' height='100%25' viewBox='0 0 12 12' fill='black' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 4l4 4 4-4z' fill='black'/%3E%3C/svg%3E")}.time-box{border-radius:0;background:#fff;border:none;box-shadow:inset 1px 1px gray,inset -1px -1px #f5f5f5,inset 2px 2px #c1c1c1,inset -2px -2px silver}.time-box-title-container{min-height:25px;height:25px}.field-set{padding:8px 12px 12px;margin-top:10px;border-radius:0;background:silver;box-shadow:inset 1px 1px gray,inset -1px -1px #f5f5f5,inset 2px 2px #f5f5f5,inset -2px -2px gray}.field-set>.field-set-body{background:transparent;padding:0;gap:8px}.field-set>.field-set-legend{position:relative;top:-7px;left:-4px;height:0}.field-set-legend-text{background:silver;padding:0;font-size:12px}.chip{background:silver;border-radius:0;color:#222;border:none;font-size:12px;box-shadow:inset -1px -1px #0a0a0a,inset 1px 1px #fff,inset -2px -2px gray,inset 2px 2px silver}.checkbox{outline:none;border-radius:0;background:#fff;border:none;background-position:center;background-repeat:no-repeat;box-shadow:inset 1px 1px gray,inset -1px -1px #f5f5f5,inset 2px 2px #c1c1c1,inset -2px -2px silver}.checkbox:focus{outline:none}.checkbox[data-checked=true]{background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 24 24' fill='%23222' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.5068 5.44714C20.8121 5.72703 20.8328 6.20146 20.5529 6.5068L9.55287 18.5068C9.41464 18.6576 9.22081 18.7454 9.01629 18.7498C8.81178 18.7543 8.61432 18.675 8.46967 18.5303L3.46967 13.5303C3.17678 13.2374 3.17678 12.7626 3.46967 12.4697C3.76256 12.1768 4.23744 12.1768 4.53033 12.4697L8.97644 16.9158L19.4471 5.49321C19.727 5.18787 20.2015 5.16724 20.5068 5.44714Z' stroke='%23222' stroke-width='2'/%3E%3C/svg%3E")}.checkbox[data-is-disabled=false]:active{background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 24 24' fill='%23222' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.5068 5.44714C20.8121 5.72703 20.8328 6.20146 20.5529 6.5068L9.55287 18.5068C9.41464 18.6576 9.22081 18.7454 9.01629 18.7498C8.81178 18.7543 8.61432 18.675 8.46967 18.5303L3.46967 13.5303C3.17678 13.2374 3.17678 12.7626 3.46967 12.4697C3.76256 12.1768 4.23744 12.1768 4.53033 12.4697L8.97644 16.9158L19.4471 5.49321C19.727 5.18787 20.2015 5.16724 20.5068 5.44714Z' stroke='%23222' stroke-width='2'/%3E%3C/svg%3E")}.checkbox[data-is-disabled=true]{background-color:silver}.checkbox[data-checked=true][data-is-disabled=true]{background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 24 24' fill='%23222' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.5068 5.44714C20.8121 5.72703 20.8328 6.20146 20.5529 6.5068L9.55287 18.5068C9.41464 18.6576 9.22081 18.7454 9.01629 18.7498C8.81178 18.7543 8.61432 18.675 8.46967 18.5303L3.46967 13.5303C3.17678 13.2374 3.17678 12.7626 3.46967 12.4697C3.76256 12.1768 4.23744 12.1768 4.53033 12.4697L8.97644 16.9158L19.4471 5.49321C19.727 5.18787 20.2015 5.16724 20.5068 5.44714Z' stroke='%23707070' stroke-width='2'/%3E%3C/svg%3E")}.radio,.radio[data-checked=true],.radio[checked=true]{width:14px;height:14px;min-width:14px;min-height:14px;border-inline-end:1px solid #fff;border-inline-start:1px solid #222;border-block-end:1px solid #fff;border-block-start:1px solid #222}.radio:focus{outline:none}.radio:before{content:"";background:transparent;position:absolute;border-radius:50%;inset:0;border-inline-end:1px solid #dfdfdf;border-inline-start:1px solid #808080;border-block-end:1px solid #dfdfdf;border-block-start:1px solid #808080}.radio[data-checked=true]:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:40%;height:40%;background:#222;border-radius:50%}.switch:focus,.switch:focus-visible,.switch-wrapper[data-focused=true][data-is-checked=false],.switch-wrapper[data-focused=true][data-is-checked=true]{outline:none}.switch-wrapper{border-radius:0;box-shadow:inset -1px -1px #fff,inset 1px 1px gray,inset -2px -2px #dfdfdf,inset 2px 2px #0a0a0a;border-color:silver;background-color:#fff;transition:background-color .2s ease-out;margin-top:2px;margin-bottom:3px}.switch-wrapper[data-is-checked=false]>.switch-icon{color:#222}.switch:after{content:"";cursor:pointer;position:absolute;top:0;transition:transform .2s ease-out;width:calc(16px * var(--scalar, 1));height:calc(16px * var(--scalar, 1));border-radius:0;background-color:silver;box-sizing:border-box;box-shadow:inset -1px -1px #0a0a0a,inset 1px 1px #fff,inset -2px -2px gray,inset 2px 2px silver}.switch-wrapper[data-is-checked=true][data-is-disabled=false]{background-color:var(--accent-color);border-color:silver}.switch-wrapper[data-is-disabled=true]{background-color:silver;border-color:silver;box-shadow:inset -1px -1px #fff,inset 1px 1px #999,inset -2px -2px #dfdfdf,inset 2px 2px #7f7f7f}.switch[data-is-disabled=true]:after{box-shadow:inset -1px -1px #666,inset 1px 1px #fff,inset -2px -2px #949494,inset 2px 2px silver}.switch-wrapper[data-is-disabled=true]>.switch-icon{color:#707070}.slider::-webkit-slider-runnable-track{border-radius:0;height:5px;box-shadow:inset -1px -1px #fff,inset 1px 1px gray,inset -2px -2px #dfdfdf,inset 2px 2px #0a0a0a}.slider::-webkit-slider-runnable-track [data-is-disabled=true]{box-shadow:inset -1px -1px #fff,inset 1px 1px #999,inset -2px -2px #dfdfdf,inset 2px 2px #717171}.slider::-webkit-slider-thumb{outline:none;width:calc(12px * var(--scalar, 1));height:calc(16px * var(--scalar, 1));border-radius:0;border:none;background-color:silver;box-sizing:border-box;box-shadow:inset -1px -1px #0a0a0a,inset 1px 1px #fff,inset -2px -2px gray,inset 2px 2px silver}.slider[data-is-disabled=false]:active::-webkit-slider-thumb{background-color:silver}.slider[data-is-disabled=true]::-webkit-slider-thumb{box-shadow:inset -1px -1px #717171,inset 1px 1px #fff,inset -2px -2px #999,inset 2px 2px silver}.slider::-moz-range-track{border-radius:0;height:5px;border:none;background:silver;box-shadow:inset -1px -1px #fff,inset 1px 1px gray,inset -2px -2px #dfdfdf,inset 2px 2px #0a0a0a}.slider::-moz-range-track [data-is-disabled=true]{box-shadow:inset -1px -1px #fff,inset 1px 1px #999,inset -2px -2px #dfdfdf,inset 2px 2px #717171}.slider::-moz-range-thumb{outline:none;width:calc(12px * var(--scalar, 1));height:calc(16px * var(--scalar, 1));border-radius:0;border:none;background-color:silver;box-sizing:border-box;box-shadow:inset -1px -1px #0a0a0a,inset 1px 1px #fff,inset -2px -2px gray,inset 2px 2px silver;cursor:pointer}.slider[data-is-disabled=false]:active::-moz-range-thumb,.slider[data-is-disabled=false]:focus::-moz-range-thumb{background-color:silver;box-shadow:inset -1px -1px #0a0a0a,inset 1px 1px #fff,inset -2px -2px gray,inset 2px 2px silver;outline:none}.slider[data-is-disabled=true]::-moz-range-thumb{box-shadow:inset -1px -1px #717171,inset 1px 1px #fff,inset -2px -2px #999,inset 2px 2px silver;cursor:not-allowed}.nav-item,.nav-item[data-is-selected],.menu-item{border-radius:0;font-size:12px}.nav-item,.menu-item .body-text{font-size:12px}.main[data-hierarchy=primary],.main[data-hierarchy=secondary],.main[data-hierarchy=tertiary]{background:silver;padding:0}.h-nav{border:none}.h-nav:after{content:"";position:absolute;left:0;right:0;bottom:0;height:0px;border-bottom:1px solid #f5f5f5;border-top:1px solid #808080;border-right:1px solid #f5f5f5;border-left:1px solid #808080}.footer{border:none}.footer:after{content:"";position:absolute;left:0;right:0;top:0;height:0px;border-bottom:1px solid #f5f5f5;border-top:1px solid #808080;border-right:1px solid #f5f5f5;border-left:1px solid #808080}
@@ -1,5 +0,0 @@
1
- import './title.css';const t = "_title_64bd0fd", s = { title: t };
2
- export {
3
- s
4
- };
5
- //# sourceMappingURL=title.module-B16de2jd.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"title.module-B16de2jd.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"use_draggable.d.ts","sourceRoot":"","sources":["../../../src/utils/hooks/use_draggable.ts"],"names":[],"mappings":"AAEA,UAAU,gBAAgB;IACxB,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5D,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACvF,eAAe,EAAE,CACf,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,KACX,IAAI,CAAC;CACX;AAQD,wBAAgB,YAAY,CAAC,OAAO,EAAE,gBAAgB,wDAsDrD"}
@@ -1,30 +0,0 @@
1
- import { useRef as o, useEffect as g } from "react";
2
- function E(t) {
3
- const s = o(null), m = o(t.startDragCallback);
4
- m.current = t.startDragCallback;
5
- const i = o(t.dragCallback);
6
- i.current = t.dragCallback;
7
- const v = o(t.endDragCallback);
8
- return v.current = t.endDragCallback, g(() => {
9
- const c = s.current;
10
- let n = 0, r = 0;
11
- function d(e) {
12
- const l = e.clientX - n, u = e.clientY - r;
13
- i.current(l, u, n, r);
14
- }
15
- function a(e) {
16
- const l = e.clientX !== void 0 ? e.clientX - n : 0, u = e.clientY !== void 0 ? e.clientY - r : 0;
17
- v.current(l, u, n, r), document.body.removeEventListener("mousemove", d), document.body.removeEventListener("mouseup", a), document.body.removeEventListener("mouseleave", a);
18
- }
19
- function b(e) {
20
- n = e.clientX, r = e.clientY, m.current(n, r), document.body.addEventListener("mousemove", d), document.body.addEventListener("mouseup", a), document.body.addEventListener("mouseleave", a);
21
- }
22
- return c?.addEventListener("mousedown", b), () => {
23
- c?.removeEventListener("mousedown", b), document.body.removeEventListener("mousemove", d), document.body.removeEventListener("mouseup", a), document.body.removeEventListener("mouseleave", a);
24
- };
25
- }, []), s;
26
- }
27
- export {
28
- E as useDraggable
29
- };
30
- //# sourceMappingURL=use_draggable.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use_draggable.js","sources":["../../../src/utils/hooks/use_draggable.ts"],"sourcesContent":["import { useEffect, useRef } from 'react';\n\ninterface DraggableOptions {\n startDragCallback: (startX: number, startY: number) => void;\n dragCallback: (deltaX: number, deltaY: number, startX: number, startY: number) => void;\n endDragCallback: (\n deltaX: number,\n deltaY: number,\n startX: number,\n startY: number\n ) => void;\n}\n\n// const handleRef: Ref<HTMLElement> = useDraggable(\n// (startX: number, startY: number) => {},\n// (deltaX: number, deltaY: number, startX: number, startY: number) => {},\n// (deltaX: number, deltaY: number, startX: number, startY: number) => {}\n// );\n\nexport function useDraggable(options: DraggableOptions) {\n const ref = useRef<HTMLElement | null>(null);\n const startDragCallbackRef = useRef(options.startDragCallback);\n startDragCallbackRef.current = options.startDragCallback;\n const dragCallbackRef = useRef(options.dragCallback);\n dragCallbackRef.current = options.dragCallback;\n const endDragCallbackRef = useRef(options.endDragCallback);\n endDragCallbackRef.current = options.endDragCallback;\n\n useEffect(() => {\n const element = ref.current;\n let startX = 0;\n let startY = 0;\n\n function drag(event: MouseEvent) {\n const deltaX = event.clientX - startX;\n const deltaY = event.clientY - startY;\n\n dragCallbackRef.current(deltaX, deltaY, startX, startY);\n }\n\n function endDrag(event: MouseEvent) {\n const deltaX = event.clientX !== undefined ? event.clientX - startX : 0;\n const deltaY = event.clientY !== undefined ? event.clientY - startY : 0;\n endDragCallbackRef.current(deltaX, deltaY, startX, startY);\n document.body.removeEventListener('mousemove', drag);\n document.body.removeEventListener('mouseup', endDrag);\n document.body.removeEventListener('mouseleave', endDrag);\n }\n\n function startDrag(event: MouseEvent) {\n startX = event.clientX;\n startY = event.clientY;\n\n startDragCallbackRef.current(startX, startY);\n\n document.body.addEventListener('mousemove', drag);\n document.body.addEventListener('mouseup', endDrag);\n document.body.addEventListener('mouseleave', endDrag);\n }\n\n if (element != null) {\n element.addEventListener('mousedown', startDrag);\n }\n\n return () => {\n element?.removeEventListener('mousedown', startDrag);\n document.body.removeEventListener('mousemove', drag);\n document.body.removeEventListener('mouseup', endDrag);\n document.body.removeEventListener('mouseleave', endDrag);\n };\n }, []);\n\n return ref;\n}\n"],"names":["useDraggable","options","ref","useRef","startDragCallbackRef","dragCallbackRef","endDragCallbackRef","useEffect","element","startX","startY","drag","event","deltaX","deltaY","endDrag","startDrag"],"mappings":";AAmBO,SAASA,EAAaC,GAA2B;AACtD,QAAMC,IAAMC,EAA2B,IAAI,GACrCC,IAAuBD,EAAOF,EAAQ,iBAAiB;AAC7D,EAAAG,EAAqB,UAAUH,EAAQ;AACvC,QAAMI,IAAkBF,EAAOF,EAAQ,YAAY;AACnD,EAAAI,EAAgB,UAAUJ,EAAQ;AAClC,QAAMK,IAAqBH,EAAOF,EAAQ,eAAe;AACzD,SAAAK,EAAmB,UAAUL,EAAQ,iBAErCM,EAAU,MAAM;AACd,UAAMC,IAAUN,EAAI;AACpB,QAAIO,IAAS,GACTC,IAAS;AAEb,aAASC,EAAKC,GAAmB;AAC/B,YAAMC,IAASD,EAAM,UAAUH,GACzBK,IAASF,EAAM,UAAUF;AAE/B,MAAAL,EAAgB,QAAQQ,GAAQC,GAAQL,GAAQC,CAAM;AAAA,IACxD;AAEA,aAASK,EAAQH,GAAmB;AAClC,YAAMC,IAASD,EAAM,YAAY,SAAYA,EAAM,UAAUH,IAAS,GAChEK,IAASF,EAAM,YAAY,SAAYA,EAAM,UAAUF,IAAS;AACtE,MAAAJ,EAAmB,QAAQO,GAAQC,GAAQL,GAAQC,CAAM,GACzD,SAAS,KAAK,oBAAoB,aAAaC,CAAI,GACnD,SAAS,KAAK,oBAAoB,WAAWI,CAAO,GACpD,SAAS,KAAK,oBAAoB,cAAcA,CAAO;AAAA,IACzD;AAEA,aAASC,EAAUJ,GAAmB;AACpC,MAAAH,IAASG,EAAM,SACfF,IAASE,EAAM,SAEfR,EAAqB,QAAQK,GAAQC,CAAM,GAE3C,SAAS,KAAK,iBAAiB,aAAaC,CAAI,GAChD,SAAS,KAAK,iBAAiB,WAAWI,CAAO,GACjD,SAAS,KAAK,iBAAiB,cAAcA,CAAO;AAAA,IACtD;AAEA,WACEP,GAAQ,iBAAiB,aAAaQ,CAAS,GAG1C,MAAM;AACX,MAAAR,GAAS,oBAAoB,aAAaQ,CAAS,GACnD,SAAS,KAAK,oBAAoB,aAAaL,CAAI,GACnD,SAAS,KAAK,oBAAoB,WAAWI,CAAO,GACpD,SAAS,KAAK,oBAAoB,cAAcA,CAAO;AAAA,IACzD;AAAA,EACF,GAAG,CAAA,CAAE,GAEEb;AACT;"}
@@ -1,5 +0,0 @@
1
- .card {
2
- box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.25);
3
- padding: 16px;
4
- gap: 8px;
5
- }