@things-factory/personalization 7.0.1-alpha.73 → 7.0.1-alpha.76

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/client/index.ts CHANGED
@@ -1,3 +1,3 @@
1
1
  export * from './types.js'
2
2
  export * from './page-preference-provider-impl.js'
3
- export * from './p13n.js'
3
+ export * from './p13n-mixin.js'
@@ -1,11 +1,15 @@
1
1
  import { PageView } from '@operato/shell'
2
2
  import { getPathInfo } from '@operato/utils'
3
-
4
3
  import { PagePreferenceProviderImpl } from './page-preference-provider-impl.js'
5
4
 
6
- export const p13n = base =>
5
+ type Constructor<T> = new (...args: any[]) => T
6
+ interface CustomElement {}
7
+
8
+ export const p13n = <T extends Constructor<CustomElement>>(base: T) =>
7
9
  class extends base {
8
- getPagePreferenceProvider(elementId) {
10
+ preferenceProviders?: { [key: string]: PagePreferenceProviderImpl }
11
+
12
+ getPagePreferenceProvider(elementId: string) {
9
13
  if (!elementId) {
10
14
  return
11
15
  }
@@ -15,13 +19,15 @@ export const p13n = base =>
15
19
  }
16
20
 
17
21
  if (!this.preferenceProviders[elementId]) {
18
- if (base instanceof PageView) {
19
- this.preferenceProviders[elementId] = new PagePreferenceProviderImpl(this.lifecycle.page, elementId)
22
+ if (this instanceof PageView) {
23
+ this.preferenceProviders[elementId] = new PagePreferenceProviderImpl(
24
+ (this as PageView).lifecycle.page!,
25
+ elementId
26
+ )
20
27
  } else {
21
- const { pathname } = location
28
+ const { pathname } = window.location
22
29
  const { path } = getPathInfo(pathname)
23
30
  const page = path?.split('/')[1] || '/'
24
-
25
31
  this.preferenceProviders[elementId] = new PagePreferenceProviderImpl(page, elementId)
26
32
  }
27
33
  }
@@ -1,3 +1,3 @@
1
1
  export * from './types.js';
2
2
  export * from './page-preference-provider-impl.js';
3
- export * from './p13n.js';
3
+ export * from './p13n-mixin.js';
@@ -1,4 +1,4 @@
1
1
  export * from './types.js';
2
2
  export * from './page-preference-provider-impl.js';
3
- export * from './p13n.js';
3
+ export * from './p13n-mixin.js';
4
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../client/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,oCAAoC,CAAA;AAClD,cAAc,WAAW,CAAA","sourcesContent":["export * from './types.js'\nexport * from './page-preference-provider-impl.js'\nexport * from './p13n.js'\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../client/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,oCAAoC,CAAA;AAClD,cAAc,iBAAiB,CAAA","sourcesContent":["export * from './types.js'\nexport * from './page-preference-provider-impl.js'\nexport * from './p13n-mixin.js'\n"]}
@@ -0,0 +1,13 @@
1
+ import { PagePreferenceProviderImpl } from './page-preference-provider-impl.js';
2
+ type Constructor<T> = new (...args: any[]) => T;
3
+ interface CustomElement {
4
+ }
5
+ export declare const p13n: <T extends Constructor<CustomElement>>(base: T) => {
6
+ new (...args: any[]): {
7
+ preferenceProviders?: {
8
+ [key: string]: PagePreferenceProviderImpl;
9
+ } | undefined;
10
+ getPagePreferenceProvider(elementId: string): PagePreferenceProviderImpl | undefined;
11
+ };
12
+ } & T;
13
+ export {};
@@ -0,0 +1,26 @@
1
+ import { PageView } from '@operato/shell';
2
+ import { getPathInfo } from '@operato/utils';
3
+ import { PagePreferenceProviderImpl } from './page-preference-provider-impl.js';
4
+ export const p13n = (base) => class extends base {
5
+ getPagePreferenceProvider(elementId) {
6
+ if (!elementId) {
7
+ return;
8
+ }
9
+ if (!this.preferenceProviders) {
10
+ this.preferenceProviders = {};
11
+ }
12
+ if (!this.preferenceProviders[elementId]) {
13
+ if (this instanceof PageView) {
14
+ this.preferenceProviders[elementId] = new PagePreferenceProviderImpl(this.lifecycle.page, elementId);
15
+ }
16
+ else {
17
+ const { pathname } = window.location;
18
+ const { path } = getPathInfo(pathname);
19
+ const page = (path === null || path === void 0 ? void 0 : path.split('/')[1]) || '/';
20
+ this.preferenceProviders[elementId] = new PagePreferenceProviderImpl(page, elementId);
21
+ }
22
+ }
23
+ return this.preferenceProviders[elementId];
24
+ }
25
+ };
26
+ //# sourceMappingURL=p13n-mixin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"p13n-mixin.js","sourceRoot":"","sources":["../client/p13n-mixin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAA;AAK/E,MAAM,CAAC,MAAM,IAAI,GAAG,CAAuC,IAAO,EAAE,EAAE,CACpE,KAAM,SAAQ,IAAI;IAGhB,yBAAyB,CAAC,SAAiB;QACzC,IAAI,CAAC,SAAS,EAAE;YACd,OAAM;SACP;QAED,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;YAC7B,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAA;SAC9B;QAED,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE;YACxC,IAAI,IAAI,YAAY,QAAQ,EAAE;gBAC5B,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,GAAG,IAAI,0BAA0B,CACjE,IAAiB,CAAC,SAAS,CAAC,IAAK,EAClC,SAAS,CACV,CAAA;aACF;iBAAM;gBACL,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAA;gBACpC,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAA;gBACtC,MAAM,IAAI,GAAG,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,KAAI,GAAG,CAAA;gBACvC,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,GAAG,IAAI,0BAA0B,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;aACtF;SACF;QAED,OAAO,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAA;IAC5C,CAAC;CACF,CAAA","sourcesContent":["import { PageView } from '@operato/shell'\nimport { getPathInfo } from '@operato/utils'\nimport { PagePreferenceProviderImpl } from './page-preference-provider-impl.js'\n\ntype Constructor<T> = new (...args: any[]) => T\ninterface CustomElement {}\n\nexport const p13n = <T extends Constructor<CustomElement>>(base: T) =>\n class extends base {\n preferenceProviders?: { [key: string]: PagePreferenceProviderImpl }\n\n getPagePreferenceProvider(elementId: string) {\n if (!elementId) {\n return\n }\n\n if (!this.preferenceProviders) {\n this.preferenceProviders = {}\n }\n\n if (!this.preferenceProviders[elementId]) {\n if (this instanceof PageView) {\n this.preferenceProviders[elementId] = new PagePreferenceProviderImpl(\n (this as PageView).lifecycle.page!,\n elementId\n )\n } else {\n const { pathname } = window.location\n const { path } = getPathInfo(pathname)\n const page = path?.split('/')[1] || '/'\n this.preferenceProviders[elementId] = new PagePreferenceProviderImpl(page, elementId)\n }\n }\n\n return this.preferenceProviders[elementId]\n }\n }\n"]}
@@ -1,7 +1,4 @@
1
- export declare const p13n: (base: any) => {
2
- new (): {
3
- [x: string]: any;
4
- getPagePreferenceProvider(elementId: any): any;
5
- };
6
- [x: string]: any;
7
- };
1
+ import { LitElement } from 'lit';
2
+ type Constructor<T = {}> = new (...args: any[]) => T;
3
+ export declare const p13n: <T extends Constructor<LitElement>>(base: T) => Constructor<LitElement> & T;
4
+ export {};
@@ -1,7 +1,11 @@
1
1
  import { PageView } from '@operato/shell';
2
2
  import { getPathInfo } from '@operato/utils';
3
3
  import { PagePreferenceProviderImpl } from './page-preference-provider-impl.js';
4
- export const p13n = base => class extends base {
4
+ // interface P13n {
5
+ // preferenceProviders?: { [key: string]: PagePreferenceProviderImpl }
6
+ // getPagePreferenceProvider(elementId: string): PagePreferenceProvider | undefined
7
+ // }
8
+ export const p13n = (base) => class extends base {
5
9
  getPagePreferenceProvider(elementId) {
6
10
  if (!elementId) {
7
11
  return;
@@ -10,11 +14,11 @@ export const p13n = base => class extends base {
10
14
  this.preferenceProviders = {};
11
15
  }
12
16
  if (!this.preferenceProviders[elementId]) {
13
- if (base instanceof PageView) {
17
+ if (this instanceof PageView) {
14
18
  this.preferenceProviders[elementId] = new PagePreferenceProviderImpl(this.lifecycle.page, elementId);
15
19
  }
16
20
  else {
17
- const { pathname } = location;
21
+ const { pathname } = window.location;
18
22
  const { path } = getPathInfo(pathname);
19
23
  const page = (path === null || path === void 0 ? void 0 : path.split('/')[1]) || '/';
20
24
  this.preferenceProviders[elementId] = new PagePreferenceProviderImpl(page, elementId);
@@ -1 +1 @@
1
- {"version":3,"file":"p13n.js","sourceRoot":"","sources":["../client/p13n.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAE5C,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAA;AAE/E,MAAM,CAAC,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CACzB,KAAM,SAAQ,IAAI;IAChB,yBAAyB,CAAC,SAAS;QACjC,IAAI,CAAC,SAAS,EAAE;YACd,OAAM;SACP;QAED,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;YAC7B,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAA;SAC9B;QAED,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE;YACxC,IAAI,IAAI,YAAY,QAAQ,EAAE;gBAC5B,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,GAAG,IAAI,0BAA0B,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;aACrG;iBAAM;gBACL,MAAM,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAA;gBAC7B,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAA;gBACtC,MAAM,IAAI,GAAG,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,KAAI,GAAG,CAAA;gBAEvC,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,GAAG,IAAI,0BAA0B,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;aACtF;SACF;QAED,OAAO,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAA;IAC5C,CAAC;CACF,CAAA","sourcesContent":["import { PageView } from '@operato/shell'\nimport { getPathInfo } from '@operato/utils'\n\nimport { PagePreferenceProviderImpl } from './page-preference-provider-impl.js'\n\nexport const p13n = base =>\n class extends base {\n getPagePreferenceProvider(elementId) {\n if (!elementId) {\n return\n }\n\n if (!this.preferenceProviders) {\n this.preferenceProviders = {}\n }\n\n if (!this.preferenceProviders[elementId]) {\n if (base instanceof PageView) {\n this.preferenceProviders[elementId] = new PagePreferenceProviderImpl(this.lifecycle.page, elementId)\n } else {\n const { pathname } = location\n const { path } = getPathInfo(pathname)\n const page = path?.split('/')[1] || '/'\n\n this.preferenceProviders[elementId] = new PagePreferenceProviderImpl(page, elementId)\n }\n }\n\n return this.preferenceProviders[elementId]\n }\n }\n"]}
1
+ {"version":3,"file":"p13n.js","sourceRoot":"","sources":["../client/p13n.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAA;AAK/E,mBAAmB;AACnB,wEAAwE;AACxE,qFAAqF;AACrF,IAAI;AAEJ,MAAM,CAAC,MAAM,IAAI,GAAG,CAAoC,IAAO,EAA+B,EAAE,CAC9F,KAAM,SAAQ,IAAI;IAGhB,yBAAyB,CAAC,SAAiB;QACzC,IAAI,CAAC,SAAS,EAAE;YACd,OAAM;SACP;QAED,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;YAC7B,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAA;SAC9B;QAED,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE;YACxC,IAAI,IAAI,YAAY,QAAQ,EAAE;gBAC5B,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,GAAG,IAAI,0BAA0B,CACjE,IAAiB,CAAC,SAAS,CAAC,IAAK,EAClC,SAAS,CACV,CAAA;aACF;iBAAM;gBACL,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAA;gBACpC,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAA;gBACtC,MAAM,IAAI,GAAG,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,KAAI,GAAG,CAAA;gBACvC,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,GAAG,IAAI,0BAA0B,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;aACtF;SACF;QAED,OAAO,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAA;IAC5C,CAAC;CACF,CAAA","sourcesContent":["import { LitElement } from 'lit'\nimport { PageView } from '@operato/shell'\nimport { getPathInfo } from '@operato/utils'\nimport { PagePreferenceProviderImpl } from './page-preference-provider-impl.js'\nimport { PagePreferenceProvider } from './types.js'\n\ntype Constructor<T = {}> = new (...args: any[]) => T\n\n// interface P13n {\n// preferenceProviders?: { [key: string]: PagePreferenceProviderImpl }\n// getPagePreferenceProvider(elementId: string): PagePreferenceProvider | undefined\n// }\n\nexport const p13n = <T extends Constructor<LitElement>>(base: T): Constructor<LitElement> & T =>\n class extends base {\n preferenceProviders?: { [key: string]: PagePreferenceProviderImpl }\n\n getPagePreferenceProvider(elementId: string) {\n if (!elementId) {\n return\n }\n\n if (!this.preferenceProviders) {\n this.preferenceProviders = {}\n }\n\n if (!this.preferenceProviders[elementId]) {\n if (this instanceof PageView) {\n this.preferenceProviders[elementId] = new PagePreferenceProviderImpl(\n (this as PageView).lifecycle.page!,\n elementId\n )\n } else {\n const { pathname } = window.location\n const { path } = getPathInfo(pathname)\n const page = path?.split('/')[1] || '/'\n this.preferenceProviders[elementId] = new PagePreferenceProviderImpl(page, elementId)\n }\n }\n\n return this.preferenceProviders[elementId]\n }\n }\n"]}