@dooboostore/dom-render 1.0.110 → 1.0.112
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 +1 -2
- package/dist/cjs/DomRenderProxy.js +89 -48
- package/dist/cjs/DomRenderProxy.js.map +2 -2
- package/dist/cjs/components/ComponentBase.js +47 -1
- package/dist/cjs/components/ComponentBase.js.map +2 -2
- package/dist/cjs/components/a/A.js +22 -0
- package/dist/cjs/components/a/A.js.map +2 -2
- package/dist/cjs/components/appender/Appender.js +21 -4
- package/dist/cjs/components/appender/Appender.js.map +2 -2
- package/dist/cjs/components/details/Details.js +5 -0
- package/dist/cjs/components/details/Details.js.map +2 -2
- package/dist/cjs/components/forOf/ForOf.js +2 -2
- package/dist/cjs/components/forOf/ForOf.js.map +1 -1
- package/dist/cjs/components/if/If.js +1 -1
- package/dist/cjs/components/if/If.js.map +2 -2
- package/dist/cjs/components/index.js +3 -1
- package/dist/cjs/components/index.js.map +3 -3
- package/dist/cjs/components/router/RouterOutlet.js +41 -10
- package/dist/cjs/components/router/RouterOutlet.js.map +2 -2
- package/dist/cjs/components/select/Select.js +39 -1
- package/dist/cjs/components/select/Select.js.map +2 -2
- package/dist/cjs/components/this/This.js +33 -5
- package/dist/cjs/components/this/This.js.map +2 -2
- package/dist/cjs/decorators/DomRenderNoProxy.js +3 -9
- package/dist/cjs/decorators/DomRenderNoProxy.js.map +2 -2
- package/dist/cjs/events/EventManager.js +103 -37
- package/dist/cjs/events/EventManager.js.map +2 -2
- package/dist/cjs/lifecycle/OnChangeAttrRender.js.map +1 -1
- package/dist/cjs/lifecycle/OnChildRawSetRendered.js +26 -0
- package/dist/cjs/lifecycle/OnChildRawSetRendered.js.map +7 -0
- package/dist/cjs/lifecycle/OnRawSetRendered.js.map +2 -2
- package/dist/cjs/operators/Appender.js +8 -1
- package/dist/cjs/operators/Appender.js.map +2 -2
- package/dist/cjs/operators/Dr.js +2 -2
- package/dist/cjs/operators/Dr.js.map +2 -2
- package/dist/cjs/operators/DrAppender.js +2 -2
- package/dist/cjs/operators/DrAppender.js.map +2 -2
- package/dist/cjs/operators/DrFor.js +2 -2
- package/dist/cjs/operators/DrFor.js.map +2 -2
- package/dist/cjs/operators/DrForOf.js +34 -6
- package/dist/cjs/operators/DrForOf.js.map +2 -2
- package/dist/cjs/operators/DrForm.js +6 -6
- package/dist/cjs/operators/DrForm.js.map +2 -2
- package/dist/cjs/operators/DrInnerHTML.js +2 -2
- package/dist/cjs/operators/DrInnerHTML.js.map +2 -2
- package/dist/cjs/operators/DrRepeat.js +2 -2
- package/dist/cjs/operators/DrRepeat.js.map +2 -2
- package/dist/cjs/operators/DrStripElement.js +2 -2
- package/dist/cjs/operators/DrStripElement.js.map +2 -2
- package/dist/cjs/operators/DrTargetElement.js +14 -5
- package/dist/cjs/operators/DrTargetElement.js.map +2 -2
- package/dist/cjs/operators/DrTargetElementIsElement.js +2 -2
- package/dist/cjs/operators/DrTargetElementIsElement.js.map +2 -2
- package/dist/cjs/operators/DrThis.js +2 -2
- package/dist/cjs/operators/DrThis.js.map +2 -2
- package/dist/cjs/operators/DrThisProperty.js +2 -1
- package/dist/cjs/operators/DrThisProperty.js.map +2 -2
- package/dist/cjs/rawsets/RawSet.js +87 -160
- package/dist/cjs/rawsets/RawSet.js.map +2 -2
- package/dist/cjs/routers/HashRouter.js +3 -0
- package/dist/cjs/routers/HashRouter.js.map +2 -2
- package/dist/cjs/routers/PathRouter.js +3 -0
- package/dist/cjs/routers/PathRouter.js.map +2 -2
- package/dist/cjs/routers/Router.js +25 -21
- package/dist/cjs/routers/Router.js.map +2 -2
- package/dist/esm/DomRenderProxy.js +89 -48
- package/dist/esm/DomRenderProxy.js.map +2 -2
- package/dist/esm/components/ComponentBase.js +47 -1
- package/dist/esm/components/ComponentBase.js.map +2 -2
- package/dist/esm/components/a/A.js +22 -0
- package/dist/esm/components/a/A.js.map +2 -2
- package/dist/esm/components/appender/Appender.js +22 -5
- package/dist/esm/components/appender/Appender.js.map +2 -2
- package/dist/esm/components/details/Details.js +5 -0
- package/dist/esm/components/details/Details.js.map +2 -2
- package/dist/esm/components/forOf/ForOf.js +2 -2
- package/dist/esm/components/forOf/ForOf.js.map +1 -1
- package/dist/esm/components/if/If.js +1 -1
- package/dist/esm/components/if/If.js.map +2 -2
- package/dist/esm/components/index.js +3 -1
- package/dist/esm/components/index.js.map +2 -2
- package/dist/esm/components/router/RouterOutlet.js +41 -10
- package/dist/esm/components/router/RouterOutlet.js.map +2 -2
- package/dist/esm/components/select/Select.js +39 -1
- package/dist/esm/components/select/Select.js.map +2 -2
- package/dist/esm/components/this/This.js +33 -5
- package/dist/esm/components/this/This.js.map +2 -2
- package/dist/esm/decorators/DomRenderNoProxy.js +3 -9
- package/dist/esm/decorators/DomRenderNoProxy.js.map +2 -2
- package/dist/esm/events/EventManager.js +103 -37
- package/dist/esm/events/EventManager.js.map +2 -2
- package/dist/esm/lifecycle/OnChangeAttrRender.js.map +1 -1
- package/dist/esm/lifecycle/OnChildRawSetRendered.js +7 -0
- package/dist/esm/lifecycle/OnChildRawSetRendered.js.map +7 -0
- package/dist/esm/lifecycle/OnRawSetRendered.js.map +2 -2
- package/dist/esm/operators/Appender.js +8 -1
- package/dist/esm/operators/Appender.js.map +2 -2
- package/dist/esm/operators/Dr.js +2 -2
- package/dist/esm/operators/Dr.js.map +2 -2
- package/dist/esm/operators/DrAppender.js +2 -2
- package/dist/esm/operators/DrAppender.js.map +2 -2
- package/dist/esm/operators/DrFor.js +2 -2
- package/dist/esm/operators/DrFor.js.map +2 -2
- package/dist/esm/operators/DrForOf.js +34 -6
- package/dist/esm/operators/DrForOf.js.map +2 -2
- package/dist/esm/operators/DrForm.js +6 -6
- package/dist/esm/operators/DrForm.js.map +2 -2
- package/dist/esm/operators/DrInnerHTML.js +2 -2
- package/dist/esm/operators/DrInnerHTML.js.map +2 -2
- package/dist/esm/operators/DrRepeat.js +2 -2
- package/dist/esm/operators/DrRepeat.js.map +2 -2
- package/dist/esm/operators/DrStripElement.js +2 -2
- package/dist/esm/operators/DrStripElement.js.map +2 -2
- package/dist/esm/operators/DrTargetElement.js +14 -5
- package/dist/esm/operators/DrTargetElement.js.map +2 -2
- package/dist/esm/operators/DrTargetElementIsElement.js +2 -2
- package/dist/esm/operators/DrTargetElementIsElement.js.map +2 -2
- package/dist/esm/operators/DrThis.js +2 -2
- package/dist/esm/operators/DrThis.js.map +2 -2
- package/dist/esm/operators/DrThisProperty.js +2 -1
- package/dist/esm/operators/DrThisProperty.js.map +2 -2
- package/dist/esm/rawsets/RawSet.js +87 -160
- package/dist/esm/rawsets/RawSet.js.map +2 -2
- package/dist/esm/routers/HashRouter.js +3 -0
- package/dist/esm/routers/HashRouter.js.map +2 -2
- package/dist/esm/routers/PathRouter.js +3 -0
- package/dist/esm/routers/PathRouter.js.map +2 -2
- package/dist/esm/routers/Router.js +25 -21
- package/dist/esm/routers/Router.js.map +2 -2
- package/dist/esm-bundle/dooboostore-dom-render.esm.js +830 -1533
- package/dist/esm-bundle/dooboostore-dom-render.esm.js.map +4 -4
- package/dist/types/DomRenderProxy.d.ts.map +1 -1
- package/dist/types/components/ComponentBase.d.ts +12 -1
- package/dist/types/components/ComponentBase.d.ts.map +1 -1
- package/dist/types/components/a/A.d.ts +6 -0
- package/dist/types/components/a/A.d.ts.map +1 -1
- package/dist/types/components/appender/Appender.d.ts +1 -0
- package/dist/types/components/appender/Appender.d.ts.map +1 -1
- package/dist/types/components/details/Details.d.ts +2 -0
- package/dist/types/components/details/Details.d.ts.map +1 -1
- package/dist/types/components/forOf/ForOf.d.ts +1 -1
- package/dist/types/components/forOf/ForOf.d.ts.map +1 -1
- package/dist/types/components/if/If.d.ts.map +1 -1
- package/dist/types/components/index.d.ts +1 -0
- package/dist/types/components/index.d.ts.map +1 -1
- package/dist/types/components/router/RouterOutlet.d.ts +6 -3
- package/dist/types/components/router/RouterOutlet.d.ts.map +1 -1
- package/dist/types/components/select/Select.d.ts +5 -3
- package/dist/types/components/select/Select.d.ts.map +1 -1
- package/dist/types/components/this/This.d.ts +5 -1
- package/dist/types/components/this/This.d.ts.map +1 -1
- package/dist/types/decorators/DomRenderNoProxy.d.ts.map +1 -1
- package/dist/types/events/EventManager.d.ts +1 -0
- package/dist/types/events/EventManager.d.ts.map +1 -1
- package/dist/types/lifecycle/OnChangeAttrRender.d.ts +1 -1
- package/dist/types/lifecycle/OnChangeAttrRender.d.ts.map +1 -1
- package/dist/types/lifecycle/OnChildRawSetRendered.d.ts +9 -0
- package/dist/types/lifecycle/OnChildRawSetRendered.d.ts.map +1 -0
- package/dist/types/lifecycle/OnRawSetRendered.d.ts +2 -0
- package/dist/types/lifecycle/OnRawSetRendered.d.ts.map +1 -1
- package/dist/types/operators/Appender.d.ts +1 -0
- package/dist/types/operators/Appender.d.ts.map +1 -1
- package/dist/types/operators/Dr.d.ts.map +1 -1
- package/dist/types/operators/DrAppender.d.ts.map +1 -1
- package/dist/types/operators/DrFor.d.ts.map +1 -1
- package/dist/types/operators/DrForOf.d.ts.map +1 -1
- package/dist/types/operators/DrForm.d.ts.map +1 -1
- package/dist/types/operators/DrInnerHTML.d.ts.map +1 -1
- package/dist/types/operators/DrRepeat.d.ts.map +1 -1
- package/dist/types/operators/DrStripElement.d.ts.map +1 -1
- package/dist/types/operators/DrTargetElement.d.ts.map +1 -1
- package/dist/types/operators/DrThisProperty.d.ts.map +1 -1
- package/dist/types/rawsets/RawSet.d.ts +4 -1
- package/dist/types/rawsets/RawSet.d.ts.map +1 -1
- package/dist/types/routers/HashRouter.d.ts +1 -0
- package/dist/types/routers/HashRouter.d.ts.map +1 -1
- package/dist/types/routers/PathRouter.d.ts +1 -0
- package/dist/types/routers/PathRouter.d.ts.map +1 -1
- package/dist/types/routers/Router.d.ts +3 -0
- package/dist/types/routers/Router.d.ts.map +1 -1
- package/dist/umd-bundle/dooboostore-dom-render.umd.js +830 -1533
- package/dist/umd-bundle/dooboostore-dom-render.umd.js.map +4 -4
- package/package.json +4 -4
- package/src/DomRenderProxy.ts +169 -75
- package/src/DomRenderProxy.ts_cache_back +1031 -0
- package/src/components/ComponentBase.ts +61 -5
- package/src/components/a/A.ts +25 -0
- package/src/components/appender/Appender.ts +3 -3
- package/src/components/details/Details.ts +7 -0
- package/src/components/forOf/ForOf.ts +2 -2
- package/src/components/if/If.ts +3 -2
- package/src/components/index.ts +3 -0
- package/src/components/router/RouterOutlet.ts +60 -22
- package/src/components/select/Select.ts +69 -30
- package/src/components/this/This.ts +41 -6
- package/src/decorators/DomRenderNoProxy.ts +17 -14
- package/src/events/EventManager.ts +180 -77
- package/src/lifecycle/OnChangeAttrRender.ts +1 -1
- package/src/lifecycle/OnChildRawSetRendered.ts +13 -0
- package/src/lifecycle/OnRawSetRendered.ts +3 -1
- package/src/operators/Appender.ts +8 -1
- package/src/operators/Dr.ts +2 -1
- package/src/operators/DrAppender.ts +2 -1
- package/src/operators/DrFor.ts +2 -1
- package/src/operators/DrForOf.ts +36 -6
- package/src/operators/DrForm.ts +6 -5
- package/src/operators/DrInnerHTML.ts +2 -1
- package/src/operators/DrRepeat.ts +2 -1
- package/src/operators/DrStripElement.ts +2 -1
- package/src/operators/DrTargetElement.ts +17 -5
- package/src/operators/DrTargetElementIsElement.ts +2 -2
- package/src/operators/DrThis.ts +2 -2
- package/src/operators/DrThisProperty.ts +2 -1
- package/src/rawsets/RawSet.ts +161 -237
- package/src/routers/HashRouter.ts +4 -0
- package/src/routers/PathRouter.ts +5 -0
- package/src/routers/Router.ts +64 -47
- package/src/node_modules/.bin/acorn +0 -17
- package/src/node_modules/.bin/browserslist +0 -17
- package/src/node_modules/.bin/eslint +0 -17
- package/src/node_modules/.bin/sbf +0 -17
- package/src/node_modules/.bin/ts-node +0 -17
- package/src/node_modules/.bin/ts-node-cwd +0 -17
- package/src/node_modules/.bin/ts-node-dev +0 -17
- package/src/node_modules/.bin/ts-node-esm +0 -17
- package/src/node_modules/.bin/ts-node-script +0 -17
- package/src/node_modules/.bin/ts-node-transpile-only +0 -17
- package/src/node_modules/.bin/ts-script +0 -17
- package/src/node_modules/.bin/tsc +0 -17
- package/src/node_modules/.bin/tsnd +0 -17
- package/src/node_modules/.bin/tsserver +0 -17
- package/src/node_modules/.bin/webpack +0 -17
- package/src/node_modules/.bin/webpack-cli +0 -17
- package/src/node_modules/.bin/webpack-dev-server +0 -17
|
@@ -141,10 +141,49 @@ const _RawSet = class _RawSet {
|
|
|
141
141
|
});
|
|
142
142
|
return usingTriggerVariables;
|
|
143
143
|
}
|
|
144
|
-
// 중요 render 처리 부분
|
|
145
|
-
// public async render(obj: any, config: DomRenderConfig): Promise<RawSet[]> {
|
|
146
|
-
// }
|
|
147
144
|
async render(obj, config) {
|
|
145
|
+
if (this.dataSet.fragment.childNodes.length === 1 && this.dataSet.fragment.childNodes[0].nodeType === Node.TEXT_NODE) {
|
|
146
|
+
const textContent = this.dataSet.fragment.childNodes[0].textContent;
|
|
147
|
+
if (textContent) {
|
|
148
|
+
const runText = _RawSet.expressionGroups(textContent)[0][1];
|
|
149
|
+
const __render = {
|
|
150
|
+
rawSet: this,
|
|
151
|
+
scripts: import_EventManager.EventManager.setBindProperty(config?.scripts, obj),
|
|
152
|
+
router: config?.router,
|
|
153
|
+
range: import_Range.Range.range,
|
|
154
|
+
element: this.dataSet.fragment.childNodes[0],
|
|
155
|
+
attribute: {},
|
|
156
|
+
rootObject: obj,
|
|
157
|
+
scriptUtils: import_ObjectUtils.ObjectUtils.Script,
|
|
158
|
+
nearThis: this.findNearThis(obj),
|
|
159
|
+
parentThis: this.findParentThis(obj),
|
|
160
|
+
bindScript: ` /** render **/
|
|
161
|
+
const ${import_EventManager.EventManager.SCRIPTS_VARNAME} = this.__render.scripts;
|
|
162
|
+
const ${import_EventManager.EventManager.RAWSET_VARNAME} = this.__render.rawSet;
|
|
163
|
+
const ${import_EventManager.EventManager.ELEMENT_VARNAME} = this.__render.element;
|
|
164
|
+
const ${import_EventManager.EventManager.ATTRIBUTE_VARNAME} = this.__render.attribute;
|
|
165
|
+
const ${import_EventManager.EventManager.RANGE_VARNAME} = this.__render.range;
|
|
166
|
+
const ${import_EventManager.EventManager.ROUTER_VARNAME} = this.__render.router;
|
|
167
|
+
const ${import_EventManager.EventManager.NEAR_THIS_VARNAME} = this.__render.nearThis;
|
|
168
|
+
const ${import_EventManager.EventManager.PARENT_THIS_VARNAME} = this.__render.parentThis;
|
|
169
|
+
const ${import_EventManager.EventManager.SCRIPT_UTILS_VARNAME} = this.__render.scriptUtils;
|
|
170
|
+
const ${import_EventManager.EventManager.ROOT_OBJECT_VARNAME} = this.__render.rootObject;
|
|
171
|
+
`
|
|
172
|
+
};
|
|
173
|
+
try {
|
|
174
|
+
const newValue = import_ObjectUtils.ObjectUtils.Script.evaluateReturn({
|
|
175
|
+
bodyScript: __render.bindScript,
|
|
176
|
+
returnScript: runText
|
|
177
|
+
}, Object.assign(obj, { __render }));
|
|
178
|
+
const newValueStr = String(newValue);
|
|
179
|
+
if (this.lastRenderedValue === newValueStr) {
|
|
180
|
+
return { raws: [], executedOperators: [] };
|
|
181
|
+
}
|
|
182
|
+
this.lastRenderedValue = newValueStr;
|
|
183
|
+
} catch (e) {
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
}
|
|
148
187
|
const genNode = config.window.document.importNode(this.dataSet.fragment, true);
|
|
149
188
|
const raws = [];
|
|
150
189
|
const onAttrInitCallBacks = [];
|
|
@@ -187,18 +226,15 @@ const _RawSet = class _RawSet {
|
|
|
187
226
|
const runText = _RawSet.expressionGroups(textContent)[0][1];
|
|
188
227
|
let newNode;
|
|
189
228
|
if (textContent?.startsWith("#")) {
|
|
190
|
-
const r = import_ObjectUtils.ObjectUtils.Script.
|
|
191
|
-
|
|
229
|
+
const r = import_ObjectUtils.ObjectUtils.Script.evaluateReturn(
|
|
230
|
+
{ bodyScript: __render.bindScript, returnScript: runText },
|
|
192
231
|
Object.assign(obj, { __render })
|
|
193
232
|
);
|
|
194
233
|
const template = config.window.document.createElement("template");
|
|
195
234
|
template.innerHTML = r;
|
|
196
235
|
newNode = template.content;
|
|
197
236
|
} else {
|
|
198
|
-
const r = import_ObjectUtils.ObjectUtils.Script.
|
|
199
|
-
`${__render.bindScript} return ${runText}`,
|
|
200
|
-
Object.assign(obj, { __render })
|
|
201
|
-
);
|
|
237
|
+
const r = import_ObjectUtils.ObjectUtils.Script.evaluateReturn({ bodyScript: __render.bindScript, returnScript: runText }, Object.assign(obj, { __render }));
|
|
202
238
|
newNode = config.window.document.createTextNode(r);
|
|
203
239
|
}
|
|
204
240
|
cNode.parentNode?.replaceChild(newNode, cNode);
|
|
@@ -237,140 +273,23 @@ const _RawSet = class _RawSet {
|
|
|
237
273
|
};
|
|
238
274
|
drAttrs.push(drAttr);
|
|
239
275
|
const operators = [
|
|
240
|
-
new import_DrPre.DrPre(
|
|
241
|
-
|
|
242
|
-
__render,
|
|
243
|
-
{ raws, fag },
|
|
244
|
-
{ element, attrName: _RawSet.DR_PRE_NAME, attr: drAttr.drPre, attrs: drAttr },
|
|
245
|
-
{ config, obj, operatorAround: config.operatorAround?.drPre },
|
|
246
|
-
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
247
|
-
),
|
|
248
|
-
new import_Dr.Dr(
|
|
249
|
-
this,
|
|
250
|
-
__render,
|
|
251
|
-
{ raws, fag },
|
|
252
|
-
{ element, attrName: _RawSet.DR_NAME, attr: drAttr.dr, attrs: drAttr },
|
|
253
|
-
{ config, obj, operatorAround: config.operatorAround?.dr },
|
|
254
|
-
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
255
|
-
),
|
|
276
|
+
new import_DrPre.DrPre(this, __render, { raws, fag }, { element, attrName: _RawSet.DR_PRE_NAME, attr: drAttr.drPre, attrs: drAttr }, { config, obj, operatorAround: config.operatorAround?.drPre }, { onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }),
|
|
277
|
+
new import_Dr.Dr(this, __render, { raws, fag }, { element, attrName: _RawSet.DR_NAME, attr: drAttr.dr, attrs: drAttr }, { config, obj, operatorAround: config.operatorAround?.dr }, { onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }),
|
|
256
278
|
// new Dr(this, __render, {raws, fag}, {element, attrName: EventManager.onRenderedInitAttrName, attr: drAttr.dr, attrs: drAttr}, {config, obj, operatorAround: config.operatorAround?.dr}, {onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks}),
|
|
257
|
-
new import_DrIf.DrIf(
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
),
|
|
265
|
-
new
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
272
|
-
),
|
|
273
|
-
new import_DrThis.DrThis(
|
|
274
|
-
this,
|
|
275
|
-
__render,
|
|
276
|
-
{ raws, fag },
|
|
277
|
-
{ element, attrName: _RawSet.DR_THIS_NAME, attr: drAttr.drThis, attrs: drAttr },
|
|
278
|
-
{ config, obj, operatorAround: config.operatorAround?.drThis },
|
|
279
|
-
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
280
|
-
),
|
|
281
|
-
new import_DrForm.DrForm(
|
|
282
|
-
this,
|
|
283
|
-
__render,
|
|
284
|
-
{ raws, fag },
|
|
285
|
-
{ element, attrName: _RawSet.DR_FOR_NAME, attr: drAttr.drForm, attrs: drAttr },
|
|
286
|
-
{ config, obj, operatorAround: config.operatorAround?.drForm },
|
|
287
|
-
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
288
|
-
),
|
|
289
|
-
new import_DrInnerText.DrInnerText(
|
|
290
|
-
this,
|
|
291
|
-
__render,
|
|
292
|
-
{ raws, fag },
|
|
293
|
-
{ element, attrName: _RawSet.DR_INNERTEXT_NAME, attr: drAttr.drInnerText, attrs: drAttr },
|
|
294
|
-
{ config, obj, operatorAround: config.operatorAround?.drInnerText },
|
|
295
|
-
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
296
|
-
),
|
|
297
|
-
new import_DrInnerHTML.DrInnerHTML(
|
|
298
|
-
this,
|
|
299
|
-
__render,
|
|
300
|
-
{ raws, fag },
|
|
301
|
-
{ element, attrName: _RawSet.DR_INNERHTML_NAME, attr: drAttr.drInnerHTML, attrs: drAttr },
|
|
302
|
-
{ config, obj, operatorAround: config.operatorAround?.drInnerHTML },
|
|
303
|
-
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
304
|
-
),
|
|
305
|
-
new import_DrFor.DrFor(
|
|
306
|
-
this,
|
|
307
|
-
__render,
|
|
308
|
-
{ raws, fag },
|
|
309
|
-
{ element, attrName: _RawSet.DR_FOR_NAME, attr: drAttr.drFor, attrs: drAttr },
|
|
310
|
-
{ config, obj, operatorAround: config.operatorAround?.drFor },
|
|
311
|
-
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
312
|
-
),
|
|
313
|
-
new import_DrForOf.DrForOf(
|
|
314
|
-
this,
|
|
315
|
-
__render,
|
|
316
|
-
{ raws, fag },
|
|
317
|
-
{ element, attrName: _RawSet.DR_FOR_OF_NAME, attr: drAttr.drForOf, attrs: drAttr },
|
|
318
|
-
{ config, obj, operatorAround: config.operatorAround?.drForOf },
|
|
319
|
-
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
320
|
-
),
|
|
321
|
-
new import_DrThisProperty.DrThisProperty(
|
|
322
|
-
this,
|
|
323
|
-
__render,
|
|
324
|
-
{ raws, fag },
|
|
325
|
-
{ element, attrName: _RawSet.DR_THIS_PROPERTY_NAME, attr: drAttr.drThisProperty, attrs: drAttr },
|
|
326
|
-
{ config, obj, operatorAround: config.operatorAround?.drThisProperty },
|
|
327
|
-
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
328
|
-
),
|
|
329
|
-
new import_DrAppender.DrAppender(
|
|
330
|
-
this,
|
|
331
|
-
__render,
|
|
332
|
-
{ raws, fag },
|
|
333
|
-
{ element, attrName: _RawSet.DR_APPENDER_NAME, attr: drAttr.drAppender, attrs: drAttr },
|
|
334
|
-
{ config, obj, operatorAround: config.operatorAround?.drAppender },
|
|
335
|
-
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
336
|
-
),
|
|
337
|
-
new import_DrRepeat.DrRepeat(
|
|
338
|
-
this,
|
|
339
|
-
__render,
|
|
340
|
-
{ raws, fag },
|
|
341
|
-
{ element, attrName: _RawSet.DR_REPEAT_NAME, attr: drAttr.drRepeat, attrs: drAttr },
|
|
342
|
-
{ config, obj, operatorAround: config.operatorAround?.drRepeat },
|
|
343
|
-
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
344
|
-
),
|
|
345
|
-
new import_DrTargetElementIsElement.DrTargetElementIsElement(
|
|
346
|
-
this,
|
|
347
|
-
__render,
|
|
348
|
-
{ raws, fag },
|
|
349
|
-
{
|
|
350
|
-
element,
|
|
351
|
-
attrName: _RawSet.DR_REPLACE_TARGET_ELEMENT_IS_NAME,
|
|
352
|
-
attr: drAttr.drReplaceTargetElementIs,
|
|
353
|
-
attrs: drAttr
|
|
354
|
-
},
|
|
355
|
-
{ config, obj },
|
|
356
|
-
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
357
|
-
),
|
|
358
|
-
new import_DrTargetElement.DrTargetElement(
|
|
359
|
-
this,
|
|
360
|
-
__render,
|
|
361
|
-
{ raws, fag },
|
|
362
|
-
{ element, attrs: drAttr },
|
|
363
|
-
{ config, obj },
|
|
364
|
-
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
365
|
-
),
|
|
366
|
-
new import_DrTargetAttr.DrTargetAttr(
|
|
367
|
-
this,
|
|
368
|
-
__render,
|
|
369
|
-
{ raws, fag },
|
|
370
|
-
{ element, attrs: drAttr },
|
|
371
|
-
{ config, obj },
|
|
372
|
-
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
373
|
-
)
|
|
279
|
+
new import_DrIf.DrIf(this, __render, { raws, fag }, { element, attrName: _RawSet.DR_IF_NAME, attr: drAttr.drIf, attrs: drAttr }, { config, obj, operatorAround: config.operatorAround?.drIf }, { onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }),
|
|
280
|
+
new import_DrStripElement.DrStripElement(this, __render, { raws, fag }, { element, attrName: _RawSet.DR_STRIP_NAME, attr: drAttr.drStripElement, attrs: drAttr }, { config, obj, operatorAround: config.operatorAround?.drThis }, { onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }),
|
|
281
|
+
new import_DrThis.DrThis(this, __render, { raws, fag }, { element, attrName: _RawSet.DR_THIS_NAME, attr: drAttr.drThis, attrs: drAttr }, { config, obj, operatorAround: config.operatorAround?.drThis }, { onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }),
|
|
282
|
+
new import_DrForm.DrForm(this, __render, { raws, fag }, { element, attrName: _RawSet.DR_FOR_NAME, attr: drAttr.drForm, attrs: drAttr }, { config, obj, operatorAround: config.operatorAround?.drForm }, { onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }),
|
|
283
|
+
new import_DrInnerText.DrInnerText(this, __render, { raws, fag }, { element, attrName: _RawSet.DR_INNERTEXT_NAME, attr: drAttr.drInnerText, attrs: drAttr }, { config, obj, operatorAround: config.operatorAround?.drInnerText }, { onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }),
|
|
284
|
+
new import_DrInnerHTML.DrInnerHTML(this, __render, { raws, fag }, { element, attrName: _RawSet.DR_INNERHTML_NAME, attr: drAttr.drInnerHTML, attrs: drAttr }, { config, obj, operatorAround: config.operatorAround?.drInnerHTML }, { onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }),
|
|
285
|
+
new import_DrFor.DrFor(this, __render, { raws, fag }, { element, attrName: _RawSet.DR_FOR_NAME, attr: drAttr.drFor, attrs: drAttr }, { config, obj, operatorAround: config.operatorAround?.drFor }, { onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }),
|
|
286
|
+
new import_DrForOf.DrForOf(this, __render, { raws, fag }, { element, attrName: _RawSet.DR_FOR_OF_NAME, attr: drAttr.drForOf, attrs: drAttr }, { config, obj, operatorAround: config.operatorAround?.drForOf }, { onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }),
|
|
287
|
+
new import_DrThisProperty.DrThisProperty(this, __render, { raws, fag }, { element, attrName: _RawSet.DR_THIS_PROPERTY_NAME, attr: drAttr.drThisProperty, attrs: drAttr }, { config, obj, operatorAround: config.operatorAround?.drThisProperty }, { onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }),
|
|
288
|
+
new import_DrAppender.DrAppender(this, __render, { raws, fag }, { element, attrName: _RawSet.DR_APPENDER_NAME, attr: drAttr.drAppender, attrs: drAttr }, { config, obj, operatorAround: config.operatorAround?.drAppender }, { onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }),
|
|
289
|
+
new import_DrRepeat.DrRepeat(this, __render, { raws, fag }, { element, attrName: _RawSet.DR_REPEAT_NAME, attr: drAttr.drRepeat, attrs: drAttr }, { config, obj, operatorAround: config.operatorAround?.drRepeat }, { onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }),
|
|
290
|
+
new import_DrTargetElementIsElement.DrTargetElementIsElement(this, __render, { raws, fag }, { element, attrName: _RawSet.DR_REPLACE_TARGET_ELEMENT_IS_NAME, attr: drAttr.drReplaceTargetElementIs, attrs: drAttr }, { config, obj }, { onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }),
|
|
291
|
+
new import_DrTargetElement.DrTargetElement(this, __render, { raws, fag }, { element, attrs: drAttr }, { config, obj }, { onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }),
|
|
292
|
+
new import_DrTargetAttr.DrTargetAttr(this, __render, { raws, fag }, { element, attrs: drAttr }, { config, obj }, { onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks })
|
|
374
293
|
];
|
|
375
294
|
for (const operator of operators) {
|
|
376
295
|
const state = await operator.start();
|
|
@@ -433,6 +352,7 @@ const _RawSet = class _RawSet {
|
|
|
433
352
|
}
|
|
434
353
|
});
|
|
435
354
|
}
|
|
355
|
+
console.groupEnd();
|
|
436
356
|
return { raws, executedOperators };
|
|
437
357
|
}
|
|
438
358
|
// 중요 스타일 적용 부분
|
|
@@ -551,7 +471,7 @@ const _RawSet = class _RawSet {
|
|
|
551
471
|
}
|
|
552
472
|
if (element2.hasAttribute(import_EventManager.EventManager.attrAttrName)) {
|
|
553
473
|
const script = element2.getAttribute(import_EventManager.EventManager.attrAttrName) ?? "";
|
|
554
|
-
const keyValuePairs = Array.from(script.matchAll(/(\w+)
|
|
474
|
+
const keyValuePairs = Array.from(script.matchAll(/['"]?([\w-_]+)['"]?:\s*([^,}]+)/g)).map((match) => ({
|
|
555
475
|
key: match[1],
|
|
556
476
|
value: match[2]
|
|
557
477
|
}));
|
|
@@ -561,20 +481,22 @@ const _RawSet = class _RawSet {
|
|
|
561
481
|
}
|
|
562
482
|
const targetElementIs = element2.getAttribute(_RawSet.DR_REPLACE_TARGET_ELEMENT_IS_NAME);
|
|
563
483
|
const targetElementNames = config.targetElements?.map((it) => it.name.toLowerCase()) ?? [];
|
|
484
|
+
targetElementNames.push(..._RawSet.DR_ELEMENTS);
|
|
564
485
|
const isElement = targetElementNames.includes(element2.tagName.toLowerCase()) || targetElementNames.includes(targetElementIs?.toLowerCase());
|
|
565
486
|
const targetAttrNames = (config.targetAttrs?.map((it) => it.name) ?? []).concat([..._RawSet.DR_ATTRIBUTES]);
|
|
566
487
|
const normalAttrs = /* @__PURE__ */ new Map();
|
|
567
488
|
const linkVariables = /* @__PURE__ */ new Map();
|
|
568
489
|
const linkNames = import_EventManager.EventManager.linkAttrs.map((it) => it.name);
|
|
569
490
|
const isAttr = element2.getAttributeNames().filter((it) => !import_EventManager.EventManager.noDetectAttr.includes(it)).filter((it) => {
|
|
570
|
-
const value = element2.getAttribute(it);
|
|
491
|
+
const value = element2.getAttribute(it)?.trim();
|
|
571
492
|
if (value && linkNames.includes(it)) {
|
|
572
493
|
linkVariables.set(it, value);
|
|
573
494
|
} else if (value && _RawSet.isExpression(value)) {
|
|
574
495
|
const variablePaths = _RawSet.expressionGroups(value).map((it2) => ({
|
|
575
|
-
origin: it2[0],
|
|
576
|
-
inner: it2[1]
|
|
496
|
+
origin: it2[0].trim(),
|
|
497
|
+
inner: it2[1].trim()
|
|
577
498
|
}));
|
|
499
|
+
const isStringTemplate = variablePaths.length > 1 || variablePaths[0] && variablePaths[0].origin !== value;
|
|
578
500
|
let targetScript = value;
|
|
579
501
|
variablePaths.forEach((it2) => {
|
|
580
502
|
let r3 = it2.inner.replace(/#[^#]*#/g, "({})");
|
|
@@ -587,7 +509,7 @@ const _RawSet = class _RawSet {
|
|
|
587
509
|
} else {
|
|
588
510
|
element2.setAttribute(it, cval);
|
|
589
511
|
}
|
|
590
|
-
normalAttrs.set(it, { originalAttrValue: value, variablePaths });
|
|
512
|
+
normalAttrs.set(it, { originalAttrValue: value, variablePaths, isStringTemplate });
|
|
591
513
|
}
|
|
592
514
|
const isTargetAttr = targetAttrNames.includes(it.toLowerCase());
|
|
593
515
|
return isTargetAttr;
|
|
@@ -658,7 +580,8 @@ const _RawSet = class _RawSet {
|
|
|
658
580
|
lasterIndex = regexArr.index + it.content.length;
|
|
659
581
|
}
|
|
660
582
|
template.content.append(config.window.document.createTextNode(text.substring(lasterIndex, text.length)));
|
|
661
|
-
currentNode2?.parentNode
|
|
583
|
+
const p = currentNode2?.parentNode;
|
|
584
|
+
p?.replaceChild(template.content, currentNode2);
|
|
662
585
|
} else if (currentNode2.nodeType === Node2.ELEMENT_NODE) {
|
|
663
586
|
const uuid = `${import_RandomUtils.RandomUtils.alphabet(40)}`;
|
|
664
587
|
const element2 = currentNode2;
|
|
@@ -667,6 +590,7 @@ const _RawSet = class _RawSet {
|
|
|
667
590
|
const startEndPoint = _RawSet.createStartEndPoint({ node: element2, id: uuid, type: elementType }, config);
|
|
668
591
|
const targetElementIs = element2.getAttribute(_RawSet.DR_REPLACE_TARGET_ELEMENT_IS_NAME);
|
|
669
592
|
const targetElementNames = config.targetElements?.map((it) => it.name.toLowerCase()) ?? [];
|
|
593
|
+
targetElementNames.push(..._RawSet.DR_ELEMENTS);
|
|
670
594
|
const isElement = targetElementNames.includes(element2.tagName.toLowerCase()) || targetElementNames.includes(targetElementIs?.toLowerCase());
|
|
671
595
|
const targetAttrNames = (config.targetAttrs?.map((it) => it.name) ?? []).concat(_RawSet.DR_ATTRIBUTES);
|
|
672
596
|
const isAttr = element2.getAttributeNames().filter((it) => targetAttrNames.includes(it.toLowerCase())).length > 0;
|
|
@@ -1029,9 +953,11 @@ const _RawSet = class _RawSet {
|
|
|
1029
953
|
if (templateReplacements.length > 0) {
|
|
1030
954
|
targetElement.innerHTML = import_StringUtils.StringUtils.replaceSequentially(targetElement.innerHTML, templateReplacements);
|
|
1031
955
|
}
|
|
956
|
+
const componentName = targetElement.getAttribute(_RawSet.DR_VARIABLE_NAME_OPTIONNAME) ?? "component";
|
|
1032
957
|
const optionThisName = targetElement.getAttribute(_RawSet.DR_THIS_NAME_OPTIONNAME);
|
|
1033
958
|
targetElement.getAttributeNames().forEach((it) => targetElement.setAttribute(it, targetElement.getAttribute(it).replace(/#this#/g, drThis)));
|
|
1034
959
|
const thisRandom = this.drThisEncoding(targetElement, drThis, { asIs: /@this@/g });
|
|
960
|
+
targetElement.innerHTML = targetElement.innerHTML.replaceAll(`#${componentName}#`, drThis);
|
|
1035
961
|
if (optionThisName) {
|
|
1036
962
|
targetElement.innerHTML = targetElement.innerHTML.replaceAll(`@${optionThisName}@`, drThis);
|
|
1037
963
|
}
|
|
@@ -1205,7 +1131,8 @@ const _RawSet = class _RawSet {
|
|
|
1205
1131
|
);
|
|
1206
1132
|
if (data && innerHTMLThisRandom) {
|
|
1207
1133
|
const template2 = config.window.document.createElement("template");
|
|
1208
|
-
|
|
1134
|
+
let s = import_ElementUtils.ElementUtils.toInnerHTML(data, { document: config.window.document });
|
|
1135
|
+
template2.innerHTML = s.replace(RegExp(innerHTMLThisRandom, "g"), "this.");
|
|
1209
1136
|
;
|
|
1210
1137
|
data = template2.content;
|
|
1211
1138
|
}
|
|
@@ -1245,22 +1172,17 @@ const _RawSet = class _RawSet {
|
|
|
1245
1172
|
new Map(JSON.parse(normalAttribute)).forEach((v, k) => {
|
|
1246
1173
|
const variablePaths = v.variablePaths;
|
|
1247
1174
|
let targetScript = v.originalAttrValue.trim();
|
|
1248
|
-
|
|
1249
|
-
variablePaths.forEach((it) => {
|
|
1250
|
-
checktargetScript = targetScript.replaceAll(it.origin, "");
|
|
1251
|
-
});
|
|
1252
|
-
let isScriptValue = checktargetScript.length === 0 && variablePaths.length === 1;
|
|
1253
|
-
if (isScriptValue) {
|
|
1254
|
-
let r = import_ObjectUtils.ObjectUtils.Path.toOptionalChainPath(variablePaths[0].inner);
|
|
1255
|
-
targetScript = targetScript.replaceAll(variablePaths[0].origin, r);
|
|
1256
|
-
} else {
|
|
1175
|
+
if (v.isStringTemplate) {
|
|
1257
1176
|
variablePaths.forEach((it) => {
|
|
1258
1177
|
let r = import_ObjectUtils.ObjectUtils.Path.toOptionalChainPath(it.inner);
|
|
1259
1178
|
targetScript = targetScript.replaceAll(it.origin, `\${${r}}`);
|
|
1260
1179
|
});
|
|
1180
|
+
} else {
|
|
1181
|
+
let r = import_ObjectUtils.ObjectUtils.Path.toOptionalChainPath(variablePaths[0].inner);
|
|
1182
|
+
targetScript = targetScript.replaceAll(variablePaths[0].origin, r);
|
|
1261
1183
|
}
|
|
1262
1184
|
const cval = import_ObjectUtils.ObjectUtils.Script.evaluateReturn(
|
|
1263
|
-
{ bodyScript: config.script, returnScript:
|
|
1185
|
+
{ bodyScript: config.script, returnScript: v.isStringTemplate ? "`" + targetScript + "`" : targetScript },
|
|
1264
1186
|
Object.assign(config.obj, config.renderData ? { __render: config.renderData } : void 0)
|
|
1265
1187
|
);
|
|
1266
1188
|
attribute[k] = cval;
|
|
@@ -1284,6 +1206,8 @@ _RawSet.DR_INNERTEXT_NAME = "dr-inner-text";
|
|
|
1284
1206
|
_RawSet.DR_DETECT_NAME = "dr-detect";
|
|
1285
1207
|
_RawSet.DR_STRIP_NAME = "dr-strip";
|
|
1286
1208
|
_RawSet.DR_REPLACE_TARGET_ELEMENT_IS_NAME = "dr-replace-target-element-is";
|
|
1209
|
+
// elementName
|
|
1210
|
+
_RawSet.DR_TARGET_ELEMENT_ELEMENTNAME = "dr-target-element";
|
|
1287
1211
|
// 감지처리되는 옵션
|
|
1288
1212
|
_RawSet.DR_DETECT_IF_OPTIONNAME = "dr-detect-option-if";
|
|
1289
1213
|
_RawSet.DR_DETECT_FILTER_OPTIONNAME = "dr-detect-option-filter";
|
|
@@ -1350,6 +1274,9 @@ _RawSet.DR_TAGS = [];
|
|
|
1350
1274
|
// public static readonly DR_REPLACE_ACTION_ATTRIBUTES = [
|
|
1351
1275
|
// RawSet.DR_REPLACE_TARGET_ELEMENT_IS_NAME
|
|
1352
1276
|
// ]
|
|
1277
|
+
_RawSet.DR_ELEMENTS = [
|
|
1278
|
+
_RawSet.DR_TARGET_ELEMENT_ELEMENTNAME
|
|
1279
|
+
];
|
|
1353
1280
|
_RawSet.DR_ATTRIBUTES = [
|
|
1354
1281
|
_RawSet.DR_NAME,
|
|
1355
1282
|
_RawSet.DR_APPENDER_NAME,
|
|
@@ -1363,7 +1290,7 @@ _RawSet.DR_ATTRIBUTES = [
|
|
|
1363
1290
|
_RawSet.DR_INNERHTML_NAME,
|
|
1364
1291
|
_RawSet.DR_INNERTEXT_NAME,
|
|
1365
1292
|
_RawSet.DR_REPEAT_NAME,
|
|
1366
|
-
|
|
1293
|
+
// RawSet.DR_DETECT_NAME, // TODO: DrDetect 오퍼레이터 구현 필요
|
|
1367
1294
|
_RawSet.DR_STRIP_NAME
|
|
1368
1295
|
];
|
|
1369
1296
|
let RawSet = _RawSet;
|