@owlmeans/web-panel 0.1.0
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/LICENSE +21 -0
- package/README.md +1195 -0
- package/build/.gitkeep +0 -0
- package/build/auth/context.d.ts +5 -0
- package/build/auth/context.d.ts.map +1 -0
- package/build/auth/context.js +17 -0
- package/build/auth/context.js.map +1 -0
- package/build/auth/exports.d.ts +25 -0
- package/build/auth/exports.d.ts.map +1 -0
- package/build/auth/exports.js +19 -0
- package/build/auth/exports.js.map +1 -0
- package/build/auth/index.d.ts +5 -0
- package/build/auth/index.d.ts.map +1 -0
- package/build/auth/index.js +4 -0
- package/build/auth/index.js.map +1 -0
- package/build/auth/modules.d.ts +2 -0
- package/build/auth/modules.d.ts.map +1 -0
- package/build/auth/modules.js +4 -0
- package/build/auth/modules.js.map +1 -0
- package/build/auth/plugins/basic-ed25519.d.ts +3 -0
- package/build/auth/plugins/basic-ed25519.d.ts.map +1 -0
- package/build/auth/plugins/basic-ed25519.js +40 -0
- package/build/auth/plugins/basic-ed25519.js.map +1 -0
- package/build/auth/plugins/exports.d.ts +4 -0
- package/build/auth/plugins/exports.d.ts.map +1 -0
- package/build/auth/plugins/exports.js +4 -0
- package/build/auth/plugins/exports.js.map +1 -0
- package/build/auth/plugins/index.d.ts +6 -0
- package/build/auth/plugins/index.d.ts.map +1 -0
- package/build/auth/plugins/index.js +10 -0
- package/build/auth/plugins/index.js.map +1 -0
- package/build/auth/plugins/re-captcha.d.ts +3 -0
- package/build/auth/plugins/re-captcha.d.ts.map +1 -0
- package/build/auth/plugins/re-captcha.js +51 -0
- package/build/auth/plugins/re-captcha.js.map +1 -0
- package/build/auth/plugins/tunnel-consumer.d.ts +3 -0
- package/build/auth/plugins/tunnel-consumer.d.ts.map +1 -0
- package/build/auth/plugins/tunnel-consumer.js +40 -0
- package/build/auth/plugins/tunnel-consumer.js.map +1 -0
- package/build/auth/types.d.ts +10 -0
- package/build/auth/types.d.ts.map +1 -0
- package/build/auth/types.js +2 -0
- package/build/auth/types.js.map +1 -0
- package/build/components/block.d.ts +4 -0
- package/build/components/block.d.ts.map +1 -0
- package/build/components/block.js +15 -0
- package/build/components/block.js.map +1 -0
- package/build/components/button/index.d.ts +3 -0
- package/build/components/button/index.d.ts.map +1 -0
- package/build/components/button/index.js +2 -0
- package/build/components/button/index.js.map +1 -0
- package/build/components/button/selector.d.ts +4 -0
- package/build/components/button/selector.d.ts.map +1 -0
- package/build/components/button/selector.js +8 -0
- package/build/components/button/selector.js.map +1 -0
- package/build/components/button/types.d.ts +7 -0
- package/build/components/button/types.d.ts.map +1 -0
- package/build/components/button/types.js +2 -0
- package/build/components/button/types.js.map +1 -0
- package/build/components/form/button/component.d.ts +5 -0
- package/build/components/form/button/component.d.ts.map +1 -0
- package/build/components/form/button/component.js +34 -0
- package/build/components/form/button/component.js.map +1 -0
- package/build/components/form/button/index.d.ts +3 -0
- package/build/components/form/button/index.d.ts.map +1 -0
- package/build/components/form/button/index.js +3 -0
- package/build/components/form/button/index.js.map +1 -0
- package/build/components/form/button/types.d.ts +15 -0
- package/build/components/form/button/types.d.ts.map +1 -0
- package/build/components/form/button/types.js +2 -0
- package/build/components/form/button/types.js.map +1 -0
- package/build/components/form/component.d.ts +4 -0
- package/build/components/form/component.d.ts.map +1 -0
- package/build/components/form/component.js +59 -0
- package/build/components/form/component.js.map +1 -0
- package/build/components/form/index.d.ts +3 -0
- package/build/components/form/index.d.ts.map +1 -0
- package/build/components/form/index.js +2 -0
- package/build/components/form/index.js.map +1 -0
- package/build/components/form/text/component.d.ts +4 -0
- package/build/components/form/text/component.d.ts.map +1 -0
- package/build/components/form/text/component.js +34 -0
- package/build/components/form/text/component.js.map +1 -0
- package/build/components/form/text/index.d.ts +3 -0
- package/build/components/form/text/index.d.ts.map +1 -0
- package/build/components/form/text/index.js +3 -0
- package/build/components/form/text/index.js.map +1 -0
- package/build/components/form/text/types.d.ts +11 -0
- package/build/components/form/text/types.d.ts.map +1 -0
- package/build/components/form/text/types.js +2 -0
- package/build/components/form/text/types.js.map +1 -0
- package/build/components/form/types.d.ts +6 -0
- package/build/components/form/types.d.ts.map +1 -0
- package/build/components/form/types.js +2 -0
- package/build/components/form/types.js.map +1 -0
- package/build/components/helper.d.ts +6 -0
- package/build/components/helper.d.ts.map +1 -0
- package/build/components/helper.js +70 -0
- package/build/components/helper.js.map +1 -0
- package/build/components/index.d.ts +14 -0
- package/build/components/index.d.ts.map +1 -0
- package/build/components/index.js +13 -0
- package/build/components/index.js.map +1 -0
- package/build/components/layout/component.d.ts +4 -0
- package/build/components/layout/component.d.ts.map +1 -0
- package/build/components/layout/component.js +6 -0
- package/build/components/layout/component.js.map +1 -0
- package/build/components/layout/index.d.ts +3 -0
- package/build/components/layout/index.d.ts.map +1 -0
- package/build/components/layout/index.js +3 -0
- package/build/components/layout/index.js.map +1 -0
- package/build/components/layout/types.d.ts +4 -0
- package/build/components/layout/types.d.ts.map +1 -0
- package/build/components/layout/types.js +2 -0
- package/build/components/layout/types.js.map +1 -0
- package/build/components/link.d.ts +4 -0
- package/build/components/link.d.ts.map +1 -0
- package/build/components/link.js +27 -0
- package/build/components/link.js.map +1 -0
- package/build/components/panel-app/component.d.ts +4 -0
- package/build/components/panel-app/component.d.ts.map +1 -0
- package/build/components/panel-app/component.js +12 -0
- package/build/components/panel-app/component.js.map +1 -0
- package/build/components/panel-app/index.d.ts +3 -0
- package/build/components/panel-app/index.d.ts.map +1 -0
- package/build/components/panel-app/index.js +3 -0
- package/build/components/panel-app/index.js.map +1 -0
- package/build/components/panel-app/types.d.ts +6 -0
- package/build/components/panel-app/types.d.ts.map +1 -0
- package/build/components/panel-app/types.js +2 -0
- package/build/components/panel-app/types.js.map +1 -0
- package/build/components/status.d.ts +4 -0
- package/build/components/status.d.ts.map +1 -0
- package/build/components/status.js +19 -0
- package/build/components/status.js.map +1 -0
- package/build/components/text.d.ts +4 -0
- package/build/components/text.d.ts.map +1 -0
- package/build/components/text.js +9 -0
- package/build/components/text.js.map +1 -0
- package/build/components/types.d.ts +32 -0
- package/build/components/types.d.ts.map +1 -0
- package/build/components/types.js +2 -0
- package/build/components/types.js.map +1 -0
- package/build/components/uploader/image.d.ts +4 -0
- package/build/components/uploader/image.d.ts.map +1 -0
- package/build/components/uploader/image.js +24 -0
- package/build/components/uploader/image.js.map +1 -0
- package/build/components/uploader/index.d.ts +2 -0
- package/build/components/uploader/index.d.ts.map +1 -0
- package/build/components/uploader/index.js +2 -0
- package/build/components/uploader/index.js.map +1 -0
- package/build/components/uploader/types.d.ts +5 -0
- package/build/components/uploader/types.d.ts.map +1 -0
- package/build/components/uploader/types.js +2 -0
- package/build/components/uploader/types.js.map +1 -0
- package/build/context.d.ts +4 -0
- package/build/context.d.ts.map +1 -0
- package/build/context.js +12 -0
- package/build/context.js.map +1 -0
- package/build/exports.d.ts +19 -0
- package/build/exports.d.ts.map +1 -0
- package/build/exports.js +17 -0
- package/build/exports.js.map +1 -0
- package/build/index.d.ts +8 -0
- package/build/index.d.ts.map +1 -0
- package/build/index.js +7 -0
- package/build/index.js.map +1 -0
- package/build/main.d.ts +5 -0
- package/build/main.d.ts.map +1 -0
- package/build/main.js +14 -0
- package/build/main.js.map +1 -0
- package/build/modules.d.ts +2 -0
- package/build/modules.d.ts.map +1 -0
- package/build/modules.js +4 -0
- package/build/modules.js.map +1 -0
- package/build/types.d.ts +9 -0
- package/build/types.d.ts.map +1 -0
- package/build/types.js +2 -0
- package/build/types.js.map +1 -0
- package/package.json +89 -0
- package/src/auth/context.ts +25 -0
- package/src/auth/exports.ts +29 -0
- package/src/auth/index.ts +5 -0
- package/src/auth/modules.ts +5 -0
- package/src/auth/plugins/basic-ed25519.tsx +57 -0
- package/src/auth/plugins/exports.ts +4 -0
- package/src/auth/plugins/index.ts +15 -0
- package/src/auth/plugins/re-captcha.tsx +73 -0
- package/src/auth/plugins/tunnel-consumer.tsx +65 -0
- package/src/auth/types.ts +11 -0
- package/src/components/block.tsx +27 -0
- package/src/components/button/index.ts +3 -0
- package/src/components/button/selector.tsx +16 -0
- package/src/components/button/types.ts +7 -0
- package/src/components/form/button/component.tsx +53 -0
- package/src/components/form/button/index.ts +3 -0
- package/src/components/form/button/types.ts +16 -0
- package/src/components/form/component.tsx +101 -0
- package/src/components/form/index.ts +3 -0
- package/src/components/form/text/component.tsx +45 -0
- package/src/components/form/text/index.ts +3 -0
- package/src/components/form/text/types.ts +11 -0
- package/src/components/form/types.ts +6 -0
- package/src/components/helper.ts +79 -0
- package/src/components/index.ts +17 -0
- package/src/components/layout/component.tsx +7 -0
- package/src/components/layout/index.ts +3 -0
- package/src/components/layout/types.ts +4 -0
- package/src/components/link.tsx +34 -0
- package/src/components/panel-app/component.tsx +21 -0
- package/src/components/panel-app/index.ts +3 -0
- package/src/components/panel-app/types.ts +6 -0
- package/src/components/status.tsx +23 -0
- package/src/components/text.tsx +14 -0
- package/src/components/types.ts +35 -0
- package/src/components/uploader/image.tsx +31 -0
- package/src/components/uploader/index.ts +2 -0
- package/src/components/uploader/types.ts +6 -0
- package/src/context.ts +18 -0
- package/src/exports.ts +22 -0
- package/src/index.ts +9 -0
- package/src/main.tsx +19 -0
- package/src/modules.ts +5 -0
- package/src/types.ts +11 -0
- package/tsconfig.json +16 -0
- package/tsconfig.tsbuildinfo +1 -0
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { FC } from 'react'
|
|
2
|
+
import { ImageUploader as Uploader } from '@owlmeans/web-client'
|
|
3
|
+
import Paper from '@mui/material/Paper'
|
|
4
|
+
import type { ImageUploaderProps } from './types.js'
|
|
5
|
+
import AddPhotoAlternateOutlinedIcon from '@mui/icons-material/AddPhotoAlternateOutlined';
|
|
6
|
+
import Box from '@mui/material/Box'
|
|
7
|
+
|
|
8
|
+
export const ImageUploader: FC<ImageUploaderProps> = ({ Root, rootProps, previewUrl, ...others }) => {
|
|
9
|
+
return <Uploader Root={Root ?? Paper} rootProps={{
|
|
10
|
+
elevation: 2,
|
|
11
|
+
sx: {
|
|
12
|
+
width: wrapperSize,
|
|
13
|
+
height: wrapperSize,
|
|
14
|
+
display: "flex",
|
|
15
|
+
justifyContent: "center",
|
|
16
|
+
alignItems: "center",
|
|
17
|
+
cursor: 'pointer',
|
|
18
|
+
},
|
|
19
|
+
...rootProps
|
|
20
|
+
}} {...others}>
|
|
21
|
+
{
|
|
22
|
+
previewUrl != null
|
|
23
|
+
? <Box component="img" src={previewUrl}
|
|
24
|
+
sx={{ maxWidth: previewSize, maxHeight: previewSize }} />
|
|
25
|
+
: <AddPhotoAlternateOutlinedIcon sx={{ fontSize: previewSize }} color="primary" />
|
|
26
|
+
}
|
|
27
|
+
</Uploader>
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
const previewSize = { xs: 60, md: 120, lg: 200 }
|
|
31
|
+
const wrapperSize = { xs: 65, md: 125, lg: 205 }
|
package/src/context.ts
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { appendFlowService } from '@owlmeans/web-flow'
|
|
2
|
+
import type { AppConfig , AppContext } from './types.js'
|
|
3
|
+
import { makeContext as makeClientContext, useContext as useCtx } from '@owlmeans/web-client'
|
|
4
|
+
import { apiConfigMiddleware } from '@owlmeans/api-config-client'
|
|
5
|
+
|
|
6
|
+
export const makeContext = <C extends AppConfig, T extends AppContext<C>>(cfg: C): T => {
|
|
7
|
+
const context = makeClientContext(cfg) as T
|
|
8
|
+
|
|
9
|
+
context.registerMiddleware(apiConfigMiddleware)
|
|
10
|
+
|
|
11
|
+
appendFlowService<C, T>(context)
|
|
12
|
+
context.flow = () => context.service('flow')
|
|
13
|
+
|
|
14
|
+
return context
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export const useContext = <C extends AppConfig = AppConfig,T extends AppContext<C> = AppContext<C>>() =>
|
|
18
|
+
useCtx<C,T>()
|
package/src/exports.ts
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
|
|
2
|
+
export { handler, useNavigate, useValue, useModule } from '@owlmeans/client'
|
|
3
|
+
export { config } from '@owlmeans/client-context'
|
|
4
|
+
export { service } from '@owlmeans/config'
|
|
5
|
+
export { guard, parent } from '@owlmeans/module'
|
|
6
|
+
export { addWebService } from '@owlmeans/client-config'
|
|
7
|
+
export { module, elevate, provideRequest, stab } from '@owlmeans/client-module'
|
|
8
|
+
export type { ClientModule as Module } from '@owlmeans/client-module'
|
|
9
|
+
export { route as croute } from '@owlmeans/client-route'
|
|
10
|
+
export { route, frontend } from '@owlmeans/route'
|
|
11
|
+
export { DEFAULT_ALIAS as DAUTH_GUARD, setupExternalAuthentication } from '@owlmeans/client-auth'
|
|
12
|
+
|
|
13
|
+
export { AppType, HOME, ROOT, BASE, GUEST } from '@owlmeans/context'
|
|
14
|
+
|
|
15
|
+
export { DISPATCHER, CAUTHEN_FLOW_ENTER } from '@owlmeans/auth'
|
|
16
|
+
export type { AuthToken } from '@owlmeans/auth'
|
|
17
|
+
|
|
18
|
+
export { useCommonI18n, useI18nApp, useI18nLib } from '@owlmeans/client-i18n'
|
|
19
|
+
export { addCommonI18n, addI18nApp } from '@owlmeans/i18n'
|
|
20
|
+
export { flow, configureFlows } from '@owlmeans/flow'
|
|
21
|
+
export { QUERY_PARAM as FLOW_PARAM, SERVICE_PARAM, useFlow } from '@owlmeans/web-flow'
|
|
22
|
+
export { Dispatcher, appendWebAuthService } from '@owlmeans/web-client'
|
package/src/index.ts
ADDED
package/src/main.tsx
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { RenderOptions, AppContext } from '@owlmeans/web-client'
|
|
2
|
+
import type { ClientConfig, ClientContext } from '@owlmeans/client-context'
|
|
3
|
+
import { render as basicRender, provide } from '@owlmeans/web-client'
|
|
4
|
+
import type { FC } from 'react'
|
|
5
|
+
import { useI18nInstance } from '@owlmeans/client-i18n/utils'
|
|
6
|
+
import detector from 'i18next-browser-languagedetector'
|
|
7
|
+
import { PanelApp } from './components/panel-app/component.js'
|
|
8
|
+
import type { Theme } from '@mui/material/styles'
|
|
9
|
+
|
|
10
|
+
export const render = <C extends ClientConfig, T extends ClientContext<C>>(context: T, theme?: Theme, opts?: RenderOptions) => {
|
|
11
|
+
basicRender(<App context={context as unknown as AppContext} theme={theme}/>, opts)
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
const App: FC<{ context: AppContext<any>, theme?: Theme }> = ({ context, theme }) => {
|
|
15
|
+
const i18nInstance = useI18nInstance(context.cfg)
|
|
16
|
+
i18nInstance.use(detector)
|
|
17
|
+
|
|
18
|
+
return <PanelApp context={context} provide={provide} theme={theme} />
|
|
19
|
+
}
|
package/src/modules.ts
ADDED
package/src/types.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
|
|
2
|
+
import type { WithFlowConfig } from '@owlmeans/flow'
|
|
3
|
+
import type { AppConfig as Config, AppContext as Context } from '@owlmeans/web-client'
|
|
4
|
+
import type { FlowService } from '@owlmeans/web-flow'
|
|
5
|
+
|
|
6
|
+
export interface AppConfig extends Config, WithFlowConfig {
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export interface AppContext<C extends AppConfig = AppConfig> extends Context<C> {
|
|
10
|
+
flow: () => FlowService
|
|
11
|
+
}
|
package/tsconfig.json
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"extends": [
|
|
3
|
+
"../tsconfig.default.json",
|
|
4
|
+
"../tsconfig.react.json",
|
|
5
|
+
],
|
|
6
|
+
"compilerOptions": {
|
|
7
|
+
"rootDir": "./src/", /* Specify the root folder within your source files. */
|
|
8
|
+
"outDir": "./build/", /* Specify an output folder for all emitted files. */
|
|
9
|
+
"moduleResolution": "Bundler"
|
|
10
|
+
},
|
|
11
|
+
"exclude": [
|
|
12
|
+
"./dist/**/*",
|
|
13
|
+
"./build/**/*",
|
|
14
|
+
"./*.ts"
|
|
15
|
+
]
|
|
16
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"root":["./src/context.ts","./src/exports.ts","./src/index.ts","./src/main.tsx","./src/modules.ts","./src/types.ts","./src/auth/context.ts","./src/auth/exports.ts","./src/auth/index.ts","./src/auth/modules.ts","./src/auth/types.ts","./src/auth/plugins/basic-ed25519.tsx","./src/auth/plugins/exports.ts","./src/auth/plugins/index.ts","./src/auth/plugins/re-captcha.tsx","./src/auth/plugins/tunnel-consumer.tsx","./src/components/block.tsx","./src/components/helper.ts","./src/components/index.ts","./src/components/link.tsx","./src/components/status.tsx","./src/components/text.tsx","./src/components/types.ts","./src/components/button/index.ts","./src/components/button/selector.tsx","./src/components/button/types.ts","./src/components/form/component.tsx","./src/components/form/index.ts","./src/components/form/types.ts","./src/components/form/button/component.tsx","./src/components/form/button/index.ts","./src/components/form/button/types.ts","./src/components/form/text/component.tsx","./src/components/form/text/index.ts","./src/components/form/text/types.ts","./src/components/layout/component.tsx","./src/components/layout/index.ts","./src/components/layout/types.ts","./src/components/panel-app/component.tsx","./src/components/panel-app/index.ts","./src/components/panel-app/types.ts","./src/components/uploader/image.tsx","./src/components/uploader/index.ts","./src/components/uploader/types.ts"],"version":"5.6.3"}
|