amotify 0.1.31 → 0.1.32

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 (95) hide show
  1. package/dist/@declaration/_.js +1 -1
  2. package/dist/@styles/componentClasses/_.css +68 -65
  3. package/dist/@styles/componentClasses/_.js +39 -39
  4. package/dist/@styles/index.css +68 -65
  5. package/dist/@styles/index.js +39 -39
  6. package/dist/@styles/init.css +1 -1
  7. package/dist/@styles/style.css +68 -65
  8. package/dist/@styles/style.js +39 -39
  9. package/dist/@styles/var.css +1 -1
  10. package/dist/@utils/GenerateClassName.js +470 -1
  11. package/dist/@utils/LaunchReactApp.js +78 -1
  12. package/dist/@utils/_.js +12 -1
  13. package/dist/@utils/collectForm.js +96 -1
  14. package/dist/@utils/color.js +103 -1
  15. package/dist/@utils/config.js +101 -1
  16. package/dist/@utils/fin.js +39 -1
  17. package/dist/@utils/getElement.js +13 -1
  18. package/dist/@utils/jsminEx.js +172 -1
  19. package/dist/@utils/pageTransit.js +33 -1
  20. package/dist/@utils/useRecycle.js +44 -1
  21. package/dist/@utils/useStore.js +54 -1
  22. package/dist/atoms/Box.js +20 -1
  23. package/dist/atoms/FAI.js +148 -1
  24. package/dist/atoms/Flex.js +34 -1
  25. package/dist/atoms/Grid.js +17 -1
  26. package/dist/atoms/Img.js +65 -1
  27. package/dist/atoms/Logo.js +359 -51
  28. package/dist/atoms/P.js +20 -1
  29. package/dist/atoms/Placeholder.js +44 -1
  30. package/dist/atoms/Span.js +20 -1
  31. package/dist/atoms/_.js +9 -1
  32. package/dist/chunk-JJ3PEWPN.js +60 -0
  33. package/dist/fn/Button.js +316 -1
  34. package/dist/fn/Cropper.js +1009 -1
  35. package/dist/fn/Effect/Fade.js +88 -1
  36. package/dist/fn/Effect/Pudding.js +22 -1
  37. package/dist/fn/Effect/Ripple.js +117 -3
  38. package/dist/fn/Effect/_.js +14 -1
  39. package/dist/fn/Input/AutoHeightText.js +112 -1
  40. package/dist/fn/Input/Checker.js +36 -1
  41. package/dist/fn/Input/Chips/Selector.js +472 -1
  42. package/dist/fn/Input/Chips/_.js +349 -1
  43. package/dist/fn/Input/Contenteditable.js +160 -1
  44. package/dist/fn/Input/DigitCharacters.js +275 -1
  45. package/dist/fn/Input/Filer.js +619 -1
  46. package/dist/fn/Input/Hidden.js +48 -1
  47. package/dist/fn/Input/List.js +450 -1
  48. package/dist/fn/Input/Parts.js +121 -1
  49. package/dist/fn/Input/Plain.js +12 -1
  50. package/dist/fn/Input/RichSelect.js +279 -1
  51. package/dist/fn/Input/Search.js +53 -1
  52. package/dist/fn/Input/Segmented.js +245 -1
  53. package/dist/fn/Input/Select.js +278 -1
  54. package/dist/fn/Input/Slider.js +538 -1
  55. package/dist/fn/Input/Switch.js +221 -1
  56. package/dist/fn/Input/Text.js +626 -1
  57. package/dist/fn/Input/TextArea.js +151 -1
  58. package/dist/fn/Input/Time/Picker.js +1457 -1
  59. package/dist/fn/Input/Time/_.js +867 -1
  60. package/dist/fn/Input/_.js +48 -1
  61. package/dist/fn/Input/core.js +626 -1
  62. package/dist/fn/Layout/PageNotFound.js +90 -1
  63. package/dist/fn/Layout/PageRouter.js +87 -1
  64. package/dist/fn/Layout/PageViewController.js +29 -1
  65. package/dist/fn/Layout/Plate.js +37 -1
  66. package/dist/fn/Layout/RootViewController.js +315 -1
  67. package/dist/fn/Layout/SwipeView.js +348 -1
  68. package/dist/fn/Layout/TabBar.js +72 -1
  69. package/dist/fn/Layout/_.js +22 -1
  70. package/dist/fn/Loader/_.js +104 -1
  71. package/dist/fn/Loader/corner.js +85 -1
  72. package/dist/fn/Loader/mini.js +125 -1
  73. package/dist/fn/Loader/top.js +73 -1
  74. package/dist/fn/Sheet.js +1101 -1
  75. package/dist/fn/Snackbar.js +216 -1
  76. package/dist/fn/Table/Data.js +974 -1
  77. package/dist/fn/Table/Drag.js +435 -1
  78. package/dist/fn/Table/Normal.js +136 -1
  79. package/dist/fn/Table/Parts.js +41 -1
  80. package/dist/fn/Table/Wrapper.js +60 -1
  81. package/dist/fn/Table/_.js +16 -1
  82. package/dist/fn/Table/cellStyling.js +51 -1
  83. package/dist/fn/Tooltips.js +58 -1
  84. package/dist/fn/_.js +10 -1
  85. package/dist/index.js +20 -1
  86. package/dist/mols/Accordion.js +152 -1
  87. package/dist/mols/Column.js +16 -1
  88. package/dist/mols/LinkifyText.js +42 -1
  89. package/dist/mols/List.js +42 -1
  90. package/dist/mols/Row.js +47 -1
  91. package/dist/mols/Text.js +67 -1
  92. package/dist/mols/_.js +6 -1
  93. package/dist/temps/_.js +1 -1
  94. package/dist/temps/designBook.js +3639 -20
  95. package/package.json +1 -1
@@ -1 +1,90 @@
1
- import"../../chunk-VY3566IV.js";import{jsx as o,jsxs as t}from"react/jsx-runtime";import r from"../../atoms/Box";import l from"../../atoms/FAI";import p from"../../mols/Row";import e from"../../mols/Text";import a from"../../mols/Column";import m from"../Button";const i=()=>{let{href:n}=location;return o(p.Center,{padding:[4,1],children:t(a,{ssCardBox:!0,gap:2,padding:[3,2],textAlign:"center",width:1,freeCSS:{maxWidth:12*30},children:[o(l.LinkSlash,{fontColor:"theme",freeCSS:{fontSize:"3rem"}}),t(r,{children:[o(e.Paragraph,{children:"\u3053\u306E\u30DA\u30FC\u30B8\u306F\u3054\u5229\u7528\u3044\u305F\u3060\u3051\u307E\u305B\u3093\u3002"}),o(e.Supplement,{fontColor:"3.blur",children:"\u5165\u529B\u3055\u308C\u305F\u30EA\u30F3\u30AF\u306E\u30DA\u30FC\u30B8\u306F\u5B58\u5728\u3057\u307E\u305B\u3093\u3067\u3057\u305F\u3002"})]}),t(a,{children:[t(e.Normal,{textAlign:"left",ssCardBox:"cloud",isSemiBoldFont:!0,padding:1,children:["\u30FB\u30EA\u30F3\u30AF\u304C\u6B63\u3057\u3044\u304B",o(r,{margin:["1/2",0],borderBottom:!0}),"\u30FB\u30EA\u30F3\u30AF\u306E\u6709\u52B9\u671F\u9650",o(r,{margin:["1/2",0],borderBottom:!0}),"\u30FB\u30A2\u30AF\u30BB\u30B9\u6A29\u9650\u7B49\u304C\u6B63\u3057\u3044\u304B"]}),"\u306A\u3069\u3092\u3082\u3046\u4E00\u5EA6\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002"]}),o(m.Anchor.Link,{newTab:!0,href:n,children:n}),o(m.Anchor.BorderToFill.R,{href:"/",width:1,children:"\u30DB\u30FC\u30E0\u306B\u623B\u308B"})]})})};export{i as PageNotFound,i as default};
1
+ import "../../chunk-JJ3PEWPN.js";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ import Box from "../../atoms/Box";
4
+ import FAI from "../../atoms/FAI";
5
+ import Row from "../../mols/Row";
6
+ import Text from "../../mols/Text";
7
+ import Column from "../../mols/Column";
8
+ import Button from "../Button";
9
+ const PageNotFound = () => {
10
+ let { href } = location;
11
+ return /* @__PURE__ */ jsx(
12
+ Row.Center,
13
+ {
14
+ padding: [4, 1],
15
+ children: /* @__PURE__ */ jsxs(
16
+ Column,
17
+ {
18
+ ssCardBox: true,
19
+ gap: 2,
20
+ padding: [3, 2],
21
+ textAlign: "center",
22
+ width: 1,
23
+ freeCSS: {
24
+ maxWidth: 12 * 30
25
+ },
26
+ children: [
27
+ /* @__PURE__ */ jsx(
28
+ FAI.LinkSlash,
29
+ {
30
+ fontColor: "theme",
31
+ freeCSS: {
32
+ fontSize: "3rem"
33
+ }
34
+ }
35
+ ),
36
+ /* @__PURE__ */ jsxs(Box, { children: [
37
+ /* @__PURE__ */ jsx(Text.Paragraph, { children: "\u3053\u306E\u30DA\u30FC\u30B8\u306F\u3054\u5229\u7528\u3044\u305F\u3060\u3051\u307E\u305B\u3093\u3002" }),
38
+ /* @__PURE__ */ jsx(
39
+ Text.Supplement,
40
+ {
41
+ fontColor: "3.blur",
42
+ children: "\u5165\u529B\u3055\u308C\u305F\u30EA\u30F3\u30AF\u306E\u30DA\u30FC\u30B8\u306F\u5B58\u5728\u3057\u307E\u305B\u3093\u3067\u3057\u305F\u3002"
43
+ }
44
+ )
45
+ ] }),
46
+ /* @__PURE__ */ jsxs(Column, { children: [
47
+ /* @__PURE__ */ jsxs(
48
+ Text.Normal,
49
+ {
50
+ textAlign: "left",
51
+ ssCardBox: "cloud",
52
+ isSemiBoldFont: true,
53
+ padding: 1,
54
+ children: [
55
+ "\u30FB\u30EA\u30F3\u30AF\u304C\u6B63\u3057\u3044\u304B",
56
+ /* @__PURE__ */ jsx(Box, { margin: ["1/2", 0], borderBottom: true }),
57
+ "\u30FB\u30EA\u30F3\u30AF\u306E\u6709\u52B9\u671F\u9650",
58
+ /* @__PURE__ */ jsx(Box, { margin: ["1/2", 0], borderBottom: true }),
59
+ "\u30FB\u30A2\u30AF\u30BB\u30B9\u6A29\u9650\u7B49\u304C\u6B63\u3057\u3044\u304B"
60
+ ]
61
+ }
62
+ ),
63
+ "\u306A\u3069\u3092\u3082\u3046\u4E00\u5EA6\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002"
64
+ ] }),
65
+ /* @__PURE__ */ jsx(
66
+ Button.Anchor.Link,
67
+ {
68
+ newTab: true,
69
+ href,
70
+ children: href
71
+ }
72
+ ),
73
+ /* @__PURE__ */ jsx(
74
+ Button.Anchor.BorderToFill.R,
75
+ {
76
+ href: "/",
77
+ width: 1,
78
+ children: "\u30DB\u30FC\u30E0\u306B\u623B\u308B"
79
+ }
80
+ )
81
+ ]
82
+ }
83
+ )
84
+ }
85
+ );
86
+ };
87
+ export {
88
+ PageNotFound,
89
+ PageNotFound as default
90
+ };
@@ -1 +1,87 @@
1
- import"../../chunk-VY3566IV.js";import{jsx as n,jsxs as P}from"react/jsx-runtime";import{useEffect as c,useRef as m}from"react";import{useStore as R}from"../../@utils/_";import*as s from"react-router-dom";import C from"../Sheet";import{PageNotFound as g}from"./PageNotFound";import{RootViewController as k}from"./RootViewController";const h=(t,o,a)=>{const r=m(!1);let e=s.useLocation(),u=s.useNavigate();R.set({key:"navigate",value:u}),c(()=>{r.current?(C.closeAll(!0),k.fn.updateCSSProperty.reset()):r.current=!0},[e.pathname]),t&&t(e),c(()=>{a&&a(e)},[]),c(()=>{setTimeout(()=>{window.dispatchEvent(new Event("resize"))},200),o&&o(e)},[e])},B=t=>{let{routes:o,beforeCallBack:a,afterCallBack:r,afterFirstCallBack:e}=t;h(a,r,e);let u=o.map(i=>{let{path:l,content:f}=i;return l="/"+l.replace(/^\//,""),n(s.Route,{path:l,element:f},l)});return P(s.Routes,{children:[u,n(s.Route,{path:"*",element:n(g,{})})]})},p=t=>{let{pages:o,beforeCallBack:a,afterCallBack:r,afterFirstCallBack:e}=t;return n(B,{routes:o,beforeCallBack:a,afterCallBack:r,afterFirstCallBack:e})};export{p as PageRouter,p as default};
1
+ import "../../chunk-JJ3PEWPN.js";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ import {
4
+ useEffect,
5
+ useRef
6
+ } from "react";
7
+ import {
8
+ useStore
9
+ } from "../../@utils/_";
10
+ import * as ReactRouterDOM from "react-router-dom";
11
+ import Sheet from "../Sheet";
12
+ import { PageNotFound } from "./PageNotFound";
13
+ import { RootViewController } from "./RootViewController";
14
+ const CustomerUseEffect = (beforeCallback, afterCallback, afterFirstCallback) => {
15
+ const mounted = useRef(false);
16
+ let location = ReactRouterDOM.useLocation();
17
+ let navigate = ReactRouterDOM.useNavigate();
18
+ useStore.set({ key: "navigate", value: navigate });
19
+ useEffect(() => {
20
+ if (mounted.current) {
21
+ Sheet.closeAll(true);
22
+ RootViewController.fn.updateCSSProperty.reset();
23
+ } else {
24
+ mounted.current = true;
25
+ }
26
+ }, [location.pathname]);
27
+ if (beforeCallback)
28
+ beforeCallback(location);
29
+ useEffect(() => {
30
+ if (afterFirstCallback)
31
+ afterFirstCallback(location);
32
+ }, []);
33
+ useEffect(() => {
34
+ setTimeout(() => {
35
+ window.dispatchEvent(new Event("resize"));
36
+ }, 200);
37
+ if (afterCallback)
38
+ afterCallback(location);
39
+ }, [location]);
40
+ };
41
+ const Switcher = (props) => {
42
+ let { routes, beforeCallBack, afterCallBack, afterFirstCallBack } = props;
43
+ CustomerUseEffect(beforeCallBack, afterCallBack, afterFirstCallBack);
44
+ let Routing = routes.map((page) => {
45
+ let { path, content } = page;
46
+ path = "/" + path.replace(/^\//, "");
47
+ return /* @__PURE__ */ jsx(
48
+ ReactRouterDOM.Route,
49
+ {
50
+ path,
51
+ element: content
52
+ },
53
+ path
54
+ );
55
+ });
56
+ return /* @__PURE__ */ jsxs(ReactRouterDOM.Routes, { children: [
57
+ Routing,
58
+ /* @__PURE__ */ jsx(
59
+ ReactRouterDOM.Route,
60
+ {
61
+ path: "*",
62
+ element: /* @__PURE__ */ jsx(PageNotFound, {})
63
+ }
64
+ )
65
+ ] });
66
+ };
67
+ const PageRouter = (props) => {
68
+ let {
69
+ pages,
70
+ beforeCallBack,
71
+ afterCallBack,
72
+ afterFirstCallBack
73
+ } = props;
74
+ return /* @__PURE__ */ jsx(
75
+ Switcher,
76
+ {
77
+ routes: pages,
78
+ beforeCallBack,
79
+ afterCallBack,
80
+ afterFirstCallBack
81
+ }
82
+ );
83
+ };
84
+ export {
85
+ PageRouter,
86
+ PageRouter as default
87
+ };
@@ -1 +1,29 @@
1
- import"../../chunk-VY3566IV.js";import{Fragment as c,jsx as a}from"react/jsx-runtime";import{useState as p}from"react";import w from"../Effect/_";const n=r=>{let{viewIndex:e=0,views:t,wrapper:i=m=>a(w.FadeIn,{animationTime:400,children:m},e)}=r;e=Math.min(Math.max(e,0),t.length);let[l,o]=p(e);return l!=e&&o(e),a(c,{children:i(t[e])})};export{n as PageViewController,n as default};
1
+ import "../../chunk-JJ3PEWPN.js";
2
+ import { Fragment, jsx } from "react/jsx-runtime";
3
+ import {
4
+ useState
5
+ } from "react";
6
+ import Effect from "../Effect/_";
7
+ const PageViewController = (params) => {
8
+ let {
9
+ viewIndex = 0,
10
+ views,
11
+ wrapper = (body) => /* @__PURE__ */ jsx(
12
+ Effect.FadeIn,
13
+ {
14
+ animationTime: 400,
15
+ children: body
16
+ },
17
+ viewIndex
18
+ )
19
+ } = params;
20
+ viewIndex = Math.min(Math.max(viewIndex, 0), views.length);
21
+ let [val_index, set_index] = useState(viewIndex);
22
+ if (val_index != viewIndex)
23
+ set_index(viewIndex);
24
+ return /* @__PURE__ */ jsx(Fragment, { children: wrapper(views[viewIndex]) });
25
+ };
26
+ export {
27
+ PageViewController,
28
+ PageViewController as default
29
+ };
@@ -1 +1,37 @@
1
- import{b as e,c as o,d as S}from"../../chunk-VY3566IV.js";import{jsx as X}from"react/jsx-runtime";import n from"../../atoms/Box";const p=r=>{let a=r,{size:i="R"}=a,t=S(a,["size"]),l={XS:48,S:60,R:72,L:84,XL:100,MAX:120}[i];return X(n,o(e({margin:[0,"auto"],width:1},t),{freeCSS:e({maxWidth:12*l},t.freeCSS)}))};export{p as Plate,p as default};
1
+ import {
2
+ __objRest,
3
+ __spreadProps,
4
+ __spreadValues
5
+ } from "../../chunk-JJ3PEWPN.js";
6
+ import { jsx } from "react/jsx-runtime";
7
+ import Box from "../../atoms/Box";
8
+ const Plate = (props) => {
9
+ let _a = props, {
10
+ size = "R"
11
+ } = _a, others = __objRest(_a, [
12
+ "size"
13
+ ]);
14
+ let Size = {
15
+ "XS": 48,
16
+ "S": 60,
17
+ "R": 72,
18
+ "L": 84,
19
+ "XL": 100,
20
+ "MAX": 120
21
+ }[size];
22
+ return /* @__PURE__ */ jsx(
23
+ Box,
24
+ __spreadProps(__spreadValues({
25
+ margin: [0, "auto"],
26
+ width: 1
27
+ }, others), {
28
+ freeCSS: __spreadValues({
29
+ maxWidth: 12 * Size
30
+ }, others.freeCSS)
31
+ })
32
+ );
33
+ };
34
+ export {
35
+ Plate,
36
+ Plate as default
37
+ };
@@ -1 +1,315 @@
1
- import{b as s,c as y,d as f}from"../../chunk-VY3566IV.js";import{jsx as p,jsxs as x}from"react/jsx-runtime";import{useState as S,useEffect as N}from"react";import{$$ as a,$$fromRoot as v,Config as R,pageTransit as P}from"../../@utils/_";import h from"../../atoms/Box";import C from"../../atoms/Flex";import F from"../../mols/Column";import _ from"../Button";import{LayoutClasses as m}from"../../@styles/componentClasses/_";const c={Base:o=>{let l=o,{topNavigation:e,sideNavigation:t,footerNavigation:i,children:r,className:n}=l,g=f(l,["topNavigation","sideNavigation","footerNavigation","children","className"]);N(()=>{c.fn.updateCSSProperty.reset(),setTimeout(()=>{c.fn.updateCSSProperty.reset()},100);let u="ResizeCB",B="RemovePageEventCB";return a(window).addEvent({eventType:"resize",eventID:u,callback:()=>{R.get().screen.isPhonepoint()||(a.interval.clear("__RVC_calcHeights"),a.interval.standBy("__RVC_calcHeights",300,()=>{c.fn.updateCSSProperty.reset()}))}}),()=>{a(window).removeEvent(B),a(window).removeEvent(u)}},[]);let d=r;return x(F,y(s({className:[n,m("RootViewController")].join(" "),backgroundColor:"1.layer.base",gap:0,minHeight:"viewHeight"},g),{children:[e,x(C,{className:m("Body"),flexWrap:!1,position:"relative",flexSizing:0,children:[t,p(h,{className:m("Content"),position:"relative",flexSizing:0,width:0,UnderBreakPointStyles:{width:"auto"},children:d})]}),i]}))},TopNavigation:o=>{let n=o,{className:e,children:t}=n,i=f(n,["className","children"]),[r]=S(a.uuid.gen());return N(()=>{c.fn.updateCSSProperty.topNav()},[]),p(C,y(s({"data-id":r,flexSizing:"none",flexType:"col",position:"sticky",top:0,backgroundColor:"1.layer.base"},i),{id:"__RVC_TopNavigation",className:[e,m("TopNav")].join(" "),children:t}),r)},SideNavigation:o=>{let r=o,{className:e="",baseStyles:t}=r,i=f(r,["className","baseStyles"]);return p(h,s({flexSizing:"none",className:[e,m("SideNav")].join(" "),minHeight:"sideNavigationHeight"},i))},FooterNavigation:o=>{let n=o,{className:e="",baseStyles:t}=n,i=f(n,["className","baseStyles"]),[r]=S(a.uuid.gen());return N(()=>{c.fn.updateCSSProperty.footer()},[]),p(C,y(s({"data-id":r,borderTop:!0,position:"sticky",bottom:0,overflow:"auto",backgroundColor:"1.layer.base",paddingBottom:"safeAreaBottom"},t),{id:"__RVC_FooterNavigation",className:[m("FooterNav"),e].join(" "),children:p(C,s({gap:1,flexWrap:!1,padding:"2/3",margin:"auto"},i))}))},Comps:{Button:o=>{let d=o,{isActive:e,uri:t,uriGroup:i}=d,r=f(d,["isActive","uri","uriGroup"]),n=a.flatArray(i),g=location.pathname;{let l=!1;if(a.is.exist(t)&&a.is.string(t)){let u=[location.origin,t.replace(/\//,"")].join("/");l=g==new URL(u).pathname}if(!l&&n.length)for(let u of n)a.is.nullish(u)||g.match(new RegExp(u))&&(l=!0);e=e!=null?e:l}return p(_.Button.Clear.R,s({padding:["3/4",1],display:"flex",gap:"1/2",fontColor:"inherit",width:1,flexSizing:"none",flexWrap:!1,ssEffectsOnActive:"ripple.cloud",verticalAlign:"center",textAlign:"left",isSemiBoldFont:!0,isActive:e,isActiveStyles:{fontColor:"theme",backgroundColor:"cloud"},onClick:l=>{a.is.exist(t)&&a.is.string(t)&&P.push(t,l.ctrlKey||l.metaKey)},color:"cloud"},r))},Bar:o=>p(h,s({flexSizing:"none",backgroundColor:"lcOpMiddle",unitHeight:"1/3",margin:["2/3",1],borderRadius:"sphere"},o)),Title:o=>p(h,s({fontSize:"3.paragraph",isSemiBoldFont:!0,padding:[0,1]},o))},fn:{updateCSSProperty:{topNav:()=>{let o=a(document.body),e=v("#__RVC_TopNavigation"),t=e.position().height||0,i=t;e.getStyleProperty("position")!="sticky"&&(i=0),o.setStyleProperty("--topNavHeight",t+"px").setStyleProperty("--topBase",i+"px")},footer:()=>{let o=a(document.body),t=v("#__RVC_FooterNavigation").position().height||0;o.setStyleProperty("--footerNavHeight",t+"px")},reset:()=>{let o=a(document.body),e=v("#__RVC_TopNavigation"),t=v("#__RVC_FooterNavigation"),i=e.position().height||0,r=i,n=t.position().height||0;e.getStyleProperty("position")!="sticky"&&(r=0);let g=window.innerHeight,d=g-i-n;o.setStyleProperty("--topNavHeight",i+"px").setStyleProperty("--topBase",r+"px").setStyleProperty("--footerNavHeight",n+"px").setStyleProperty("--viewHeight",g+"px").setStyleProperty("--sideNavHeight",d+"px").setStyleProperty("--contentHeight",d+"px")}}}};export{c as RootViewController,c as default};
1
+ import {
2
+ __objRest,
3
+ __spreadProps,
4
+ __spreadValues
5
+ } from "../../chunk-JJ3PEWPN.js";
6
+ import { jsx, jsxs } from "react/jsx-runtime";
7
+ import {
8
+ useState,
9
+ useEffect
10
+ } from "react";
11
+ import {
12
+ $$,
13
+ $$fromRoot,
14
+ Config,
15
+ pageTransit
16
+ } from "../../@utils/_";
17
+ import Box from "../../atoms/Box";
18
+ import Flex from "../../atoms/Flex";
19
+ import Column from "../../mols/Column";
20
+ import Button from "../Button";
21
+ import { LayoutClasses } from "../../@styles/componentClasses/_";
22
+ const RootViewController = {
23
+ Base: (params) => {
24
+ let _a = params, {
25
+ topNavigation,
26
+ sideNavigation,
27
+ footerNavigation,
28
+ children,
29
+ className
30
+ } = _a, others = __objRest(_a, [
31
+ "topNavigation",
32
+ "sideNavigation",
33
+ "footerNavigation",
34
+ "children",
35
+ "className"
36
+ ]);
37
+ useEffect(() => {
38
+ RootViewController.fn.updateCSSProperty.reset();
39
+ setTimeout(() => {
40
+ RootViewController.fn.updateCSSProperty.reset();
41
+ }, 100);
42
+ let getSideNavigationHeight = "ResizeCB";
43
+ let beforeunload = "RemovePageEventCB";
44
+ $$(window).addEvent({
45
+ eventType: "resize",
46
+ eventID: getSideNavigationHeight,
47
+ callback: () => {
48
+ if (Config.get().screen.isPhonepoint())
49
+ return;
50
+ $$.interval.clear("__RVC_calcHeights");
51
+ $$.interval.standBy("__RVC_calcHeights", 300, () => {
52
+ RootViewController.fn.updateCSSProperty.reset();
53
+ });
54
+ }
55
+ });
56
+ return () => {
57
+ $$(window).removeEvent(beforeunload);
58
+ $$(window).removeEvent(getSideNavigationHeight);
59
+ };
60
+ }, []);
61
+ let Chilren = children;
62
+ return /* @__PURE__ */ jsxs(
63
+ Column,
64
+ __spreadProps(__spreadValues({
65
+ className: [
66
+ className,
67
+ LayoutClasses("RootViewController")
68
+ ].join(" "),
69
+ backgroundColor: "1.layer.base",
70
+ gap: 0,
71
+ minHeight: "viewHeight"
72
+ }, others), {
73
+ children: [
74
+ topNavigation,
75
+ /* @__PURE__ */ jsxs(
76
+ Flex,
77
+ {
78
+ className: LayoutClasses("Body"),
79
+ flexWrap: false,
80
+ position: "relative",
81
+ flexSizing: 0,
82
+ children: [
83
+ sideNavigation,
84
+ /* @__PURE__ */ jsx(
85
+ Box,
86
+ {
87
+ className: LayoutClasses("Content"),
88
+ position: "relative",
89
+ flexSizing: 0,
90
+ width: 0,
91
+ UnderBreakPointStyles: {
92
+ width: "auto"
93
+ },
94
+ children: Chilren
95
+ }
96
+ )
97
+ ]
98
+ }
99
+ ),
100
+ footerNavigation
101
+ ]
102
+ })
103
+ );
104
+ },
105
+ TopNavigation: (params) => {
106
+ let _a = params, {
107
+ className,
108
+ children
109
+ } = _a, others = __objRest(_a, [
110
+ "className",
111
+ "children"
112
+ ]);
113
+ let [val_componentID] = useState($$.uuid.gen());
114
+ useEffect(() => {
115
+ RootViewController.fn.updateCSSProperty.topNav();
116
+ }, []);
117
+ return /* @__PURE__ */ jsx(
118
+ Flex,
119
+ __spreadProps(__spreadValues({
120
+ "data-id": val_componentID,
121
+ flexSizing: "none",
122
+ flexType: "col",
123
+ position: "sticky",
124
+ top: 0,
125
+ backgroundColor: "1.layer.base"
126
+ }, others), {
127
+ id: "__RVC_TopNavigation",
128
+ className: [
129
+ className,
130
+ LayoutClasses("TopNav")
131
+ ].join(" "),
132
+ children
133
+ }),
134
+ val_componentID
135
+ );
136
+ },
137
+ SideNavigation: (params) => {
138
+ let _a = params, {
139
+ className = "",
140
+ baseStyles
141
+ } = _a, others = __objRest(_a, [
142
+ "className",
143
+ "baseStyles"
144
+ ]);
145
+ return /* @__PURE__ */ jsx(
146
+ Box,
147
+ __spreadValues({
148
+ flexSizing: "none",
149
+ className: [
150
+ className,
151
+ LayoutClasses("SideNav")
152
+ ].join(" "),
153
+ minHeight: "sideNavigationHeight"
154
+ }, others)
155
+ );
156
+ },
157
+ FooterNavigation: (params) => {
158
+ let _a = params, {
159
+ className = "",
160
+ baseStyles
161
+ } = _a, others = __objRest(_a, [
162
+ "className",
163
+ "baseStyles"
164
+ ]);
165
+ let [val_componentID] = useState($$.uuid.gen());
166
+ useEffect(() => {
167
+ RootViewController.fn.updateCSSProperty.footer();
168
+ }, []);
169
+ return /* @__PURE__ */ jsx(
170
+ Flex,
171
+ __spreadProps(__spreadValues({
172
+ "data-id": val_componentID,
173
+ borderTop: true,
174
+ position: "sticky",
175
+ bottom: 0,
176
+ overflow: "auto",
177
+ backgroundColor: "1.layer.base",
178
+ paddingBottom: "safeAreaBottom"
179
+ }, baseStyles), {
180
+ id: "__RVC_FooterNavigation",
181
+ className: [
182
+ LayoutClasses("FooterNav"),
183
+ className
184
+ ].join(" "),
185
+ children: /* @__PURE__ */ jsx(
186
+ Flex,
187
+ __spreadValues({
188
+ gap: 1,
189
+ flexWrap: false,
190
+ padding: "2/3",
191
+ margin: "auto"
192
+ }, others)
193
+ )
194
+ })
195
+ );
196
+ },
197
+ Comps: {
198
+ Button: (params) => {
199
+ let _a = params, {
200
+ isActive,
201
+ uri,
202
+ uriGroup
203
+ } = _a, others = __objRest(_a, [
204
+ "isActive",
205
+ "uri",
206
+ "uriGroup"
207
+ ]);
208
+ let groups = $$.flatArray(uriGroup);
209
+ let currentURL = location.pathname;
210
+ {
211
+ let isCurrentURL = false;
212
+ if ($$.is.exist(uri) && $$.is.string(uri)) {
213
+ let url = [
214
+ location.origin,
215
+ uri.replace(/\//, "")
216
+ ].join("/");
217
+ isCurrentURL = currentURL == new URL(url).pathname;
218
+ }
219
+ if (!isCurrentURL) {
220
+ if (groups.length) {
221
+ for (let group of groups) {
222
+ if ($$.is.nullish(group))
223
+ continue;
224
+ if (!!currentURL.match(new RegExp(group)))
225
+ isCurrentURL = true;
226
+ }
227
+ }
228
+ }
229
+ isActive = isActive != null ? isActive : isCurrentURL;
230
+ }
231
+ return /* @__PURE__ */ jsx(
232
+ Button.Button.Clear.R,
233
+ __spreadValues({
234
+ padding: ["3/4", 1],
235
+ display: "flex",
236
+ gap: "1/2",
237
+ fontColor: "inherit",
238
+ width: 1,
239
+ flexSizing: "none",
240
+ flexWrap: false,
241
+ ssEffectsOnActive: "ripple.cloud",
242
+ verticalAlign: "center",
243
+ textAlign: "left",
244
+ isSemiBoldFont: true,
245
+ isActive,
246
+ isActiveStyles: {
247
+ fontColor: "theme",
248
+ backgroundColor: "cloud"
249
+ },
250
+ onClick: (event) => {
251
+ if ($$.is.exist(uri) && $$.is.string(uri))
252
+ pageTransit.push(uri, event.ctrlKey || event.metaKey);
253
+ },
254
+ color: "cloud"
255
+ }, others)
256
+ );
257
+ },
258
+ Bar: (params) => /* @__PURE__ */ jsx(
259
+ Box,
260
+ __spreadValues({
261
+ flexSizing: "none",
262
+ backgroundColor: "lcOpMiddle",
263
+ unitHeight: "1/3",
264
+ margin: ["2/3", 1],
265
+ borderRadius: "sphere"
266
+ }, params)
267
+ ),
268
+ Title: (params) => /* @__PURE__ */ jsx(
269
+ Box,
270
+ __spreadValues({
271
+ fontSize: "3.paragraph",
272
+ isSemiBoldFont: true,
273
+ padding: [0, 1]
274
+ }, params)
275
+ )
276
+ },
277
+ fn: {
278
+ updateCSSProperty: {
279
+ topNav: () => {
280
+ let Body = $$(document.body);
281
+ let TopNav = $$fromRoot("#__RVC_TopNavigation");
282
+ let topNavHeight = TopNav.position().height || 0;
283
+ let topBase = topNavHeight;
284
+ if (TopNav.getStyleProperty("position") != "sticky") {
285
+ topBase = 0;
286
+ }
287
+ Body.setStyleProperty("--topNavHeight", topNavHeight + "px").setStyleProperty("--topBase", topBase + "px");
288
+ },
289
+ footer: () => {
290
+ let Body = $$(document.body);
291
+ let Footer = $$fromRoot("#__RVC_FooterNavigation");
292
+ let footerHeight = Footer.position().height || 0;
293
+ Body.setStyleProperty("--footerNavHeight", footerHeight + "px");
294
+ },
295
+ reset: () => {
296
+ let Body = $$(document.body);
297
+ let TopNav = $$fromRoot("#__RVC_TopNavigation");
298
+ let Footer = $$fromRoot("#__RVC_FooterNavigation");
299
+ let topNavHeight = TopNav.position().height || 0;
300
+ let topBase = topNavHeight;
301
+ let footerHeight = Footer.position().height || 0;
302
+ if (TopNav.getStyleProperty("position") != "sticky") {
303
+ topBase = 0;
304
+ }
305
+ let viewHeight = window.innerHeight;
306
+ let contentHeight = viewHeight - topNavHeight - footerHeight;
307
+ Body.setStyleProperty("--topNavHeight", topNavHeight + "px").setStyleProperty("--topBase", topBase + "px").setStyleProperty("--footerNavHeight", footerHeight + "px").setStyleProperty("--viewHeight", viewHeight + "px").setStyleProperty("--sideNavHeight", contentHeight + "px").setStyleProperty("--contentHeight", contentHeight + "px");
308
+ }
309
+ }
310
+ }
311
+ };
312
+ export {
313
+ RootViewController,
314
+ RootViewController as default
315
+ };