@ya-accelerators/nextjs-framework 0.0.41 → 0.0.43

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 (32) hide show
  1. package/dist/hooks/loading/index.jsx +1 -1
  2. package/dist/hooks/loading/index.jsx.map +1 -1
  3. package/dist/hooks/modal/index.d.ts +2 -16
  4. package/dist/hooks/modal/index.jsx +9 -40
  5. package/dist/hooks/modal/index.jsx.map +1 -1
  6. package/dist/tsconfig.tsbuildinfo +1 -1
  7. package/dist/ui/component/index.d.ts +7 -3
  8. package/dist/ui/component/index.js +2 -0
  9. package/dist/ui/component/index.js.map +1 -1
  10. package/dist/ui/component/loading/index.d.ts +1 -3
  11. package/dist/ui/component/loading/index.jsx +1 -7
  12. package/dist/ui/component/loading/index.jsx.map +1 -1
  13. package/dist/ui/component/modal/index.d.ts +7 -0
  14. package/dist/ui/component/modal/index.jsx +12 -0
  15. package/dist/ui/component/modal/index.jsx.map +1 -0
  16. package/dist/ui/composite/index.d.ts +6 -6
  17. package/dist/ui/functional/index.d.ts +2 -2
  18. package/dist/ui/functional/signInForm/index.d.ts +2 -2
  19. package/dist/ui/functional/signInForm/index.jsx +1 -1
  20. package/dist/ui/functional/signInForm/index.jsx.map +1 -1
  21. package/dist/ui/layout/index.d.ts +19 -14
  22. package/dist/ui/layout/index.js +2 -0
  23. package/dist/ui/layout/index.js.map +1 -1
  24. package/dist/ui/layout/loading/index.d.ts +3 -0
  25. package/dist/ui/layout/loading/index.jsx +9 -0
  26. package/dist/ui/layout/loading/index.jsx.map +1 -0
  27. package/dist/ui/layout/modal/index.d.ts +20 -7
  28. package/dist/ui/layout/modal/index.jsx +35 -7
  29. package/dist/ui/layout/modal/index.jsx.map +1 -1
  30. package/dist/ui/layout/table/index.jsx +4 -0
  31. package/dist/ui/layout/table/index.jsx.map +1 -1
  32. package/package.json +2 -2
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
  import { usePathname } from 'next/navigation';
3
3
  import { createContext, useContext, useState } from 'react';
4
- import { LoadingOverlay } from '../../ui/component/loading';
4
+ import { LoadingOverlay } from '../../ui/layout/loading';
5
5
  const LoadingContext = createContext({ showLoading: () => { }, dismissLoading: () => { } });
6
6
  export const useLoadingContext = () => useContext(LoadingContext);
7
7
  export const LoadingProvider = ({ children }) => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../../src/hooks/loading/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAE7C,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAE3D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAM3D,MAAM,cAAc,GAAG,aAAa,CAAkB,EAAE,WAAW,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,cAAc,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,CAAC,CAAA;AAE1G,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,CAAA;AAEjE,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAAE,QAAQ,EAA2B,EAAE,EAAE;IACvE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC7C,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;IAC1C,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;IAC9C,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;IAC9B,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAC1D,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;QAC9B,UAAU,CAAC,KAAK,CAAC,CAAA;QACjB,eAAe,CAAC,QAAQ,CAAC,CAAA;IAC3B,CAAC;IACD,OAAO,CACL,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,EAAE,cAAc,EAAE,CAAC,CAC9D;MAAA,CAAC,QAAQ,CACT;MAAA,CAAC,OAAO,IAAI,CAAC,cAAc,CAAC,AAAD,EAAG,CAChC;IAAA,EAAE,cAAc,CAAC,QAAQ,CAAC,CAC3B,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../../src/hooks/loading/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAE7C,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAE3D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAMxD,MAAM,cAAc,GAAG,aAAa,CAAkB,EAAE,WAAW,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,cAAc,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,CAAC,CAAA;AAE1G,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,CAAA;AAEjE,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAAE,QAAQ,EAA2B,EAAE,EAAE;IACvE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC7C,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;IAC1C,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;IAC9C,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;IAC9B,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAC1D,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;QAC9B,UAAU,CAAC,KAAK,CAAC,CAAA;QACjB,eAAe,CAAC,QAAQ,CAAC,CAAA;IAC3B,CAAC;IACD,OAAO,CACL,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,EAAE,cAAc,EAAE,CAAC,CAC9D;MAAA,CAAC,QAAQ,CACT;MAAA,CAAC,OAAO,IAAI,CAAC,cAAc,CAAC,AAAD,EAAG,CAChC;IAAA,EAAE,cAAc,CAAC,QAAQ,CAAC,CAC3B,CAAA;AACH,CAAC,CAAA"}
@@ -1,20 +1,6 @@
1
1
  import type { ReactNode } from 'react';
2
- import type { Rounded } from '../../ui/theme';
3
- import { ColorTypes } from '../../ui/theme';
4
- export interface ModalProps {
5
- rounded?: Rounded;
6
- title?: string;
7
- message?: string;
8
- content?: ReactNode;
9
- actions?: {
10
- default?: boolean;
11
- label: string;
12
- color?: ColorTypes;
13
- onClick?: () => void;
14
- }[];
15
- showCloseButton?: boolean;
16
- dismissOnBarrierClick?: boolean;
17
- }
2
+ import { ModalOverlay } from '../../ui/layout/modal';
3
+ export type ModalProps = Omit<Parameters<typeof ModalOverlay>[0]['items'][number], 'id'>;
18
4
  interface IModalContext {
19
5
  showModal: (props: ModalProps) => void;
20
6
  dismissModal: (id?: string) => void;
@@ -1,12 +1,7 @@
1
1
  'use client';
2
- import classNames from 'classnames';
3
- import { motion } from 'framer-motion';
4
2
  import { usePathname } from 'next/navigation';
5
3
  import { createContext, startTransition, useCallback, useContext, useEffect, useState } from 'react';
6
- import { Colored } from '../../ui/component/button/colored';
7
- import { Typography } from '../../ui/component/typography';
8
- import { Modal } from '../../ui/layout/modal';
9
- import { BackgroundColorTypes, ColorTypes, ControlSize, getBackgroundColorTypeClassName, TextColorTypes, } from '../../ui/theme';
4
+ import { ModalOverlay } from '../../ui/layout/modal';
10
5
  import { Util } from '../../util';
11
6
  const ModalContext = createContext({
12
7
  showModal: () => { },
@@ -14,51 +9,25 @@ const ModalContext = createContext({
14
9
  });
15
10
  export const useModalContext = () => useContext(ModalContext);
16
11
  export const ModalProvider = ({ children }) => {
17
- const [props, setProps] = useState([]);
18
- const showModal = (props) => setProps((e) => [...e, { ...props, id: new Date().getTime().toString() }]);
12
+ const [items, setItems] = useState([]);
13
+ const showModal = (props) => setItems((e) => [...e, { ...props, id: new Date().getTime().toString() }]);
19
14
  const dismissModal = useCallback((id) => {
20
- if (id === undefined || !Util.isString(id) || !props.some((x) => x.id !== id)) {
21
- setProps([]);
15
+ if (id === undefined || !Util.isString(id) || !items.some((x) => x.id !== id)) {
16
+ setItems([]);
22
17
  }
23
18
  else {
24
- setProps((e) => e.filter((x) => x.id !== id));
19
+ setItems((e) => e.filter((x) => x.id !== id));
25
20
  }
26
- }, [props]);
21
+ }, [items]);
27
22
  const pathname = usePathname();
28
23
  useEffect(() => {
29
24
  startTransition(() => {
30
- setProps([]);
25
+ setItems([]);
31
26
  });
32
27
  }, [pathname]);
33
28
  return (<ModalContext.Provider value={{ showModal, dismissModal }}>
34
29
  {children}
35
- {props.length > 0 && (<motion.div className={classNames('fixed inset-0 z-popup flex size-full items-center justify-center', getBackgroundColorTypeClassName(BackgroundColorTypes.overlay))} onClick={(e) => {
36
- if (e.target === e.currentTarget) {
37
- const latestModal = props[props.length - 1];
38
- if (latestModal?.dismissOnBarrierClick !== false) {
39
- dismissModal();
40
- }
41
- }
42
- }}>
43
- {props.map((x, i) => (<Modal key={x.id} id={x.id} rounded={x.rounded} showCloseButton={x.actions === undefined || x.showCloseButton !== false} onClickClose={dismissModal} className={i !== props.length - 1 ? 'hidden' : undefined}>
44
- {x.title && (<Typography.H4 container={true} className='font-bold'>
45
- {x.title}
46
- </Typography.H4>)}
47
- {x.message && (<Typography.Pre color={TextColorTypes.sub} container={true}>
48
- {x.message}
49
- </Typography.Pre>)}
50
- {x.content}
51
- {x.actions && (<form className='mt-control-padding-base gap-control-padding-md flex' onSubmit={(e) => {
52
- e.preventDefault();
53
- dismissModal(x.id);
54
- }}>
55
- {x.actions?.map((action, i) => (<Colored type={action.default != false ? 'submit' : 'button'} autoFocus={action.default != false} key={i} rounded={x.rounded} size={ControlSize.base} label={action.label} color={action.color ?? ColorTypes.primary} className='w-full' onClick={() => {
56
- dismissModal(x.id);
57
- action.onClick?.();
58
- }}/>))}
59
- </form>)}
60
- </Modal>))}
61
- </motion.div>)}
30
+ <ModalOverlay items={items} onDismiss={dismissModal}/>
62
31
  </ModalContext.Provider>);
63
32
  };
64
33
  //# sourceMappingURL=index.jsx.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../../src/hooks/modal/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.jsx","sourceRoot":"","sources":["../../../../src/hooks/modal/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAE7C,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEpG,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAOjC,MAAM,YAAY,GAAG,aAAa,CAAgB;IAChD,SAAS,EAAE,GAAG,EAAE,GAAE,CAAC;IACnB,YAAY,EAAE,GAAG,EAAE,GAAE,CAAC;CACvB,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;AAE7D,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,EAAE,QAAQ,EAA2B,EAAE,EAAE;IACrE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAA8C,EAAE,CAAC,CAAA;IACnF,MAAM,SAAS,GAAG,CAAC,KAAiB,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAA;IACnH,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,EAAW,EAAE,EAAE;QACd,IAAI,EAAE,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;YAC9E,QAAQ,CAAC,EAAE,CAAC,CAAA;QACd,CAAC;aAAM,CAAC;YACN,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;QAC/C,CAAC;IACH,CAAC,EACD,CAAC,KAAK,CAAC,CACR,CAAA;IACD,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;IAC9B,SAAS,CAAC,GAAG,EAAE;QACb,eAAe,CAAC,GAAG,EAAE;YACnB,QAAQ,CAAC,EAAE,CAAC,CAAA;QACd,CAAC,CAAC,CAAA;IACJ,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;IAEd,OAAO,CACL,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC,CACxD;MAAA,CAAC,QAAQ,CACT;MAAA,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,EACtD;IAAA,EAAE,YAAY,CAAC,QAAQ,CAAC,CACzB,CAAA;AACH,CAAC,CAAA"}