dinocollab-core 1.0.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/README.md +54 -0
- package/dist/_virtual/_rollupPluginBabelHelpers.js +431 -0
- package/dist/_virtual/_rollupPluginBabelHelpers.js.map +1 -0
- package/dist/assets/vector-404265a04f4f9c8be1f.webp +0 -0
- package/dist/node_modules/.pnpm/@rollup_plugin-typescript@1_d0d2002d9033600b6738d939bd598bc6/node_modules/tslib/tslib.es6.js +46 -0
- package/dist/node_modules/.pnpm/@rollup_plugin-typescript@1_d0d2002d9033600b6738d939bd598bc6/node_modules/tslib/tslib.es6.js.map +1 -0
- package/dist/src/api-context/alert-global.js +151 -0
- package/dist/src/api-context/alert-global.js.map +1 -0
- package/dist/src/api-context/drawer-global.js +105 -0
- package/dist/src/api-context/drawer-global.js.map +1 -0
- package/dist/src/api-context/global-modal.js +87 -0
- package/dist/src/api-context/global-modal.js.map +1 -0
- package/dist/src/api-context/popover-global.js +102 -0
- package/dist/src/api-context/popover-global.js.map +1 -0
- package/dist/src/api-context/popover.js +86 -0
- package/dist/src/api-context/popover.js.map +1 -0
- package/dist/src/api-context/ui.units.js +21 -0
- package/dist/src/api-context/ui.units.js.map +1 -0
- package/dist/src/components/copy-to-clipboard.js +105 -0
- package/dist/src/components/copy-to-clipboard.js.map +1 -0
- package/dist/src/components/custom.breadcrumbs.js +61 -0
- package/dist/src/components/custom.breadcrumbs.js.map +1 -0
- package/dist/src/components/help-tooltip.js +91 -0
- package/dist/src/components/help-tooltip.js.map +1 -0
- package/dist/src/components/image-with-fallback.js +48 -0
- package/dist/src/components/image-with-fallback.js.map +1 -0
- package/dist/src/components/text-editor.js +117 -0
- package/dist/src/components/text-editor.js.map +1 -0
- package/dist/src/form/create.autocomplete.chips.js +218 -0
- package/dist/src/form/create.autocomplete.chips.js.map +1 -0
- package/dist/src/form/create.date-expired.js +201 -0
- package/dist/src/form/create.date-expired.js.map +1 -0
- package/dist/src/form/create.date-picker.js +125 -0
- package/dist/src/form/create.date-picker.js.map +1 -0
- package/dist/src/form/create.form-base.js +135 -0
- package/dist/src/form/create.form-base.js.map +1 -0
- package/dist/src/form/create.form-comfirm.js +119 -0
- package/dist/src/form/create.form-comfirm.js.map +1 -0
- package/dist/src/form/create.form-grid-layout.js +177 -0
- package/dist/src/form/create.form-grid-layout.js.map +1 -0
- package/dist/src/form/create.form-grid-layout.units.js +39 -0
- package/dist/src/form/create.form-grid-layout.units.js.map +1 -0
- package/dist/src/form/create.input-base.js +260 -0
- package/dist/src/form/create.input-base.js.map +1 -0
- package/dist/src/form/create.input.file.js +74 -0
- package/dist/src/form/create.input.file.js.map +1 -0
- package/dist/src/form/create.select-simple.js +104 -0
- package/dist/src/form/create.select-simple.js.map +1 -0
- package/dist/src/form/create.select-with-api.js +271 -0
- package/dist/src/form/create.select-with-api.js.map +1 -0
- package/dist/src/form/create.text-editor.js +156 -0
- package/dist/src/form/create.text-editor.js.map +1 -0
- package/dist/src/form/dino-form.js +42 -0
- package/dist/src/form/dino-form.js.map +1 -0
- package/dist/src/form/helper.js +157 -0
- package/dist/src/form/helper.js.map +1 -0
- package/dist/src/form/modal-wrapper.js +75 -0
- package/dist/src/form/modal-wrapper.js.map +1 -0
- package/dist/src/form/validator.js +186 -0
- package/dist/src/form/validator.js.map +1 -0
- package/dist/src/hooks/index.js +48 -0
- package/dist/src/hooks/index.js.map +1 -0
- package/dist/src/index.js +26 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/redux/create.hoc-lazy.js +67 -0
- package/dist/src/redux/create.hoc-lazy.js.map +1 -0
- package/dist/src/redux/dino.js +11 -0
- package/dist/src/redux/dino.js.map +1 -0
- package/dist/src/redux/types.js +9 -0
- package/dist/src/redux/types.js.map +1 -0
- package/dist/src/redux/ui.error-page.js +80 -0
- package/dist/src/redux/ui.error-page.js.map +1 -0
- package/dist/src/redux/vector-404.webp.js +4 -0
- package/dist/src/redux/vector-404.webp.js.map +1 -0
- package/dist/src/table/context.js +12 -0
- package/dist/src/table/context.js.map +1 -0
- package/dist/src/table/create.action-row.js +135 -0
- package/dist/src/table/create.action-row.js.map +1 -0
- package/dist/src/table/create.status-cell.js +49 -0
- package/dist/src/table/create.status-cell.js.map +1 -0
- package/dist/src/table/create.table.js +233 -0
- package/dist/src/table/create.table.js.map +1 -0
- package/dist/src/table/custom.filter-operators.js +89 -0
- package/dist/src/table/custom.filter-operators.js.map +1 -0
- package/dist/src/table/dino.js +129 -0
- package/dist/src/table/dino.js.map +1 -0
- package/dist/src/table/helpers.js +116 -0
- package/dist/src/table/helpers.js.map +1 -0
- package/dist/src/table/model-filter.js +23 -0
- package/dist/src/table/model-filter.js.map +1 -0
- package/dist/src/table/toolbar-pannel.js +134 -0
- package/dist/src/table/toolbar-pannel.js.map +1 -0
- package/dist/src/table/ui.buttons.js +60 -0
- package/dist/src/table/ui.buttons.js.map +1 -0
- package/dist/src/table/ui.units.js +201 -0
- package/dist/src/table/ui.units.js.map +1 -0
- package/dist/src/utils/dayjs-config.js +12 -0
- package/dist/src/utils/dayjs-config.js.map +1 -0
- package/dist/src/utils/helpers.js +197 -0
- package/dist/src/utils/helpers.js.map +1 -0
- package/dist/src/utils/json-object.js +38 -0
- package/dist/src/utils/json-object.js.map +1 -0
- package/dist/src/utils/query-param.js +172 -0
- package/dist/src/utils/query-param.js.map +1 -0
- package/package.json +52 -0
- package/rollup.config.js +39 -0
- package/src/@types/global.d.ts +5 -0
- package/src/api-context/alert-global.tsx +174 -0
- package/src/api-context/drawer-global.tsx +116 -0
- package/src/api-context/global-modal.tsx +109 -0
- package/src/api-context/index.ts +13 -0
- package/src/api-context/popover-global.tsx +107 -0
- package/src/api-context/popover.tsx +89 -0
- package/src/api-context/ui.units.tsx +10 -0
- package/src/components/copy-to-clipboard.tsx +86 -0
- package/src/components/custom.breadcrumbs.tsx +67 -0
- package/src/components/help-tooltip.tsx +75 -0
- package/src/components/image-with-fallback.tsx +51 -0
- package/src/components/index.tsx +1 -0
- package/src/components/input-debounce-timer.tsx +138 -0
- package/src/components/loading-buttons.tsx +35 -0
- package/src/components/text-editor.preview.tsx +30 -0
- package/src/components/text-editor.tsx +125 -0
- package/src/form/README.md +55 -0
- package/src/form/create.autocomplete.chips.tsx +199 -0
- package/src/form/create.date-expired.tsx +195 -0
- package/src/form/create.date-picker.tsx +122 -0
- package/src/form/create.form-base.tsx +102 -0
- package/src/form/create.form-comfirm.tsx +83 -0
- package/src/form/create.form-grid-layout.tsx +170 -0
- package/src/form/create.form-grid-layout.units.tsx +37 -0
- package/src/form/create.input-base.tsx +222 -0
- package/src/form/create.input.file.tsx +76 -0
- package/src/form/create.select-simple.tsx +101 -0
- package/src/form/create.select-with-api.tsx +213 -0
- package/src/form/create.text-editor.tsx +161 -0
- package/src/form/dino-form.tsx +40 -0
- package/src/form/helper.ts +132 -0
- package/src/form/index.ts +12 -0
- package/src/form/modal-wrapper.tsx +75 -0
- package/src/form/types.ts +16 -0
- package/src/form/validator.ts +202 -0
- package/src/hooks/index.ts +44 -0
- package/src/index.ts +7 -0
- package/src/lab/create.autocomplete.simple.tsx +57 -0
- package/src/lab/create.dino-store.ts +59 -0
- package/src/lab/create.multi-select-dropdown.tsx +189 -0
- package/src/lab/create.select-mul-with-api/index.tsx +271 -0
- package/src/lab/create.select-mul-with-api/table-custom.tsx +194 -0
- package/src/lab/create.select-mul-with-api/types.ts +26 -0
- package/src/lab/create.select-mul-with-api/ui.units.tsx +163 -0
- package/src/lab/filter-bar/base.tsx +162 -0
- package/src/lab/filter-bar/create.filter-bar.tsx +190 -0
- package/src/lab/filter-bar/create.filter-menu.tsx +156 -0
- package/src/lab/filter-bar/create.filter-panel.tsx +95 -0
- package/src/lab/filter-bar/create.filtered.tsx +41 -0
- package/src/lab/filter-bar/create.sort-menu.tsx +43 -0
- package/src/lab/filter-bar/demo.tsx +50 -0
- package/src/lab/filter-bar/index.ts +6 -0
- package/src/lab/filter-bar/types.ts +105 -0
- package/src/lab/filter-bar/ui.units.tsx +70 -0
- package/src/lab/grafana-dashboard/configs.ts +43 -0
- package/src/lab/grafana-dashboard/date-time-range/absolute-time-rage.tsx +137 -0
- package/src/lab/grafana-dashboard/date-time-range/helpers.ts +126 -0
- package/src/lab/grafana-dashboard/date-time-range/index.tsx +62 -0
- package/src/lab/grafana-dashboard/date-time-range/menu-wrap.tsx +101 -0
- package/src/lab/grafana-dashboard/date-time-range/quick-ranges.tsx +161 -0
- package/src/lab/grafana-dashboard/date-time-range/types.ts +9 -0
- package/src/lab/grafana-dashboard/date-time-range/units.tsx +18 -0
- package/src/lab/grafana-dashboard/helper.ts +25 -0
- package/src/lab/grafana-dashboard/hooks.tsx +79 -0
- package/src/lab/grafana-dashboard/icons.tsx +67 -0
- package/src/lab/grafana-dashboard/index.tsx +120 -0
- package/src/lab/grafana-dashboard/top-bar.tsx +62 -0
- package/src/lab/grafana-dashboard/top-bar.types.ts +5 -0
- package/src/lab/grafana-dashboard/types.ts +8 -0
- package/src/lab/media-player.core1.tsx +273 -0
- package/src/lab/media-player.muted.tsx +62 -0
- package/src/lab/media-player.units.ts +80 -0
- package/src/lab/table-grid/create.table-grid.tsx +183 -0
- package/src/lab/table-grid/demo.tsx +53 -0
- package/src/lab/table-grid/dino.tsx +8 -0
- package/src/lab/table-grid/helpers.tsx +11 -0
- package/src/lab/table-grid/index.ts +3 -0
- package/src/lab/table-grid/item-actions.tsx +138 -0
- package/src/lab/table-grid/toolbar-pannel.tsx +98 -0
- package/src/lab/table-grid/types.ts +68 -0
- package/src/redux/create.hoc-lazy.tsx +80 -0
- package/src/redux/dino.ts +9 -0
- package/src/redux/index.ts +6 -0
- package/src/redux/types.ts +27 -0
- package/src/redux/ui.error-page.tsx +62 -0
- package/src/redux/ui.units.tsx +41 -0
- package/src/redux/vector-404.webp +0 -0
- package/src/table/context.tsx +16 -0
- package/src/table/create.action-row.tsx +91 -0
- package/src/table/create.status-cell.tsx +51 -0
- package/src/table/create.table.tsx +239 -0
- package/src/table/custom.filter-operators.ts +94 -0
- package/src/table/dino.tsx +120 -0
- package/src/table/helpers.ts +94 -0
- package/src/table/index.ts +13 -0
- package/src/table/model-filter.ts +43 -0
- package/src/table/toolbar-pannel.tsx +106 -0
- package/src/table/types.ts +50 -0
- package/src/table/ui.buttons.tsx +54 -0
- package/src/table/ui.units.tsx +189 -0
- package/src/utils/dayjs-config.ts +13 -0
- package/src/utils/helpers.ts +171 -0
- package/src/utils/index.ts +7 -0
- package/src/utils/json-object.ts +29 -0
- package/src/utils/mfe-events.tsx +34 -0
- package/src/utils/query-param.ts +129 -0
- package/tsconfig.json +20 -0
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import queryString from 'query-string'
|
|
2
|
+
|
|
3
|
+
const StringStardize = (str: string) => str?.trim().toLowerCase() ?? ''
|
|
4
|
+
|
|
5
|
+
class QueryParamBase {
|
|
6
|
+
private _GetValues() {
|
|
7
|
+
// return queryString.parse(decodeURIComponent(window.location.search))
|
|
8
|
+
return queryString.parse(decodeURIComponent(window.location.search))
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
private _GetValuesMap() {
|
|
12
|
+
const query = this._GetValues()
|
|
13
|
+
return new Map(Object.keys(query).map((x) => [StringStardize(x), query[x] as string]))
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
private _GetkeysMap() {
|
|
17
|
+
const query = this._GetValues()
|
|
18
|
+
return new Map(Object.keys(query).map((x) => [StringStardize(x), x]))
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
private getPath = () => (window.location.pathname === '/' ? '' : window.location.pathname)
|
|
22
|
+
|
|
23
|
+
// stringify<TParam extends {} = any>(param: TParam) {
|
|
24
|
+
// return `?${encodeURIComponent(queryString.stringify(param, { skipNull: true, skipEmptyString: true }))}`
|
|
25
|
+
// }
|
|
26
|
+
stringify = <TParam extends Record<string, any> = any>(param: TParam): string => {
|
|
27
|
+
const entries = Object.keys(param)
|
|
28
|
+
.filter((key) => param[key]) // skip null & empty string
|
|
29
|
+
.reduce((a, key) => {
|
|
30
|
+
const encodedValue = encodeURIComponent(param[key])
|
|
31
|
+
a[key] = encodedValue
|
|
32
|
+
return a
|
|
33
|
+
}, {} as any)
|
|
34
|
+
|
|
35
|
+
return '?' + queryString.stringify(entries, { skipNull: true, skipEmptyString: true })
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
Replace<TParam extends {} = any, TState = any>(param: TParam, state?: TState) {
|
|
39
|
+
window.history.replaceState(state ?? {}, '', `${this.getPath()}${this.stringify(param)}`)
|
|
40
|
+
window.dispatchEvent(new window.PopStateEvent('popstate'))
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
Patch<TParam extends { [key: string]: any } = any, TState = any>(param: TParam, state?: TState) {
|
|
44
|
+
const query = this._GetValues()
|
|
45
|
+
const keyMap = this._GetkeysMap()
|
|
46
|
+
Object.keys(param).forEach((k) => {
|
|
47
|
+
const key = StringStardize(k)
|
|
48
|
+
if (keyMap.has(key)) {
|
|
49
|
+
query[keyMap.get(key) ?? ''] = param[k]
|
|
50
|
+
} else {
|
|
51
|
+
query[k] = param[k]
|
|
52
|
+
}
|
|
53
|
+
})
|
|
54
|
+
this.Put(query, state)
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
ReplacePatch<TParam extends { [key: string]: any } = any, TState = any>(param: TParam, state?: TState) {
|
|
58
|
+
const query = this._GetValues()
|
|
59
|
+
const keyMap = this._GetkeysMap()
|
|
60
|
+
Object.keys(param).forEach((k) => {
|
|
61
|
+
const key = StringStardize(k)
|
|
62
|
+
if (keyMap.has(key)) {
|
|
63
|
+
query[keyMap.get(key) ?? ''] = param[k]
|
|
64
|
+
} else {
|
|
65
|
+
query[k] = param[k]
|
|
66
|
+
}
|
|
67
|
+
})
|
|
68
|
+
this.Replace(query, state)
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
Put<TParam extends {} = any, TState = any>(param: TParam, state?: TState) {
|
|
72
|
+
window.history.pushState(state ?? {}, '', `${this.getPath()}${this.stringify(param)}`)
|
|
73
|
+
window.dispatchEvent(new window.PopStateEvent('popstate'))
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
Deletes<TValue extends {} = any>(...keys: (keyof TValue)[]) {
|
|
77
|
+
this.DeletesWithState(keys)
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
ReplaceDeletes<TValue extends {} = any>(...keys: (keyof TValue)[]) {
|
|
81
|
+
this.ReplaceDeletesWithState(keys)
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
ReplaceDeletesWithState<TValue extends {} = any, TState = any>(keys: (keyof TValue)[], state?: TState) {
|
|
85
|
+
const query = this._GetValues()
|
|
86
|
+
const keyMap = this._GetkeysMap()
|
|
87
|
+
keys.forEach((k) => {
|
|
88
|
+
const key = StringStardize(k.toString())
|
|
89
|
+
if (keyMap.has(key)) {
|
|
90
|
+
delete query[keyMap.get(key) ?? '']
|
|
91
|
+
}
|
|
92
|
+
})
|
|
93
|
+
this.Replace(query, state)
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
DeletesWithState<TValue extends {} = any, TState = any>(keys: (keyof TValue)[], state?: TState) {
|
|
97
|
+
const query = this._GetValues()
|
|
98
|
+
const keyMap = this._GetkeysMap()
|
|
99
|
+
keys.forEach((k) => {
|
|
100
|
+
const key = StringStardize(k.toString())
|
|
101
|
+
if (keyMap.has(key)) {
|
|
102
|
+
delete query[keyMap.get(key) ?? '']
|
|
103
|
+
}
|
|
104
|
+
})
|
|
105
|
+
this.Put(query, state)
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
DeleteAll() {
|
|
109
|
+
window.history.replaceState({}, '', `${this.getPath()}`)
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
GetAll = () => {
|
|
113
|
+
return this._GetValues()
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
Gets<TValue extends {} = any>(...keys: (keyof TValue)[]) {
|
|
117
|
+
const query = this._GetValuesMap()
|
|
118
|
+
return keys.reduce<Partial<TValue>>((a, k) => {
|
|
119
|
+
const key = StringStardize(k.toString())
|
|
120
|
+
if (query.has(key)) {
|
|
121
|
+
a[k] = query.get(key) as any
|
|
122
|
+
}
|
|
123
|
+
return a
|
|
124
|
+
}, {})
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
export const QueryParam = new QueryParamBase()
|
|
128
|
+
;(window as any).QueryParam = QueryParam
|
|
129
|
+
export default QueryParam
|
package/tsconfig.json
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"target": "ES2015",
|
|
4
|
+
"lib": ["dom", "dom.iterable", "esnext"],
|
|
5
|
+
"allowJs": true,
|
|
6
|
+
"skipLibCheck": true,
|
|
7
|
+
"esModuleInterop": true,
|
|
8
|
+
"allowSyntheticDefaultImports": true,
|
|
9
|
+
"strict": true,
|
|
10
|
+
"forceConsistentCasingInFileNames": true,
|
|
11
|
+
"noFallthroughCasesInSwitch": true,
|
|
12
|
+
"module": "esnext",
|
|
13
|
+
"moduleResolution": "node",
|
|
14
|
+
"resolveJsonModule": true,
|
|
15
|
+
"isolatedModules": true,
|
|
16
|
+
"noEmit": true,
|
|
17
|
+
"jsx": "preserve"
|
|
18
|
+
},
|
|
19
|
+
"include": ["src"]
|
|
20
|
+
}
|