@loword/loword-design-system 0.4.1 → 0.4.2
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.
- package/dist/components/LDModal/LDModal.d.ts +2 -0
- package/dist/components/LDModal/LDModal.d.ts.map +1 -1
- package/dist/components/LDModal/LDModal.js +1 -1
- package/dist/components/LDModal/LDModalView.d.ts +3 -1
- package/dist/components/LDModal/LDModalView.d.ts.map +1 -1
- package/dist/components/LDModal/LDModalView.js +4 -3
- package/dist/constants/file.d.ts +2 -1
- package/dist/constants/file.d.ts.map +1 -1
- package/dist/constants/file.js +1 -0
- package/dist/index.css +7 -0
- package/dist/utils/file.d.ts.map +1 -1
- package/dist/utils/file.js +4 -1
- package/package.json +4 -3
- package/src/styles/components.css +24 -0
|
@@ -22,6 +22,8 @@ export interface LDModalOptions<T = undefined> {
|
|
|
22
22
|
icon?: 'success' | 'fail';
|
|
23
23
|
/** 스크롤 동작 (LDModalView와 동일) */
|
|
24
24
|
scrollBehavior?: 'inside' | 'outside';
|
|
25
|
+
/** 오버레이(모달 바깥) 클릭으로 닫기 허용 여부 */
|
|
26
|
+
closeOnOverlayClick?: boolean;
|
|
25
27
|
/** 모달 패널에 적용할 추가 CSS 클래스 */
|
|
26
28
|
className?: string;
|
|
27
29
|
/** 모달 패널 인라인 스타일 (자유 width/height 등) */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LDModal.d.ts","sourceRoot":"","sources":["../../../src/components/LDModal/LDModal.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,SAAS,EAAoB,MAAM,OAAO,CAAC;AAG7E,OAAoB,EAElB,KAAK,SAAS,EACd,gBAAgB,EACjB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,WAAW,cAAc,CAAC,CAAC,GAAG,SAAS;IAC3C,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,OAAO,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,IAAI,CAAA;KAAE,KAAK,SAAS,CAAC,CAAC;IAC9E,OAAO,CAAC,EAAE;QACR,KAAK,EAAE,CAAC,CAAC;QACT,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC,CAAC;QACzD,KAAK,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC;QACvC,OAAO,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,GAAG,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,CAAC;KAC1D,EAAE,CAAC;IACJ,eAAe;IACf,gBAAgB,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;IACpC,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1B,+BAA+B;IAC/B,cAAc,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IACtC,4BAA4B;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wCAAwC;IACxC,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;IACjD,UAAU,CAAC,EAAE,gBAAgB,CAAC;CAC/B;AAED,QAAA,MAAM,OAAO,GAAI,CAAC,GAAG,SAAS,EAC5B,SAAS,cAAc,CAAC,CAAC,CAAC,KACzB,OAAO,CAAC,CAAC,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"LDModal.d.ts","sourceRoot":"","sources":["../../../src/components/LDModal/LDModal.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,SAAS,EAAoB,MAAM,OAAO,CAAC;AAG7E,OAAoB,EAElB,KAAK,SAAS,EACd,gBAAgB,EACjB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,WAAW,cAAc,CAAC,CAAC,GAAG,SAAS;IAC3C,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,OAAO,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,IAAI,CAAA;KAAE,KAAK,SAAS,CAAC,CAAC;IAC9E,OAAO,CAAC,EAAE;QACR,KAAK,EAAE,CAAC,CAAC;QACT,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC,CAAC;QACzD,KAAK,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC;QACvC,OAAO,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,GAAG,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,CAAC;KAC1D,EAAE,CAAC;IACJ,eAAe;IACf,gBAAgB,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;IACpC,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1B,+BAA+B;IAC/B,cAAc,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IACtC,gCAAgC;IAChC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,4BAA4B;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wCAAwC;IACxC,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;IACjD,UAAU,CAAC,EAAE,gBAAgB,CAAC;CAC/B;AAED,QAAA,MAAM,OAAO,GAAI,CAAC,GAAG,SAAS,EAC5B,SAAS,cAAc,CAAC,CAAC,CAAC,KACzB,OAAO,CAAC,CAAC,GAAG,SAAS,CA4EvB,CAAC;AAEF,eAAe,OAAO,CAAC"}
|
|
@@ -50,7 +50,7 @@ const LDModal = (options) => {
|
|
|
50
50
|
return (_jsx(LDModalView, { open: open, onOpenChange: (next) => {
|
|
51
51
|
if (!next)
|
|
52
52
|
close(undefined);
|
|
53
|
-
}, name: options.name, title: options.title, description: options.description, size: options.size, icon: options.icon, scrollBehavior: options.scrollBehavior, style: options.style, buttons: list ? { direction: options.buttonsDirection, list } : undefined, classNames: options.classNames, children: content }));
|
|
53
|
+
}, name: options.name, title: options.title, description: options.description, size: options.size, icon: options.icon, scrollBehavior: options.scrollBehavior, closeOnOverlayClick: options.closeOnOverlayClick, style: options.style, buttons: list ? { direction: options.buttonsDirection, list } : undefined, classNames: options.classNames, children: content }));
|
|
54
54
|
};
|
|
55
55
|
root.render(_jsx(ModalHost, {}));
|
|
56
56
|
});
|
|
@@ -50,12 +50,14 @@ export interface LDModalViewProps {
|
|
|
50
50
|
buttons?: ModalButtons;
|
|
51
51
|
/** 스크롤 동작 */
|
|
52
52
|
scrollBehavior?: 'inside' | 'outside';
|
|
53
|
+
/** 오버레이(모달 바깥) 클릭으로 닫기 허용 여부 */
|
|
54
|
+
closeOnOverlayClick?: boolean;
|
|
53
55
|
/** 인라인 스타일 (모달 패널에 적용) */
|
|
54
56
|
style?: React.CSSProperties;
|
|
55
57
|
/** 버튼 클릭 시 해당 버튼의 value를 전달하는 콜백 */
|
|
56
58
|
onButtonClick?: (value: unknown) => void;
|
|
57
59
|
classNames?: TModalClassNames;
|
|
58
60
|
}
|
|
59
|
-
declare const LDModalView: ({ open, defaultOpen, onOpenChange, name, title, description, children, size, icon, buttons, scrollBehavior, classNames, style, onButtonClick, }: LDModalViewProps) => import("react/jsx-runtime").JSX.Element;
|
|
61
|
+
declare const LDModalView: ({ open, defaultOpen, onOpenChange, name, title, description, children, size, icon, buttons, scrollBehavior, closeOnOverlayClick, classNames, style, onButtonClick, }: LDModalViewProps) => import("react/jsx-runtime").JSX.Element;
|
|
60
62
|
export default LDModalView;
|
|
61
63
|
//# sourceMappingURL=LDModalView.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LDModalView.d.ts","sourceRoot":"","sources":["../../../src/components/LDModal/LDModalView.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,SAAS,EAAU,MAAM,OAAO,CAAC;AAK/C,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAI7C,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC,CAAC;AAE9E,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,WAAW,YAAY;IAC3B,SAAS,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;IAC7B,IAAI,CAAC,EAAE,WAAW,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,OAAO;IACtC,aAAa;IACb,KAAK,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,KAAK,EAAE,CAAC,CAAC;IACT,gBAAgB;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC,CAAC;IACzD,eAAe;IACf,KAAK,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC;IACvC,mCAAmC;IACnC,OAAO,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,GAAG,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,CAAC;CAC1D;AAED,MAAM,WAAW,gBAAgB;IAC/B,yBAAyB;IACzB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,0BAA0B;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,yBAAyB;IACzB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,2BAA2B;IAC3B,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,YAAY;IACZ,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,gBAAgB;IAChB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,aAAa;IACb,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,gBAAgB;IAChB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,2BAA2B;IAC3B,IAAI,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1B,eAAe;IACf,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,aAAa;IACb,cAAc,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IACtC,0BAA0B;IAC1B,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,oCAAoC;IACpC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC,UAAU,CAAC,EAAE,gBAAgB,CAAC;CAC/B;AA6CD,QAAA,MAAM,WAAW,GAAI,
|
|
1
|
+
{"version":3,"file":"LDModalView.d.ts","sourceRoot":"","sources":["../../../src/components/LDModal/LDModalView.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,SAAS,EAAU,MAAM,OAAO,CAAC;AAK/C,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAI7C,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC,CAAC;AAE9E,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,WAAW,YAAY;IAC3B,SAAS,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;IAC7B,IAAI,CAAC,EAAE,WAAW,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,OAAO;IACtC,aAAa;IACb,KAAK,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,KAAK,EAAE,CAAC,CAAC;IACT,gBAAgB;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC,CAAC;IACzD,eAAe;IACf,KAAK,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC;IACvC,mCAAmC;IACnC,OAAO,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,GAAG,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,CAAC;CAC1D;AAED,MAAM,WAAW,gBAAgB;IAC/B,yBAAyB;IACzB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,0BAA0B;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,yBAAyB;IACzB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,2BAA2B;IAC3B,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,YAAY;IACZ,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,gBAAgB;IAChB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,aAAa;IACb,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,gBAAgB;IAChB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,2BAA2B;IAC3B,IAAI,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1B,eAAe;IACf,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,aAAa;IACb,cAAc,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IACtC,gCAAgC;IAChC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,0BAA0B;IAC1B,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,oCAAoC;IACpC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC,UAAU,CAAC,EAAE,gBAAgB,CAAC;CAC/B;AA6CD,QAAA,MAAM,WAAW,GAAI,sKAgBlB,gBAAgB,4CAsLlB,CAAC;AAEF,eAAe,WAAW,CAAC"}
|
|
@@ -42,7 +42,7 @@ const statusIconSizeClasses = {
|
|
|
42
42
|
large: 'size-12.5',
|
|
43
43
|
xlarge: 'size-12.5',
|
|
44
44
|
};
|
|
45
|
-
const LDModalView = ({ open, defaultOpen, onOpenChange, name, title, description, children, size = 'small', icon, buttons, scrollBehavior = 'inside', classNames, style, onButtonClick, }) => {
|
|
45
|
+
const LDModalView = ({ open, defaultOpen, onOpenChange, name, title, description, children, size = 'small', icon, buttons, scrollBehavior = 'inside', closeOnOverlayClick = true, classNames, style, onButtonClick, }) => {
|
|
46
46
|
const overlayRef = useRef(false);
|
|
47
47
|
const hasHeader = name || title || description || icon;
|
|
48
48
|
const handleClick = async (button) => {
|
|
@@ -57,8 +57,9 @@ const LDModalView = ({ open, defaultOpen, onOpenChange, name, title, description
|
|
|
57
57
|
return (_jsxs(ModalBase.Root, { open: open, defaultOpen: defaultOpen, onOpenChange: onOpenChange, children: [_jsx(ModalBase.Overlay, { className: classNames?.overlay }), _jsx(ModalBase.Content, { className: cn({
|
|
58
58
|
['top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2']: scrollBehavior === 'inside',
|
|
59
59
|
['inset-0 flex items-start justify-center overflow-y-auto py-20']: scrollBehavior === 'outside',
|
|
60
|
-
}, classNames?.content), onMouseDown: (e) => (overlayRef.current = e.target === e.currentTarget), onClick: (e) => {
|
|
61
|
-
if (
|
|
60
|
+
}, classNames?.content), onPointerDownOutside: closeOnOverlayClick ? undefined : (e) => e.preventDefault(), onMouseDown: (e) => (overlayRef.current = e.target === e.currentTarget), onClick: (e) => {
|
|
61
|
+
if (closeOnOverlayClick &&
|
|
62
|
+
scrollBehavior === 'outside' &&
|
|
62
63
|
e.target === e.currentTarget &&
|
|
63
64
|
overlayRef.current)
|
|
64
65
|
onOpenChange?.(false);
|
package/dist/constants/file.d.ts
CHANGED
|
@@ -21,6 +21,7 @@ export declare const FILE_EXTENSIONS: {
|
|
|
21
21
|
readonly 'image/tiff': "tiff";
|
|
22
22
|
readonly 'image/webp': "webp";
|
|
23
23
|
readonly 'image/x-icon': "ico";
|
|
24
|
+
readonly 'image/vnd.microsoft.icon': "ico";
|
|
24
25
|
readonly 'image/heic': "heic";
|
|
25
26
|
readonly 'image/heif': "heif";
|
|
26
27
|
readonly 'application/pdf': "pdf";
|
|
@@ -37,7 +38,7 @@ export declare const FILE_EXTENSIONS: {
|
|
|
37
38
|
export type TMimeType = keyof typeof FILE_EXTENSIONS;
|
|
38
39
|
export type TFileExtension = (typeof FILE_EXTENSIONS)[TMimeType];
|
|
39
40
|
export declare const SUPPORTED_FILE_MIME_TYPES: TMimeType[];
|
|
40
|
-
export declare const SUPPORTED_IMAGE_MIME_TYPES: ("image/avif" | "image/apng" | "image/bmp" | "image/gif" | "image/jpg" | "image/jpeg" | "image/pjpeg" | "image/png" | "image/svg+xml" | "image/tiff" | "image/webp" | "image/x-icon" | "image/heic" | "image/heif" | "application/pdf" | "text/plain" | "text/csv" | "application/msword" | "application/vnd.openxmlformats-officedocument.wordprocessingml.document" | "application/vnd.ms-excel" | "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" | "application/json" | "application/zip" | "application/x-zip-compressed")[];
|
|
41
|
+
export declare const SUPPORTED_IMAGE_MIME_TYPES: ("image/avif" | "image/apng" | "image/bmp" | "image/gif" | "image/jpg" | "image/jpeg" | "image/pjpeg" | "image/png" | "image/svg+xml" | "image/tiff" | "image/webp" | "image/x-icon" | "image/vnd.microsoft.icon" | "image/heic" | "image/heif" | "application/pdf" | "text/plain" | "text/csv" | "application/msword" | "application/vnd.openxmlformats-officedocument.wordprocessingml.document" | "application/vnd.ms-excel" | "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" | "application/json" | "application/zip" | "application/x-zip-compressed")[];
|
|
41
42
|
/** 에디터 툴바 이미지 업로드 허용 형식 */
|
|
42
43
|
export declare const TOOLBAR_ALLOWED_EXTENSIONS: TMimeType[];
|
|
43
44
|
/** 에디터 툴바 이미지 업로드 최대 용량 (5MB) */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../src/constants/file.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc;;;;CAIjB,CAAC;AAEX,eAAO,MAAM,cAAc;;;CAGjB,CAAC;AAEX,uBAAuB;AACvB,eAAO,MAAM,eAAe
|
|
1
|
+
{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../src/constants/file.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc;;;;CAIjB,CAAC;AAEX,eAAO,MAAM,cAAc;;;CAGjB,CAAC;AAEX,uBAAuB;AACvB,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;CA2BlB,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,eAAe,CAAC;AACrD,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,SAAS,CAAC,CAAC;AAEjE,eAAO,MAAM,yBAAyB,EAEjC,SAAS,EAAE,CAAC;AAEjB,eAAO,MAAM,0BAA0B,ojBAEtC,CAAC;AAEF,2BAA2B;AAC3B,eAAO,MAAM,0BAA0B,EAAE,SAAS,EAQjD,CAAC;AAEF,iCAAiC;AACjC,eAAO,MAAM,gBAAgB,QAAwB,CAAC"}
|
package/dist/constants/file.js
CHANGED
package/dist/index.css
CHANGED
|
@@ -4845,6 +4845,13 @@
|
|
|
4845
4845
|
letter-spacing: var(--tracking-display14);
|
|
4846
4846
|
}
|
|
4847
4847
|
}
|
|
4848
|
+
.tablet-down\:display16 {
|
|
4849
|
+
@media (max-width: calc(992px - 1px)) {
|
|
4850
|
+
font-size: var(--text-display16);
|
|
4851
|
+
line-height: var(--leading-display16);
|
|
4852
|
+
letter-spacing: var(--tracking-display16);
|
|
4853
|
+
}
|
|
4854
|
+
}
|
|
4848
4855
|
.\[\&_svg\]\:icon-2xs {
|
|
4849
4856
|
& svg {
|
|
4850
4857
|
width: var(--control-icon-2xs);
|
package/dist/utils/file.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../src/utils/file.ts"],"names":[],"mappings":"AASA,OAAO,EAAiB,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAEzD,OAAO,EAIL,KAAK,cAAc,EACnB,KAAK,SAAS,EACf,MAAM,kBAAkB,CAAC;AAE1B,MAAM,WAAW,KAAK;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,0CAA0C;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,OAAO,GAAI,KAAK,MAAM,YACW,CAAC;AAE/C,eAAO,MAAM,YAAY,GAAI,KAAK,MAAM,YACU,CAAC;AAgCnD,eAAO,MAAM,WAAW,GAAI,UAAU,MAAM,KAAG,YAM9C,CAAC;AAEF,eAAO,MAAM,4BAA4B,GACvC,UAAU,SAAS,KAClB,cAAc,GAAG,MAEnB,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,MAAM,IAAI,KAAG,OAAO,CAAC,OAAO,CAoB1D,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,MAAM,IAAI,EAAE,SAAS,MAAM,YAExD,CAAC;AAEF,eAAO,MAAM,sBAAsB,GACjC,MAAM,IAAI,EACV,mBAAmB,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../src/utils/file.ts"],"names":[],"mappings":"AASA,OAAO,EAAiB,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAEzD,OAAO,EAIL,KAAK,cAAc,EACnB,KAAK,SAAS,EACf,MAAM,kBAAkB,CAAC;AAE1B,MAAM,WAAW,KAAK;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,0CAA0C;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,OAAO,GAAI,KAAK,MAAM,YACW,CAAC;AAE/C,eAAO,MAAM,YAAY,GAAI,KAAK,MAAM,YACU,CAAC;AAgCnD,eAAO,MAAM,WAAW,GAAI,UAAU,MAAM,KAAG,YAM9C,CAAC;AAEF,eAAO,MAAM,4BAA4B,GACvC,UAAU,SAAS,KAClB,cAAc,GAAG,MAEnB,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,MAAM,IAAI,KAAG,OAAO,CAAC,OAAO,CAoB1D,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,MAAM,IAAI,EAAE,SAAS,MAAM,YAExD,CAAC;AAEF,eAAO,MAAM,sBAAsB,GACjC,MAAM,IAAI,EACV,mBAAmB,SAAS,EAAE,YAS/B,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,QAAQ,MAAM,oBAS7C,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,MAAM,IAAI,KAAG,OAAO,CAAC,MAAM,CAM5D,CAAC;AAEF,eAAO,MAAM,YAAY,GAAU,MAAM,IAAI,KAAG,OAAO,CAAC,KAAK,CAa5D,CAAC"}
|
package/dist/utils/file.js
CHANGED
|
@@ -63,7 +63,10 @@ export const validFileSize = (file, maxSize) => {
|
|
|
63
63
|
return file.size <= maxSize;
|
|
64
64
|
};
|
|
65
65
|
export const validAllowedExtensions = (file, allowedExtensions) => {
|
|
66
|
-
|
|
66
|
+
const mimeType = file.type;
|
|
67
|
+
return allowedExtensions.some((allowed) => allowed === mimeType ||
|
|
68
|
+
(FILE_EXTENSIONS[mimeType] === 'ico' &&
|
|
69
|
+
FILE_EXTENSIONS[allowed] === 'ico'));
|
|
67
70
|
};
|
|
68
71
|
export const getFileSizeUnit = (number) => {
|
|
69
72
|
if (number < FILE_SIZE_UNIT.kb)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@loword/loword-design-system",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.2",
|
|
4
4
|
"description": "로워드 디자인 시스템 컴포넌트 패키지(Tailwind v4)",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"react",
|
|
@@ -38,6 +38,7 @@
|
|
|
38
38
|
},
|
|
39
39
|
"./theme.css": "./src/theme.css",
|
|
40
40
|
"./styles.css": "./dist/index.css",
|
|
41
|
+
"./components.css": "./src/styles/components.css",
|
|
41
42
|
"./*": {
|
|
42
43
|
"types": "./dist/*.d.ts",
|
|
43
44
|
"default": "./dist/*.js"
|
|
@@ -75,7 +76,7 @@
|
|
|
75
76
|
"embla-carousel-auto-scroll": "^8.6.0",
|
|
76
77
|
"embla-carousel-autoplay": "^8.6.0",
|
|
77
78
|
"embla-carousel-react": "^8.6.0",
|
|
78
|
-
"next": "^15",
|
|
79
|
+
"next": "^15 || ^16",
|
|
79
80
|
"react": "^19",
|
|
80
81
|
"react-chartjs-2": "^5.2.0",
|
|
81
82
|
"react-daum-postcode": "^4.0.0",
|
|
@@ -199,7 +200,6 @@
|
|
|
199
200
|
"@storybook/addon-vitest": "10.5.7",
|
|
200
201
|
"@storybook/nextjs-vite": "10.5.7",
|
|
201
202
|
"@tailwindcss/cli": "^4.1.5",
|
|
202
|
-
"@tailwindcss/typography": "^0.5.20",
|
|
203
203
|
"@tailwindcss/vite": "^4.2.2",
|
|
204
204
|
"@tanstack/react-table": "^8.21.3",
|
|
205
205
|
"@tiptap/core": "^3.26.0",
|
|
@@ -261,6 +261,7 @@
|
|
|
261
261
|
"@dnd-kit/modifiers": "^9.0.0",
|
|
262
262
|
"@dnd-kit/sortable": "^10.0.0",
|
|
263
263
|
"@dnd-kit/utilities": "^3.2.2",
|
|
264
|
+
"@tailwindcss/typography": "^0.5.20",
|
|
264
265
|
"clsx": "^2.1.1",
|
|
265
266
|
"lucide-react": "^0.536.0",
|
|
266
267
|
"react-hook-form": "^7.62.0",
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* components.css — 소비처의 Tailwind 컴파일러가 직접 처리하는 raw 컴포넌트 스타일 진입점.
|
|
3
|
+
*
|
|
4
|
+
* `theme.css`(토큰·유틸 정의)의 짝이다. 둘을 함께 import 하면 컴파일된
|
|
5
|
+
* dist/index.css(styles.css) 없이도 LDS 를 전부 쓸 수 있다.
|
|
6
|
+
*
|
|
7
|
+
* @import 'tailwindcss';
|
|
8
|
+
* @import '@loword/loword-design-system/theme.css';
|
|
9
|
+
* @import '@loword/loword-design-system/components.css';
|
|
10
|
+
* @source '<...>/node_modules/@loword/loword-design-system/dist';
|
|
11
|
+
*
|
|
12
|
+
* styles.css 와 함께 쓰지 않는다 — 같은 유틸이 정적 사본으로 중복 출력되고, 그 사본이
|
|
13
|
+
* 소비처가 생성한 변형 유틸(`tablet-down:display16` 등)보다 뒤에 놓여 오버라이드를 막는다.
|
|
14
|
+
*
|
|
15
|
+
* 주의:
|
|
16
|
+
* - `@import 'tailwindcss'`를 넣지 않는다. 소비처가 이미 import 하므로 중복되면 충돌난다.
|
|
17
|
+
* - 토큰·유틸 정의는 포함하지 않는다 — theme.css 가 담당한다.
|
|
18
|
+
* - `@source` 로 dist 를 스캔해야 컴포넌트가 쓰는 클래스가 tree-shaking 되지 않는다.
|
|
19
|
+
*/
|
|
20
|
+
@import './components/index.css';
|
|
21
|
+
@import './slider.css';
|
|
22
|
+
@import './carousel.css';
|
|
23
|
+
|
|
24
|
+
@plugin '@tailwindcss/typography';
|