piral-svelte 0.14.16 → 0.14.17-beta.3882

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/esm/converter.js CHANGED
@@ -2,27 +2,24 @@ import { createExtension } from './extension';
2
2
  export function createConverter(config = {}) {
3
3
  const { selector = 'svelte-extension' } = config;
4
4
  const Extension = createExtension(selector);
5
- const convert = (Component, captured) => {
6
- let instance = undefined;
7
- return {
8
- mount(parent, data, ctx) {
9
- instance = new Component({
10
- target: parent,
11
- props: Object.assign(Object.assign(Object.assign({}, captured), ctx), data),
12
- });
13
- },
14
- update(_, data) {
15
- Object.keys(data).forEach((key) => {
16
- instance[key] = data[key];
17
- });
18
- },
19
- unmount(el) {
20
- instance.$destroy();
21
- instance = undefined;
22
- el.innerHTML = '';
23
- },
24
- };
25
- };
5
+ const convert = (Component, captured) => ({
6
+ mount(parent, data, ctx, locals) {
7
+ locals.instance = new Component({
8
+ target: parent,
9
+ props: Object.assign(Object.assign(Object.assign({}, captured), ctx), data),
10
+ });
11
+ },
12
+ update(el, data, ctx, locals) {
13
+ Object.keys(data).forEach((key) => {
14
+ locals.instance[key] = data[key];
15
+ });
16
+ },
17
+ unmount(el, locals) {
18
+ locals.instance.$destroy();
19
+ locals.instance = undefined;
20
+ el.innerHTML = '';
21
+ },
22
+ });
26
23
  convert.Extension = Extension;
27
24
  return convert;
28
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"converter.js","sourceRoot":"","sources":["../src/converter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAW9C,MAAM,UAAU,eAAe,CAAC,SAAiC,EAAE;IACjE,MAAM,EAAE,QAAQ,GAAG,kBAAkB,EAAE,GAAG,MAAM,CAAC;IACjD,MAAM,SAAS,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,CACd,SAA+B,EAC/B,QAA8B,EACJ,EAAE;QAC5B,IAAI,QAAQ,GAAiC,SAAS,CAAC;QAEvD,OAAO;YACL,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG;gBACrB,QAAQ,GAAG,IAAI,SAAS,CAAC;oBACvB,MAAM,EAAE,MAAM;oBACd,KAAK,gDACA,QAAQ,GACR,GAAG,GACH,IAAI,CACR;iBACF,CAAC,CAAC;YACL,CAAC;YACD,MAAM,CAAC,CAAC,EAAE,IAAI;gBACZ,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;oBAChC,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC5B,CAAC,CAAC,CAAC;YACL,CAAC;YACD,OAAO,CAAC,EAAE;gBACR,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBACpB,QAAQ,GAAG,SAAS,CAAC;gBACrB,EAAE,CAAC,SAAS,GAAG,EAAE,CAAC;YACpB,CAAC;SACF,CAAC;IACJ,CAAC,CAAC;IACF,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;IAC9B,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"converter.js","sourceRoot":"","sources":["../src/converter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAe9C,MAAM,UAAU,eAAe,CAAC,SAAiC,EAAE;IACjE,MAAM,EAAE,QAAQ,GAAG,kBAAkB,EAAE,GAAG,MAAM,CAAC;IACjD,MAAM,SAAS,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,CACd,SAA+B,EAC/B,QAA8B,EACJ,EAAE,CAAC,CAAC;QAC9B,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,MAAmB;YAC1C,MAAM,CAAC,QAAQ,GAAG,IAAI,SAAS,CAAC;gBAC9B,MAAM,EAAE,MAAM;gBACd,KAAK,gDACA,QAAQ,GACR,GAAG,GACH,IAAI,CACR;aACF,CAAC,CAAC;QACL,CAAC;QACD,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,MAAmB;YACvC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBAChC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;YACnC,CAAC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,CAAC,EAAE,EAAE,MAAmB;YAC7B,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;YAC3B,MAAM,CAAC,QAAQ,GAAG,SAAS,CAAC;YAC5B,EAAE,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,CAAC;KACF,CAAC,CAAC;IACH,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;IAC9B,OAAO,OAAO,CAAC;AACjB,CAAC"}
package/lib/converter.js CHANGED
@@ -5,27 +5,24 @@ const extension_1 = require("./extension");
5
5
  function createConverter(config = {}) {
6
6
  const { selector = 'svelte-extension' } = config;
7
7
  const Extension = (0, extension_1.createExtension)(selector);
8
- const convert = (Component, captured) => {
9
- let instance = undefined;
10
- return {
11
- mount(parent, data, ctx) {
12
- instance = new Component({
13
- target: parent,
14
- props: Object.assign(Object.assign(Object.assign({}, captured), ctx), data),
15
- });
16
- },
17
- update(_, data) {
18
- Object.keys(data).forEach((key) => {
19
- instance[key] = data[key];
20
- });
21
- },
22
- unmount(el) {
23
- instance.$destroy();
24
- instance = undefined;
25
- el.innerHTML = '';
26
- },
27
- };
28
- };
8
+ const convert = (Component, captured) => ({
9
+ mount(parent, data, ctx, locals) {
10
+ locals.instance = new Component({
11
+ target: parent,
12
+ props: Object.assign(Object.assign(Object.assign({}, captured), ctx), data),
13
+ });
14
+ },
15
+ update(el, data, ctx, locals) {
16
+ Object.keys(data).forEach((key) => {
17
+ locals.instance[key] = data[key];
18
+ });
19
+ },
20
+ unmount(el, locals) {
21
+ locals.instance.$destroy();
22
+ locals.instance = undefined;
23
+ el.innerHTML = '';
24
+ },
25
+ });
29
26
  convert.Extension = Extension;
30
27
  return convert;
31
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"converter.js","sourceRoot":"","sources":["../src/converter.ts"],"names":[],"mappings":";;;AACA,2CAA8C;AAW9C,SAAgB,eAAe,CAAC,SAAiC,EAAE;IACjE,MAAM,EAAE,QAAQ,GAAG,kBAAkB,EAAE,GAAG,MAAM,CAAC;IACjD,MAAM,SAAS,GAAG,IAAA,2BAAe,EAAC,QAAQ,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,CACd,SAA+B,EAC/B,QAA8B,EACJ,EAAE;QAC5B,IAAI,QAAQ,GAAiC,SAAS,CAAC;QAEvD,OAAO;YACL,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG;gBACrB,QAAQ,GAAG,IAAI,SAAS,CAAC;oBACvB,MAAM,EAAE,MAAM;oBACd,KAAK,gDACA,QAAQ,GACR,GAAG,GACH,IAAI,CACR;iBACF,CAAC,CAAC;YACL,CAAC;YACD,MAAM,CAAC,CAAC,EAAE,IAAI;gBACZ,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;oBAChC,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC5B,CAAC,CAAC,CAAC;YACL,CAAC;YACD,OAAO,CAAC,EAAE;gBACR,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBACpB,QAAQ,GAAG,SAAS,CAAC;gBACrB,EAAE,CAAC,SAAS,GAAG,EAAE,CAAC;YACpB,CAAC;SACF,CAAC;IACJ,CAAC,CAAC;IACF,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;IAC9B,OAAO,OAAO,CAAC;AACjB,CAAC;AAlCD,0CAkCC"}
1
+ {"version":3,"file":"converter.js","sourceRoot":"","sources":["../src/converter.ts"],"names":[],"mappings":";;;AACA,2CAA8C;AAe9C,SAAgB,eAAe,CAAC,SAAiC,EAAE;IACjE,MAAM,EAAE,QAAQ,GAAG,kBAAkB,EAAE,GAAG,MAAM,CAAC;IACjD,MAAM,SAAS,GAAG,IAAA,2BAAe,EAAC,QAAQ,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,CACd,SAA+B,EAC/B,QAA8B,EACJ,EAAE,CAAC,CAAC;QAC9B,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,MAAmB;YAC1C,MAAM,CAAC,QAAQ,GAAG,IAAI,SAAS,CAAC;gBAC9B,MAAM,EAAE,MAAM;gBACd,KAAK,gDACA,QAAQ,GACR,GAAG,GACH,IAAI,CACR;aACF,CAAC,CAAC;QACL,CAAC;QACD,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,MAAmB;YACvC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBAChC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;YACnC,CAAC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,CAAC,EAAE,EAAE,MAAmB;YAC7B,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;YAC3B,MAAM,CAAC,QAAQ,GAAG,SAAS,CAAC;YAC5B,EAAE,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,CAAC;KACF,CAAC,CAAC;IACH,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;IAC9B,OAAO,OAAO,CAAC;AACjB,CAAC;AA9BD,0CA8BC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "piral-svelte",
3
- "version": "0.14.16",
3
+ "version": "0.14.17-beta.3882",
4
4
  "description": "Plugin for integrating Svelte components in Piral.",
5
5
  "keywords": [
6
6
  "piral",
@@ -44,10 +44,10 @@
44
44
  "test": "echo \"Error: run tests from root\" && exit 1"
45
45
  },
46
46
  "devDependencies": {
47
- "piral-core": "^0.14.16"
47
+ "piral-core": "0.14.17-beta.3882"
48
48
  },
49
49
  "peerDependencies": {
50
50
  "piral-core": "0.14.x"
51
51
  },
52
- "gitHead": "39ec6f4eb7b46a14530cb845371bf9e294be0171"
52
+ "gitHead": "baa86e46163bdf6ea51d84414a6fe64a913517c7"
53
53
  }
package/src/converter.ts CHANGED
@@ -10,38 +10,38 @@ export interface SvelteConverterOptions {
10
10
  selector?: string;
11
11
  }
12
12
 
13
+ interface SvelteState {
14
+ instance: SvelteComponentInstance<any>;
15
+ }
16
+
13
17
  export function createConverter(config: SvelteConverterOptions = {}) {
14
18
  const { selector = 'svelte-extension' } = config;
15
19
  const Extension = createExtension(selector);
16
20
  const convert = <TProps extends BaseComponentProps>(
17
21
  Component: SvelteModule<TProps>,
18
22
  captured?: Record<string, any>,
19
- ): ForeignComponent<TProps> => {
20
- let instance: SvelteComponentInstance<any> = undefined;
21
-
22
- return {
23
- mount(parent, data, ctx) {
24
- instance = new Component({
25
- target: parent,
26
- props: {
27
- ...captured,
28
- ...ctx,
29
- ...data,
30
- },
31
- });
32
- },
33
- update(_, data) {
34
- Object.keys(data).forEach((key) => {
35
- instance[key] = data[key];
36
- });
37
- },
38
- unmount(el) {
39
- instance.$destroy();
40
- instance = undefined;
41
- el.innerHTML = '';
42
- },
43
- };
44
- };
23
+ ): ForeignComponent<TProps> => ({
24
+ mount(parent, data, ctx, locals: SvelteState) {
25
+ locals.instance = new Component({
26
+ target: parent,
27
+ props: {
28
+ ...captured,
29
+ ...ctx,
30
+ ...data,
31
+ },
32
+ });
33
+ },
34
+ update(el, data, ctx, locals: SvelteState) {
35
+ Object.keys(data).forEach((key) => {
36
+ locals.instance[key] = data[key];
37
+ });
38
+ },
39
+ unmount(el, locals: SvelteState) {
40
+ locals.instance.$destroy();
41
+ locals.instance = undefined;
42
+ el.innerHTML = '';
43
+ },
44
+ });
45
45
  convert.Extension = Extension;
46
46
  return convert;
47
47
  }