nativescript-vue 3.0.0-beta.0 → 3.0.0-beta.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +59 -0
- package/devtools.js +33 -0
- package/dist/compiler.d.ts +1 -1
- package/dist/compiler.js +1 -1
- package/dist/compiler.js.map +1 -1
- package/dist/components/ActionBar.d.ts +1 -1
- package/dist/components/ActionBar.js +6 -5
- package/dist/components/ActionBar.js.map +1 -1
- package/dist/components/ListView.d.ts +2 -2
- package/dist/components/ListView.js +11 -12
- package/dist/components/ListView.js.map +1 -1
- package/dist/components/index.d.ts +6 -2
- package/dist/components/index.js +3 -2
- package/dist/components/index.js.map +1 -1
- package/dist/directives/vModel.d.ts +8 -0
- package/dist/directives/vModel.js +38 -0
- package/dist/directives/vModel.js.map +1 -0
- package/dist/directives/vShow.d.ts +2 -2
- package/dist/directives/vShow.js +4 -4
- package/dist/dom/index.d.ts +1 -1
- package/dist/dom/index.js +7 -8
- package/dist/dom/index.js.map +1 -1
- package/dist/index.d.ts +19 -10
- package/dist/index.js +50 -15
- package/dist/index.js.map +1 -1
- package/dist/nativescript/elements.js +56 -53
- package/dist/nativescript/elements.js.map +1 -1
- package/dist/nativescript/index.d.ts +3 -3
- package/dist/nativescript/index.js +3 -4
- package/dist/nativescript/index.js.map +1 -1
- package/dist/plugins/modals.d.ts +9 -5
- package/dist/plugins/modals.js +50 -32
- package/dist/plugins/modals.js.map +1 -1
- package/dist/plugins/navigation.d.ts +7 -7
- package/dist/plugins/navigation.js +59 -78
- package/dist/plugins/navigation.js.map +1 -1
- package/dist/plugins/templates.d.ts +10 -0
- package/dist/plugins/templates.js +12 -0
- package/dist/plugins/templates.js.map +1 -0
- package/dist/registry/index.d.ts +3 -3
- package/dist/registry/index.js +2 -2
- package/dist/registry/index.js.map +1 -1
- package/dist/renderer/index.js +3 -3
- package/dist/renderer/modules/attrs.d.ts +1 -1
- package/dist/renderer/modules/attrs.js +3 -3
- package/dist/renderer/modules/class.d.ts +1 -1
- package/dist/renderer/modules/class.js +2 -2
- package/dist/renderer/modules/events.d.ts +3 -3
- package/dist/renderer/modules/events.js +8 -2
- package/dist/renderer/modules/events.js.map +1 -1
- package/dist/renderer/modules/style.d.ts +3 -2
- package/dist/renderer/modules/style.js +66 -20
- package/dist/renderer/modules/style.js.map +1 -1
- package/dist/renderer/nodeOps.d.ts +3 -2
- package/dist/renderer/nodeOps.js +7 -4
- package/dist/renderer/nodeOps.js.map +1 -1
- package/dist/renderer/patchProp.d.ts +1 -1
- package/dist/renderer/patchProp.js +27 -10
- package/dist/renderer/patchProp.js.map +1 -1
- package/dist/runtimeHelpers.d.ts +26 -0
- package/dist/runtimeHelpers.js +42 -3
- package/dist/runtimeHelpers.js.map +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/withCompiler.js +1 -1
- package/dist/withCompiler.js.map +1 -1
- package/nativescript.webpack.js +122 -12
- package/package.json +35 -12
- package/dist/components/ListView.working.d.ts +0 -44
- package/dist/components/ListView.working.js +0 -126
- package/dist/components/ListView.working.js.map +0 -1
- package/dist/index.mjs.map +0 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigation.js","sourceRoot":"","sources":["../../src/plugins/navigation.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"navigation.js","sourceRoot":"","sources":["../../src/plugins/navigation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @internal
|
|
3
|
+
*/
|
|
4
|
+
export function install(app) {
|
|
5
|
+
app.config.globalProperties.$templates = {
|
|
6
|
+
getKeyedTemplates() { },
|
|
7
|
+
selectorFn() { },
|
|
8
|
+
patchTemplate(name, context, oldVnode) { },
|
|
9
|
+
registerTemplate() { }
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=templates.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/plugins/templates.ts"],"names":[],"mappings":"AAQA;;GAEG;AACH,MAAM,UAAU,OAAO,CAAC,GAAQ;IAC9B,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,UAAU,GAAG;QACvC,iBAAiB,KAAI,CAAC;QACtB,UAAU,KAAI,CAAC;QACf,aAAa,CAAC,IAAY,EAAE,OAAY,EAAE,QAAe,IAAG,CAAC;QAC7D,gBAAgB,KAAI,CAAC;KACtB,CAAC;AACJ,CAAC"}
|
package/dist/registry/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { NSVElement, NSVViewFlags } from
|
|
2
|
-
export
|
|
3
|
-
export
|
|
1
|
+
import { NSVElement, NSVViewFlags } from '../dom';
|
|
2
|
+
export type NSVElementResolver = () => any;
|
|
3
|
+
export type NSVModelDescriptor = {
|
|
4
4
|
prop: string;
|
|
5
5
|
event: string;
|
|
6
6
|
};
|
package/dist/registry/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export let defaultViewMeta = {
|
|
2
|
-
viewFlags: 0 // NSVViewFlags.NONE
|
|
2
|
+
viewFlags: 0, // NSVViewFlags.NONE - circular dependency, using constant value instead
|
|
3
3
|
};
|
|
4
4
|
let elementMap = {};
|
|
5
5
|
export function getViewMeta(elementName) {
|
|
@@ -34,7 +34,7 @@ export function getViewClass(elementName) {
|
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
export function normalizeElementName(elementName) {
|
|
37
|
-
return elementName.replace(/-/g,
|
|
37
|
+
return elementName.replace(/-/g, '').toLowerCase();
|
|
38
38
|
}
|
|
39
39
|
export function registerElement(elementName, resolver, meta) {
|
|
40
40
|
const normalizedName = normalizeElementName(elementName);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/registry/index.ts"],"names":[],"mappings":"AAwBA,MAAM,CAAC,IAAI,eAAe,GAAgB;IACxC,SAAS,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/registry/index.ts"],"names":[],"mappings":"AAwBA,MAAM,CAAC,IAAI,eAAe,GAAgB;IACxC,SAAS,EAAE,CAAC,EAAE,wEAAwE;CACvF,CAAC;AAEF,IAAI,UAAU,GAAyC,EAAE,CAAC;AAE1D,MAAM,UAAU,WAAW,CAAC,WAAmB;IAC7C,+CAA+C;IAE/C,MAAM,cAAc,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;IAEzD,MAAM,KAAK,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;IAEzC,IAAI,CAAC,KAAK,EAAE;QACV,MAAM,IAAI,KAAK,CAAC,kCAAkC,WAAW,GAAG,CAAC,CAAC;KACnE;IAED,OAAO,KAAK,CAAC,IAAI,CAAC;AACpB,CAAC;AAED,IAAI,mBAAmB,CAAC;AAExB,MAAM,UAAU,2BAA2B,CAAC,QAA+B;IACzE,mBAAmB,GAAG,QAAQ,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,WAAmB;IAC9C,gDAAgD;IAChD,MAAM,cAAc,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;IACzD,MAAM,KAAK,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;IAEzC,IAAI,CAAC,KAAK,EAAE;QACV,MAAM,QAAQ,GAAG,mBAAmB,EAAE,CAAC,WAAW,CAAC,CAAC;QAEpD,IAAI,QAAQ,EAAE;YACZ,OAAO,QAAQ,CAAC;SACjB;QAED,MAAM,IAAI,KAAK,CAAC,kCAAkC,WAAW,GAAG,CAAC,CAAC;KACnE;IAED,IAAI;QACF,OAAO,KAAK,CAAC,QAAS,EAAE,CAAC;KAC1B;IAAC,OAAO,CAAC,EAAE;QACV,MAAM,IAAI,KAAK,CAAC,4BAA4B,WAAW,KAAK,CAAC,EAAE,CAAC,CAAC;KAClE;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,WAAmB;IACtD,OAAO,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,WAAmB,EACnB,QAA6B,EAC7B,IAA2B;IAE3B,MAAM,cAAc,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;IACzD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC;IAE5D,IAAI,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE;QAC/D,MAAM,IAAI,KAAK,CACb,eAAe,WAAW,wBAAwB;YAChD,gEAAgE,CACnE,CAAC;KACH;IAED,UAAU,CAAC,cAAc,CAAC,GAAG;QAC3B,IAAI,EAAE,UAAU;QAChB,QAAQ;KACT,CAAC;IACF,mDAAmD;AACrD,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,WAAmB;IAC7C,OAAO,UAAU,CAAC,cAAc,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,CAAC;AACtE,CAAC"}
|
package/dist/renderer/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { createRenderer } from
|
|
2
|
-
import { patchProp } from
|
|
3
|
-
import { nodeOps } from
|
|
1
|
+
import { createRenderer } from '@vue/runtime-core';
|
|
2
|
+
import { patchProp } from './patchProp';
|
|
3
|
+
import { nodeOps } from './nodeOps';
|
|
4
4
|
export const renderer = createRenderer({
|
|
5
5
|
patchProp,
|
|
6
6
|
...nodeOps,
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { NSVElement } from
|
|
1
|
+
import { NSVElement } from '../../dom';
|
|
2
2
|
export declare function patchAttr(el: NSVElement, key: string, prevValue: any, nextValue: any): void;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { isBoolean, isAndroidKey, isIOSKey } from
|
|
2
|
-
import { isAndroid, isIOS } from
|
|
1
|
+
import { isBoolean, isAndroidKey, isIOSKey } from '../../runtimeHelpers';
|
|
2
|
+
import { isAndroid, isIOS } from '../../nativescript';
|
|
3
3
|
export function patchAttr(el, key, prevValue, nextValue) {
|
|
4
4
|
if (isAndroidKey(key)) {
|
|
5
5
|
if (!isAndroid) {
|
|
@@ -17,7 +17,7 @@ export function patchAttr(el, key, prevValue, nextValue) {
|
|
|
17
17
|
}
|
|
18
18
|
// detect expandable attrs for boolean values
|
|
19
19
|
// see https://vuejs.org/v2/guide/components-props.html#Passing-a-Boolean
|
|
20
|
-
if (isBoolean(el.getAttribute(key)) && nextValue ===
|
|
20
|
+
if (isBoolean(el.getAttribute(key)) && nextValue === '') {
|
|
21
21
|
nextValue = true;
|
|
22
22
|
}
|
|
23
23
|
if (nextValue === null) {
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { NSVElement } from
|
|
1
|
+
import { NSVElement } from '../../dom';
|
|
2
2
|
export declare function patchClass(el: NSVElement, value: string | null): void;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { NSVElement } from
|
|
2
|
-
import { ComponentInternalInstance } from
|
|
1
|
+
import { NSVElement } from '../../dom';
|
|
2
|
+
import { ComponentInternalInstance } from '@vue/runtime-core';
|
|
3
3
|
interface Invoker extends EventListener {
|
|
4
4
|
value: EventValue;
|
|
5
5
|
}
|
|
6
|
-
|
|
6
|
+
type EventValue = Function | Function[];
|
|
7
7
|
export declare function addEventListener(el: NSVElement, event: string, handler: EventListener, options?: EventListenerOptions): void;
|
|
8
8
|
export declare function removeEventListener(el: NSVElement, event: string, handler: EventListener, options?: EventListenerOptions): void;
|
|
9
9
|
export declare function patchEvent(el: NSVElement & {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { callWithAsyncErrorHandling, } from
|
|
1
|
+
import { callWithAsyncErrorHandling, } from '@vue/runtime-core';
|
|
2
2
|
export function addEventListener(el, event, handler, options = {}) {
|
|
3
3
|
el.addEventListener(event, handler, options);
|
|
4
4
|
}
|
|
@@ -39,8 +39,14 @@ function parseName(name) {
|
|
|
39
39
|
options;
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
|
+
// todo: optimise if necessary
|
|
43
|
+
// this isn't technically perfect,
|
|
44
|
+
// since if the event name was UPPER then we'll convert it to uPPER
|
|
45
|
+
// but for the majority of cases, this should be the right thing to do.
|
|
46
|
+
name = name.slice(name.startsWith('on:') ? 3 : 2);
|
|
47
|
+
name = name.charAt(0).toLowerCase() + name.slice(1);
|
|
42
48
|
// return event name by removing on prefix. eg. onitemTap -> itemTap
|
|
43
|
-
return [name
|
|
49
|
+
return [name, options];
|
|
44
50
|
// return [hyphenate(name.slice(2)), options]
|
|
45
51
|
}
|
|
46
52
|
function createInvoker(initialValue, instance) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../../src/renderer/modules/events.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,0BAA0B,GAE3B,MAAM,mBAAmB,CAAC;AAQ3B,MAAM,UAAU,gBAAgB,CAC9B,EAAc,EACd,KAAa,EACb,OAAsB,EACtB,UAAgC,EAAE;IAElC,EAAE,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,EAAc,EACd,KAAa,EACb,OAAsB,EACtB,UAAgC,EAAE;IAElC,EAAE,CAAC,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,UAAU,CACxB,EAA+D,EAC/D,OAAe,EACf,SAA4B,EAC5B,SAA4B,EAC5B,WAA6C,IAAI;IAEjD,2BAA2B;IAC3B,MAAM,QAAQ,GAAG,EAAE,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;IAC3C,MAAM,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC1C,IAAI,SAAS,IAAI,eAAe,EAAE;QAChC,QAAQ;QACR,eAAe,CAAC,KAAK,GAAG,SAAS,CAAC;KACnC;SAAM;QACL,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,SAAS,EAAE;YACb,MAAM;YACN,MAAM,OAAO,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,aAAa,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;YACzE,gBAAgB,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SAC9C;aAAM,IAAI,eAAe,EAAE;YAC1B,SAAS;YACT,mBAAmB,CAAC,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;YACxD,QAAQ,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;SAC/B;KACF;AACH,CAAC;AAED,MAAM,iBAAiB,GAAG,mBAAmB,CAAC;AAE9C,SAAS,SAAS,CAAC,IAAY;IAC7B,IAAI,OAAyC,CAAC;IAC9C,IAAI,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QAChC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,CAAC;QACN,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,EAAE;YAC1C,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAC/C,OAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,GAAG,IAAI,CAAC;YAC5C,OAAO,CAAC;SACT;KACF;
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../../src/renderer/modules/events.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { NSVElement } from
|
|
2
|
-
|
|
1
|
+
import { NSVElement } from '../../dom';
|
|
2
|
+
type Style = string | Record<string, string | number> | null;
|
|
3
|
+
export declare const STYLE_ORIGINAL_VALUE: unique symbol;
|
|
3
4
|
export declare function patchStyle(el: NSVElement, prev: Style, next: Style): void;
|
|
4
5
|
export {};
|
|
@@ -1,34 +1,80 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { parseStringStyle, isArray, isString, isObject, } from '@vue/shared';
|
|
2
|
+
function normalizeStyle(style) {
|
|
3
|
+
if (!style) {
|
|
4
|
+
return null;
|
|
5
|
+
}
|
|
6
|
+
if (isString(style)) {
|
|
7
|
+
if (style.trim().charAt(0) === '{') {
|
|
8
|
+
return JSON.parse(style);
|
|
9
|
+
}
|
|
10
|
+
return parseStringStyle(style);
|
|
11
|
+
}
|
|
12
|
+
if (isArray(style)) {
|
|
13
|
+
return style.reduce((normalizedStyle, currentStyle) => {
|
|
14
|
+
return Object.assign(normalizedStyle, normalizeStyle(currentStyle));
|
|
15
|
+
}, {});
|
|
16
|
+
}
|
|
17
|
+
if (isObject(style)) {
|
|
18
|
+
return style;
|
|
19
|
+
}
|
|
20
|
+
return {};
|
|
3
21
|
}
|
|
4
|
-
function
|
|
5
|
-
|
|
22
|
+
function normalizeProperty(property) {
|
|
23
|
+
if (property.endsWith('Align')) {
|
|
24
|
+
// NativeScript uses Alignment instead of Align, this ensures that text-align works
|
|
25
|
+
property += 'ment';
|
|
26
|
+
}
|
|
27
|
+
return property;
|
|
6
28
|
}
|
|
7
|
-
|
|
8
|
-
|
|
29
|
+
export const STYLE_ORIGINAL_VALUE = Symbol('style_original_value');
|
|
30
|
+
function addStyleProperty(el, property, value) {
|
|
31
|
+
const _sov = el[STYLE_ORIGINAL_VALUE] ?? (el[STYLE_ORIGINAL_VALUE] = new Map());
|
|
32
|
+
property = normalizeProperty(property);
|
|
33
|
+
if (!_sov.has(property)) {
|
|
34
|
+
_sov.set(property, el.style[property]);
|
|
35
|
+
}
|
|
36
|
+
el.style[property] = value;
|
|
9
37
|
}
|
|
10
|
-
function
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
38
|
+
function removeStyleProperty(el, property) {
|
|
39
|
+
const _sov = el[STYLE_ORIGINAL_VALUE] ?? (el[STYLE_ORIGINAL_VALUE] = new Map());
|
|
40
|
+
property = normalizeProperty(property);
|
|
41
|
+
// only delete styles we added
|
|
42
|
+
if (_sov.has(property)) {
|
|
43
|
+
const originalValue = _sov.get(property);
|
|
44
|
+
_sov.delete(property);
|
|
45
|
+
// edge case: if a style property also exists as an attribute (ie backgroundColor)
|
|
46
|
+
// changing the attribute will not update our originalValue, so when removing
|
|
47
|
+
// the previous color will be applied. Fixing this would involve listening to
|
|
48
|
+
// individual attribute changes, and it's not worth the overhead.
|
|
49
|
+
try {
|
|
50
|
+
el.style[property] = originalValue;
|
|
51
|
+
}
|
|
52
|
+
catch (err) {
|
|
53
|
+
// hack: if the original value is invalid, we can't set it back to it's original value
|
|
54
|
+
// instead we set it to null, which will remove the style, however this may
|
|
55
|
+
// still lead to incorrect styling in some cases.
|
|
56
|
+
el.style[property] = null;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
14
59
|
}
|
|
60
|
+
// todo: perhaps mimic dom version with prefixing stripped out: https://github.com/vuejs/core/blob/main/packages/runtime-dom/src/modules/style.ts
|
|
15
61
|
export function patchStyle(el, prev, next) {
|
|
16
62
|
if (prev) {
|
|
17
|
-
|
|
18
|
-
//
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
// declarations.forEach((d: any) => {
|
|
23
|
-
// ;(el.nativeView.style as any)[d.property] = unsetValue
|
|
24
|
-
// })
|
|
63
|
+
const style = normalizeStyle(prev);
|
|
64
|
+
// undo old styles
|
|
65
|
+
Object.keys(style).forEach((property) => {
|
|
66
|
+
removeStyleProperty(el, property);
|
|
67
|
+
});
|
|
25
68
|
}
|
|
26
69
|
if (!next) {
|
|
27
|
-
el.removeAttribute(
|
|
70
|
+
el.removeAttribute('style');
|
|
28
71
|
}
|
|
29
72
|
else {
|
|
30
73
|
// set new styles
|
|
31
|
-
|
|
74
|
+
const style = normalizeStyle(next);
|
|
75
|
+
Object.keys(style).forEach((property) => {
|
|
76
|
+
addStyleProperty(el, property, style[property]);
|
|
77
|
+
});
|
|
32
78
|
}
|
|
33
79
|
}
|
|
34
80
|
//# sourceMappingURL=style.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"style.js","sourceRoot":"","sources":["../../../src/renderer/modules/style.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"style.js","sourceRoot":"","sources":["../../../src/renderer/modules/style.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { VNodeProps, RendererOptions } from
|
|
2
|
-
import { NSVElement, NSVNode } from
|
|
1
|
+
import { VNodeProps, RendererOptions } from '@vue/runtime-core';
|
|
2
|
+
import { NSVElement, NSVNode } from '../dom';
|
|
3
3
|
export declare function insert(el: NSVNode, parent: NSVElement, anchor?: NSVNode | null | undefined): void;
|
|
4
4
|
export declare function remove(el: NSVNode): void;
|
|
5
5
|
export declare function createElement(type: string, isSVG?: boolean | undefined, isCustomizedBuiltIn?: string | undefined, vnodeProps?: (VNodeProps & {
|
|
@@ -13,4 +13,5 @@ export declare function parentNode(node: NSVNode): NSVElement | null;
|
|
|
13
13
|
export declare function nextSibling(node: NSVNode): NSVNode | null;
|
|
14
14
|
export declare function cloneNode(node: NSVNode): NSVNode;
|
|
15
15
|
export declare function insertStaticContent(content: string, parent: NSVElement, anchor: NSVNode, isSvg: boolean, start?: NSVNode, end?: NSVNode): [NSVNode, NSVNode];
|
|
16
|
+
export declare function setScopeId(el: NSVElement, scopeId: string): void;
|
|
16
17
|
export declare const nodeOps: Omit<RendererOptions, 'patchProp'>;
|
package/dist/renderer/nodeOps.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { NSVComment, NSVElement, NSVText } from
|
|
1
|
+
import { NSVComment, NSVElement, NSVText } from '../dom';
|
|
2
2
|
export function insert(el, parent, anchor) {
|
|
3
3
|
// console.log("insert", el, parent.tagName, anchor);
|
|
4
4
|
if (anchor !== null) {
|
|
@@ -42,14 +42,17 @@ export function nextSibling(node) {
|
|
|
42
42
|
return node.nextSibling;
|
|
43
43
|
}
|
|
44
44
|
export function cloneNode(node) {
|
|
45
|
-
console.log(
|
|
45
|
+
console.log('CLONE NODE');
|
|
46
46
|
return node;
|
|
47
47
|
}
|
|
48
48
|
// insertStaticContent?(content: string, parent: HostElement, anchor: HostNode | null, isSVG: boolean, start?: HostNode | null, end?: HostNode | null): [HostNode, HostNode];
|
|
49
49
|
export function insertStaticContent(content, parent, anchor, isSvg, start, end) {
|
|
50
|
-
console.log(
|
|
50
|
+
console.log('insert static content - not implemented.');
|
|
51
51
|
return [undefined, undefined];
|
|
52
52
|
}
|
|
53
|
+
export function setScopeId(el, scopeId) {
|
|
54
|
+
el.setAttribute(scopeId, '');
|
|
55
|
+
}
|
|
53
56
|
export const nodeOps = {
|
|
54
57
|
insert,
|
|
55
58
|
remove,
|
|
@@ -62,7 +65,7 @@ export const nodeOps = {
|
|
|
62
65
|
nextSibling,
|
|
63
66
|
cloneNode,
|
|
64
67
|
insertStaticContent,
|
|
68
|
+
setScopeId,
|
|
65
69
|
// querySelector,
|
|
66
|
-
// setScopeId,
|
|
67
70
|
};
|
|
68
71
|
//# sourceMappingURL=nodeOps.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nodeOps.js","sourceRoot":"","sources":["../../src/renderer/nodeOps.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAW,OAAO,EAAE,MAAM,QAAQ,CAAC;AAElE,MAAM,UAAU,MAAM,CACpB,EAAW,EACX,MAAkB,EAClB,MAAmC;IAEnC,qDAAqD;IACrD,IAAI,MAAM,KAAK,IAAI,EAAE;QACnB,gCAAgC;QAChC,MAAM,CAAC,YAAY,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;KACjC;SAAM;QACL,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;KACxB;AACH,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,EAAW;IAChC,IAAI,EAAE,CAAC,UAAU,IAAI,IAAI,EAAE;QACzB,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;KAC/B;AACH,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,IAAY,EACZ,KAA2B,EAC3B,mBAAwC,EACxC,UAAqE;IAErE,sCAAsC;IACtC,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,6BAA6B;IAC7B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,gCAAgC;IAChC,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,IAAa,EAAE,IAAY;IACjD,uCAAuC;IACvC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAAgB,EAAE,IAAY;IAC3D,+CAA+C;IAC/C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAa;IACtC,6CAA6C;IAC7C,OAAO,IAAI,CAAC,UAAU,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,IAAa;IACvC,OAAO,IAAI,CAAC,WAAW,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,IAAa;IACrC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC1B,OAAO,IAAI,CAAC;AACd,CAAC;AACD,6KAA6K;AAC7K,MAAM,UAAU,mBAAmB,CACjC,OAAe,EACf,MAAkB,EAClB,MAAe,EACf,KAAc,EACd,KAAe,EACf,GAAa;IAEb,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;IAExD,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,CAAC,MAAM,OAAO,GAAuC;IACzD,MAAM;IACN,MAAM;IACN,aAAa;IACb,UAAU;IACV,aAAa;IACb,OAAO;IACP,cAAc;IACd,UAAU;IACV,WAAW;IAEX,SAAS;IACT,mBAAmB;
|
|
1
|
+
{"version":3,"file":"nodeOps.js","sourceRoot":"","sources":["../../src/renderer/nodeOps.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAW,OAAO,EAAE,MAAM,QAAQ,CAAC;AAElE,MAAM,UAAU,MAAM,CACpB,EAAW,EACX,MAAkB,EAClB,MAAmC;IAEnC,qDAAqD;IACrD,IAAI,MAAM,KAAK,IAAI,EAAE;QACnB,gCAAgC;QAChC,MAAM,CAAC,YAAY,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;KACjC;SAAM;QACL,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;KACxB;AACH,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,EAAW;IAChC,IAAI,EAAE,CAAC,UAAU,IAAI,IAAI,EAAE;QACzB,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;KAC/B;AACH,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,IAAY,EACZ,KAA2B,EAC3B,mBAAwC,EACxC,UAAqE;IAErE,sCAAsC;IACtC,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,6BAA6B;IAC7B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,gCAAgC;IAChC,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,IAAa,EAAE,IAAY;IACjD,uCAAuC;IACvC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAAgB,EAAE,IAAY;IAC3D,+CAA+C;IAC/C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAa;IACtC,6CAA6C;IAC7C,OAAO,IAAI,CAAC,UAAU,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,IAAa;IACvC,OAAO,IAAI,CAAC,WAAW,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,IAAa;IACrC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC1B,OAAO,IAAI,CAAC;AACd,CAAC;AACD,6KAA6K;AAC7K,MAAM,UAAU,mBAAmB,CACjC,OAAe,EACf,MAAkB,EAClB,MAAe,EACf,KAAc,EACd,KAAe,EACf,GAAa;IAEb,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;IAExD,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,EAAc,EAAE,OAAe;IACxD,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,CAAC,MAAM,OAAO,GAAuC;IACzD,MAAM;IACN,MAAM;IACN,aAAa;IACb,UAAU;IACV,aAAa;IACb,OAAO;IACP,cAAc;IACd,UAAU;IACV,WAAW;IAEX,SAAS;IACT,mBAAmB;IAEnB,UAAU;IAEV,mBAAmB;CACpB,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { NSVElement } from
|
|
1
|
+
import { NSVElement } from '../dom';
|
|
2
2
|
export declare function patchProp(el: NSVElement, key: string, prevValue: any, nextValue: any, isSVG: boolean, prevChildren: any, parentComponent: any, parentSuspense: any, unmountChildren: any): void;
|
|
@@ -1,22 +1,39 @@
|
|
|
1
|
-
import { patchAttr } from
|
|
2
|
-
import { patchClass } from
|
|
3
|
-
import { patchEvent } from
|
|
4
|
-
import { patchStyle } from
|
|
5
|
-
import { isOn } from
|
|
1
|
+
import { patchAttr } from './modules/attrs';
|
|
2
|
+
import { patchClass } from './modules/class';
|
|
3
|
+
import { patchEvent } from './modules/events';
|
|
4
|
+
import { patchStyle } from './modules/style';
|
|
5
|
+
import { isOn } from '../runtimeHelpers';
|
|
6
|
+
import { getViewMeta } from '../registry';
|
|
6
7
|
export function patchProp(el, key, prevValue, nextValue, isSVG = false, prevChildren, parentComponent, parentSuspense, unmountChildren) {
|
|
7
8
|
switch (key) {
|
|
8
9
|
// special
|
|
9
|
-
case
|
|
10
|
+
case 'class':
|
|
10
11
|
// console.log('->patchProp+Class')
|
|
11
12
|
patchClass(el, nextValue);
|
|
12
13
|
break;
|
|
13
|
-
case
|
|
14
|
+
case 'style':
|
|
14
15
|
// console.log('->patchProp+Style')
|
|
15
16
|
patchStyle(el, prevValue, nextValue);
|
|
16
17
|
break;
|
|
17
|
-
case
|
|
18
|
-
case
|
|
19
|
-
|
|
18
|
+
case 'modelValue':
|
|
19
|
+
case 'onUpdate:modelValue':
|
|
20
|
+
try {
|
|
21
|
+
// v-model - maps modelValue/onUpdate:modelValue to the correct prop/events from the registry meta
|
|
22
|
+
const { prop, event } = getViewMeta(el.tagName)
|
|
23
|
+
.model;
|
|
24
|
+
if (key === 'modelValue') {
|
|
25
|
+
patchAttr(el, prop, prevValue, nextValue);
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
const cb = nextValue
|
|
29
|
+
? ($event) => nextValue($event.object[prop])
|
|
30
|
+
: nextValue;
|
|
31
|
+
patchEvent(el, `on:${event}`, prevValue, cb);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
catch (err) {
|
|
35
|
+
// ignore if the view meta can't be found.
|
|
36
|
+
}
|
|
20
37
|
break;
|
|
21
38
|
default:
|
|
22
39
|
if (isOn(key)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"patchProp.js","sourceRoot":"","sources":["../../src/renderer/patchProp.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"patchProp.js","sourceRoot":"","sources":["../../src/renderer/patchProp.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,WAAW,EAAsB,MAAM,aAAa,CAAC;AAE9D,MAAM,UAAU,SAAS,CACvB,EAAc,EACd,GAAW,EACX,SAAc,EACd,SAAc,EACd,KAAK,GAAG,KAAK,EACb,YAAiB,EACjB,eAAoB,EACpB,cAAmB,EACnB,eAAoB;IAEpB,QAAQ,GAAG,EAAE;QACX,UAAU;QACV,KAAK,OAAO;YACV,mCAAmC;YACnC,UAAU,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;YAC1B,MAAM;QACR,KAAK,OAAO;YACV,mCAAmC;YACnC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;YACrC,MAAM;QACR,KAAK,YAAY,CAAC;QAClB,KAAK,qBAAqB;YACxB,IAAI;gBACF,kGAAkG;gBAClG,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,WAAW,CAAC,EAAE,CAAC,OAAO,CAAC;qBAC5C,KAA2B,CAAC;gBAC/B,IAAI,GAAG,KAAK,YAAY,EAAE;oBACxB,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;iBAC3C;qBAAM;oBACL,MAAM,EAAE,GAAG,SAAS;wBAClB,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;wBAC5C,CAAC,CAAC,SAAS,CAAC;oBACd,UAAU,CAAC,EAAE,EAAE,MAAM,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;iBAC9C;aACF;YAAC,OAAO,GAAG,EAAE;gBACZ,0CAA0C;aAC3C;YACD,MAAM;QACR;YACE,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE;gBACb,UAAU,CAAC,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;aAC5D;iBAAM;gBACL,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;aAC1C;KACJ;AACH,CAAC"}
|
package/dist/runtimeHelpers.d.ts
CHANGED
|
@@ -1,5 +1,31 @@
|
|
|
1
|
+
import { View } from '@nativescript/core';
|
|
2
|
+
import { App, Component, RendererElement, RendererNode, VNode } from '@vue/runtime-core';
|
|
3
|
+
import { NSVNode } from './dom';
|
|
4
|
+
type Props = Record<string, unknown>;
|
|
5
|
+
export declare const setRootApp: (app: App) => void;
|
|
6
|
+
export declare const createNativeView: <T = View>(component: Component, props?: Props, contextOverrides?: {
|
|
7
|
+
reload?(): void;
|
|
8
|
+
}) => {
|
|
9
|
+
context: {
|
|
10
|
+
reload?(): void;
|
|
11
|
+
config: import("@vue/runtime-core").AppConfig;
|
|
12
|
+
mixins: import("@vue/runtime-core").ComponentOptions<{}, any, any, any, any, any, any, any, any>[];
|
|
13
|
+
components: Record<string, Component<any, any, any, import("@vue/runtime-core").ComputedOptions, import("@vue/runtime-core").MethodOptions>>;
|
|
14
|
+
directives: Record<string, import("@vue/runtime-core").Directive<any, any>>;
|
|
15
|
+
provides: Record<string | symbol, any>;
|
|
16
|
+
};
|
|
17
|
+
readonly vnode: VNode<RendererNode, RendererElement, {
|
|
18
|
+
[key: string]: any;
|
|
19
|
+
}>;
|
|
20
|
+
readonly nativeView: T;
|
|
21
|
+
mount(root?: NSVNode): VNode<RendererNode, RendererElement, {
|
|
22
|
+
nativeView: T;
|
|
23
|
+
}>;
|
|
24
|
+
unmount(): void;
|
|
25
|
+
};
|
|
1
26
|
export declare const ELEMENT_REF: unique symbol;
|
|
2
27
|
export declare const isOn: (key: string) => boolean;
|
|
3
28
|
export declare const isAndroidKey: (key: string) => boolean;
|
|
4
29
|
export declare const isIOSKey: (key: string) => boolean;
|
|
5
30
|
export declare const isBoolean: (value: unknown) => boolean;
|
|
31
|
+
export {};
|
package/dist/runtimeHelpers.js
CHANGED
|
@@ -1,10 +1,49 @@
|
|
|
1
|
+
import { NSVRoot } from './dom';
|
|
2
|
+
import { renderer } from './renderer';
|
|
1
3
|
const __DEV__ = true;
|
|
4
|
+
let rootApp = null;
|
|
5
|
+
export const setRootApp = (app) => {
|
|
6
|
+
rootApp = app;
|
|
7
|
+
};
|
|
8
|
+
export const createNativeView = (component, props, contextOverrides) => {
|
|
9
|
+
let isMounted = false;
|
|
10
|
+
const newApp = renderer.createApp(component, props);
|
|
11
|
+
// Destructure so as not to copy over the root app instance
|
|
12
|
+
const { app, ...rootContext } = rootApp._context;
|
|
13
|
+
const context = { ...rootContext, ...contextOverrides };
|
|
14
|
+
return {
|
|
15
|
+
context,
|
|
16
|
+
get vnode() {
|
|
17
|
+
return newApp._instance?.vnode;
|
|
18
|
+
},
|
|
19
|
+
get nativeView() {
|
|
20
|
+
return this.vnode?.el.nativeView;
|
|
21
|
+
},
|
|
22
|
+
mount(root = new NSVRoot()) {
|
|
23
|
+
if (isMounted) {
|
|
24
|
+
return this.vnode;
|
|
25
|
+
}
|
|
26
|
+
Object.keys(context).forEach((key) => {
|
|
27
|
+
newApp._context[key] = context[key];
|
|
28
|
+
});
|
|
29
|
+
newApp.mount(root);
|
|
30
|
+
isMounted = true;
|
|
31
|
+
return this.vnode;
|
|
32
|
+
},
|
|
33
|
+
unmount() {
|
|
34
|
+
if (!isMounted)
|
|
35
|
+
return;
|
|
36
|
+
newApp.unmount();
|
|
37
|
+
isMounted = false;
|
|
38
|
+
},
|
|
39
|
+
};
|
|
40
|
+
};
|
|
2
41
|
export const ELEMENT_REF = Symbol(__DEV__ ? `elementRef` : ``);
|
|
3
42
|
const onRE = /^on.+/;
|
|
4
43
|
export const isOn = (key) => onRE.test(key);
|
|
5
|
-
export const isAndroidKey = (key) => key.startsWith(
|
|
6
|
-
export const isIOSKey = (key) => key.startsWith(
|
|
44
|
+
export const isAndroidKey = (key) => key.startsWith('android:');
|
|
45
|
+
export const isIOSKey = (key) => key.startsWith('ios:');
|
|
7
46
|
export const isBoolean = (value) => {
|
|
8
|
-
return typeof value ===
|
|
47
|
+
return typeof value === 'boolean' || value instanceof Boolean;
|
|
9
48
|
};
|
|
10
49
|
//# sourceMappingURL=runtimeHelpers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtimeHelpers.js","sourceRoot":"","sources":["../src/runtimeHelpers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"runtimeHelpers.js","sourceRoot":"","sources":["../src/runtimeHelpers.ts"],"names":[],"mappings":"AAQA,OAAO,EAAW,OAAO,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAItC,MAAM,OAAO,GAAG,IAAI,CAAC;AAErB,IAAI,OAAO,GAAQ,IAAI,CAAC;AAExB,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAQ,EAAE,EAAE;IACrC,OAAO,GAAG,GAAG,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,SAAoB,EACpB,KAAa,EACb,gBAAsC,EACtC,EAAE;IACF,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACpD,2DAA2D;IAC3D,MAAM,EAAE,GAAG,EAAE,GAAG,WAAW,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC;IACjD,MAAM,OAAO,GAAG,EAAE,GAAG,WAAW,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAIxD,OAAO;QACL,OAAO;QACP,IAAI,KAAK;YACP,OAAO,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC;QACjC,CAAC;QACD,IAAI,UAAU;YACZ,OAAO,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC;QACnC,CAAC;QACD,KAAK,CAAC,OAAgB,IAAI,OAAO,EAAE;YACjC,IAAI,SAAS,EAAE;gBACb,OAAO,IAAI,CAAC,KAAU,CAAC;aACxB;YAED,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBACnC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;YACtC,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAEnB,SAAS,GAAG,IAAI,CAAC;YAEjB,OAAO,IAAI,CAAC,KAAU,CAAC;QACzB,CAAC;QACD,OAAO;YACL,IAAI,CAAC,SAAS;gBAAE,OAAO;YAEvB,MAAM,CAAC,OAAO,EAAE,CAAC;YAEjB,SAAS,GAAG,KAAK,CAAC;QACpB,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AAE/D,MAAM,IAAI,GAAG,OAAO,CAAC;AACrB,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAEpD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAExE,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AAEhE,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,KAAc,EAAW,EAAE;IACnD,OAAO,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,YAAY,OAAO,CAAC;AAChE,CAAC,CAAC"}
|
package/dist/types.d.ts
CHANGED
package/dist/withCompiler.js
CHANGED
package/dist/withCompiler.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withCompiler.js","sourceRoot":"","sources":["../src/withCompiler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"withCompiler.js","sourceRoot":"","sources":["../src/withCompiler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE/C,uBAAuB,CAAC,iBAAiB,CAAC,CAAC;AAE3C,OAAO,EAAE,iBAAiB,IAAI,OAAO,EAAE,CAAC;AACxC,cAAc,SAAS,CAAC"}
|