@yeongseoksong/framework 1.1.0 → 1.3.1

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.
@@ -23,8 +23,10 @@ __export(util_exports, {
23
23
  COMPANY_NAME: () => COMPANY_NAME,
24
24
  LOGO_ALT: () => LOGO_ALT,
25
25
  LOGO_SRC: () => LOGO_SRC,
26
+ filterAndSort: () => filterAndSort,
26
27
  setCompanyName: () => setCompanyName,
27
- t: () => t
28
+ t: () => t,
29
+ toCssColor: () => toCssColor
28
30
  });
29
31
  module.exports = __toCommonJS(util_exports);
30
32
 
@@ -50,11 +52,24 @@ function setCompanyName(_name) {
50
52
  function t(text) {
51
53
  return text.replaceAll(COMPANY_TOKEN, COMPANY_NAME);
52
54
  }
55
+
56
+ // util/style.util.ts
57
+ function toCssColor(value) {
58
+ if (typeof value !== "string") return "";
59
+ return value.includes(".") ? `var(--mantine-color-${value.replace(".", "-")})` : value;
60
+ }
61
+
62
+ // util/sort.util.ts
63
+ function filterAndSort(items) {
64
+ return (items != null ? items : []).filter((item) => item.isShow).sort((a, b) => a.order - b.order);
65
+ }
53
66
  // Annotate the CommonJS export names for ESM import in node:
54
67
  0 && (module.exports = {
55
68
  COMPANY_NAME,
56
69
  LOGO_ALT,
57
70
  LOGO_SRC,
71
+ filterAndSort,
58
72
  setCompanyName,
59
- t
73
+ t,
74
+ toCssColor
60
75
  });
@@ -1,3 +1,6 @@
1
+ import { CommonInfo } from '../types/index.mjs';
2
+ import 'react';
3
+
1
4
  /**
2
5
  * 소비자 앱이 주입하는 상수들.
3
6
  *
@@ -25,4 +28,12 @@ declare function setCompanyName(_name: string): void;
25
28
  /** 문자열 안의 `%c`를 회사명으로 치환한다. 서버/클라이언트 양쪽에서 안전하다. */
26
29
  declare function t(text: string): string;
27
30
 
28
- export { COMPANY_NAME, LOGO_ALT, LOGO_SRC, setCompanyName, t };
31
+ declare function toCssColor(value: unknown): string;
32
+
33
+ /**
34
+ * isShow 필터 + order 오름차순 정렬
35
+ * CommonInfo를 extends 하는 모든 타입에 사용 가능
36
+ */
37
+ declare function filterAndSort<T extends CommonInfo>(items: T[] | undefined): T[];
38
+
39
+ export { COMPANY_NAME, LOGO_ALT, LOGO_SRC, filterAndSort, setCompanyName, t, toCssColor };
@@ -1,3 +1,6 @@
1
+ import { CommonInfo } from '../types/index.js';
2
+ import 'react';
3
+
1
4
  /**
2
5
  * 소비자 앱이 주입하는 상수들.
3
6
  *
@@ -25,4 +28,12 @@ declare function setCompanyName(_name: string): void;
25
28
  /** 문자열 안의 `%c`를 회사명으로 치환한다. 서버/클라이언트 양쪽에서 안전하다. */
26
29
  declare function t(text: string): string;
27
30
 
28
- export { COMPANY_NAME, LOGO_ALT, LOGO_SRC, setCompanyName, t };
31
+ declare function toCssColor(value: unknown): string;
32
+
33
+ /**
34
+ * isShow 필터 + order 오름차순 정렬
35
+ * CommonInfo를 extends 하는 모든 타입에 사용 가능
36
+ */
37
+ declare function filterAndSort<T extends CommonInfo>(items: T[] | undefined): T[];
38
+
39
+ export { COMPANY_NAME, LOGO_ALT, LOGO_SRC, filterAndSort, setCompanyName, t, toCssColor };
@@ -20,10 +20,23 @@ function setCompanyName(_name) {
20
20
  function t(text) {
21
21
  return text.replaceAll(COMPANY_TOKEN, COMPANY_NAME);
22
22
  }
23
+
24
+ // util/style.util.ts
25
+ function toCssColor(value) {
26
+ if (typeof value !== "string") return "";
27
+ return value.includes(".") ? `var(--mantine-color-${value.replace(".", "-")})` : value;
28
+ }
29
+
30
+ // util/sort.util.ts
31
+ function filterAndSort(items) {
32
+ return (items != null ? items : []).filter((item) => item.isShow).sort((a, b) => a.order - b.order);
33
+ }
23
34
  export {
24
35
  COMPANY_NAME,
25
36
  LOGO_ALT,
26
37
  LOGO_SRC,
38
+ filterAndSort,
27
39
  setCompanyName,
28
- t
40
+ t,
41
+ toCssColor
29
42
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yeongseoksong/framework",
3
- "version": "1.1.0",
3
+ "version": "1.3.1",
4
4
  "files": [
5
5
  "dist"
6
6
  ],
@@ -50,7 +50,7 @@
50
50
  "@tabler/icons-react": "^3.44.0"
51
51
  },
52
52
  "devDependencies": {
53
- "@types/react": ">=19",
53
+ "@types/react": "19.2.14",
54
54
  "tsup": "latest"
55
55
  },
56
56
  "scripts": {