@wix/site-service-pages 1.0.2 → 1.2.0
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 +4 -0
- package/cjs/build/definition/index.d.ts +5 -7
- package/cjs/build/definition/index.js.map +1 -1
- package/cjs/build/implementations/pagesService.js.map +1 -1
- package/cjs/package.json +1 -1
- package/definition/package.json +1 -1
- package/dist/definition/index.d.ts +5 -7
- package/dist/definition/index.js.map +1 -1
- package/dist/implementations/pagesService.js.map +1 -1
- package/implementations/package.json +1 -1
- package/package.json +16 -16
- package/src/definition/index.ts +19 -21
- package/src/implementations/pagesService.ts +29 -29
- package/types/package.json +1 -1
package/README.md
CHANGED
|
@@ -50,6 +50,10 @@ type PageConfig = {
|
|
|
50
50
|
path: string
|
|
51
51
|
parentPageId?: string
|
|
52
52
|
popup: boolean
|
|
53
|
+
/** TPA page identifier (e.g. `ecom_side_cart`). Not globally unique on its own — pair with `appDefinitionId`. */
|
|
54
|
+
appPageId?: string
|
|
55
|
+
/** App definition ID of the TPA that owns this page. Use together with `appPageId` to identify a TPA popup. */
|
|
56
|
+
appDefinitionId?: string
|
|
53
57
|
}
|
|
54
58
|
|
|
55
59
|
type Page = PageConfig & { id: string }
|
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
import type { ServiceDefinition } from '@wix/services-definitions';
|
|
2
|
-
export type Page = {
|
|
3
|
-
id: string;
|
|
4
|
-
title: string;
|
|
5
|
-
path: string;
|
|
6
|
-
parentPageId?: string;
|
|
7
|
-
popup: boolean;
|
|
8
|
-
};
|
|
9
2
|
export type PageConfig = {
|
|
10
3
|
title: string;
|
|
11
4
|
path: string;
|
|
12
5
|
parentPageId?: string;
|
|
13
6
|
popup: boolean;
|
|
7
|
+
appPageId?: string;
|
|
8
|
+
appDefinitionId?: string;
|
|
9
|
+
};
|
|
10
|
+
export type Page = PageConfig & {
|
|
11
|
+
id: string;
|
|
14
12
|
};
|
|
15
13
|
export type IPagesServiceConfig = {
|
|
16
14
|
/** id-as-key map; values omit `id` — callers use the key as the id (P3). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/definition/index.ts"],"names":[],"mappings":";;;AAAA,oEAAyD;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/definition/index.ts"],"names":[],"mappings":";;;AAAA,oEAAyD;AAkC5C,QAAA,eAAe,GAAG,IAAA,oCAAa,EAAqC,yBAAyB,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pagesService.js","sourceRoot":"","sources":["../../../src/implementations/pagesService.ts"],"names":[],"mappings":";;;AAAA,oEAA4D;AAE5D,6EAA0F;AAE1F,8CAA+C;AAElC,QAAA,YAAY,GAAG,IAAA,uCAAgB,
|
|
1
|
+
{"version":3,"file":"pagesService.js","sourceRoot":"","sources":["../../../src/implementations/pagesService.ts"],"names":[],"mappings":";;;AAAA,oEAA4D;AAE5D,6EAA0F;AAE1F,8CAA+C;AAElC,QAAA,YAAY,GAAG,IAAA,uCAAgB,EAC3C,4BAAe,EACf,CAAC,EAAE,MAAM,EAAE,UAAU,EAA2C,EAAiB,EAAE;IAClF,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,kCAAwB,CAAC,CAAA;IACvD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACnC,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IACzC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;IAE/C,OAAO;QACN,IAAI,KAAK;YACR,OAAO,MAAM,CAAC,GAAG,EAAE,CAAA;QACpB,CAAC;QACD,IAAI,QAAQ;YACX,OAAO,SAAS,CAAC,GAAG,EAAE,CAAA;QACvB,CAAC;QACD,IAAI,WAAW;YACd,OAAO,YAAY,CAAC,GAAG,EAAE,CAAA;QAC1B,CAAC;QACD,aAAa,CAAC,aAAa;YAC1B,IAAI,aAAa,CAAC,KAAK,EAAE,CAAC;gBACzB,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;YACD,IAAI,aAAa,CAAC,QAAQ,EAAE,CAAC;gBAC5B,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;YACtC,CAAC;YACD,IAAI,aAAa,CAAC,WAAW,EAAE,CAAC;gBAC/B,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,WAAW,CAAC,CAAA;YAC5C,CAAC;QACF,CAAC;KACD,CAAA;AACF,CAAC,CACD,CAAA"}
|
package/cjs/package.json
CHANGED
package/definition/package.json
CHANGED
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
import type { ServiceDefinition } from '@wix/services-definitions';
|
|
2
|
-
export type Page = {
|
|
3
|
-
id: string;
|
|
4
|
-
title: string;
|
|
5
|
-
path: string;
|
|
6
|
-
parentPageId?: string;
|
|
7
|
-
popup: boolean;
|
|
8
|
-
};
|
|
9
2
|
export type PageConfig = {
|
|
10
3
|
title: string;
|
|
11
4
|
path: string;
|
|
12
5
|
parentPageId?: string;
|
|
13
6
|
popup: boolean;
|
|
7
|
+
appPageId?: string;
|
|
8
|
+
appDefinitionId?: string;
|
|
9
|
+
};
|
|
10
|
+
export type Page = PageConfig & {
|
|
11
|
+
id: string;
|
|
14
12
|
};
|
|
15
13
|
export type IPagesServiceConfig = {
|
|
16
14
|
/** id-as-key map; values omit `id` — callers use the key as the id (P3). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/definition/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/definition/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAkCzD,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAqC,yBAAyB,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pagesService.js","sourceRoot":"","sources":["../../src/implementations/pagesService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAE5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,iDAAiD,CAAA;AAE1F,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAE/C,MAAM,CAAC,MAAM,YAAY,GAAG,gBAAgB,
|
|
1
|
+
{"version":3,"file":"pagesService.js","sourceRoot":"","sources":["../../src/implementations/pagesService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAE5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,iDAAiD,CAAA;AAE1F,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAE/C,MAAM,CAAC,MAAM,YAAY,GAAG,gBAAgB,CAC3C,eAAe,EACf,CAAC,EAAE,MAAM,EAAE,UAAU,EAA2C,EAAiB,EAAE;IAClF,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,wBAAwB,CAAC,CAAA;IACvD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACnC,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IACzC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;IAE/C,OAAO;QACN,IAAI,KAAK;YACR,OAAO,MAAM,CAAC,GAAG,EAAE,CAAA;QACpB,CAAC;QACD,IAAI,QAAQ;YACX,OAAO,SAAS,CAAC,GAAG,EAAE,CAAA;QACvB,CAAC;QACD,IAAI,WAAW;YACd,OAAO,YAAY,CAAC,GAAG,EAAE,CAAA;QAC1B,CAAC;QACD,aAAa,CAAC,aAAa;YAC1B,IAAI,aAAa,CAAC,KAAK,EAAE,CAAC;gBACzB,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;YACD,IAAI,aAAa,CAAC,QAAQ,EAAE,CAAC;gBAC5B,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;YACtC,CAAC;YACD,IAAI,aAAa,CAAC,WAAW,EAAE,CAAC;gBAC/B,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,WAAW,CAAC,CAAA;YAC5C,CAAC;QACF,CAAC;KACD,CAAA;AACF,CAAC,CACD,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wix/site-service-pages",
|
|
3
|
-
"version": "1.0
|
|
4
|
-
"main": "cjs/build/index.js",
|
|
5
|
-
"module": "dist/index.js",
|
|
6
|
-
"types": "dist/index.d.ts",
|
|
3
|
+
"version": "1.2.0",
|
|
7
4
|
"license": "UNLICENSED",
|
|
8
5
|
"files": [
|
|
9
6
|
"dist",
|
|
@@ -14,6 +11,10 @@
|
|
|
14
11
|
"types",
|
|
15
12
|
"!**/*.tsbuildinfo"
|
|
16
13
|
],
|
|
14
|
+
"sideEffects": false,
|
|
15
|
+
"main": "cjs/build/index.js",
|
|
16
|
+
"module": "dist/index.js",
|
|
17
|
+
"types": "dist/index.d.ts",
|
|
17
18
|
"exports": {
|
|
18
19
|
".": {
|
|
19
20
|
"types": "./dist/index.d.ts",
|
|
@@ -41,6 +42,16 @@
|
|
|
41
42
|
"require": "./cjs/build/service.js"
|
|
42
43
|
}
|
|
43
44
|
},
|
|
45
|
+
"publishConfig": {
|
|
46
|
+
"registry": "https://registry.npmjs.org/",
|
|
47
|
+
"access": "public"
|
|
48
|
+
},
|
|
49
|
+
"scripts": {
|
|
50
|
+
"build": "tsc -b . --force && tsc --project tsconfig.cjs.json",
|
|
51
|
+
"lint": "yarn run -T lint:package $npm_package_name",
|
|
52
|
+
"test": "vitest --run && yarn test-type-check",
|
|
53
|
+
"test-type-check": "echo 'validating typescript in test files' && tsc --project tsconfig.test.json && echo 'Finished validating typescript in test files successfully'"
|
|
54
|
+
},
|
|
44
55
|
"dependencies": {
|
|
45
56
|
"@wix/services-definitions": "^0.1.4",
|
|
46
57
|
"@wix/services-manager": "^0.2.20"
|
|
@@ -49,18 +60,7 @@
|
|
|
49
60
|
"typescript": "^5.3.3",
|
|
50
61
|
"vitest": "4.1.0"
|
|
51
62
|
},
|
|
52
|
-
"scripts": {
|
|
53
|
-
"build": "tsc -b . --force && tsc --project tsconfig.cjs.json",
|
|
54
|
-
"lint": "yarn run -T lint:package $npm_package_name",
|
|
55
|
-
"test": "vitest --run && yarn test-type-check",
|
|
56
|
-
"test-type-check": "echo 'validating typescript in test files' && tsc --project tsconfig.test.json && echo 'Finished validating typescript in test files successfully'"
|
|
57
|
-
},
|
|
58
63
|
"publishUnscoped": false,
|
|
59
|
-
"publishConfig": {
|
|
60
|
-
"registry": "https://registry.npmjs.org/",
|
|
61
|
-
"access": "public"
|
|
62
|
-
},
|
|
63
|
-
"sideEffects": false,
|
|
64
64
|
"wix": {
|
|
65
65
|
"artifact": {
|
|
66
66
|
"groupId": "com.wixpress.npm",
|
|
@@ -77,5 +77,5 @@
|
|
|
77
77
|
]
|
|
78
78
|
}
|
|
79
79
|
},
|
|
80
|
-
"falconPackageHash": "
|
|
80
|
+
"falconPackageHash": "f440c70db95df7db4e68df837b2ca1ba88c64cf9dd2560df34fbd62e"
|
|
81
81
|
}
|
package/src/definition/index.ts
CHANGED
|
@@ -1,35 +1,33 @@
|
|
|
1
1
|
import { defineService } from '@wix/services-definitions'
|
|
2
2
|
import type { ServiceDefinition } from '@wix/services-definitions'
|
|
3
3
|
|
|
4
|
-
export type
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
4
|
+
export type PageConfig = {
|
|
5
|
+
title: string
|
|
6
|
+
path: string
|
|
7
|
+
parentPageId?: string
|
|
8
|
+
popup: boolean
|
|
9
|
+
appPageId?: string
|
|
10
|
+
appDefinitionId?: string
|
|
10
11
|
}
|
|
11
12
|
|
|
12
|
-
export type
|
|
13
|
-
|
|
14
|
-
path: string
|
|
15
|
-
parentPageId?: string
|
|
16
|
-
popup: boolean
|
|
13
|
+
export type Page = PageConfig & {
|
|
14
|
+
id: string
|
|
17
15
|
}
|
|
18
16
|
|
|
19
17
|
export type IPagesServiceConfig = {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
18
|
+
/** id-as-key map; values omit `id` — callers use the key as the id (P3). */
|
|
19
|
+
pages: { [pageId: string]: PageConfig }
|
|
20
|
+
/** Provider resolves and passes the full main page object; service stores it as-is. */
|
|
21
|
+
mainPage: Page
|
|
22
|
+
/** Provider resolves and passes the full current page object; service stores it as-is. */
|
|
23
|
+
currentPage: Page
|
|
26
24
|
}
|
|
27
25
|
|
|
28
26
|
export interface IPagesService {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
27
|
+
readonly pages: { [pageId: string]: PageConfig }
|
|
28
|
+
readonly mainPage: Page
|
|
29
|
+
readonly currentPage: Page
|
|
30
|
+
_updateConfig: (config: Partial<IPagesServiceConfig>) => void
|
|
33
31
|
}
|
|
34
32
|
|
|
35
33
|
export type IPagesDefinition = ServiceDefinition<IPagesService, IPagesServiceConfig>
|
|
@@ -5,34 +5,34 @@ import type { IPagesService, IPagesServiceConfig } from '../definition'
|
|
|
5
5
|
import { PagesDefinition } from '../definition'
|
|
6
6
|
|
|
7
7
|
export const PagesService = implementService(
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
8
|
+
PagesDefinition,
|
|
9
|
+
({ config, getService }: ServiceFactoryOpts<IPagesServiceConfig>): IPagesService => {
|
|
10
|
+
const { signal } = getService(SignalsServiceDefinition)
|
|
11
|
+
const _pages = signal(config.pages)
|
|
12
|
+
const _mainPage = signal(config.mainPage)
|
|
13
|
+
const _currentPage = signal(config.currentPage)
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
15
|
+
return {
|
|
16
|
+
get pages() {
|
|
17
|
+
return _pages.get()
|
|
18
|
+
},
|
|
19
|
+
get mainPage() {
|
|
20
|
+
return _mainPage.get()
|
|
21
|
+
},
|
|
22
|
+
get currentPage() {
|
|
23
|
+
return _currentPage.get()
|
|
24
|
+
},
|
|
25
|
+
_updateConfig(partialConfig) {
|
|
26
|
+
if (partialConfig.pages) {
|
|
27
|
+
_pages.set(partialConfig.pages)
|
|
28
|
+
}
|
|
29
|
+
if (partialConfig.mainPage) {
|
|
30
|
+
_mainPage.set(partialConfig.mainPage)
|
|
31
|
+
}
|
|
32
|
+
if (partialConfig.currentPage) {
|
|
33
|
+
_currentPage.set(partialConfig.currentPage)
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
38
|
)
|
package/types/package.json
CHANGED