mui-fast-start 0.3.1 → 0.3.3

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 (64) hide show
  1. package/README.md +403 -403
  2. package/README_KR.md +403 -403
  3. package/dist/components/Object/Select/ObjSelectRecord.d.ts +2 -1
  4. package/dist/components/Object/Select/ObjSelectRecord.d.ts.map +1 -1
  5. package/dist/components/Single/Select/SingleSelectRecord.d.ts +2 -1
  6. package/dist/components/Single/Select/SingleSelectRecord.d.ts.map +1 -1
  7. package/dist/index.js +1 -1
  8. package/dist/styles/FastStartProps.d.ts +2 -1
  9. package/dist/styles/FastStartProps.d.ts.map +1 -1
  10. package/dist/types/props.d.ts +1 -1
  11. package/dist/types/props.d.ts.map +1 -1
  12. package/dist/types/props.internal.d.ts +1 -1
  13. package/dist/types/props.internal.d.ts.map +1 -1
  14. package/dist/types/provider.d.ts +2 -1
  15. package/dist/types/provider.d.ts.map +1 -1
  16. package/examples/basic/README.md +73 -73
  17. package/examples/basic/eslint.config.js +23 -23
  18. package/examples/basic/index.html +13 -13
  19. package/examples/basic/package.json +37 -37
  20. package/examples/basic/src/App.css +4 -4
  21. package/examples/basic/src/App.tsx +28 -28
  22. package/examples/basic/src/index.css +29 -29
  23. package/examples/basic/src/main.tsx +50 -50
  24. package/examples/basic/src/pages/ObjPage.tsx +175 -175
  25. package/examples/basic/src/pages/SinglePage.tsx +137 -137
  26. package/examples/basic/tsconfig.app.json +43 -43
  27. package/examples/basic/tsconfig.json +7 -7
  28. package/examples/basic/tsconfig.node.json +40 -40
  29. package/examples/basic/vite.config.ts +28 -28
  30. package/mui-fast-start-0.1.4.tgz +0 -0
  31. package/package.json +67 -67
  32. package/src/components/Object/Checkbox/ObjCheckIcon.tsx +29 -29
  33. package/src/components/Object/Checkbox/ObjCheckbox.tsx +31 -31
  34. package/src/components/Object/Select/ObjSelectOne.tsx +33 -33
  35. package/src/components/Object/Select/ObjSelectRecord.tsx +33 -33
  36. package/src/components/Object/Textfield/ObjNumber.tsx +51 -51
  37. package/src/components/Object/Textfield/ObjText.tsx +29 -29
  38. package/src/components/Single/Checkbox/SingleCheckIcon.tsx +27 -27
  39. package/src/components/Single/Checkbox/SingleCheckbox.tsx +33 -33
  40. package/src/components/Single/Select/BaseSingleSelect.tsx +45 -45
  41. package/src/components/Single/Select/SingleSelectOne.tsx +56 -56
  42. package/src/components/Single/Select/SingleSelectRecord.tsx +51 -51
  43. package/src/components/Single/TextField/SingleNumber.tsx +18 -18
  44. package/src/components/Single/TextField/SingleText.tsx +13 -13
  45. package/src/components/index.ts +15 -15
  46. package/src/hooks/index.ts +3 -3
  47. package/src/hooks/splits/useSplitNumberProps.ts +161 -161
  48. package/src/hooks/splits/useSplitTextProps.ts +36 -36
  49. package/src/hooks/state/useObjToSingle.ts +24 -24
  50. package/src/index.ts +7 -7
  51. package/src/styles/FastStartProps.ts +82 -81
  52. package/src/styles/FastStartProvider.tsx +25 -25
  53. package/src/types/index.ts +3 -3
  54. package/src/types/props.internal.ts +21 -21
  55. package/src/types/props.ts +81 -81
  56. package/src/types/provider.ts +72 -71
  57. package/src/types/types.ts +9 -9
  58. package/src/utils/index.ts +2 -2
  59. package/src/utils/number/calculate.ts +102 -102
  60. package/src/utils/object/error.ts +15 -15
  61. package/src/utils/object/merge.ts +47 -47
  62. package/tsconfig.json +34 -34
  63. package/tsconfig.lib.json +9 -9
  64. package/vite.config.ts +35 -35
@@ -1,4 +1,5 @@
1
+ import React from "react";
1
2
  import { MfsObjectSelectRecordProps } from "../../../types";
2
3
  import { SelectProps } from "@mui/material";
3
- export declare const ObjSelectRecord: <T extends object, Item extends Record<PropertyKey, unknown>>(customProps: Omit<SelectProps, "name"> & MfsObjectSelectRecordProps<T, Item>) => import("react/jsx-runtime").JSX.Element;
4
+ export declare const ObjSelectRecord: <T extends object, Item extends Record<PropertyKey, React.ReactNode>>(customProps: Omit<SelectProps, "name"> & MfsObjectSelectRecordProps<T, Item>) => import("react/jsx-runtime").JSX.Element;
4
5
  //# sourceMappingURL=ObjSelectRecord.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ObjSelectRecord.d.ts","sourceRoot":"","sources":["../../../../src/components/Object/Select/ObjSelectRecord.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAC,0BAA0B,EAAC,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAI1C,eAAO,MAAM,eAAe,GACxB,CAAC,SAAS,MAAM,EAChB,IAAI,SAAS,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,EAC3C,aAAa,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,GAAG,0BAA0B,CAAC,CAAC,EAAE,IAAI,CAAC,4CAqB7E,CAAA"}
1
+ {"version":3,"file":"ObjSelectRecord.d.ts","sourceRoot":"","sources":["../../../../src/components/Object/Select/ObjSelectRecord.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAIxC,OAAO,EAAC,0BAA0B,EAAC,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAI1C,eAAO,MAAM,eAAe,GACxB,CAAC,SAAS,MAAM,EAChB,IAAI,SAAS,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,EACnD,aAAa,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,GAAG,0BAA0B,CAAC,CAAC,EAAE,IAAI,CAAC,4CAqB7E,CAAA"}
@@ -1,4 +1,5 @@
1
1
  import { SelectProps } from "@mui/material";
2
2
  import { MfsSingleSelectRecordProps } from "../../../types";
3
- export declare const SingleSelectRecord: <T extends Record<string, unknown>, Value = keyof T | undefined | null>(customProps: SelectProps & MfsSingleSelectRecordProps<T, Value>) => import("react/jsx-runtime").JSX.Element;
3
+ import React from "react";
4
+ export declare const SingleSelectRecord: <T extends Record<string, React.ReactNode>, Value = keyof T | undefined | null>(customProps: SelectProps & MfsSingleSelectRecordProps<T, Value>) => import("react/jsx-runtime").JSX.Element;
4
5
  //# sourceMappingURL=SingleSelectRecord.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SingleSelectRecord.d.ts","sourceRoot":"","sources":["../../../../src/components/Single/Select/SingleSelectRecord.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAW,WAAW,EAAC,MAAM,eAAe,CAAC;AACpD,OAAO,EAAC,0BAA0B,EAAC,MAAM,gBAAgB,CAAC;AAM1D,eAAO,MAAM,kBAAkB,GAC3B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,KAAK,GAAG,MAAM,CAAC,GAAG,SAAS,GAAG,IAAI,EACpC,aAAa,WAAW,GAAG,0BAA0B,CAAC,CAAC,EAAE,KAAK,CAAC,4CAyChE,CAAA"}
1
+ {"version":3,"file":"SingleSelectRecord.d.ts","sourceRoot":"","sources":["../../../../src/components/Single/Select/SingleSelectRecord.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAW,WAAW,EAAC,MAAM,eAAe,CAAC;AACpD,OAAO,EAAC,0BAA0B,EAAC,MAAM,gBAAgB,CAAC;AAC1D,OAAO,KAA4B,MAAM,OAAO,CAAC;AAKjD,eAAO,MAAM,kBAAkB,GAC3B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,EACzC,KAAK,GAAG,MAAM,CAAC,GAAG,SAAS,GAAG,IAAI,EACpC,aAAa,WAAW,GAAG,0BAA0B,CAAC,CAAC,EAAE,KAAK,CAAC,4CAyChE,CAAA"}
package/dist/index.js CHANGED
@@ -270,7 +270,7 @@ const SingleSelectOne = (n) => {
270
270
  label: P,
271
271
  items: useMemo(() => I == null ? Object.entries(F).map(([n, O]) => /* @__PURE__ */ jsx(MenuItem, {
272
272
  value: n,
273
- children: O?.toString()
273
+ children: O
274
274
  }, n)) : Object.entries(F).map(([n, O], k) => I(n, O, k)), [F, I]),
275
275
  emptyItem: L,
276
276
  get: A,
@@ -1,5 +1,6 @@
1
1
  import { MfsObjectCheckboxProps, MfsObjectCheckIconProps, MfsObjectNumberProps, MfsObjectSelectOneProps, MfsObjectSelectRecordProps, MfsObjectTextProps, MfsSingleCheckboxProps, MfsSingleCheckIconProps, MfsSingleNumberProps, MfsSingleSelectOneProps, MfsSingleSelectRecordProps, MfsSingleTextProps } from "../types";
2
2
  import type { ThemeProviderProps } from "@mui/material";
3
+ import React from "react";
3
4
  interface FastStartProps {
4
5
  Single: Partial<{
5
6
  MfsFloat: Partial<MfsSingleNumberProps>;
@@ -17,7 +18,7 @@ interface FastStartProps {
17
18
  MfsCheckbox: Partial<MfsObjectCheckboxProps<object>>;
18
19
  MfsCheckIcon: Partial<MfsObjectCheckIconProps<object>>;
19
20
  MfsSelectOne: Partial<MfsObjectSelectOneProps<object, unknown>>;
20
- MfsSelectRecord: Partial<MfsObjectSelectRecordProps<object, Record<string, unknown>>>;
21
+ MfsSelectRecord: Partial<MfsObjectSelectRecordProps<object, Record<string, React.ReactNode>>>;
21
22
  }>;
22
23
  }
23
24
  declare const createMfsProps: (customProps: Partial<FastStartProps>) => Partial<FastStartProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"FastStartProps.d.ts","sourceRoot":"","sources":["../../src/styles/FastStartProps.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,sBAAsB,EACtB,uBAAuB,EACvB,oBAAoB,EAAE,uBAAuB,EAAE,0BAA0B,EACzE,kBAAkB,EAClB,sBAAsB,EACtB,uBAAuB,EACvB,oBAAoB,EACpB,uBAAuB,EAAE,0BAA0B,EACnD,kBAAkB,EACrB,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,eAAe,CAAC;AAGtD,UAAU,cAAc;IACpB,MAAM,EAAE,OAAO,CAAC;QACZ,QAAQ,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;QACxC,UAAU,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAC1C,OAAO,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;QACrC,WAAW,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;QAC7C,YAAY,EAAE,OAAO,CAAC,uBAAuB,CAAC,CAAC;QAC/C,YAAY,EAAE,OAAO,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC;QACxD,eAAe,EAAE,OAAO,CAAC,0BAA0B,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;KAChF,CAAC,CAAC;IACH,MAAM,EAAE,OAAO,CAAC;QACZ,QAAQ,EAAE,OAAO,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC;QAChD,UAAU,EAAE,OAAO,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC;QAClD,OAAO,EAAE,OAAO,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;QAC7C,WAAW,EAAE,OAAO,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC;QACrD,YAAY,EAAE,OAAO,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC;QACvD,YAAY,EAAE,OAAO,CAAC,uBAAuB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;QAChE,eAAe,EAAE,OAAO,CAAC,0BAA0B,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;KACxF,CAAC,CAAA;CACL;AAiCD,QAAA,MAAM,cAAc,GAAI,aAAa,OAAO,CAAC,cAAc,CAAC,4BAE3D,CAAA;AAED,UAAU,sBAAsB,CAAC,KAAK,CAAE,SAAQ,kBAAkB,CAAC,KAAK,CAAC;IACrE,YAAY,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;CACzC;AAED,OAAO,EACH,cAAc,EACjB,CAAA;AAED,YAAY,EACR,cAAc,EACd,sBAAsB,EACzB,CAAA"}
1
+ {"version":3,"file":"FastStartProps.d.ts","sourceRoot":"","sources":["../../src/styles/FastStartProps.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,sBAAsB,EACtB,uBAAuB,EACvB,oBAAoB,EAAE,uBAAuB,EAAE,0BAA0B,EACzE,kBAAkB,EAClB,sBAAsB,EACtB,uBAAuB,EACvB,oBAAoB,EACpB,uBAAuB,EAAE,0BAA0B,EACnD,kBAAkB,EACrB,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,eAAe,CAAC;AAEtD,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,UAAU,cAAc;IACpB,MAAM,EAAE,OAAO,CAAC;QACZ,QAAQ,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;QACxC,UAAU,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAC1C,OAAO,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;QACrC,WAAW,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;QAC7C,YAAY,EAAE,OAAO,CAAC,uBAAuB,CAAC,CAAC;QAC/C,YAAY,EAAE,OAAO,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC;QACxD,eAAe,EAAE,OAAO,CAAC,0BAA0B,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;KAChF,CAAC,CAAC;IACH,MAAM,EAAE,OAAO,CAAC;QACZ,QAAQ,EAAE,OAAO,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC;QAChD,UAAU,EAAE,OAAO,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC;QAClD,OAAO,EAAE,OAAO,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;QAC7C,WAAW,EAAE,OAAO,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC;QACrD,YAAY,EAAE,OAAO,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC;QACvD,YAAY,EAAE,OAAO,CAAC,uBAAuB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;QAChE,eAAe,EAAE,OAAO,CAAC,0BAA0B,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;KAChG,CAAC,CAAA;CACL;AAiCD,QAAA,MAAM,cAAc,GAAI,aAAa,OAAO,CAAC,cAAc,CAAC,4BAE3D,CAAA;AAED,UAAU,sBAAsB,CAAC,KAAK,CAAE,SAAQ,kBAAkB,CAAC,KAAK,CAAC;IACrE,YAAY,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;CACzC;AAED,OAAO,EACH,cAAc,EACjB,CAAA;AAED,YAAY,EACR,cAAc,EACd,sBAAsB,EACzB,CAAA"}
@@ -43,7 +43,7 @@ export type MfsSelectOneProps<I> = {
43
43
  } : {
44
44
  getKey: (item: I) => string | number;
45
45
  });
46
- export type MfsSelectRecordProps<Item extends Record<PropertyKey, unknown>> = {
46
+ export type MfsSelectRecordProps<Item extends Record<PropertyKey, React.ReactNode | unknown>> = {
47
47
  items: Item;
48
48
  renderMenuItem?: (key: keyof Item, value: Item[keyof Item], i: number) => React.ReactNode;
49
49
  } & MfsSelectEmpty<Item>;
@@ -1 +1 @@
1
- {"version":3,"file":"props.d.ts","sourceRoot":"","sources":["../../src/types/props.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"props.d.ts","sourceRoot":"","sources":["../../src/types/props.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAC,QAAQ,EAAE,cAAc,EAAE,cAAc,EAAC,MAAM,OAAO,CAAC;AAC/D,OAAO,EAAC,aAAa,EAAE,cAAc,EAAC,MAAM,qBAAqB,CAAC;AAGlE,KAAK,aAAa,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,IAAI;KAC7C,CAAC,IAAI,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,CAAC,GAAG,KAAK;CACxD,CAAC,MAAM,IAAI,CAAC,CAAC;AAEd,MAAM,WAAW,gBAAgB,CAAC,IAAI;IAClC,GAAG,EAAE,IAAI,CAAC;IACV,GAAG,EAAE,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;CACvC;AAED,MAAM,WAAW,cAAc,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM;IACvD,IAAI,EAAE,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;CACrC;AAGD,MAAM,WAAW,aAAa,CAAC,IAAI,CAAE,SAAQ,gBAAgB,CAAC,IAAI,CAAC;IAC/D,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAGD,MAAM,WAAW,aAAa,CAAC,IAAI,EAAE,KAAK,CAAE,SAAQ,aAAa,CAAC,IAAI,CAAC;IACnE,GAAG,CAAC,EAAE,KAAK,CAAC;CACf;AAKD,MAAM,WAAW,YAAY;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACjC,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAClC;AAED,MAAM,WAAW,cAAe,SAAQ,YAAY;IAChD,SAAS,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,CAAC;IACjD,IAAI,CAAC,EAAE,KAAK,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;IAClD,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAChC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAC9B,EAAE,EAAE,KAAK,CAAC,SAAS,CAAC;IACpB,GAAG,EAAE,KAAK,CAAC,SAAS,CAAC;CACxB;AAED,MAAM,MAAM,iBAAiB,CAAC,CAAC,IAAI;IAC/B,KAAK,EAAE,CAAC,EAAE,CAAC;IACX,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,CAAC;CAC5D,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,GAC7D;IAAE,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,GAAG,MAAM,CAAA;CAAE,GACzC;IAAE,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,GAAG,MAAM,CAAA;CAAE,CAAC,CAAC;AAEhD,MAAM,MAAM,oBAAoB,CAAC,IAAI,SAAS,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,IAAI;IAC5F,KAAK,EAAE,IAAI,CAAC;IACZ,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,CAAC;CAC7F,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;AAGzB,UAAU,SAAS,CAAC,IAAI,EAAE,KAAK;IAC3B,GAAG,EAAE,IAAI,CAAC;IACV,GAAG,EAAE,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;IACpC,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,GAAG,CAAC,EAAE,KAAK,CAAC;CACf;AAED,UAAU,eAAe,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,CACjD,SAAQ,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;IAC/C,IAAI,EAAE,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC;CAC9C;AAED,YAAY,EACR,aAAa,EACb,eAAe,GAClB,CAAA"}
@@ -2,7 +2,7 @@ import React from "react";
2
2
  export type KeysWithValue<Type extends object, Target = unknown> = {
3
3
  [K in keyof Type]: Type[K] extends Target ? K : never;
4
4
  }[keyof Type];
5
- export type MfsObjectKeys<Type extends object, Target = unknown> = KeysWithValue<Type, Target>;
5
+ export type MfsObjectKeys<Type extends object, Target = unknown> = keyof Type | KeysWithValue<Type, Target>;
6
6
  export type MfsSelectEmpty<I> = {
7
7
  emptyItem?: React.ReactNode;
8
8
  emptyValue?: '' | null | undefined | I;
@@ -1 +1 @@
1
- {"version":3,"file":"props.internal.d.ts","sourceRoot":"","sources":["../../src/types/props.internal.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,MAAM,MAAM,aAAa,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,GAAG,OAAO,IAAI;KAC9D,CAAC,IAAI,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,CAAC,GAAG,KAAK;CACxD,CAAC,MAAM,IAAI,CAAC,CAAC;AAEd,MAAM,MAAM,aAAa,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,GAAG,OAAO,IAC3D,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAEhC,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI;IAC5B,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,UAAU,CAAC,EAAE,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,CAAC,CAAC;CAC1C,CAAA;AAED,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC,SAAS,CAAC;AAC7C,MAAM,MAAM,cAAc,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,GAAG,OAAO,IAC5D,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"props.internal.d.ts","sourceRoot":"","sources":["../../src/types/props.internal.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,MAAM,MAAM,aAAa,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,GAAG,OAAO,IAAI;KAC9D,CAAC,IAAI,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,CAAC,GAAG,KAAK;CACxD,CAAC,MAAM,IAAI,CAAC,CAAC;AAEd,MAAM,MAAM,aAAa,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,GAAG,OAAO,IAC3D,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAE7C,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI;IAC5B,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,UAAU,CAAC,EAAE,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,CAAC,CAAC;CAC1C,CAAA;AAED,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC,SAAS,CAAC;AAC7C,MAAM,MAAM,cAAc,CAAC,IAAI,SAAS,MAAM,EAAE,MAAM,GAAG,OAAO,IAC5D,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { MfsCheckIconProps, MfsErrorProps, MfsLabelProps, MfsNumberProps, MfsObjectProps, MfsPropertyProps, MfsSelectOneProps, MfsSelectRecordProps, MfsTextProps } from './props';
2
2
  import { MfsObjectError, MfsSingleError } from "./props.internal.ts";
3
+ import React from "react";
3
4
  export interface MfsSingleNumberProps extends MfsNumberProps, MfsErrorProps<number, MfsSingleError> {
4
5
  }
5
6
  export interface MfsSingleTextProps extends MfsTextProps, MfsErrorProps<string, MfsSingleError> {
@@ -18,5 +19,5 @@ export interface MfsObjectCheckboxProps<T extends object> extends MfsObjectProps
18
19
  export interface MfsObjectCheckIconProps<T extends object> extends MfsObjectProps<T, boolean>, MfsPropertyProps<T>, MfsCheckIconProps {
19
20
  }
20
21
  export type MfsObjectSelectOneProps<T extends object, Item> = MfsObjectProps<T, Item> & MfsSelectOneProps<Item> & MfsErrorProps<T, MfsObjectError<T, Item>>;
21
- export type MfsObjectSelectRecordProps<T extends object, Item extends Record<PropertyKey, unknown>> = MfsObjectProps<T, Item> & MfsSelectRecordProps<Item> & MfsErrorProps<T, MfsObjectError<T, Item>>;
22
+ export type MfsObjectSelectRecordProps<T extends object, Item extends Record<PropertyKey, React.ReactNode>> = MfsObjectProps<T, Item> & MfsSelectRecordProps<Item> & MfsErrorProps<T, MfsObjectError<T, Item>>;
22
23
  //# sourceMappingURL=provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/types/provider.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,EACf,MAAM,SAAS,CAAC;AACjB,OAAO,EAAC,cAAc,EAAE,cAAc,EAAC,MAAM,qBAAqB,CAAC;AAInE,MAAM,WAAW,oBAAqB,SAClC,cAAc,EACd,aAAa,CAAC,MAAM,EAAE,cAAc,CAAC;CAAG;AAE5C,MAAM,WAAW,kBAAmB,SAChC,YAAY,EACZ,aAAa,CAAC,MAAM,EAAE,cAAc,CAAC;CAAG;AAE5C,MAAM,MAAM,sBAAsB,GAC9B,aAAa,CAAC,OAAO,CAAC,CAAC;AAE3B,MAAM,WAAW,uBAAwB,SACrC,iBAAiB,EACjB,gBAAgB,CAAC,OAAO,CAAC;CAAG;AAEhC,MAAM,MAAM,uBAAuB,CAAC,IAAI,IACpC,iBAAiB,CAAC,IAAI,CAAC,GACrB,aAAa,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;AAE1C,MAAM,MAAM,0BAA0B,CAClC,IAAI,SAAS,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,EACzC,KAAK,GAAG,MAAM,IAAI,GAAG,SAAS,GAAG,IAAI,IACrC,oBAAoB,CAAC,IAAI,CAAC,GACxB,aAAa,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;AAI3C,MAAM,WAAW,oBAAoB,CAAC,CAAC,SAAS,MAAM,CAAE,SACpD,cAAc,CAAC,CAAC,EAAE,MAAM,CAAC,EACzB,cAAc,EACd,aAAa,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;CAAG;AAElD,MAAM,WAAW,kBAAkB,CAAC,CAAC,SAAS,MAAM,CAAE,SAClD,cAAc,CAAC,CAAC,EAAE,MAAM,CAAC,EACzB,YAAY,EACZ,aAAa,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;CAAG;AAElD,MAAM,WAAW,sBAAsB,CAAC,CAAC,SAAS,MAAM,CAAE,SACtD,cAAc,CAAC,CAAC,EAAE,OAAO,CAAC,EAC1B,aAAa,CAAC,CAAC,CAAC;CAAG;AAEvB,MAAM,WAAW,uBAAuB,CAAC,CAAC,SAAS,MAAM,CAAE,SACvD,cAAc,CAAC,CAAC,EAAE,OAAO,CAAC,EAC1B,gBAAgB,CAAC,CAAC,CAAC,EACnB,iBAAiB;CAAG;AAExB,MAAM,MAAM,uBAAuB,CAAC,CAAC,SAAS,MAAM,EAAE,IAAI,IACtD,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,GACrB,iBAAiB,CAAC,IAAI,CAAC,GACvB,aAAa,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;AAEhD,MAAM,MAAM,0BAA0B,CAClC,CAAC,SAAS,MAAM,EAChB,IAAI,SAAS,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,IACzC,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,GACrB,oBAAoB,CAAC,IAAI,CAAC,GAC1B,aAAa,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/types/provider.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,EACf,MAAM,SAAS,CAAC;AACjB,OAAO,EAAC,cAAc,EAAE,cAAc,EAAC,MAAM,qBAAqB,CAAC;AACnE,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,MAAM,WAAW,oBAAqB,SAClC,cAAc,EACd,aAAa,CAAC,MAAM,EAAE,cAAc,CAAC;CAAG;AAE5C,MAAM,WAAW,kBAAmB,SAChC,YAAY,EACZ,aAAa,CAAC,MAAM,EAAE,cAAc,CAAC;CAAG;AAE5C,MAAM,MAAM,sBAAsB,GAC9B,aAAa,CAAC,OAAO,CAAC,CAAC;AAE3B,MAAM,WAAW,uBAAwB,SACrC,iBAAiB,EACjB,gBAAgB,CAAC,OAAO,CAAC;CAAG;AAEhC,MAAM,MAAM,uBAAuB,CAAC,IAAI,IACpC,iBAAiB,CAAC,IAAI,CAAC,GACrB,aAAa,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;AAE1C,MAAM,MAAM,0BAA0B,CAClC,IAAI,SAAS,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,EACzC,KAAK,GAAG,MAAM,IAAI,GAAG,SAAS,GAAG,IAAI,IACrC,oBAAoB,CAAC,IAAI,CAAC,GACxB,aAAa,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;AAI3C,MAAM,WAAW,oBAAoB,CAAC,CAAC,SAAS,MAAM,CAAE,SACpD,cAAc,CAAC,CAAC,EAAE,MAAM,CAAC,EACzB,cAAc,EACd,aAAa,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;CAAG;AAElD,MAAM,WAAW,kBAAkB,CAAC,CAAC,SAAS,MAAM,CAAE,SAClD,cAAc,CAAC,CAAC,EAAE,MAAM,CAAC,EACzB,YAAY,EACZ,aAAa,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;CAAG;AAElD,MAAM,WAAW,sBAAsB,CAAC,CAAC,SAAS,MAAM,CAAE,SACtD,cAAc,CAAC,CAAC,EAAE,OAAO,CAAC,EAC1B,aAAa,CAAC,CAAC,CAAC;CAAG;AAEvB,MAAM,WAAW,uBAAuB,CAAC,CAAC,SAAS,MAAM,CAAE,SACvD,cAAc,CAAC,CAAC,EAAE,OAAO,CAAC,EAC1B,gBAAgB,CAAC,CAAC,CAAC,EACnB,iBAAiB;CAAG;AAExB,MAAM,MAAM,uBAAuB,CAAC,CAAC,SAAS,MAAM,EAAE,IAAI,IACtD,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,GACrB,iBAAiB,CAAC,IAAI,CAAC,GACvB,aAAa,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;AAEhD,MAAM,MAAM,0BAA0B,CAClC,CAAC,SAAS,MAAM,EAChB,IAAI,SAAS,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,IACjD,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,GACrB,oBAAoB,CAAC,IAAI,CAAC,GAC1B,aAAa,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC"}
@@ -1,73 +1,73 @@
1
- # React + TypeScript + Vite
2
-
3
- This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.
4
-
5
- Currently, two official plugins are available:
6
-
7
- - [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react) uses [Babel](https://babeljs.io/) (or [oxc](https://oxc.rs) when used in [rolldown-vite](https://vite.dev/guide/rolldown)) for Fast Refresh
8
- - [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh
9
-
10
- ## React Compiler
11
-
12
- The React Compiler is not enabled on this template because of its impact on dev & build performances. To add it, see [this documentation](https://react.dev/learn/react-compiler/installation).
13
-
14
- ## Expanding the ESLint configuration
15
-
16
- If you are developing a production application, we recommend updating the configuration to enable type-aware lint rules:
17
-
18
- ```js
19
- export default defineConfig([
20
- globalIgnores(['dist']),
21
- {
22
- files: ['**/*.{ts,tsx}'],
23
- extends: [
24
- // Other configs...
25
-
26
- // Remove tseslint.configs.recommended and replace with this
27
- tseslint.configs.recommendedTypeChecked,
28
- // Alternatively, use this for stricter rules
29
- tseslint.configs.strictTypeChecked,
30
- // Optionally, add this for stylistic rules
31
- tseslint.configs.stylisticTypeChecked,
32
-
33
- // Other configs...
34
- ],
35
- languageOptions: {
36
- parserOptions: {
37
- project: ['./tsconfig.node.json', './tsconfig.app.json'],
38
- tsconfigRootDir: import.meta.dirname,
39
- },
40
- // other options...
41
- },
42
- },
43
- ])
44
- ```
45
-
46
- You can also install [eslint-plugin-react-x](https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-x) and [eslint-plugin-react-dom](https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-dom) for React-specific lint rules:
47
-
48
- ```js
49
- // eslint.config.js
50
- import reactX from 'eslint-plugin-react-x'
51
- import reactDom from 'eslint-plugin-react-dom'
52
-
53
- export default defineConfig([
54
- globalIgnores(['dist']),
55
- {
56
- files: ['**/*.{ts,tsx}'],
57
- extends: [
58
- // Other configs...
59
- // Enable lint rules for React
60
- reactX.configs['recommended-typescript'],
61
- // Enable lint rules for React DOM
62
- reactDom.configs.recommended,
63
- ],
64
- languageOptions: {
65
- parserOptions: {
66
- project: ['./tsconfig.node.json', './tsconfig.app.json'],
67
- tsconfigRootDir: import.meta.dirname,
68
- },
69
- // other options...
70
- },
71
- },
72
- ])
73
- ```
1
+ # React + TypeScript + Vite
2
+
3
+ This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.
4
+
5
+ Currently, two official plugins are available:
6
+
7
+ - [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react) uses [Babel](https://babeljs.io/) (or [oxc](https://oxc.rs) when used in [rolldown-vite](https://vite.dev/guide/rolldown)) for Fast Refresh
8
+ - [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh
9
+
10
+ ## React Compiler
11
+
12
+ The React Compiler is not enabled on this template because of its impact on dev & build performances. To add it, see [this documentation](https://react.dev/learn/react-compiler/installation).
13
+
14
+ ## Expanding the ESLint configuration
15
+
16
+ If you are developing a production application, we recommend updating the configuration to enable type-aware lint rules:
17
+
18
+ ```js
19
+ export default defineConfig([
20
+ globalIgnores(['dist']),
21
+ {
22
+ files: ['**/*.{ts,tsx}'],
23
+ extends: [
24
+ // Other configs...
25
+
26
+ // Remove tseslint.configs.recommended and replace with this
27
+ tseslint.configs.recommendedTypeChecked,
28
+ // Alternatively, use this for stricter rules
29
+ tseslint.configs.strictTypeChecked,
30
+ // Optionally, add this for stylistic rules
31
+ tseslint.configs.stylisticTypeChecked,
32
+
33
+ // Other configs...
34
+ ],
35
+ languageOptions: {
36
+ parserOptions: {
37
+ project: ['./tsconfig.node.json', './tsconfig.app.json'],
38
+ tsconfigRootDir: import.meta.dirname,
39
+ },
40
+ // other options...
41
+ },
42
+ },
43
+ ])
44
+ ```
45
+
46
+ You can also install [eslint-plugin-react-x](https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-x) and [eslint-plugin-react-dom](https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-dom) for React-specific lint rules:
47
+
48
+ ```js
49
+ // eslint.config.js
50
+ import reactX from 'eslint-plugin-react-x'
51
+ import reactDom from 'eslint-plugin-react-dom'
52
+
53
+ export default defineConfig([
54
+ globalIgnores(['dist']),
55
+ {
56
+ files: ['**/*.{ts,tsx}'],
57
+ extends: [
58
+ // Other configs...
59
+ // Enable lint rules for React
60
+ reactX.configs['recommended-typescript'],
61
+ // Enable lint rules for React DOM
62
+ reactDom.configs.recommended,
63
+ ],
64
+ languageOptions: {
65
+ parserOptions: {
66
+ project: ['./tsconfig.node.json', './tsconfig.app.json'],
67
+ tsconfigRootDir: import.meta.dirname,
68
+ },
69
+ // other options...
70
+ },
71
+ },
72
+ ])
73
+ ```
@@ -1,23 +1,23 @@
1
- import js from '@eslint/js'
2
- import globals from 'globals'
3
- import reactHooks from 'eslint-plugin-react-hooks'
4
- import reactRefresh from 'eslint-plugin-react-refresh'
5
- import tseslint from 'typescript-eslint'
6
- import { defineConfig, globalIgnores } from 'eslint/config'
7
-
8
- export default defineConfig([
9
- globalIgnores(['dist']),
10
- {
11
- files: ['**/*.{ts,tsx}'],
12
- extends: [
13
- js.configs.recommended,
14
- tseslint.configs.recommended,
15
- reactHooks.configs.flat.recommended,
16
- reactRefresh.configs.vite,
17
- ],
18
- languageOptions: {
19
- ecmaVersion: 2020,
20
- globals: globals.browser,
21
- },
22
- },
23
- ])
1
+ import js from '@eslint/js'
2
+ import globals from 'globals'
3
+ import reactHooks from 'eslint-plugin-react-hooks'
4
+ import reactRefresh from 'eslint-plugin-react-refresh'
5
+ import tseslint from 'typescript-eslint'
6
+ import { defineConfig, globalIgnores } from 'eslint/config'
7
+
8
+ export default defineConfig([
9
+ globalIgnores(['dist']),
10
+ {
11
+ files: ['**/*.{ts,tsx}'],
12
+ extends: [
13
+ js.configs.recommended,
14
+ tseslint.configs.recommended,
15
+ reactHooks.configs.flat.recommended,
16
+ reactRefresh.configs.vite,
17
+ ],
18
+ languageOptions: {
19
+ ecmaVersion: 2020,
20
+ globals: globals.browser,
21
+ },
22
+ },
23
+ ])
@@ -1,13 +1,13 @@
1
- <!doctype html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="UTF-8" />
5
- <link rel="icon" type="image/svg+xml" href="/vite.svg" />
6
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
- <title>basic</title>
8
- </head>
9
- <body>
10
- <div id="root"></div>
11
- <script type="module" src="/src/main.tsx"></script>
12
- </body>
13
- </html>
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <link rel="icon" type="image/svg+xml" href="/vite.svg" />
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
+ <title>basic</title>
8
+ </head>
9
+ <body>
10
+ <div id="root"></div>
11
+ <script type="module" src="/src/main.tsx"></script>
12
+ </body>
13
+ </html>
@@ -1,37 +1,37 @@
1
- {
2
- "name": "basic",
3
- "private": true,
4
- "version": "0.0.0",
5
- "type": "module",
6
- "scripts": {
7
- "dev": "vite",
8
- "build": "tsc -b && vite build",
9
- "lint": "eslint .",
10
- "preview": "vite preview"
11
- },
12
- "dependencies": {
13
- "@emotion/react": "^11.14.0",
14
- "@emotion/styled": "^11.14.1",
15
- "@mui/material": "^7.3.5",
16
- "mui-fast-start": "file:../../",
17
- "react": "^19.2.0",
18
- "react-dom": "^19.2.0"
19
- },
20
- "devDependencies": {
21
- "@eslint/js": "^9.39.1",
22
- "@types/node": "^24.10.1",
23
- "@types/react": "^19.2.5",
24
- "@types/react-dom": "^19.2.3",
25
- "@vitejs/plugin-react": "^5.1.1",
26
- "eslint": "^9.39.1",
27
- "eslint-plugin-react-hooks": "^7.0.1",
28
- "eslint-plugin-react-refresh": "^0.4.24",
29
- "globals": "^16.5.0",
30
- "typescript": "~5.9.3",
31
- "typescript-eslint": "^8.46.4",
32
- "vite": "npm:rolldown-vite@7.2.5"
33
- },
34
- "overrides": {
35
- "vite": "npm:rolldown-vite@7.2.5"
36
- }
37
- }
1
+ {
2
+ "name": "basic",
3
+ "private": true,
4
+ "version": "0.0.0",
5
+ "type": "module",
6
+ "scripts": {
7
+ "dev": "vite",
8
+ "build": "tsc -b && vite build",
9
+ "lint": "eslint .",
10
+ "preview": "vite preview"
11
+ },
12
+ "dependencies": {
13
+ "@emotion/react": "^11.14.0",
14
+ "@emotion/styled": "^11.14.1",
15
+ "@mui/material": "^7.3.5",
16
+ "mui-fast-start": "file:../../",
17
+ "react": "^19.2.0",
18
+ "react-dom": "^19.2.0"
19
+ },
20
+ "devDependencies": {
21
+ "@eslint/js": "^9.39.1",
22
+ "@types/node": "^24.10.1",
23
+ "@types/react": "^19.2.5",
24
+ "@types/react-dom": "^19.2.3",
25
+ "@vitejs/plugin-react": "^5.1.1",
26
+ "eslint": "^9.39.1",
27
+ "eslint-plugin-react-hooks": "^7.0.1",
28
+ "eslint-plugin-react-refresh": "^0.4.24",
29
+ "globals": "^16.5.0",
30
+ "typescript": "~5.9.3",
31
+ "typescript-eslint": "^8.46.4",
32
+ "vite": "npm:rolldown-vite@7.2.5"
33
+ },
34
+ "overrides": {
35
+ "vite": "npm:rolldown-vite@7.2.5"
36
+ }
37
+ }
@@ -1,5 +1,5 @@
1
- #root {
2
- padding: 2rem;
3
- text-align: center;
4
- width: 100%;
1
+ #root {
2
+ padding: 2rem;
3
+ text-align: center;
4
+ width: 100%;
5
5
  }
@@ -1,28 +1,28 @@
1
- import { Grid } from "@mui/material";
2
- import { useState } from "react";
3
- import {
4
- SingleCheckIcon
5
- } from "mui-fast-start";
6
- import './App.css';
7
- import ObjPage from "./pages/ObjPage";
8
- import SinglePage from "./pages/SinglePage";
9
-
10
-
11
-
12
- function App() {
13
- const [checked, setChecked] = useState<boolean>(false);
14
-
15
- return (
16
- <Grid container>
17
- <Grid size={12}>
18
- <SingleCheckIcon
19
- on={"single"} off={"obj"}
20
- get={checked} set={setChecked}
21
- />
22
- </Grid>
23
- {checked ? <SinglePage /> : <ObjPage />}
24
- </Grid>
25
- )
26
- }
27
-
28
- export default App
1
+ import { Grid } from "@mui/material";
2
+ import { useState } from "react";
3
+ import {
4
+ SingleCheckIcon
5
+ } from "mui-fast-start";
6
+ import './App.css';
7
+ import ObjPage from "./pages/ObjPage";
8
+ import SinglePage from "./pages/SinglePage";
9
+
10
+
11
+
12
+ function App() {
13
+ const [checked, setChecked] = useState<boolean>(false);
14
+
15
+ return (
16
+ <Grid container>
17
+ <Grid size={12}>
18
+ <SingleCheckIcon
19
+ on={"single"} off={"obj"}
20
+ get={checked} set={setChecked}
21
+ />
22
+ </Grid>
23
+ {checked ? <SinglePage /> : <ObjPage />}
24
+ </Grid>
25
+ )
26
+ }
27
+
28
+ export default App
@@ -1,30 +1,30 @@
1
- :root {
2
- font-family: system-ui, Avenir, Helvetica, Arial, sans-serif;
3
- line-height: 1.5;
4
- font-weight: 400;
5
-
6
- color-scheme: light dark;
7
- color: rgba(255, 255, 255, 0.87);
8
- background-color: #242424;
9
-
10
- font-synthesis: none;
11
- text-rendering: optimizeLegibility;
12
- -webkit-font-smoothing: antialiased;
13
- -moz-osx-font-smoothing: grayscale;
14
- }
15
-
16
- a {
17
- font-weight: 500;
18
- color: #646cff;
19
- text-decoration: inherit;
20
- }
21
-
22
- a:hover {
23
- color: #535bf2;
24
- }
25
-
26
- body {
27
- margin: 0;
28
- display: flex;
29
- min-height: 100vh;
1
+ :root {
2
+ font-family: system-ui, Avenir, Helvetica, Arial, sans-serif;
3
+ line-height: 1.5;
4
+ font-weight: 400;
5
+
6
+ color-scheme: light dark;
7
+ color: rgba(255, 255, 255, 0.87);
8
+ background-color: #242424;
9
+
10
+ font-synthesis: none;
11
+ text-rendering: optimizeLegibility;
12
+ -webkit-font-smoothing: antialiased;
13
+ -moz-osx-font-smoothing: grayscale;
14
+ }
15
+
16
+ a {
17
+ font-weight: 500;
18
+ color: #646cff;
19
+ text-decoration: inherit;
20
+ }
21
+
22
+ a:hover {
23
+ color: #535bf2;
24
+ }
25
+
26
+ body {
27
+ margin: 0;
28
+ display: flex;
29
+ min-height: 100vh;
30
30
  }