@dooboostore/dom-render 1.0.102 → 1.0.103
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 +21 -6
- package/DomRender.js +54 -23
- package/DomRenderProxy.d.ts +7 -3
- package/DomRenderProxy.js +120 -49
- package/README.MD +380 -65
- package/components/ComponentBase.d.ts +11 -9
- package/components/ComponentBase.js +41 -14
- package/components/ComponentSet.d.ts +2 -2
- package/components/appender/Appender.d.ts +2 -2
- package/components/checkbox/CheckBox.d.ts +4 -4
- package/components/choose/Choose.d.ts +4 -4
- package/components/choose/Choose.js +0 -16
- package/components/details/Details.d.ts +5 -5
- package/components/forOf/ForOf.d.ts +2 -2
- package/components/if/If.d.ts +2 -2
- package/components/index.d.ts +26 -24
- package/components/index.js +2 -1
- package/components/input/Input.d.ts +2 -2
- package/components/input/Input.js +27 -24
- package/components/promise/PromiseSwitch.d.ts +6 -6
- package/components/promise/PromiseSwitch.js +15 -0
- package/components/radio/Radio.d.ts +4 -4
- package/components/router/Route.d.ts +32 -0
- package/components/router/Route.js +116 -0
- package/components/select/Select.d.ts +3 -3
- package/components/select/Select.js +2 -2
- package/components/this/This.d.ts +9 -2
- package/components/this/This.js +24 -2
- package/components/timer/Timer.d.ts +2 -2
- package/configs/Config.d.ts +6 -1
- package/decorators/DomRenderNoProxy.d.ts +2 -0
- package/decorators/DomRenderNoProxy.js +15 -0
- package/dist/bundle.js +2 -0
- package/events/EventManager.d.ts +16 -4
- package/events/EventManager.js +320 -140
- package/index.d.ts +48 -1
- package/index.js +40 -0
- package/lifecycle/OnDestroyRender.d.ts +1 -1
- package/lifecycle/OnProxyDomRender.d.ts +1 -0
- package/lifecycle/OnProxyDomRender.js +1 -1
- package/operators/DrForOf.js +2 -1
- package/operators/DrIf.js +3 -2
- package/operators/DrTargetElement.js +2 -1
- package/operators/DrTargetElementIsElement.d.ts +0 -5
- package/operators/DrTargetElementIsElement.js +2 -1
- package/operators/DrThis.js +40 -11
- package/operators/OperatorExecuter.js +3 -1
- package/package.json +5 -4
- package/rawsets/Attrs.d.ts +2 -0
- package/rawsets/RawSet.d.ts +2 -2
- package/rawsets/RawSet.js +48 -33
- package/routers/HashRouter.d.ts +5 -4
- package/routers/HashRouter.js +8 -5
- package/routers/PathRouter.d.ts +5 -4
- package/routers/PathRouter.js +6 -4
- package/routers/Router.d.ts +22 -8
- package/routers/Router.js +44 -24
package/index.d.ts
CHANGED
|
@@ -1,2 +1,49 @@
|
|
|
1
|
-
export { DomRender } from './DomRender';
|
|
1
|
+
export { DomRender, type DomRenderRunConfig, type CreateComponentParam } from './DomRender';
|
|
2
|
+
export type { OnChangeAttrRender, OtherData } from './lifecycle/OnChangeAttrRender';
|
|
3
|
+
export type { OnCreateRenderData, OnCreateRenderDataParams } from './lifecycle/OnCreateRenderData';
|
|
4
|
+
export type { OnDestroyRender, OnDestroyRenderParams } from './lifecycle/OnDestroyRender';
|
|
5
|
+
export { type OnCreateRender } from './lifecycle/OnCreateRender';
|
|
6
|
+
export { type OnInitRender } from './lifecycle/OnInitRender';
|
|
7
|
+
export { type OnCreatedThisChild } from './lifecycle/OnCreatedThisChild';
|
|
8
|
+
export { type OnProxyDomRender } from './lifecycle/OnProxyDomRender';
|
|
9
|
+
export { type OnDrThisBind } from './lifecycle/dr-this/OnDrThisBind';
|
|
10
|
+
export { type OnDrThisUnBind } from './lifecycle/dr-this/OnDrThisUnBind';
|
|
11
|
+
export { type OnBeforeReturnGet } from './lifecycle/OnBeforeReturnGet';
|
|
12
|
+
export { type OnBeforeReturnSet } from './lifecycle/OnBeforeReturnSet';
|
|
13
|
+
export { type OnChildRenderedByProperty } from './lifecycle/OnChildRenderedByProperty';
|
|
14
|
+
export { ComponentBase, attribute, query, event } from './components/ComponentBase';
|
|
15
|
+
export { ComponentSet, type ComponentSetConfig } from './components/ComponentSet';
|
|
16
|
+
export { Appender as AppenderComponent } from './components/appender/Appender';
|
|
17
|
+
export { CheckBox } from './components/checkbox/CheckBox';
|
|
18
|
+
export { Choose } from './components/choose/Choose';
|
|
19
|
+
export { Details } from './components/details/Details';
|
|
20
|
+
export { ForOf } from './components/forOf/ForOf';
|
|
21
|
+
export { If } from './components/if/If';
|
|
22
|
+
export { Input } from './components/input/Input';
|
|
23
|
+
export { PromiseSwitch } from './components/promise/PromiseSwitch';
|
|
24
|
+
export { Radio } from './components/radio/Radio';
|
|
25
|
+
export { Select } from './components/select/Select';
|
|
26
|
+
export { This } from './components/this/This';
|
|
27
|
+
export { Timer } from './components/timer/Timer';
|
|
28
|
+
export { Appender } from './operators/Appender';
|
|
29
|
+
export { Router, type RouteData, type RouterConfig } from './routers/Router';
|
|
30
|
+
export { HashRouter } from './routers/HashRouter';
|
|
31
|
+
export { PathRouter } from './routers/PathRouter';
|
|
32
|
+
export { Validator } from './validators/Validator';
|
|
33
|
+
export { ValidatorArray } from './validators/ValidatorArray';
|
|
34
|
+
export { FormValidator } from './validators/FormValidator';
|
|
35
|
+
export { NotEmptyValidator } from './validators/NotEmptyValidator';
|
|
36
|
+
export { RegExpTestValidator } from './validators/RegExpTestValidator';
|
|
37
|
+
export { NotRegExpTestValidator } from './validators/NotRegExpTestValidator';
|
|
38
|
+
export { ValueEqualsValidator } from './validators/ValueEqualsValidator';
|
|
39
|
+
export { ValueNotEqualsValidator } from './validators/ValueNotEqualsValidator';
|
|
40
|
+
export { PassValidator } from './validators/PassValidator';
|
|
41
|
+
export { NonPassValidator } from './validators/NonPassValidator';
|
|
42
|
+
export { RequiredValidator } from './validators/RequiredValidator';
|
|
43
|
+
export { CheckedValidator } from './validators/CheckedValidator';
|
|
44
|
+
export { UnCheckedValidator } from './validators/UnCheckedValidator';
|
|
45
|
+
export { MultipleValidator } from './validators/MultipleValidator';
|
|
46
|
+
export { Shield } from './types/Types';
|
|
47
|
+
export { type Config } from './configs/Config';
|
|
48
|
+
export { Range } from './iterators/Range';
|
|
2
49
|
//# sourceMappingURL=index.d.ts.map
|
package/index.js
CHANGED
|
@@ -1,2 +1,42 @@
|
|
|
1
|
+
// Main class and types
|
|
1
2
|
export { DomRender } from './DomRender';
|
|
3
|
+
// Components
|
|
4
|
+
export { ComponentBase, attribute, query, event } from './components/ComponentBase';
|
|
5
|
+
export { ComponentSet } from './components/ComponentSet';
|
|
6
|
+
export { Appender as AppenderComponent } from './components/appender/Appender';
|
|
7
|
+
export { CheckBox } from './components/checkbox/CheckBox';
|
|
8
|
+
export { Choose } from './components/choose/Choose';
|
|
9
|
+
export { Details } from './components/details/Details';
|
|
10
|
+
export { ForOf } from './components/forOf/ForOf';
|
|
11
|
+
export { If } from './components/if/If';
|
|
12
|
+
export { Input } from './components/input/Input';
|
|
13
|
+
export { PromiseSwitch } from './components/promise/PromiseSwitch';
|
|
14
|
+
export { Radio } from './components/radio/Radio';
|
|
15
|
+
export { Select } from './components/select/Select';
|
|
16
|
+
export { This } from './components/this/This';
|
|
17
|
+
export { Timer } from './components/timer/Timer';
|
|
18
|
+
// Operators
|
|
19
|
+
export { Appender } from './operators/Appender';
|
|
20
|
+
// Routers
|
|
21
|
+
export { Router } from './routers/Router';
|
|
22
|
+
export { HashRouter } from './routers/HashRouter';
|
|
23
|
+
export { PathRouter } from './routers/PathRouter';
|
|
24
|
+
// Validators
|
|
25
|
+
export { Validator } from './validators/Validator';
|
|
26
|
+
export { ValidatorArray } from './validators/ValidatorArray';
|
|
27
|
+
export { FormValidator } from './validators/FormValidator';
|
|
28
|
+
export { NotEmptyValidator } from './validators/NotEmptyValidator';
|
|
29
|
+
export { RegExpTestValidator } from './validators/RegExpTestValidator';
|
|
30
|
+
export { NotRegExpTestValidator } from './validators/NotRegExpTestValidator';
|
|
31
|
+
export { ValueEqualsValidator } from './validators/ValueEqualsValidator';
|
|
32
|
+
export { ValueNotEqualsValidator } from './validators/ValueNotEqualsValidator';
|
|
33
|
+
export { PassValidator } from './validators/PassValidator';
|
|
34
|
+
export { NonPassValidator } from './validators/NonPassValidator';
|
|
35
|
+
export { RequiredValidator } from './validators/RequiredValidator';
|
|
36
|
+
export { CheckedValidator } from './validators/CheckedValidator';
|
|
37
|
+
export { UnCheckedValidator } from './validators/UnCheckedValidator';
|
|
38
|
+
export { MultipleValidator } from './validators/MultipleValidator';
|
|
39
|
+
// Other
|
|
40
|
+
export { Shield } from './types/Types';
|
|
41
|
+
export { Range } from './iterators/Range';
|
|
2
42
|
//# sourceMappingURL=index.js.map
|
|
@@ -3,7 +3,7 @@ export type OnDestroyRenderParams = {
|
|
|
3
3
|
rawSet: RawSet;
|
|
4
4
|
};
|
|
5
5
|
export interface OnDestroyRender {
|
|
6
|
-
onDestroyRender(data
|
|
6
|
+
onDestroyRender(data?: OnDestroyRenderParams): void;
|
|
7
7
|
}
|
|
8
8
|
export declare const isOnDestroyRender: (obj: any) => obj is OnDestroyRender;
|
|
9
9
|
//# sourceMappingURL=OnDestroyRender.d.ts.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export
|
|
1
|
+
export const isOnProxyDomRender = (obj) => typeof (obj === null || obj === void 0 ? void 0 : obj.onProxyDomRender) === 'function';
|
|
2
2
|
//# sourceMappingURL=OnProxyDomRender.js.map
|
package/operators/DrForOf.js
CHANGED
|
@@ -11,6 +11,7 @@ import { OperatorExecuterAttrRequire } from './OperatorExecuterAttrRequire';
|
|
|
11
11
|
import { ScriptUtils } from '@dooboostore/core-web/script/ScriptUtils';
|
|
12
12
|
import { RawSet } from '../rawsets/RawSet';
|
|
13
13
|
import { ExecuteState } from './OperatorExecuter';
|
|
14
|
+
import { ObjectUtils } from '@dooboostore/core';
|
|
14
15
|
export class DrForOf extends OperatorExecuterAttrRequire {
|
|
15
16
|
constructor(rawSet, render, returnContainer, elementSource, source, afterCallBack) {
|
|
16
17
|
source.operatorAround = undefined;
|
|
@@ -29,7 +30,7 @@ export class DrForOf extends OperatorExecuterAttrRequire {
|
|
|
29
30
|
${this.render.bindScript}
|
|
30
31
|
${(_b = this.elementSource.attrs.drBeforeOption) !== null && _b !== void 0 ? _b : ''}
|
|
31
32
|
var i = -1;
|
|
32
|
-
const forOf = ${attr};
|
|
33
|
+
const forOf = ${ObjectUtils.Path.toOptionalChainPath(attr)};
|
|
33
34
|
const forOfStr = \`${attr}\`.trim();
|
|
34
35
|
// console.log('forOf---',forOf);
|
|
35
36
|
if (forOf) {
|
package/operators/DrIf.js
CHANGED
|
@@ -11,6 +11,7 @@ import { OperatorExecuterAttrRequire } from './OperatorExecuterAttrRequire';
|
|
|
11
11
|
import { ScriptUtils } from '@dooboostore/core-web/script/ScriptUtils';
|
|
12
12
|
import { RawSet } from '../rawsets/RawSet';
|
|
13
13
|
import { ExecuteState } from './OperatorExecuter';
|
|
14
|
+
import { ObjectUtils } from '@dooboostore/core';
|
|
14
15
|
export class DrIf extends OperatorExecuterAttrRequire {
|
|
15
16
|
constructor(rawSet, render, returnContainer, elementSource, source, afterCallBack) {
|
|
16
17
|
source.operatorAround = undefined;
|
|
@@ -26,10 +27,10 @@ export class DrIf extends OperatorExecuterAttrRequire {
|
|
|
26
27
|
const keepgoing = ScriptUtils.eval(`
|
|
27
28
|
${this.render.bindScript}
|
|
28
29
|
${(_b = this.elementSource.attrs.drBeforeOption) !== null && _b !== void 0 ? _b : ''}
|
|
29
|
-
if ($rawSet.data === (${attr})) {
|
|
30
|
+
if ($rawSet.data === (${ObjectUtils.Path.toOptionalChainPath(attr)})) {
|
|
30
31
|
return false;
|
|
31
32
|
}
|
|
32
|
-
$rawSet.data = ${attr};
|
|
33
|
+
$rawSet.data = ${ObjectUtils.Path.toOptionalChainPath(attr)};
|
|
33
34
|
if($rawSet.data) {
|
|
34
35
|
const n = $element.cloneNode(true);
|
|
35
36
|
Object.entries(this.__render.drAttr).filter(([k,v]) => k !== 'drIf' && v).forEach(([k, v]) => n.setAttribute(this.__render.drAttrsOriginName[k], v));
|
|
@@ -68,7 +68,8 @@ export class DrTargetElement extends OperatorExecuter {
|
|
|
68
68
|
const rr = RawSet.checkPointCreates(targetFragment, this.source.obj, this.source.config);
|
|
69
69
|
if (targetElement.noStrip) {
|
|
70
70
|
Array.from(targetFragment.childNodes || []).forEach(child => {
|
|
71
|
-
|
|
71
|
+
var _a;
|
|
72
|
+
(_a = documentFragment.firstElementChild) === null || _a === void 0 ? void 0 : _a.appendChild(child);
|
|
72
73
|
});
|
|
73
74
|
}
|
|
74
75
|
(_d = this.elementSource.element.parentNode) === null || _d === void 0 ? void 0 : _d.replaceChild(documentFragment, this.elementSource.element);
|
|
@@ -1,11 +1,6 @@
|
|
|
1
1
|
import { RawSet } from '../rawsets/RawSet';
|
|
2
2
|
import { AfterCallBack, ElementSource, ExecuteState, OperatorExecuter, ReturnContainer, Source } from './OperatorExecuter';
|
|
3
3
|
import { Render } from '../rawsets/Render';
|
|
4
|
-
declare global {
|
|
5
|
-
interface Window {
|
|
6
|
-
HTMLMetaElement: typeof HTMLMetaElement;
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
4
|
export declare class DrTargetElementIsElement extends OperatorExecuter<string | null> {
|
|
10
5
|
constructor(rawSet: RawSet, render: Render, returnContainer: ReturnContainer, elementSource: ElementSource, source: Source, afterCallBack: AfterCallBack);
|
|
11
6
|
execute(attr: string | null): Promise<ExecuteState>;
|
|
@@ -57,7 +57,8 @@ export class DrTargetElementIsElement extends OperatorExecuter {
|
|
|
57
57
|
const rr = RawSet.checkPointCreates(targetFragment, this.source.obj, this.source.config);
|
|
58
58
|
if (noStrip) {
|
|
59
59
|
Array.from(targetFragment.childNodes || []).forEach(child => {
|
|
60
|
-
|
|
60
|
+
var _a;
|
|
61
|
+
(_a = documentFragment.firstElementChild) === null || _a === void 0 ? void 0 : _a.appendChild(child);
|
|
61
62
|
});
|
|
62
63
|
}
|
|
63
64
|
(_d = this.elementSource.element.parentNode) === null || _d === void 0 ? void 0 : _d.replaceChild(documentFragment, this.elementSource.element);
|
package/operators/DrThis.js
CHANGED
|
@@ -13,13 +13,40 @@ import { ComponentSet } from '../components/ComponentSet';
|
|
|
13
13
|
import { ExecuteState } from './OperatorExecuter';
|
|
14
14
|
import { isOnDrThisUnBind } from '../lifecycle/dr-this/OnDrThisUnBind';
|
|
15
15
|
import { isOnDrThisBind } from '../lifecycle/dr-this/OnDrThisBind';
|
|
16
|
+
import { ScriptUtils } from '@dooboostore/core-web/script/ScriptUtils';
|
|
16
17
|
export class DrThis extends OperatorExecuterAttrRequire {
|
|
17
18
|
executeAttrRequire(attr) {
|
|
18
19
|
return __awaiter(this, void 0, void 0, function* () {
|
|
19
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
|
20
|
-
//
|
|
21
|
-
|
|
20
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
|
|
21
|
+
// const e = this.elementSource;
|
|
22
|
+
// console.log('drThis!!!!!!!!!!!!!', this.elementSource.attrs.drDetectIfOption, this.elementSource.attrs.drIfOption);
|
|
23
|
+
const optionIf = (_a = this.elementSource.attrs.drDetectIfOption) !== null && _a !== void 0 ? _a : this.elementSource.attrs.drIfOption;
|
|
24
|
+
const ok = ScriptUtils.eval(`
|
|
25
|
+
${this.render.bindScript}
|
|
26
|
+
try {
|
|
27
|
+
const ok = ${this.elementSource.attrs.drThis};
|
|
28
|
+
const option = ${optionIf};
|
|
29
|
+
if (option!==null) {
|
|
30
|
+
return !!(ok && option);
|
|
31
|
+
}
|
|
32
|
+
// console.log('vv', ${this.elementSource.attrs.drThis}, ${this.elementSource.attrs.drIfOption}, '${this.elementSource.attrs.drIfOption}');
|
|
33
|
+
return !!ok;
|
|
34
|
+
} catch(e) {
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
`, Object.assign(this.source.obj, {
|
|
38
|
+
__render: Object.freeze(Object.assign({ drAttr: this.elementSource.attrs, drAttrsOriginName: RawSet.drAttrsOriginName }, this.render))
|
|
39
|
+
}));
|
|
40
|
+
// console.log('----zxvxcv-----!!!aa!', ok);
|
|
41
|
+
// if (!ok) {
|
|
42
|
+
// this.elementSource.element.remove();
|
|
43
|
+
// return ExecuteState.STOP;
|
|
44
|
+
// }
|
|
45
|
+
// console.log('----zxvxcv-----!!!!', attr);
|
|
46
|
+
if (attr && this.elementSource.attrs.drThis && ok) {
|
|
22
47
|
let thisPath = this.elementSource.attrs.drThis;
|
|
48
|
+
// let optionIf = this.elementSource.attrs.drIfOption;
|
|
49
|
+
// console.log('drThis!!!!!!!!!!!!!, ', optionIf)
|
|
23
50
|
if (attr instanceof ComponentSet) {
|
|
24
51
|
// console.log('drThis!!!!!!!!!!->', attr)
|
|
25
52
|
// if (this.rawSet.data) {
|
|
@@ -27,32 +54,34 @@ export class DrThis extends OperatorExecuterAttrRequire {
|
|
|
27
54
|
// debugger;
|
|
28
55
|
// RawSet.destroy((this.rawSet.data as ComponentSet).obj, [], this.source.config, destroyOptions);
|
|
29
56
|
// }
|
|
30
|
-
if (((
|
|
31
|
-
if (isOnDrThisUnBind((
|
|
32
|
-
(
|
|
57
|
+
if (((_c = (_b = attr.config) === null || _b === void 0 ? void 0 : _b.beforeComponentSet) === null || _c === void 0 ? void 0 : _c.obj) !== attr.obj) {
|
|
58
|
+
if (isOnDrThisUnBind((_d = attr.config.beforeComponentSet) === null || _d === void 0 ? void 0 : _d.obj)) {
|
|
59
|
+
(_g = (_f = (_e = attr.config.beforeComponentSet) === null || _e === void 0 ? void 0 : _e.obj) === null || _f === void 0 ? void 0 : _f.onDrThisUnBind) === null || _g === void 0 ? void 0 : _g.call(_f);
|
|
33
60
|
}
|
|
34
61
|
}
|
|
35
62
|
// this.rawSet.dataSet ??= {};
|
|
36
63
|
// this.rawSet.dataSet.data = attr;
|
|
37
|
-
if (((
|
|
64
|
+
if (((_j = (_h = attr.config) === null || _h === void 0 ? void 0 : _h.beforeComponentSet) === null || _j === void 0 ? void 0 : _j.obj) !== attr.obj) {
|
|
38
65
|
if (isOnDrThisBind(attr.obj)) {
|
|
39
|
-
(
|
|
66
|
+
(_l = (_k = attr.obj) === null || _k === void 0 ? void 0 : _k.onDrThisBind) === null || _l === void 0 ? void 0 : _l.call(_k);
|
|
40
67
|
}
|
|
41
68
|
}
|
|
42
69
|
// 중요: componentSet 의 objPath를 보고 판단하는 중요한부분
|
|
43
70
|
thisPath = `${this.elementSource.attrs.drThis}${attr.config.objPath ? ('.' + attr.config.objPath) : ''}`;
|
|
71
|
+
// const zthisPath = `${this.elementSource.attrs.drThis}${attr.config.objPath ? ('?.' + attr.config.objPath) : ''}`;
|
|
72
|
+
// console.log('thisPaththisPaththisPath',thisPath)
|
|
44
73
|
this.setThisPath(thisPath);
|
|
45
|
-
const componentBody = yield RawSet.drThisCreate(this.rawSet, this.elementSource.element, thisPath, (
|
|
74
|
+
const componentBody = yield RawSet.drThisCreate(this.rawSet, this.elementSource.element, thisPath, (_m = this.elementSource.attrs.drVarOption) !== null && _m !== void 0 ? _m : '', this.elementSource.attrs.drStripOption, this.source.obj, this.source.config, attr);
|
|
46
75
|
this.returnContainer.fag.append(componentBody);
|
|
47
76
|
this.afterCallBack.onThisComponentSetCallBacks.push(attr);
|
|
48
77
|
}
|
|
49
78
|
else {
|
|
50
79
|
this.setThisPath(thisPath);
|
|
51
|
-
this.returnContainer.fag.append(yield RawSet.drThisCreate(this.rawSet, this.elementSource.element, this.elementSource.attrs.drThis, (
|
|
80
|
+
this.returnContainer.fag.append(yield RawSet.drThisCreate(this.rawSet, this.elementSource.element, this.elementSource.attrs.drThis, (_o = this.elementSource.attrs.drVarOption) !== null && _o !== void 0 ? _o : '', this.elementSource.attrs.drStripOption, this.source.obj, this.source.config));
|
|
52
81
|
}
|
|
53
82
|
// console.log('!!!!!!!!!zzz', Array.from(this.returnContainer.fag.childNodes), this.elementSource.element);
|
|
54
83
|
const rr = RawSet.checkPointCreates(this.returnContainer.fag, this.source.obj, this.source.config);
|
|
55
|
-
(
|
|
84
|
+
(_p = this.elementSource.element.parentNode) === null || _p === void 0 ? void 0 : _p.replaceChild(this.returnContainer.fag, this.elementSource.element);
|
|
56
85
|
this.returnContainer.raws.push(...rr);
|
|
57
86
|
}
|
|
58
87
|
else {
|
|
@@ -8,6 +8,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
});
|
|
9
9
|
};
|
|
10
10
|
import { ScriptUtils } from '@dooboostore/core-web/script/ScriptUtils';
|
|
11
|
+
import { ObjectUtils } from '@dooboostore/core';
|
|
11
12
|
export var ExecuteState;
|
|
12
13
|
(function (ExecuteState) {
|
|
13
14
|
ExecuteState[ExecuteState["EXECUTE"] = 0] = "EXECUTE";
|
|
@@ -35,7 +36,8 @@ export class OperatorExecuter {
|
|
|
35
36
|
}
|
|
36
37
|
let r = attrValue;
|
|
37
38
|
if (r && this.startingExecute) {
|
|
38
|
-
|
|
39
|
+
const optionalPath = ObjectUtils.Path.toOptionalChainPath(attrValue);
|
|
40
|
+
r = ScriptUtils.eval(` ${this.render.bindScript}; return ${optionalPath}`, Object.assign(this.source.obj, { __render: this.render }));
|
|
39
41
|
}
|
|
40
42
|
if ((_c = this.source.operatorAround) === null || _c === void 0 ? void 0 : _c.before) {
|
|
41
43
|
r = (_d = this.source.operatorAround) === null || _d === void 0 ? void 0 : _d.before(r, this);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dooboostore/dom-render",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.103",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "html view template engine",
|
|
6
6
|
"keywords": [
|
|
@@ -44,8 +44,8 @@
|
|
|
44
44
|
},
|
|
45
45
|
"dependencies": {
|
|
46
46
|
"reflect-metadata": "^0.2.2",
|
|
47
|
-
"@dooboostore/core": "1.0.8",
|
|
48
47
|
"@dooboostore/core-web": "1.0.1",
|
|
48
|
+
"@dooboostore/core": "1.0.9",
|
|
49
49
|
"@dooboostore/core-node": "1.0.1"
|
|
50
50
|
},
|
|
51
51
|
"devDependencies": {
|
|
@@ -72,9 +72,10 @@
|
|
|
72
72
|
"webpack-dev-server": "^5.2.0"
|
|
73
73
|
},
|
|
74
74
|
"scripts": {
|
|
75
|
-
"build": "rm -rf dist && tsc -p tsconfig.build.json",
|
|
75
|
+
"tsc:build": "rm -rf dist && tsc -p tsconfig.build.json",
|
|
76
|
+
"bundle": "webpack --config webpack.config.js",
|
|
76
77
|
"clean": "rm -rf dist",
|
|
77
|
-
"npm:build": "pnpm run build && cp README.MD dist/ && pnpm pack && TARBALL_NAME=$(ls dooboostore-dom-render-*.tgz | head -n 1) && tar -xzf \"$TARBALL_NAME\" -C dist --strip-components=1 package/package.json && rm \"$TARBALL_NAME\"",
|
|
78
|
+
"npm:build": "pnpm run tsc:build && pnpm run bundle && cp README.MD dist/ && pnpm pack && TARBALL_NAME=$(ls dooboostore-dom-render-*.tgz | head -n 1) && tar -xzf \"$TARBALL_NAME\" -C dist --strip-components=1 package/package.json && rm \"$TARBALL_NAME\"",
|
|
78
79
|
"npm:clean": "rm -rf dist",
|
|
79
80
|
"npm:publish": "pnpm run npm:build && cd dist && pnpm publish --no-git-checks",
|
|
80
81
|
"npm:publish:clean": "pnpm run npm:publish && rm -rf dist",
|
package/rawsets/Attrs.d.ts
CHANGED
|
@@ -20,6 +20,8 @@ export type Attrs = {
|
|
|
20
20
|
drBeforeOption: string | null;
|
|
21
21
|
drCompleteOption: string | null;
|
|
22
22
|
drStripOption: string | null;
|
|
23
|
+
drIfOption: string | null;
|
|
24
|
+
drDetectIfOption: string | null;
|
|
23
25
|
drDestroyOption: string | null;
|
|
24
26
|
drHasKeysOption: string | null;
|
|
25
27
|
drKeyOption: string | null;
|
package/rawsets/RawSet.d.ts
CHANGED
|
@@ -135,7 +135,7 @@ export declare class RawSet {
|
|
|
135
135
|
}): string;
|
|
136
136
|
static drThisBindEncoding(element: Element, variable: RegExp, config: {
|
|
137
137
|
config: Config;
|
|
138
|
-
otherReplaceVariablePath
|
|
138
|
+
otherReplaceVariablePath?: string;
|
|
139
139
|
}): string;
|
|
140
140
|
static drThisBindDecoding(element: Element, config: {
|
|
141
141
|
asIs: string;
|
|
@@ -160,7 +160,7 @@ export declare class RawSet {
|
|
|
160
160
|
name: string;
|
|
161
161
|
noStrip?: boolean;
|
|
162
162
|
objFactory: (element: Element, obj: any, rawSet: RawSet, counstructorParam: any[]) => any;
|
|
163
|
-
template
|
|
163
|
+
template?: string;
|
|
164
164
|
styles?: string | (string[]);
|
|
165
165
|
}): TargetElement;
|
|
166
166
|
static isExpression(data: string | null): boolean;
|