@dooboostore/dom-render 1.0.98
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/DomRender.d.ts +24 -0
- package/DomRender.js +115 -0
- package/DomRenderProxy.d.ts +38 -0
- package/DomRenderProxy.js +586 -0
- package/README.MD +938 -0
- package/components/ComponentBase.d.ts +41 -0
- package/components/ComponentBase.js +210 -0
- package/components/ComponentSet.d.ts +22 -0
- package/components/ComponentSet.js +23 -0
- package/components/appender/Appender.d.ts +23 -0
- package/components/appender/Appender.js +59 -0
- package/components/checkbox/CheckBox.d.ts +47 -0
- package/components/checkbox/CheckBox.js +118 -0
- package/components/choose/Choose.d.ts +39 -0
- package/components/choose/Choose.js +110 -0
- package/components/details/Details.d.ts +57 -0
- package/components/details/Details.js +199 -0
- package/components/dialog/Dialog.d.ts +1 -0
- package/components/dialog/Dialog.js +85 -0
- package/components/dialog/example/ImageEditorDialog.d.ts +1 -0
- package/components/dialog/example/ImageEditorDialog.js +116 -0
- package/components/forOf/ForOf.d.ts +18 -0
- package/components/forOf/ForOf.js +32 -0
- package/components/if/If.d.ts +21 -0
- package/components/if/If.js +40 -0
- package/components/index.d.ts +27 -0
- package/components/index.js +13 -0
- package/components/input/Input.d.ts +34 -0
- package/components/input/Input.js +86 -0
- package/components/promise/PromiseSwitch.d.ts +55 -0
- package/components/promise/PromiseSwitch.js +181 -0
- package/components/radio/Radio.d.ts +45 -0
- package/components/radio/Radio.js +123 -0
- package/components/select/Select.d.ts +23 -0
- package/components/select/Select.js +52 -0
- package/components/this/This.d.ts +24 -0
- package/components/this/This.js +62 -0
- package/components/timer/Timer.d.ts +26 -0
- package/components/timer/Timer.js +102 -0
- package/configs/Config.d.ts +34 -0
- package/configs/Config.js +2 -0
- package/configs/TargetAttr.d.ts +7 -0
- package/configs/TargetAttr.js +2 -0
- package/configs/TargetElement.d.ts +16 -0
- package/configs/TargetElement.js +2 -0
- package/css/parse/index.d.ts +49 -0
- package/css/parse/index.js +498 -0
- package/css/stringify/compiler.d.ts +34 -0
- package/css/stringify/compiler.js +36 -0
- package/css/stringify/compress.d.ts +104 -0
- package/css/stringify/compress.js +147 -0
- package/css/stringify/identity.d.ts +109 -0
- package/css/stringify/identity.js +183 -0
- package/css/stringify/index.d.ts +24 -0
- package/css/stringify/index.js +27 -0
- package/css/stringify/types.d.ts +15 -0
- package/css/stringify/types.js +2 -0
- package/css/types.d.ts +10 -0
- package/css/types.js +2 -0
- package/decorators/DomRenderNoProxy.d.ts +4 -0
- package/decorators/DomRenderNoProxy.js +15 -0
- package/events/EventManager.d.ts +68 -0
- package/events/EventManager.js +477 -0
- package/index.d.ts +2 -0
- package/index.js +2 -0
- package/iterators/Range.d.ts +24 -0
- package/iterators/Range.js +70 -0
- package/lifecycle/OnBeforeReturnGet.d.ts +4 -0
- package/lifecycle/OnBeforeReturnGet.js +2 -0
- package/lifecycle/OnBeforeReturnSet.d.ts +5 -0
- package/lifecycle/OnBeforeReturnSet.js +4 -0
- package/lifecycle/OnChangeAttrRender.d.ts +9 -0
- package/lifecycle/OnChangeAttrRender.js +4 -0
- package/lifecycle/OnChildRenderedByProperty.d.ts +5 -0
- package/lifecycle/OnChildRenderedByProperty.js +4 -0
- package/lifecycle/OnCreateRender.d.ts +5 -0
- package/lifecycle/OnCreateRender.js +4 -0
- package/lifecycle/OnCreateRenderData.d.ts +10 -0
- package/lifecycle/OnCreateRenderData.js +4 -0
- package/lifecycle/OnCreateRendered.d.ts +8 -0
- package/lifecycle/OnCreateRendered.js +4 -0
- package/lifecycle/OnCreatedThisChild.d.ts +6 -0
- package/lifecycle/OnCreatedThisChild.js +4 -0
- package/lifecycle/OnDestroyRender.d.ts +9 -0
- package/lifecycle/OnDestroyRender.js +4 -0
- package/lifecycle/OnInitRender.d.ts +6 -0
- package/lifecycle/OnInitRender.js +4 -0
- package/lifecycle/OnProxyDomRender.d.ts +5 -0
- package/lifecycle/OnProxyDomRender.js +2 -0
- package/lifecycle/dr-this/OnDrThisBind.d.ts +5 -0
- package/lifecycle/dr-this/OnDrThisBind.js +4 -0
- package/lifecycle/dr-this/OnDrThisUnBind.d.ts +5 -0
- package/lifecycle/dr-this/OnDrThisUnBind.js +4 -0
- package/managers/RenderManager.d.ts +2 -0
- package/managers/RenderManager.js +12 -0
- package/messenger/DefaultMessenger.d.ts +4 -0
- package/messenger/DefaultMessenger.js +4 -0
- package/messenger/Messenger.d.ts +79 -0
- package/messenger/Messenger.js +185 -0
- package/operators/Appender.d.ts +15 -0
- package/operators/Appender.js +90 -0
- package/operators/Dr.d.ts +9 -0
- package/operators/Dr.js +53 -0
- package/operators/DrAppender.d.ts +9 -0
- package/operators/DrAppender.js +69 -0
- package/operators/DrFor.d.ts +9 -0
- package/operators/DrFor.js +58 -0
- package/operators/DrForOf.d.ts +9 -0
- package/operators/DrForOf.js +120 -0
- package/operators/DrForm.d.ts +9 -0
- package/operators/DrForm.js +79 -0
- package/operators/DrIf.d.ts +9 -0
- package/operators/DrIf.js +70 -0
- package/operators/DrInnerHTML.d.ts +9 -0
- package/operators/DrInnerHTML.js +48 -0
- package/operators/DrInnerText.d.ts +9 -0
- package/operators/DrInnerText.js +46 -0
- package/operators/DrPre.d.ts +8 -0
- package/operators/DrPre.js +22 -0
- package/operators/DrRepeat.d.ts +9 -0
- package/operators/DrRepeat.js +70 -0
- package/operators/DrStripElement.d.ts +9 -0
- package/operators/DrStripElement.js +50 -0
- package/operators/DrTargetAttr.d.ts +8 -0
- package/operators/DrTargetAttr.js +45 -0
- package/operators/DrTargetElement.d.ts +13 -0
- package/operators/DrTargetElement.js +91 -0
- package/operators/DrTargetElementIsElement.d.ts +13 -0
- package/operators/DrTargetElementIsElement.js +79 -0
- package/operators/DrThis.d.ts +7 -0
- package/operators/DrThis.js +72 -0
- package/operators/DrThisProperty.d.ts +11 -0
- package/operators/DrThisProperty.js +93 -0
- package/operators/OperatorExecuter.d.ts +50 -0
- package/operators/OperatorExecuter.js +50 -0
- package/operators/OperatorExecuterAttrRequire.d.ts +9 -0
- package/operators/OperatorExecuterAttrRequire.js +25 -0
- package/package.json +70 -0
- package/rawsets/AttrInitCallBack.d.ts +6 -0
- package/rawsets/AttrInitCallBack.js +2 -0
- package/rawsets/Attrs.d.ts +27 -0
- package/rawsets/Attrs.js +2 -0
- package/rawsets/CreatorMetaData.d.ts +20 -0
- package/rawsets/CreatorMetaData.js +2 -0
- package/rawsets/DestroyOptionType.d.ts +5 -0
- package/rawsets/DestroyOptionType.js +6 -0
- package/rawsets/ElementInitCallBack.d.ts +9 -0
- package/rawsets/ElementInitCallBack.js +2 -0
- package/rawsets/RawSet.d.ts +180 -0
- package/rawsets/RawSet.js +1450 -0
- package/rawsets/RawSetOperatorType.d.ts +4 -0
- package/rawsets/RawSetOperatorType.js +5 -0
- package/rawsets/RawSetType.d.ts +8 -0
- package/rawsets/RawSetType.js +9 -0
- package/rawsets/Render.d.ts +27 -0
- package/rawsets/Render.js +2 -0
- package/routers/HashRouter.d.ts +24 -0
- package/routers/HashRouter.js +86 -0
- package/routers/PathRouter.d.ts +23 -0
- package/routers/PathRouter.js +73 -0
- package/routers/Router.d.ts +68 -0
- package/routers/Router.js +132 -0
- package/types/Types.d.ts +12 -0
- package/types/Types.js +26 -0
- package/validators/AllCheckedValidatorArray.d.ts +7 -0
- package/validators/AllCheckedValidatorArray.js +11 -0
- package/validators/AllUnCheckedValidatorArray.d.ts +7 -0
- package/validators/AllUnCheckedValidatorArray.js +11 -0
- package/validators/CheckedValidator.d.ts +6 -0
- package/validators/CheckedValidator.js +11 -0
- package/validators/CountEqualsCheckedValidatorArray.d.ts +8 -0
- package/validators/CountEqualsCheckedValidatorArray.js +12 -0
- package/validators/CountEqualsUnCheckedValidatorArray.d.ts +8 -0
- package/validators/CountEqualsUnCheckedValidatorArray.js +12 -0
- package/validators/CountGreaterThanCheckedValidatorArray.d.ts +8 -0
- package/validators/CountGreaterThanCheckedValidatorArray.js +12 -0
- package/validators/CountGreaterThanEqualsCheckedValidatorArray.d.ts +8 -0
- package/validators/CountGreaterThanEqualsCheckedValidatorArray.js +12 -0
- package/validators/CountGreaterThanEqualsUnCheckedValidatorArray.d.ts +8 -0
- package/validators/CountGreaterThanEqualsUnCheckedValidatorArray.js +12 -0
- package/validators/CountGreaterThanUnCheckedValidatorArray.d.ts +8 -0
- package/validators/CountGreaterThanUnCheckedValidatorArray.js +12 -0
- package/validators/CountLessThanCheckedValidatorArray.d.ts +8 -0
- package/validators/CountLessThanCheckedValidatorArray.js +12 -0
- package/validators/CountLessThanEqualsCheckedValidatorArray.d.ts +8 -0
- package/validators/CountLessThanEqualsCheckedValidatorArray.js +12 -0
- package/validators/CountLessThanEqualsUnCheckedValidatorArray.d.ts +8 -0
- package/validators/CountLessThanEqualsUnCheckedValidatorArray.js +12 -0
- package/validators/CountLessThanUnCheckedValidatorArray.d.ts +8 -0
- package/validators/CountLessThanUnCheckedValidatorArray.js +12 -0
- package/validators/CountUnCheckedValidatorArray.d.ts +8 -0
- package/validators/CountUnCheckedValidatorArray.js +12 -0
- package/validators/EmptyValidator.d.ts +6 -0
- package/validators/EmptyValidator.js +12 -0
- package/validators/ExcludeCheckedValidatorArray.d.ts +9 -0
- package/validators/ExcludeCheckedValidatorArray.js +17 -0
- package/validators/FormValidator.d.ts +8 -0
- package/validators/FormValidator.js +16 -0
- package/validators/IncludeCheckedValidatorArray.d.ts +9 -0
- package/validators/IncludeCheckedValidatorArray.js +17 -0
- package/validators/MultipleValidator.d.ts +9 -0
- package/validators/MultipleValidator.js +25 -0
- package/validators/NonPassValidator.d.ts +6 -0
- package/validators/NonPassValidator.js +10 -0
- package/validators/NotEmptyValidator.d.ts +6 -0
- package/validators/NotEmptyValidator.js +13 -0
- package/validators/NotRegExpTestValidator.d.ts +7 -0
- package/validators/NotRegExpTestValidator.js +20 -0
- package/validators/PassValidator.d.ts +6 -0
- package/validators/PassValidator.js +10 -0
- package/validators/RegExpTestValidator.d.ts +7 -0
- package/validators/RegExpTestValidator.js +21 -0
- package/validators/RequiredValidator.d.ts +6 -0
- package/validators/RequiredValidator.js +12 -0
- package/validators/UnCheckedValidator.d.ts +6 -0
- package/validators/UnCheckedValidator.js +11 -0
- package/validators/ValidMultipleValidator.d.ts +10 -0
- package/validators/ValidMultipleValidator.js +12 -0
- package/validators/ValidValidator.d.ts +7 -0
- package/validators/ValidValidator.js +11 -0
- package/validators/ValidValidatorArray.d.ts +8 -0
- package/validators/ValidValidatorArray.js +11 -0
- package/validators/Validator.d.ts +58 -0
- package/validators/Validator.js +203 -0
- package/validators/ValidatorArray.d.ts +18 -0
- package/validators/ValidatorArray.js +77 -0
- package/validators/ValueEqualsValidator.d.ts +7 -0
- package/validators/ValueEqualsValidator.js +11 -0
- package/validators/ValueNotEqualsValidator.d.ts +7 -0
- package/validators/ValueNotEqualsValidator.js +11 -0
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export var RawSetType;
|
|
2
|
+
(function (RawSetType) {
|
|
3
|
+
RawSetType["TEXT"] = "TEXT";
|
|
4
|
+
RawSetType["STYLE_TEXT"] = "STYLE_TEXT";
|
|
5
|
+
RawSetType["TARGET_ELEMENT"] = "TARGET_ELEMENT";
|
|
6
|
+
RawSetType["TARGET_ATTR"] = "TARGET_ATTR";
|
|
7
|
+
RawSetType["UNKOWN"] = "UNKOWN";
|
|
8
|
+
})(RawSetType || (RawSetType = {}));
|
|
9
|
+
//# sourceMappingURL=RawSetType.js.map
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { CreatorMetaData } from './CreatorMetaData';
|
|
2
|
+
import { Router } from '../routers/Router';
|
|
3
|
+
import { RawSet } from './RawSet';
|
|
4
|
+
export type Render = {
|
|
5
|
+
rawSet?: RawSet;
|
|
6
|
+
scripts?: {
|
|
7
|
+
[n: string]: any;
|
|
8
|
+
};
|
|
9
|
+
bindScript?: string;
|
|
10
|
+
renderScript?: string;
|
|
11
|
+
element?: any;
|
|
12
|
+
getElement?: <T extends Element>() => T;
|
|
13
|
+
attribute?: any;
|
|
14
|
+
creatorMetaData?: CreatorMetaData;
|
|
15
|
+
router?: Router;
|
|
16
|
+
range?: any;
|
|
17
|
+
value?: any;
|
|
18
|
+
currentThis?: any;
|
|
19
|
+
currentThisPath?: any;
|
|
20
|
+
nearThisPath?: string;
|
|
21
|
+
nearThis?: any;
|
|
22
|
+
parentThisPath?: string;
|
|
23
|
+
parentThis?: any;
|
|
24
|
+
rootObject?: any;
|
|
25
|
+
[n: string]: any;
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=Render.d.ts.map
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { RouteAction, Router, RouterConfig } from './Router';
|
|
2
|
+
export declare class HashRouter extends Router {
|
|
3
|
+
constructor(config: RouterConfig);
|
|
4
|
+
getSearchParams(data?: {
|
|
5
|
+
delete?: string[];
|
|
6
|
+
append?: [[string, string]];
|
|
7
|
+
}): URLSearchParams;
|
|
8
|
+
push(path: RouteAction, data?: any, title?: string): void;
|
|
9
|
+
replace(path: RouteAction, data?: any, title?: string): void;
|
|
10
|
+
setDeleteHashSearchParam(name: string, data?: any, title?: string): void;
|
|
11
|
+
pushDeleteHashSearchParam(name: string | string[], data: any, title: string | undefined): void;
|
|
12
|
+
pushDeleteSearchParam(name: string | string[], data?: any, title?: string): void;
|
|
13
|
+
pushAddSearchParam(params: [[string, string]], data?: any, title?: string): void;
|
|
14
|
+
replaceDeleteHashSearchParam(name: string | string[], data: any, title: string | undefined): void;
|
|
15
|
+
replaceDeleteSearchParam(name: string | string[], data?: any, title?: string): void;
|
|
16
|
+
replaceAddSearchParam(params: [[string, string]], data?: any, title?: string): void;
|
|
17
|
+
getUrl(): string;
|
|
18
|
+
getPath(): string;
|
|
19
|
+
getHashSearchParams(data?: {
|
|
20
|
+
delete?: string[];
|
|
21
|
+
append?: [[string, string]];
|
|
22
|
+
}): URLSearchParams;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=HashRouter.d.ts.map
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { Router } from './Router';
|
|
2
|
+
import { LocationUtils } from '@dooboostore/core-web/location/LocationUtils';
|
|
3
|
+
export class HashRouter extends Router {
|
|
4
|
+
constructor(config) {
|
|
5
|
+
super(config);
|
|
6
|
+
}
|
|
7
|
+
getSearchParams(data) {
|
|
8
|
+
var _a, _b;
|
|
9
|
+
const hashSearch = LocationUtils.hashSearch(this.config.window);
|
|
10
|
+
const searchParams = hashSearch ? new URLSearchParams(hashSearch) : (new URL(this.config.window.document.location.href)).searchParams;
|
|
11
|
+
(_a = data === null || data === void 0 ? void 0 : data.delete) === null || _a === void 0 ? void 0 : _a.forEach(it => {
|
|
12
|
+
searchParams.delete(it);
|
|
13
|
+
});
|
|
14
|
+
(_b = data === null || data === void 0 ? void 0 : data.append) === null || _b === void 0 ? void 0 : _b.forEach(it => {
|
|
15
|
+
searchParams.append(it[0], it[1]);
|
|
16
|
+
});
|
|
17
|
+
return searchParams;
|
|
18
|
+
}
|
|
19
|
+
push(path, data, title = '') {
|
|
20
|
+
if (path === '/') {
|
|
21
|
+
super.pushState(data, title, '/');
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
super.pushState(data, title, `#${this.toUrl(path)}`);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
replace(path, data, title) {
|
|
28
|
+
if (path === '/') {
|
|
29
|
+
super.replaceState(data, title, '/');
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
super.replaceState(data, title, `#${this.toUrl(path)}`);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
setDeleteHashSearchParam(name, data, title) {
|
|
36
|
+
}
|
|
37
|
+
pushDeleteHashSearchParam(name, data, title) {
|
|
38
|
+
const s = this.getHashSearchParams({ delete: Array.isArray(name) ? name : [name] });
|
|
39
|
+
const size = Array.from(s.entries()).length;
|
|
40
|
+
const href = `${this.config.window.location.pathname}${this.config.window.location.search}${size > 0 ? '#' + s.toString() : ''}`;
|
|
41
|
+
super.pushState(data, title, href);
|
|
42
|
+
}
|
|
43
|
+
pushDeleteSearchParam(name, data, title) {
|
|
44
|
+
const s = this.getSearchParams({ delete: Array.isArray(name) ? name : [name] });
|
|
45
|
+
this.push({ searchParams: s }, data, title);
|
|
46
|
+
}
|
|
47
|
+
pushAddSearchParam(params, data, title) {
|
|
48
|
+
const s = this.getSearchParams({ append: params });
|
|
49
|
+
this.push({ searchParams: s }, data, title);
|
|
50
|
+
}
|
|
51
|
+
replaceDeleteHashSearchParam(name, data, title) {
|
|
52
|
+
const s = this.getHashSearchParams({ delete: Array.isArray(name) ? name : [name] });
|
|
53
|
+
const size = Array.from(s.entries()).length;
|
|
54
|
+
const href = `${this.config.window.location.pathname}${this.config.window.location.search}${size > 0 ? '#' + s.toString() : ''}`;
|
|
55
|
+
super.pushState(data, title, href);
|
|
56
|
+
}
|
|
57
|
+
replaceDeleteSearchParam(name, data, title) {
|
|
58
|
+
const s = this.getSearchParams({ delete: Array.isArray(name) ? name : [name] });
|
|
59
|
+
this.push({ searchParams: s }, data, title);
|
|
60
|
+
}
|
|
61
|
+
replaceAddSearchParam(params, data, title) {
|
|
62
|
+
const s = this.getSearchParams({ append: params });
|
|
63
|
+
this.push({ searchParams: s }, data, title);
|
|
64
|
+
}
|
|
65
|
+
getUrl() {
|
|
66
|
+
return LocationUtils.hash(this.config.window) || '/';
|
|
67
|
+
}
|
|
68
|
+
getPath() {
|
|
69
|
+
return LocationUtils.hashPath(this.config.window) || '/';
|
|
70
|
+
}
|
|
71
|
+
getHashSearchParams(data) {
|
|
72
|
+
var _a, _b;
|
|
73
|
+
const hash = this.config.window.location.hash;
|
|
74
|
+
const queryIndex = hash.indexOf('?');
|
|
75
|
+
const searchParams = (queryIndex !== -1) ? new URLSearchParams(hash.slice(queryIndex + 1)) : new URLSearchParams();
|
|
76
|
+
;
|
|
77
|
+
(_a = data === null || data === void 0 ? void 0 : data.delete) === null || _a === void 0 ? void 0 : _a.forEach(it => {
|
|
78
|
+
searchParams.delete(it);
|
|
79
|
+
});
|
|
80
|
+
(_b = data === null || data === void 0 ? void 0 : data.append) === null || _b === void 0 ? void 0 : _b.forEach(it => {
|
|
81
|
+
searchParams.append(it[0], it[1]);
|
|
82
|
+
});
|
|
83
|
+
return searchParams;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=HashRouter.js.map
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { RouteAction, Router, RouterConfig } from './Router';
|
|
2
|
+
export declare class PathRouter extends Router {
|
|
3
|
+
constructor(config: RouterConfig);
|
|
4
|
+
getSearchParams(data?: {
|
|
5
|
+
delete?: string[];
|
|
6
|
+
append?: [[string, string]];
|
|
7
|
+
}): URLSearchParams;
|
|
8
|
+
push(path: RouteAction, data?: any, title?: string): void;
|
|
9
|
+
replace(path: RouteAction, data?: any, title?: string): void;
|
|
10
|
+
pushDeleteSearchParam(name: string, data?: any, title?: string): void;
|
|
11
|
+
pushDeleteHashSearchParam(name: string, data?: any, title?: string): void;
|
|
12
|
+
pushAddSearchParam(params: [[string, string]], data?: any, title?: string): void;
|
|
13
|
+
replaceDeleteSearchParam(name: string | string[], data?: any, title?: string): void;
|
|
14
|
+
replaceDeleteHashSearchParam(name: string | string[], data?: any, title?: string): void;
|
|
15
|
+
replaceAddSearchParam(params: [[string, string]], data?: any, title?: string): void;
|
|
16
|
+
getUrl(): string;
|
|
17
|
+
getPath(): string;
|
|
18
|
+
getHashSearchParams(data?: {
|
|
19
|
+
delete?: string[];
|
|
20
|
+
append?: [[string, string]];
|
|
21
|
+
}): URLSearchParams;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=PathRouter.d.ts.map
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { Router } from './Router';
|
|
2
|
+
export class PathRouter extends Router {
|
|
3
|
+
constructor(config) {
|
|
4
|
+
super(config);
|
|
5
|
+
}
|
|
6
|
+
getSearchParams(data) {
|
|
7
|
+
var _a, _b;
|
|
8
|
+
const searchParams = (new URL(this.config.window.document.location.href)).searchParams;
|
|
9
|
+
(_a = data === null || data === void 0 ? void 0 : data.delete) === null || _a === void 0 ? void 0 : _a.forEach(it => {
|
|
10
|
+
searchParams.delete(it);
|
|
11
|
+
});
|
|
12
|
+
(_b = data === null || data === void 0 ? void 0 : data.append) === null || _b === void 0 ? void 0 : _b.forEach(it => {
|
|
13
|
+
searchParams.append(it[0], it[1]);
|
|
14
|
+
});
|
|
15
|
+
return searchParams;
|
|
16
|
+
}
|
|
17
|
+
push(path, data, title = '') {
|
|
18
|
+
// console.log('pppppp?')
|
|
19
|
+
super.pushState(data, title, this.toUrl(path));
|
|
20
|
+
}
|
|
21
|
+
replace(path, data, title = '') {
|
|
22
|
+
super.replaceState(data, title, this.toUrl(path));
|
|
23
|
+
}
|
|
24
|
+
pushDeleteSearchParam(name, data, title) {
|
|
25
|
+
const s = this.getSearchParams({ delete: [name] });
|
|
26
|
+
this.push({ searchParams: s }, data, title);
|
|
27
|
+
}
|
|
28
|
+
pushDeleteHashSearchParam(name, data, title) {
|
|
29
|
+
const s = this.getHashSearchParams({ delete: [name] });
|
|
30
|
+
const size = Array.from(s.entries()).length;
|
|
31
|
+
const href = `${this.config.window.location.pathname}${this.config.window.location.search}${size > 0 ? '#' + s.toString() : ''}`;
|
|
32
|
+
super.pushState(data, title, href);
|
|
33
|
+
}
|
|
34
|
+
pushAddSearchParam(params, data, title) {
|
|
35
|
+
const s = this.getSearchParams({ append: params });
|
|
36
|
+
this.push({ searchParams: s }, data, title);
|
|
37
|
+
}
|
|
38
|
+
replaceDeleteSearchParam(name, data, title) {
|
|
39
|
+
const s = this.getSearchParams({ delete: Array.isArray(name) ? name : [name] });
|
|
40
|
+
this.replace({ searchParams: s }, data, title);
|
|
41
|
+
}
|
|
42
|
+
replaceDeleteHashSearchParam(name, data, title) {
|
|
43
|
+
const s = this.getHashSearchParams({ delete: Array.isArray(name) ? name : [name] });
|
|
44
|
+
const size = Array.from(s.entries()).length;
|
|
45
|
+
const href = `${this.config.window.location.pathname}${this.config.window.location.search}${size > 0 ? '#' + s.toString() : ''}`;
|
|
46
|
+
super.replaceState(data, title, href);
|
|
47
|
+
}
|
|
48
|
+
replaceAddSearchParam(params, data, title) {
|
|
49
|
+
const s = this.getSearchParams({ append: params });
|
|
50
|
+
this.replace({ searchParams: s }, data, title);
|
|
51
|
+
}
|
|
52
|
+
getUrl() {
|
|
53
|
+
const url = new URL(this.config.window.document.location.href);
|
|
54
|
+
return url.pathname + url.search;
|
|
55
|
+
}
|
|
56
|
+
getPath() {
|
|
57
|
+
return this.config.window.location.pathname;
|
|
58
|
+
}
|
|
59
|
+
getHashSearchParams(data) {
|
|
60
|
+
var _a, _b;
|
|
61
|
+
// http://local.com/#wow=222&wow=bb&z=2
|
|
62
|
+
const searchParams = new URLSearchParams(this.config.window.location.hash.slice(1));
|
|
63
|
+
(_a = data === null || data === void 0 ? void 0 : data.delete) === null || _a === void 0 ? void 0 : _a.forEach(it => {
|
|
64
|
+
searchParams.delete(it);
|
|
65
|
+
});
|
|
66
|
+
(_b = data === null || data === void 0 ? void 0 : data.append) === null || _b === void 0 ? void 0 : _b.forEach(it => {
|
|
67
|
+
searchParams.append(it[0], it[1]);
|
|
68
|
+
});
|
|
69
|
+
return searchParams;
|
|
70
|
+
// return undefined;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=PathRouter.js.map
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { ConvertUtils } from '@dooboostore/core/convert/ConvertUtils';
|
|
2
|
+
import ToURLSearchParamsParams = ConvertUtils.ToURLSearchParamsParams;
|
|
3
|
+
export type RouteData = {
|
|
4
|
+
path: string;
|
|
5
|
+
url: string;
|
|
6
|
+
data?: any;
|
|
7
|
+
searchParams: URLSearchParams;
|
|
8
|
+
pathData?: any;
|
|
9
|
+
router: Router;
|
|
10
|
+
};
|
|
11
|
+
export type RouterConfig<T = any> = {
|
|
12
|
+
rootObject?: T;
|
|
13
|
+
window: Window;
|
|
14
|
+
disableAttach?: boolean;
|
|
15
|
+
};
|
|
16
|
+
export type RouteAction = string | {
|
|
17
|
+
path?: string;
|
|
18
|
+
searchParams?: ToURLSearchParamsParams;
|
|
19
|
+
};
|
|
20
|
+
export declare abstract class Router<T = any> {
|
|
21
|
+
private changeCallbacks;
|
|
22
|
+
private _config;
|
|
23
|
+
get searchParamObject(): {
|
|
24
|
+
[key: string]: string | string[];
|
|
25
|
+
};
|
|
26
|
+
get config(): RouterConfig<T>;
|
|
27
|
+
constructor(config: RouterConfig<any>);
|
|
28
|
+
getSearchFirstParamsObject<T = any>(defaultValue?: T): T & import("@dooboostore/core/types").FieldType<T, string>;
|
|
29
|
+
getHashSearchFirstParamsObject<T = any>(): import("@dooboostore/core/types").FieldType<T, string>;
|
|
30
|
+
addChangeCallback(callback: (routeData: RouteData) => void): void;
|
|
31
|
+
attach(): Promise<void>;
|
|
32
|
+
testRegexp(regexp: string): boolean;
|
|
33
|
+
test(urlExpression: string): boolean;
|
|
34
|
+
getRouteData(urlExpression?: string): RouteData;
|
|
35
|
+
pushState(data: any, title: string, path: string): void;
|
|
36
|
+
replaceState(data: any, title: string, path: string): void;
|
|
37
|
+
dispatchPopStateEvent(): void;
|
|
38
|
+
reload(): void;
|
|
39
|
+
getData(): any;
|
|
40
|
+
getPathData(urlExpression: string, currentUrl?: string): any;
|
|
41
|
+
go(config: {
|
|
42
|
+
path: RouteAction;
|
|
43
|
+
data?: any;
|
|
44
|
+
replace?: boolean;
|
|
45
|
+
title?: string;
|
|
46
|
+
disabledPopEvent?: boolean;
|
|
47
|
+
} | string): Promise<void>;
|
|
48
|
+
toUrl(data: RouteAction): string;
|
|
49
|
+
abstract push(path: RouteAction, data?: any, title?: string): void;
|
|
50
|
+
abstract replace(path: RouteAction, data?: any, title?: string): void;
|
|
51
|
+
abstract pushDeleteSearchParam(name: string | string[], data?: any, title?: string): void;
|
|
52
|
+
abstract pushDeleteHashSearchParam(name: string | string[], data?: any, title?: string): void;
|
|
53
|
+
abstract pushAddSearchParam(params: [[string, string]], data?: any, title?: string): void;
|
|
54
|
+
abstract replaceDeleteSearchParam(name: string | string[], data?: any, title?: string): void;
|
|
55
|
+
abstract replaceDeleteHashSearchParam(name: string | string[], data?: any, title?: string): void;
|
|
56
|
+
abstract replaceAddSearchParam(params: [[string, string]], data?: any, title?: string): void;
|
|
57
|
+
abstract getSearchParams(data?: {
|
|
58
|
+
delete?: string[];
|
|
59
|
+
append?: [[string, string]];
|
|
60
|
+
}): URLSearchParams;
|
|
61
|
+
abstract getHashSearchParams(data?: {
|
|
62
|
+
delete?: string[];
|
|
63
|
+
append?: [[string, string]];
|
|
64
|
+
}): URLSearchParams;
|
|
65
|
+
abstract getUrl(): string;
|
|
66
|
+
abstract getPath(): string;
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=Router.d.ts.map
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
import { EventManager } from '../events/EventManager';
|
|
11
|
+
import { ConvertUtils } from '@dooboostore/core/convert/ConvertUtils';
|
|
12
|
+
import { Expression } from '@dooboostore/core/expression/Expression';
|
|
13
|
+
export class Router {
|
|
14
|
+
get searchParamObject() {
|
|
15
|
+
return ConvertUtils.toObject(this.getSearchParams());
|
|
16
|
+
}
|
|
17
|
+
get config() {
|
|
18
|
+
return this._config;
|
|
19
|
+
}
|
|
20
|
+
constructor(config) {
|
|
21
|
+
this.changeCallbacks = new Set();
|
|
22
|
+
this._config = config;
|
|
23
|
+
this._config.window.addEventListener('popstate', () => {
|
|
24
|
+
this.changeCallbacks.forEach(it => {
|
|
25
|
+
it(this.getRouteData());
|
|
26
|
+
});
|
|
27
|
+
});
|
|
28
|
+
// this.go({path:this.getUrl()});
|
|
29
|
+
}
|
|
30
|
+
getSearchFirstParamsObject(defaultValue) {
|
|
31
|
+
const a = ConvertUtils.toObject(this.getSearchParams(), { firstValue: true });
|
|
32
|
+
return Object.assign({}, defaultValue, a);
|
|
33
|
+
}
|
|
34
|
+
getHashSearchFirstParamsObject() {
|
|
35
|
+
return ConvertUtils.toObject(this.getHashSearchParams(), { firstValue: true });
|
|
36
|
+
}
|
|
37
|
+
addChangeCallback(callback) {
|
|
38
|
+
this.changeCallbacks.add(callback);
|
|
39
|
+
}
|
|
40
|
+
attach() {
|
|
41
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
42
|
+
const proxy = this.config.rootObject._DomRender_proxy;
|
|
43
|
+
if (proxy) {
|
|
44
|
+
const key = `___${EventManager.ROUTER_VARNAME}`;
|
|
45
|
+
yield proxy.render(key);
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
testRegexp(regexp) {
|
|
50
|
+
const b = RegExp(regexp).test(this.getPath());
|
|
51
|
+
return b;
|
|
52
|
+
}
|
|
53
|
+
test(urlExpression) {
|
|
54
|
+
if (this.getPathData(urlExpression)) {
|
|
55
|
+
return true;
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
return false;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
getRouteData(urlExpression) {
|
|
62
|
+
const newVar = {
|
|
63
|
+
path: this.getPath(),
|
|
64
|
+
url: this.getUrl(),
|
|
65
|
+
searchParams: this.getSearchParams()
|
|
66
|
+
};
|
|
67
|
+
const data = this.getData();
|
|
68
|
+
if (data) {
|
|
69
|
+
newVar.data = data;
|
|
70
|
+
}
|
|
71
|
+
if (urlExpression) {
|
|
72
|
+
const data = this.getPathData(urlExpression);
|
|
73
|
+
if (data) {
|
|
74
|
+
newVar.pathData = data;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
newVar.router = this;
|
|
78
|
+
return Object.freeze(newVar);
|
|
79
|
+
}
|
|
80
|
+
pushState(data, title, path) {
|
|
81
|
+
this.config.window.history.pushState(data, title, path);
|
|
82
|
+
}
|
|
83
|
+
replaceState(data, title, path) {
|
|
84
|
+
this.config.window.history.replaceState(data, title, path);
|
|
85
|
+
}
|
|
86
|
+
dispatchPopStateEvent() {
|
|
87
|
+
this.config.window.dispatchEvent(new Event('popstate'));
|
|
88
|
+
}
|
|
89
|
+
reload() {
|
|
90
|
+
this.config.window.dispatchEvent(new Event('popstate'));
|
|
91
|
+
}
|
|
92
|
+
getData() {
|
|
93
|
+
return this.config.window.history.state;
|
|
94
|
+
}
|
|
95
|
+
getPathData(urlExpression, currentUrl = this.getPath()) {
|
|
96
|
+
return Expression.Path.pathNameData(currentUrl, urlExpression);
|
|
97
|
+
}
|
|
98
|
+
go(config) {
|
|
99
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
100
|
+
if (typeof config === 'string') {
|
|
101
|
+
config = { path: config };
|
|
102
|
+
}
|
|
103
|
+
if (config === null || config === void 0 ? void 0 : config.replace) {
|
|
104
|
+
this.replace(config.path, config.data, config.title);
|
|
105
|
+
}
|
|
106
|
+
else {
|
|
107
|
+
this.push(config.path, config.data, config.title);
|
|
108
|
+
}
|
|
109
|
+
if (!this.config.disableAttach) {
|
|
110
|
+
yield this.attach();
|
|
111
|
+
}
|
|
112
|
+
if (!config.disabledPopEvent) {
|
|
113
|
+
this.dispatchPopStateEvent();
|
|
114
|
+
}
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
toUrl(data) {
|
|
118
|
+
var _a;
|
|
119
|
+
let targetPath;
|
|
120
|
+
if (typeof data === 'string') {
|
|
121
|
+
targetPath = data;
|
|
122
|
+
}
|
|
123
|
+
else {
|
|
124
|
+
const tpath = (_a = data.path) !== null && _a !== void 0 ? _a : this.getPath();
|
|
125
|
+
const s = data.searchParams ? ConvertUtils.toURLSearchParams(data.searchParams).toString() : '';
|
|
126
|
+
// data.searchParams
|
|
127
|
+
targetPath = `${tpath}${s.length > 0 ? '?' : ''}${s}`;
|
|
128
|
+
}
|
|
129
|
+
return targetPath;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
//# sourceMappingURL=Router.js.map
|
package/types/Types.d.ts
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare class Shield {
|
|
2
|
+
[name: string]: any;
|
|
3
|
+
}
|
|
4
|
+
export declare class DomRenderFinalProxy<T extends object> implements ProxyHandler<T> {
|
|
5
|
+
set(target: T, p: string | symbol, value: any, receiver: any): boolean;
|
|
6
|
+
get(target: T, p: string | symbol, receiver: any): any;
|
|
7
|
+
static final<T = any>(obj: T): T;
|
|
8
|
+
static isFinal<T = any>(obj: T): boolean;
|
|
9
|
+
static unFinal<T = any>(obj: T): T;
|
|
10
|
+
has(target: T, p: string | symbol): boolean;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=Types.d.ts.map
|
package/types/Types.js
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export class Shield {
|
|
2
|
+
}
|
|
3
|
+
export class DomRenderFinalProxy {
|
|
4
|
+
set(target, p, value, receiver) {
|
|
5
|
+
target[p] = value;
|
|
6
|
+
return true;
|
|
7
|
+
}
|
|
8
|
+
get(target, p, receiver) {
|
|
9
|
+
return target[p];
|
|
10
|
+
}
|
|
11
|
+
static final(obj) {
|
|
12
|
+
obj._DomRender_isFinal = true;
|
|
13
|
+
return obj;
|
|
14
|
+
}
|
|
15
|
+
static isFinal(obj) {
|
|
16
|
+
return '_DomRender_isFinal' in obj;
|
|
17
|
+
}
|
|
18
|
+
static unFinal(obj) {
|
|
19
|
+
delete obj._DomRender_isFinal;
|
|
20
|
+
return obj;
|
|
21
|
+
}
|
|
22
|
+
has(target, p) {
|
|
23
|
+
return p === '_DomRender_isFinal' || p in target;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=Types.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Validator } from './Validator';
|
|
2
|
+
import { ValidatorArray } from './ValidatorArray';
|
|
3
|
+
export declare class AllCheckedValidatorArray<T = any, E = Element> extends ValidatorArray<T, E> {
|
|
4
|
+
constructor(value?: Validator<T, E>[], target?: E, event?: Event, autoValid?: boolean);
|
|
5
|
+
valid(): boolean;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=AllCheckedValidatorArray.d.ts.map
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ValidatorArray } from './ValidatorArray';
|
|
2
|
+
export class AllCheckedValidatorArray extends ValidatorArray {
|
|
3
|
+
constructor(value, target, event, autoValid = true) {
|
|
4
|
+
super(value, target, event, autoValid);
|
|
5
|
+
}
|
|
6
|
+
valid() {
|
|
7
|
+
var _a;
|
|
8
|
+
return !(((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(it => !it.checked).length > 0);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=AllCheckedValidatorArray.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Validator } from './Validator';
|
|
2
|
+
import { ValidatorArray } from './ValidatorArray';
|
|
3
|
+
export declare class AllUnCheckedValidatorArray<T = any, E = Element> extends ValidatorArray<T, E> {
|
|
4
|
+
constructor(value?: Validator<T, E>[], target?: E, event?: Event, autoValid?: boolean);
|
|
5
|
+
valid(): boolean;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=AllUnCheckedValidatorArray.d.ts.map
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ValidatorArray } from './ValidatorArray';
|
|
2
|
+
export class AllUnCheckedValidatorArray extends ValidatorArray {
|
|
3
|
+
constructor(value, target, event, autoValid = true) {
|
|
4
|
+
super(value, target, event, autoValid);
|
|
5
|
+
}
|
|
6
|
+
valid() {
|
|
7
|
+
var _a;
|
|
8
|
+
return !(((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(it => it.checked).length > 0);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=AllUnCheckedValidatorArray.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Validator } from './Validator';
|
|
2
|
+
export declare class CheckedValidator<T = any, E = HTMLElement> extends Validator<T, E> {
|
|
3
|
+
constructor(value?: T, target?: E, event?: Event, autoValid?: boolean);
|
|
4
|
+
valid(): boolean;
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=CheckedValidator.d.ts.map
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Validator } from './Validator';
|
|
2
|
+
export class CheckedValidator extends Validator {
|
|
3
|
+
constructor(value, target, event, autoValid = true) {
|
|
4
|
+
super(value, target, event, autoValid);
|
|
5
|
+
}
|
|
6
|
+
valid() {
|
|
7
|
+
var _a, _b;
|
|
8
|
+
return (_b = (_a = this.getTarget()) === null || _a === void 0 ? void 0 : _a.checked) !== null && _b !== void 0 ? _b : false;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=CheckedValidator.js.map
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Validator } from './Validator';
|
|
2
|
+
import { ValidatorArray } from './ValidatorArray';
|
|
3
|
+
export declare class CountEqualsCheckedValidatorArray<T = any, E = Element> extends ValidatorArray<T, E> {
|
|
4
|
+
count: number;
|
|
5
|
+
constructor(count: number, value?: Validator<T, E>[], target?: E, event?: Event, autoValid?: boolean);
|
|
6
|
+
valid(): boolean;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=CountEqualsCheckedValidatorArray.d.ts.map
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ValidatorArray } from './ValidatorArray';
|
|
2
|
+
export class CountEqualsCheckedValidatorArray extends ValidatorArray {
|
|
3
|
+
constructor(count, value, target, event, autoValid = true) {
|
|
4
|
+
super(value, target, event, autoValid);
|
|
5
|
+
this.count = count;
|
|
6
|
+
}
|
|
7
|
+
valid() {
|
|
8
|
+
var _a;
|
|
9
|
+
return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(it => it.checked).length === this.count;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=CountEqualsCheckedValidatorArray.js.map
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Validator } from './Validator';
|
|
2
|
+
import { ValidatorArray } from './ValidatorArray';
|
|
3
|
+
export declare class CountEqualsUnCheckedValidatorArray<T = any, E = Element> extends ValidatorArray<T, E> {
|
|
4
|
+
count: number;
|
|
5
|
+
constructor(count: number, value?: Validator<T, E>[], target?: E, event?: Event, autoValid?: boolean);
|
|
6
|
+
valid(): boolean;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=CountEqualsUnCheckedValidatorArray.d.ts.map
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ValidatorArray } from './ValidatorArray';
|
|
2
|
+
export class CountEqualsUnCheckedValidatorArray extends ValidatorArray {
|
|
3
|
+
constructor(count, value, target, event, autoValid = true) {
|
|
4
|
+
super(value, target, event, autoValid);
|
|
5
|
+
this.count = count;
|
|
6
|
+
}
|
|
7
|
+
valid() {
|
|
8
|
+
var _a;
|
|
9
|
+
return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(it => !it.checked).length === this.count;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=CountEqualsUnCheckedValidatorArray.js.map
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Validator } from './Validator';
|
|
2
|
+
import { ValidatorArray } from './ValidatorArray';
|
|
3
|
+
export declare class CountGreaterThanCheckedValidatorArray<T = any, E = Element> extends ValidatorArray<T, E> {
|
|
4
|
+
count: number;
|
|
5
|
+
constructor(count: number, value?: Validator<T, E>[], target?: E, event?: Event, autoValid?: boolean);
|
|
6
|
+
valid(): boolean;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=CountGreaterThanCheckedValidatorArray.d.ts.map
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ValidatorArray } from './ValidatorArray';
|
|
2
|
+
export class CountGreaterThanCheckedValidatorArray extends ValidatorArray {
|
|
3
|
+
constructor(count, value, target, event, autoValid = true) {
|
|
4
|
+
super(value, target, event, autoValid);
|
|
5
|
+
this.count = count;
|
|
6
|
+
}
|
|
7
|
+
valid() {
|
|
8
|
+
var _a;
|
|
9
|
+
return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(it => it.checked).length > this.count;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=CountGreaterThanCheckedValidatorArray.js.map
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Validator } from './Validator';
|
|
2
|
+
import { ValidatorArray } from './ValidatorArray';
|
|
3
|
+
export declare class CountGreaterThanEqualsCheckedValidatorArray<T = any, E = Element> extends ValidatorArray<T, E> {
|
|
4
|
+
count: number;
|
|
5
|
+
constructor(count: number, value?: Validator<T, E>[], target?: E, event?: Event, autoValid?: boolean);
|
|
6
|
+
valid(): boolean;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=CountGreaterThanEqualsCheckedValidatorArray.d.ts.map
|