nimbu-js-sdk 2.0.0-beta.1 → 2.0.0-beta.3
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 +15 -8
- package/dist/index.d.ts +54 -25
- package/dist/internal.d.ts +5 -2
- package/dist/nimbu-js-sdk.cjs.development.js +7979 -7395
- package/dist/nimbu-js-sdk.cjs.development.js.map +1 -1
- package/dist/nimbu-js-sdk.cjs.production.min.js +1 -1
- package/dist/nimbu-js-sdk.cjs.production.min.js.map +1 -1
- package/dist/nimbu-js-sdk.esm.js +7979 -7397
- package/dist/nimbu-js-sdk.esm.js.map +1 -1
- package/dist/nimbu-js-sdk.umd.development.js +18537 -0
- package/dist/nimbu-js-sdk.umd.development.js.map +1 -0
- package/dist/nimbu-js-sdk.umd.production.min.js +2 -0
- package/dist/nimbu-js-sdk.umd.production.min.js.map +1 -0
- package/dist/nimbu.js +18540 -0
- package/dist/nimbu.min.js +5 -0
- package/dist/sdk/acl.d.ts +3 -2
- package/dist/sdk/api.d.ts +12 -12
- package/dist/sdk/atomic-json.d.ts +4 -0
- package/dist/sdk/atomic.d.ts +0 -41
- package/dist/sdk/collection.d.ts +9 -2
- package/dist/sdk/config.d.ts +8 -8
- package/dist/sdk/coupon.d.ts +1 -1
- package/dist/sdk/current-session.d.ts +2 -0
- package/dist/sdk/customer-sessions.d.ts +1 -1
- package/dist/sdk/customer.d.ts +19 -6
- package/dist/sdk/device.d.ts +2 -1
- package/dist/sdk/file.d.ts +1 -1
- package/dist/sdk/gallery-image.d.ts +2 -1
- package/dist/sdk/gallery.d.ts +25 -1
- package/dist/sdk/initialize.d.ts +6 -0
- package/dist/sdk/object-factory.d.ts +7 -0
- package/dist/sdk/object.d.ts +24 -2
- package/dist/sdk/order.d.ts +1 -1
- package/dist/sdk/page.d.ts +16 -4
- package/dist/sdk/product-aggregate.d.ts +3 -4
- package/dist/sdk/product-factory.d.ts +2 -0
- package/dist/sdk/product.d.ts +3 -1
- package/dist/sdk/query-factory.d.ts +3 -0
- package/dist/sdk/query.d.ts +3 -1
- package/dist/sdk/relation.d.ts +20 -1
- package/dist/sdk/requests.d.ts +2 -1
- package/dist/sdk/role.d.ts +4 -1
- package/dist/sdk/select-option-list.d.ts +3 -1
- package/dist/sdk/state-mutations.d.ts +2 -1
- package/dist/sdk/state.d.ts +2 -1
- package/dist/sdk/storage-types.d.ts +17 -0
- package/dist/sdk/storage.d.ts +1 -18
- package/dist/sdk/version.d.ts +1 -0
- package/dist/utils/array-contains-object.d.ts +1 -2
- package/dist/utils/sdk-type-guards.d.ts +18 -0
- package/dist/utils/task-queue.d.ts +1 -1
- package/dist/utils/types.d.ts +6 -1
- package/package.json +24 -10
- package/react-native.js +6 -0
- package/src/index.ts +35 -11
- package/src/internal.ts +6 -4
- package/src/sdk/acl.ts +27 -15
- package/src/sdk/api.ts +3 -2
- package/src/sdk/atomic-json.ts +51 -0
- package/src/sdk/atomic.ts +8 -330
- package/src/sdk/collection.ts +87 -54
- package/src/sdk/config.ts +15 -91
- package/src/sdk/coupon.ts +1 -1
- package/src/sdk/current-session.ts +7 -0
- package/src/sdk/customer-sessions.ts +29 -15
- package/src/sdk/customer.ts +110 -63
- package/src/sdk/device.ts +2 -1
- package/src/sdk/file.ts +3 -1
- package/src/sdk/functions.ts +3 -2
- package/src/sdk/gallery-image.ts +3 -1
- package/src/sdk/gallery.ts +186 -47
- package/src/sdk/initialize.ts +75 -0
- package/src/sdk/object-factory.ts +16 -0
- package/src/sdk/object.ts +195 -34
- package/src/sdk/order.ts +7 -3
- package/src/sdk/page.ts +181 -154
- package/src/sdk/product-aggregate.ts +4 -2
- package/src/sdk/product-factory.ts +9 -0
- package/src/sdk/product.ts +7 -1
- package/src/sdk/push.ts +2 -1
- package/src/sdk/query-factory.ts +11 -0
- package/src/sdk/query.ts +21 -17
- package/src/sdk/relation.ts +152 -1
- package/src/sdk/requests.ts +25 -17
- package/src/sdk/role.ts +4 -1
- package/src/sdk/select-option-list.ts +6 -1
- package/src/sdk/state-mutations.ts +14 -19
- package/src/sdk/state.ts +2 -1
- package/src/sdk/storage-types.ts +19 -0
- package/src/sdk/storage.ts +2 -21
- package/src/sdk/version.ts +1 -0
- package/src/utils/array-contains-object.ts +8 -3
- package/src/utils/decode.ts +14 -17
- package/src/utils/encode.ts +8 -23
- package/src/utils/sdk-type-guards.ts +92 -0
- package/src/utils/task-queue.ts +1 -1
- package/src/utils/traverse.ts +3 -1
- package/src/utils/types.ts +6 -1
- package/src/utils/unique.ts +3 -2
package/README.md
CHANGED
|
@@ -4,20 +4,27 @@ The SDK for building Javascript apps on top of Nimbu
|
|
|
4
4
|
|
|
5
5
|
## Development
|
|
6
6
|
|
|
7
|
-
1. Run `
|
|
8
|
-
2.
|
|
9
|
-
3.
|
|
10
|
-
4.
|
|
7
|
+
1. Run `pnpm install`
|
|
8
|
+
2. Run `pnpm test --ci --coverage --maxWorkers=2`
|
|
9
|
+
3. Run `pnpm build`
|
|
10
|
+
4. Run `pnpm size`
|
|
11
|
+
5. Run `pnpm package-smoke`
|
|
11
12
|
|
|
12
13
|
## Releasing
|
|
13
14
|
|
|
14
|
-
1.
|
|
15
|
+
1. Use Node 22 or newer.
|
|
16
|
+
2. Run `pnpm lint`
|
|
17
|
+
3. Run `pnpm test --ci --coverage --maxWorkers=2`
|
|
18
|
+
4. Run `pnpm build`
|
|
19
|
+
5. Run `pnpm size`
|
|
20
|
+
6. Run `pnpm package-smoke`
|
|
15
21
|
|
|
16
|
-
The
|
|
22
|
+
The package entrypoints and browser bundles are placed in `dist`. The tracked
|
|
23
|
+
browser files are `dist/nimbu.js` and `dist/nimbu.min.js`.
|
|
17
24
|
|
|
18
25
|
## Version 0.5.2
|
|
19
26
|
|
|
20
|
-
The build system
|
|
27
|
+
The build system switched to `webpack` for version 1.0.0. A copy of the last
|
|
21
28
|
release before that (0.5.2) is available in the `build` directory.
|
|
22
29
|
|
|
23
30
|
## Breaking changes
|
|
@@ -47,6 +54,6 @@ to `Nimbu.initialize()`, so you know it already :-)
|
|
|
47
54
|
|
|
48
55
|
### Nimbu.initialize
|
|
49
56
|
|
|
50
|
-
`Nimbu.initialize`
|
|
57
|
+
`Nimbu.initialize` returns a `Promise` that resolves when all
|
|
51
58
|
initialization is finished. You should wait for it to resolve before using the
|
|
52
59
|
SDK.
|
package/dist/index.d.ts
CHANGED
|
@@ -1,53 +1,80 @@
|
|
|
1
|
-
import { NimbuACL, NimbuAPI, NimbuCloud, NimbuCollection, NimbuCoupon, NimbuCustomer, NimbuDevice, NimbuFile, NimbuGallery, NimbuGalleryImage, NimbuObject, NimbuOrder, NimbuPage, NimbuProduct, NimbuProductAggregate, NimbuPush, NimbuQuery, NimbuRelation, NimbuRole, NimbuSelectOption, NimbuSelectOptionList, NimbuError,
|
|
1
|
+
import { AtomicAdd, AtomicAddUnique, AtomicGallery, AtomicIncrement, AtomicRelation, AtomicRemove, AtomicRemoveFile, AtomicSet, AtomicUnset, NimbuACL, NimbuAPI, NimbuAtomic, NimbuCloud, NimbuCollection, NimbuCoupon, NimbuCustomer, NimbuDevice, NimbuFile, NimbuGallery, NimbuGalleryImage, NimbuObject, NimbuOrder, NimbuPage, NimbuProduct, NimbuProductAggregate, NimbuPush, NimbuQuery, NimbuRelation, NimbuRole, NimbuSelectOption, NimbuSelectOptionList, NimbuError, atomicFromJSON } from './internal';
|
|
2
|
+
import type { ChannelConfig, Select, MultiSelect } from './internal';
|
|
3
|
+
import _ from 'underscore';
|
|
4
|
+
declare const Atomic: typeof NimbuAtomic & {
|
|
5
|
+
Set: typeof AtomicSet;
|
|
6
|
+
Unset: typeof AtomicUnset;
|
|
7
|
+
Increment: typeof AtomicIncrement;
|
|
8
|
+
Add: typeof AtomicAdd;
|
|
9
|
+
AddUnique: typeof AtomicAddUnique;
|
|
10
|
+
Remove: typeof AtomicRemove;
|
|
11
|
+
Relation: typeof AtomicRelation;
|
|
12
|
+
RemoveFile: typeof AtomicRemoveFile;
|
|
13
|
+
Gallery: typeof AtomicGallery;
|
|
14
|
+
_decode: typeof atomicFromJSON;
|
|
15
|
+
};
|
|
2
16
|
declare const Nimbu: {
|
|
3
17
|
VERSION: string;
|
|
18
|
+
_: _.UnderscoreStatic;
|
|
4
19
|
ACL: typeof NimbuACL;
|
|
5
20
|
API: {
|
|
6
|
-
get: <T extends Record<string, any>>(path: string, options?: import("./internal").APIRequestOptions | undefined) => Promise<
|
|
7
|
-
post: <T_1 extends Record<string, any>>(path: string, data: any, options?: import("./internal").APIRequestOptions | undefined) => Promise<
|
|
8
|
-
put: <T_2 extends Record<string, any>>(path: string, data: any, options?: import("./internal").APIRequestOptions | undefined) => Promise<
|
|
9
|
-
patch: <T_3 extends Record<string, any>>(path: string, data: any, options?: import("./internal").APIRequestOptions | undefined) => Promise<
|
|
10
|
-
delete: (path: string, options?: import("./internal").APIRequestOptions | undefined) => Promise<
|
|
11
|
-
request: <T_4 extends Record<string, any>>(method: string, path: string, data: any, options?: import("./internal").APIRequestOptions) => Promise<
|
|
21
|
+
get: <T extends Record<string, any>>(path: string, options?: import("./internal").APIRequestOptions | undefined) => Promise<T>;
|
|
22
|
+
post: <T_1 extends Record<string, any>>(path: string, data: any, options?: import("./internal").APIRequestOptions | undefined) => Promise<T_1>;
|
|
23
|
+
put: <T_2 extends Record<string, any>>(path: string, data: any, options?: import("./internal").APIRequestOptions | undefined) => Promise<T_2>;
|
|
24
|
+
patch: <T_3 extends Record<string, any>>(path: string, data: any, options?: import("./internal").APIRequestOptions | undefined) => Promise<T_3>;
|
|
25
|
+
delete: (path: string, options?: import("./internal").APIRequestOptions | undefined) => Promise<Record<string, any>>;
|
|
26
|
+
request: <T_4 extends Record<string, any>>(method: string, path: string, data: any, options?: import("./internal").APIRequestOptions) => Promise<T_4>;
|
|
27
|
+
};
|
|
28
|
+
Atomic: typeof NimbuAtomic & {
|
|
29
|
+
Set: typeof AtomicSet;
|
|
30
|
+
Unset: typeof AtomicUnset;
|
|
31
|
+
Increment: typeof AtomicIncrement;
|
|
32
|
+
Add: typeof AtomicAdd;
|
|
33
|
+
AddUnique: typeof AtomicAddUnique;
|
|
34
|
+
Remove: typeof AtomicRemove;
|
|
35
|
+
Relation: typeof AtomicRelation;
|
|
36
|
+
RemoveFile: typeof AtomicRemoveFile;
|
|
37
|
+
Gallery: typeof AtomicGallery;
|
|
38
|
+
_decode: typeof atomicFromJSON;
|
|
12
39
|
};
|
|
13
40
|
Cloud: {
|
|
14
41
|
run: <T_5 extends Record<string, any> = any>(name: string, data: any) => Promise<T_5>;
|
|
15
42
|
};
|
|
16
43
|
Config: {
|
|
17
44
|
get<U extends ChannelConfig = ChannelConfig, K extends keyof {
|
|
18
|
-
Ajax?: IAjax | undefined;
|
|
45
|
+
Ajax?: import("./internal").IAjax | undefined;
|
|
19
46
|
endpoint: string;
|
|
20
47
|
isNode: boolean;
|
|
21
48
|
OAuth2Manager?: import("./internal").OAuth2 | undefined;
|
|
22
49
|
SessionManager?: import("./internal").ISessionManager<U> | undefined;
|
|
23
50
|
StateManager?: import("./internal").IStateManager | undefined;
|
|
24
|
-
Storage?: IStorage | undefined;
|
|
51
|
+
Storage?: import("./internal").IStorage | undefined;
|
|
25
52
|
useACL: boolean;
|
|
26
53
|
useSSO: boolean;
|
|
27
54
|
version: string;
|
|
28
55
|
accessToken?: string | undefined;
|
|
29
56
|
installationId?: string | undefined;
|
|
30
57
|
} = never, T_6 extends boolean = false>(key: K, allowNull?: T_6): T_6 extends true ? {
|
|
31
|
-
Ajax?: IAjax | undefined;
|
|
58
|
+
Ajax?: import("./internal").IAjax | undefined;
|
|
32
59
|
endpoint: string;
|
|
33
60
|
isNode: boolean;
|
|
34
61
|
OAuth2Manager?: import("./internal").OAuth2 | undefined;
|
|
35
62
|
SessionManager?: import("./internal").ISessionManager<ChannelConfig> | undefined;
|
|
36
63
|
StateManager?: import("./internal").IStateManager | undefined;
|
|
37
|
-
Storage?: IStorage | undefined;
|
|
64
|
+
Storage?: import("./internal").IStorage | undefined;
|
|
38
65
|
useACL: boolean;
|
|
39
66
|
useSSO: boolean;
|
|
40
67
|
version: string;
|
|
41
68
|
accessToken?: string | undefined;
|
|
42
69
|
installationId?: string | undefined;
|
|
43
70
|
}[K] | undefined : {
|
|
44
|
-
Ajax?: IAjax | undefined;
|
|
71
|
+
Ajax?: import("./internal").IAjax | undefined;
|
|
45
72
|
endpoint: string;
|
|
46
73
|
isNode: boolean;
|
|
47
74
|
OAuth2Manager?: import("./internal").OAuth2 | undefined;
|
|
48
75
|
SessionManager?: import("./internal").ISessionManager<ChannelConfig> | undefined;
|
|
49
76
|
StateManager?: import("./internal").IStateManager | undefined;
|
|
50
|
-
Storage?: IStorage | undefined;
|
|
77
|
+
Storage?: import("./internal").IStorage | undefined;
|
|
51
78
|
useACL: boolean;
|
|
52
79
|
useSSO: boolean;
|
|
53
80
|
version: string;
|
|
@@ -55,26 +82,26 @@ declare const Nimbu: {
|
|
|
55
82
|
installationId?: string | undefined;
|
|
56
83
|
}[K];
|
|
57
84
|
set<K_1 extends keyof {
|
|
58
|
-
Ajax?: IAjax | undefined;
|
|
85
|
+
Ajax?: import("./internal").IAjax | undefined;
|
|
59
86
|
endpoint: string;
|
|
60
87
|
isNode: boolean;
|
|
61
88
|
OAuth2Manager?: import("./internal").OAuth2 | undefined;
|
|
62
89
|
SessionManager?: import("./internal").ISessionManager<ChannelConfig> | undefined;
|
|
63
90
|
StateManager?: import("./internal").IStateManager | undefined;
|
|
64
|
-
Storage?: IStorage | undefined;
|
|
91
|
+
Storage?: import("./internal").IStorage | undefined;
|
|
65
92
|
useACL: boolean;
|
|
66
93
|
useSSO: boolean;
|
|
67
94
|
version: string;
|
|
68
95
|
accessToken?: string | undefined;
|
|
69
96
|
installationId?: string | undefined;
|
|
70
97
|
}>(key: K_1, value: {
|
|
71
|
-
Ajax?: IAjax | undefined;
|
|
98
|
+
Ajax?: import("./internal").IAjax | undefined;
|
|
72
99
|
endpoint: string;
|
|
73
100
|
isNode: boolean;
|
|
74
101
|
OAuth2Manager?: import("./internal").OAuth2 | undefined;
|
|
75
102
|
SessionManager?: import("./internal").ISessionManager<ChannelConfig> | undefined;
|
|
76
103
|
StateManager?: import("./internal").IStateManager | undefined;
|
|
77
|
-
Storage?: IStorage | undefined;
|
|
104
|
+
Storage?: import("./internal").IStorage | undefined;
|
|
78
105
|
useACL: boolean;
|
|
79
106
|
useSSO: boolean;
|
|
80
107
|
version: string;
|
|
@@ -95,12 +122,12 @@ declare const Nimbu: {
|
|
|
95
122
|
readonly initialized: boolean;
|
|
96
123
|
get installationId(): string | undefined;
|
|
97
124
|
set installationId(value: string);
|
|
98
|
-
readonly ajax: IAjax;
|
|
99
|
-
setAjax(fn: IAjax): void;
|
|
125
|
+
readonly ajax: import("./internal").IAjax;
|
|
126
|
+
setAjax(fn: import("./internal").IAjax): void;
|
|
100
127
|
setStateManager(manager: import("./internal").IStateManager): void;
|
|
101
128
|
getStateManager(): import("./internal").IStateManager;
|
|
102
|
-
setStorage(storage: IStorage): void;
|
|
103
|
-
getStorage(): IStorage;
|
|
129
|
+
setStorage(storage: import("./internal").IStorage): void;
|
|
130
|
+
getStorage(): import("./internal").IStorage;
|
|
104
131
|
setSessionManager<T_7 extends ChannelConfig>(manager: import("./internal").ISessionManager<T_7>): void;
|
|
105
132
|
getSessionManager<T_8 extends ChannelConfig>(): import("./internal").ISessionManager<T_8>;
|
|
106
133
|
};
|
|
@@ -135,10 +162,12 @@ declare const Nimbu: {
|
|
|
135
162
|
Role: typeof NimbuRole;
|
|
136
163
|
SelectOption: typeof NimbuSelectOption;
|
|
137
164
|
SelectOptionList: typeof NimbuSelectOptionList;
|
|
138
|
-
setAjax: (fn: IAjax) => void;
|
|
139
|
-
setStorage: (storage: IStorage) => void;
|
|
165
|
+
setAjax: (fn: import("./internal").IAjax) => void;
|
|
166
|
+
setStorage: (storage: import("./internal").IStorage) => void;
|
|
167
|
+
setStorageEngine: (storage: import("./internal").IStorage) => void;
|
|
140
168
|
useACL: () => void;
|
|
141
|
-
useSSO: (sso
|
|
169
|
+
useSSO: (sso?: boolean) => boolean;
|
|
142
170
|
};
|
|
143
|
-
export { ChannelConfig, Select, MultiSelect
|
|
171
|
+
export type { ChannelConfig, Select, MultiSelect };
|
|
172
|
+
export { Atomic, NimbuAtomic, NimbuACL, NimbuAPI, NimbuCloud, NimbuCollection, NimbuCoupon, NimbuCustomer, NimbuDevice, NimbuFile, NimbuGallery, NimbuGalleryImage, NimbuObject, NimbuOrder, NimbuPage, NimbuProduct, NimbuProductAggregate, NimbuPush, NimbuQuery, NimbuRelation, NimbuRole, NimbuSelectOption, NimbuSelectOptionList, NimbuError, };
|
|
144
173
|
export default Nimbu;
|
package/dist/internal.d.ts
CHANGED
|
@@ -1,11 +1,14 @@
|
|
|
1
|
-
export
|
|
2
|
-
export * from './
|
|
1
|
+
export type * from './utils/types';
|
|
2
|
+
export type * from './sdk/storage-types';
|
|
3
|
+
export * from './sdk/version';
|
|
3
4
|
export * from './sdk/object';
|
|
4
5
|
export * from './sdk/atomic';
|
|
6
|
+
export * from './sdk/atomic-json';
|
|
5
7
|
export * from './sdk/acl';
|
|
6
8
|
export * from './sdk/api';
|
|
7
9
|
export * from './sdk/collection';
|
|
8
10
|
export * from './sdk/config';
|
|
11
|
+
export * from './sdk/initialize';
|
|
9
12
|
export * from './sdk/coupon';
|
|
10
13
|
export * from './sdk/customer';
|
|
11
14
|
export * from './sdk/customer-sessions';
|