entropic-bond 1.48.1 → 1.50.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.
Files changed (141) hide show
  1. package/.github/workflows/release.yml +26 -0
  2. package/CHANGELOG.md +1151 -0
  3. package/docs/.nojekyll +1 -0
  4. package/docs/README.md +94 -0
  5. package/docs/classes/Auth.md +391 -0
  6. package/docs/classes/AuthMock.md +278 -0
  7. package/docs/classes/AuthService.md +188 -0
  8. package/docs/classes/CloudFunctions.md +123 -0
  9. package/docs/classes/CloudFunctionsMock.md +97 -0
  10. package/docs/classes/CloudStorage.md +215 -0
  11. package/docs/classes/DataSource.md +248 -0
  12. package/docs/classes/EntropicComponent.md +666 -0
  13. package/docs/classes/JsonDataSource.md +328 -0
  14. package/docs/classes/MockCloudStorage.md +279 -0
  15. package/docs/classes/Model.md +274 -0
  16. package/docs/classes/Observable.md +120 -0
  17. package/docs/classes/Persistent.md +420 -0
  18. package/docs/classes/ServerAuth.md +211 -0
  19. package/docs/classes/ServerAuthMock.md +176 -0
  20. package/docs/classes/ServerAuthService.md +130 -0
  21. package/docs/classes/Store.md +218 -0
  22. package/docs/classes/StoredFile.md +636 -0
  23. package/docs/enums/StoredFileEvent.md +41 -0
  24. package/docs/interfaces/AuthError.md +30 -0
  25. package/docs/interfaces/CloudFunctionsService.md +69 -0
  26. package/docs/interfaces/Collection.md +13 -0
  27. package/docs/interfaces/CustomCredentials.md +7 -0
  28. package/docs/interfaces/DocumentReference.md +49 -0
  29. package/docs/interfaces/JsonRawData.md +7 -0
  30. package/docs/interfaces/SignData.md +63 -0
  31. package/docs/interfaces/StoreParams.md +52 -0
  32. package/docs/interfaces/StoredFileChange.md +41 -0
  33. package/docs/interfaces/UploadControl.md +90 -0
  34. package/docs/interfaces/UserCredentials.md +113 -0
  35. package/docs/interfaces/Values.md +17 -0
  36. package/docs/modules.md +1273 -0
  37. package/package.json +23 -19
  38. package/src/auth/auth-mock.spec.ts +168 -0
  39. package/src/auth/auth-mock.ts +129 -0
  40. package/src/auth/auth.ts +185 -0
  41. package/src/auth/user-auth-types.ts +21 -0
  42. package/src/cloud-functions/cloud-functions-mock.spec.ts +136 -0
  43. package/src/cloud-functions/cloud-functions-mock.ts +23 -0
  44. package/src/cloud-functions/cloud-functions.ts +83 -0
  45. package/src/cloud-storage/cloud-storage.spec.ts +207 -0
  46. package/src/cloud-storage/cloud-storage.ts +60 -0
  47. package/src/cloud-storage/mock-cloud-storage.ts +72 -0
  48. package/src/cloud-storage/stored-file.ts +102 -0
  49. package/src/index.ts +19 -0
  50. package/src/observable/observable.spec.ts +105 -0
  51. package/src/observable/observable.ts +67 -0
  52. package/src/persistent/entropic-component.spec.ts +143 -0
  53. package/src/persistent/entropic-component.ts +135 -0
  54. package/src/persistent/persistent.spec.ts +828 -0
  55. package/src/persistent/persistent.ts +650 -0
  56. package/src/server-auth/server-auth-mock.spec.ts +53 -0
  57. package/src/server-auth/server-auth-mock.ts +45 -0
  58. package/src/server-auth/server-auth.ts +49 -0
  59. package/src/store/data-source.ts +186 -0
  60. package/src/store/json-data-source.spec.ts +100 -0
  61. package/src/store/json-data-source.ts +256 -0
  62. package/src/store/mocks/mock-data.json +155 -0
  63. package/src/store/mocks/test-user.ts +122 -0
  64. package/src/store/model.spec.ts +659 -0
  65. package/src/store/model.ts +462 -0
  66. package/src/store/store.spec.ts +30 -0
  67. package/src/store/store.ts +113 -0
  68. package/src/types/utility-types.spec.ts +117 -0
  69. package/src/types/utility-types.ts +116 -0
  70. package/src/utils/test-utils/test-person.ts +44 -0
  71. package/src/utils/utils.spec.ts +95 -0
  72. package/{lib/utils/utils.d.ts → src/utils/utils.ts} +34 -10
  73. package/tsconfig-build.json +7 -0
  74. package/tsconfig-cjs.json +9 -0
  75. package/tsconfig.json +33 -0
  76. package/vite.config.ts +22 -0
  77. package/lib/auth/auth-mock.d.ts +0 -21
  78. package/lib/auth/auth-mock.js +0 -108
  79. package/lib/auth/auth-mock.js.map +0 -1
  80. package/lib/auth/auth.d.ts +0 -129
  81. package/lib/auth/auth.js +0 -146
  82. package/lib/auth/auth.js.map +0 -1
  83. package/lib/auth/user-auth-types.d.ts +0 -19
  84. package/lib/auth/user-auth-types.js +0 -3
  85. package/lib/auth/user-auth-types.js.map +0 -1
  86. package/lib/cloud-functions/cloud-functions-mock.d.ts +0 -11
  87. package/lib/cloud-functions/cloud-functions-mock.js +0 -19
  88. package/lib/cloud-functions/cloud-functions-mock.js.map +0 -1
  89. package/lib/cloud-functions/cloud-functions.d.ts +0 -19
  90. package/lib/cloud-functions/cloud-functions.js +0 -64
  91. package/lib/cloud-functions/cloud-functions.js.map +0 -1
  92. package/lib/cloud-storage/cloud-storage.d.ts +0 -24
  93. package/lib/cloud-storage/cloud-storage.js +0 -37
  94. package/lib/cloud-storage/cloud-storage.js.map +0 -1
  95. package/lib/cloud-storage/mock-cloud-storage.d.ts +0 -20
  96. package/lib/cloud-storage/mock-cloud-storage.js +0 -68
  97. package/lib/cloud-storage/mock-cloud-storage.js.map +0 -1
  98. package/lib/cloud-storage/stored-file.d.ts +0 -39
  99. package/lib/cloud-storage/stored-file.js +0 -106
  100. package/lib/cloud-storage/stored-file.js.map +0 -1
  101. package/lib/index.d.ts +0 -19
  102. package/lib/index.js +0 -36
  103. package/lib/index.js.map +0 -1
  104. package/lib/observable/observable.d.ts +0 -52
  105. package/lib/observable/observable.js +0 -66
  106. package/lib/observable/observable.js.map +0 -1
  107. package/lib/persistent/entropic-component.d.ts +0 -76
  108. package/lib/persistent/entropic-component.js +0 -109
  109. package/lib/persistent/entropic-component.js.map +0 -1
  110. package/lib/persistent/persistent.d.ts +0 -281
  111. package/lib/persistent/persistent.js +0 -539
  112. package/lib/persistent/persistent.js.map +0 -1
  113. package/lib/server-auth/server-auth-mock.d.ts +0 -12
  114. package/lib/server-auth/server-auth-mock.js +0 -39
  115. package/lib/server-auth/server-auth-mock.js.map +0 -1
  116. package/lib/server-auth/server-auth.d.ts +0 -24
  117. package/lib/server-auth/server-auth.js +0 -36
  118. package/lib/server-auth/server-auth.js.map +0 -1
  119. package/lib/store/data-source.d.ts +0 -137
  120. package/lib/store/data-source.js +0 -62
  121. package/lib/store/data-source.js.map +0 -1
  122. package/lib/store/json-data-source.d.ts +0 -68
  123. package/lib/store/json-data-source.js +0 -199
  124. package/lib/store/json-data-source.js.map +0 -1
  125. package/lib/store/mocks/test-user.d.ts +0 -49
  126. package/lib/store/mocks/test-user.js +0 -135
  127. package/lib/store/mocks/test-user.js.map +0 -1
  128. package/lib/store/model.d.ts +0 -238
  129. package/lib/store/model.js +0 -417
  130. package/lib/store/model.js.map +0 -1
  131. package/lib/store/store.d.ts +0 -62
  132. package/lib/store/store.js +0 -102
  133. package/lib/store/store.js.map +0 -1
  134. package/lib/types/utility-types.d.ts +0 -45
  135. package/lib/types/utility-types.js +0 -3
  136. package/lib/types/utility-types.js.map +0 -1
  137. package/lib/utils/test-utils/test-person.d.ts +0 -33
  138. package/lib/utils/test-utils/test-person.js +0 -25
  139. package/lib/utils/test-utils/test-person.js.map +0 -1
  140. package/lib/utils/utils.js +0 -76
  141. package/lib/utils/utils.js.map +0 -1
@@ -0,0 +1,155 @@
1
+ {
2
+ "TestUser": {
3
+ "user1": {
4
+ "__className": "TestUser",
5
+ "id": "user1",
6
+ "name": {
7
+ "firstName": "userFirstName1",
8
+ "lastName": "userLastName1"
9
+ },
10
+ "age": 23,
11
+ "admin": true,
12
+ "skills": ["skill1", "skill2", "skill3"]
13
+ },
14
+ "user2": {
15
+ "__className": "TestUser",
16
+ "id": "user2",
17
+ "name": {
18
+ "firstName": "userFirstName2",
19
+ "lastName": "userLastName2",
20
+ "ancestorName": {
21
+ "father": "user2Father"
22
+ }
23
+ },
24
+ "age": 21,
25
+ "admin": false,
26
+ "skills": ["skill1", "skill2", "skill3"],
27
+ "colleagues": [
28
+ {
29
+ "id": "colleague1",
30
+ "__className": "TestUser"
31
+ },
32
+ {
33
+ "id": "user3",
34
+ "__className": "TestUser"
35
+ }
36
+ ],
37
+ "__colleagues_searchable": [ "colleague1", "user3" ]
38
+ },
39
+ "user3": {
40
+ "__className": "TestUser",
41
+ "id": "user3",
42
+ "name": {
43
+ "firstName": "userFirstName3",
44
+ "lastName": "userLastName3",
45
+ "ancestorName": {
46
+ "father": "user3Father"
47
+ }
48
+ },
49
+ "age": 56,
50
+ "admin": true,
51
+ "skills": ["skill21", "skill22", "skill23"],
52
+ "colleagues": [
53
+ {
54
+ "id": "user1",
55
+ "__className": "TestUser"
56
+ },
57
+ {
58
+ "id": "user3",
59
+ "__className": "TestUser"
60
+ }
61
+ ],
62
+ "__colleagues_searchable": [ "user1", "user3" ]
63
+ },
64
+ "user4": {
65
+ "__className": "DerivedUser",
66
+ "id": "user4",
67
+ "name": {
68
+ "firstName": "userFirstName4",
69
+ "lastName": "userLastName4"
70
+ },
71
+ "age": 35,
72
+ "admin": false,
73
+ "skills": ["skill41", "skill42", "skill43"],
74
+ "salary": 2800,
75
+ "colleagues": [
76
+ {
77
+ "id": "colleague1",
78
+ "__className": "TestUser"
79
+ },
80
+ {
81
+ "id": "colleague2",
82
+ "__className": "TestUser"
83
+ }
84
+ ],
85
+ "__colleagues_searchable": [ "colleague1", "colleague2" ]
86
+ },
87
+ "user5": {
88
+ "__className": "TestUser",
89
+ "id": "user5",
90
+ "name": {
91
+ "firstName": "userFirstName5",
92
+ "lastName": "userLastName5",
93
+ "ancestorName": {
94
+ "father": "user5Father"
95
+ }
96
+ },
97
+ "age": 41,
98
+ "skills": ["skill21", "skill22", "skill23"],
99
+ "derived": {
100
+ "id": "user3",
101
+ "__className": "DerivedUser",
102
+ "__documentReference": {
103
+ "storedInCollection": "DerivedUser"
104
+ }
105
+ }
106
+ },
107
+ "user6": {
108
+ "__className": "TestUser",
109
+ "id": "user6",
110
+ "name": {
111
+ "firstName": "userFirstName6",
112
+ "lastName": "userLastName6",
113
+ "ancestorName": {
114
+ "father": "user6Father"
115
+ }
116
+ },
117
+ "age": 40,
118
+ "skills": ["skill21", "skill22", "skill23"],
119
+ "derived": {
120
+ "id": "user4",
121
+ "__className": "DerivedUser",
122
+ "__documentReference": {
123
+ "storedInCollection": "TestUser"
124
+ }
125
+ },
126
+ "colleagues": [
127
+ {
128
+ "id": "colleague2",
129
+ "__className": "TestUser"
130
+ }
131
+ ],
132
+ "__colleagues_searchable": [ "colleague2" ]
133
+ }
134
+ },
135
+ "DerivedUser": {
136
+ "user4": {
137
+ "__className": "DerivedUser",
138
+ "id": "user5",
139
+ "name": {
140
+ "firstName": "userFirstName5",
141
+ "lastName": "userLastName5"
142
+ },
143
+ "age": 35,
144
+ "admin": false,
145
+ "salary": 2300
146
+ }
147
+ },
148
+ "TestUser/user1/SubClass": {
149
+ "subClass1": {
150
+ "id": "subClass1",
151
+ "__className": "SubClass",
152
+ "year": 1326
153
+ }
154
+ }
155
+ }
@@ -0,0 +1,122 @@
1
+ import { persistent, Persistent, persistentReference, persistentReferenceAt, registerPersistentClass, searchableArray } from '../../persistent/persistent'
2
+
3
+ interface Name {
4
+ firstName: string,
5
+ lastName: string
6
+ ancestorName: {
7
+ father?: string
8
+ mother?: string
9
+ }
10
+ }
11
+
12
+ @registerPersistentClass( 'SubClass' )
13
+ export class SubClass extends Persistent {
14
+ set year( value: number | undefined ) {
15
+ this._year = value
16
+ }
17
+
18
+ get year() {
19
+ return this._year
20
+ }
21
+
22
+ @persistent private _year: number | undefined
23
+ }
24
+
25
+ @registerPersistentClass( 'TestUser' )
26
+ export class TestUser extends Persistent {
27
+ set name( value: Name | undefined ) {
28
+ this._name = value
29
+ }
30
+
31
+ get name() {
32
+ return this._name
33
+ }
34
+
35
+ set age( value: number | undefined ) {
36
+ this._age = value
37
+ }
38
+
39
+ get age() {
40
+ return this._age
41
+ }
42
+
43
+ set admin( value: boolean | undefined ) {
44
+ this._admin = value
45
+ }
46
+
47
+ get admin() {
48
+ return this._admin
49
+ }
50
+
51
+ set skills( value: string[] | undefined ) {
52
+ this._skills = value
53
+ }
54
+
55
+ get skills() {
56
+ return this._skills
57
+ }
58
+
59
+ set documentRef( value: SubClass | undefined ) {
60
+ this._documentRef = value
61
+ }
62
+
63
+ get documentRef() {
64
+ return this._documentRef
65
+ }
66
+
67
+ set manyRefs(value: SubClass[]) {
68
+ this._manyRefs = value
69
+ }
70
+
71
+ get manyRefs(): SubClass[] {
72
+ return this._manyRefs
73
+ }
74
+
75
+ set derived( value: DerivedUser | undefined ) {
76
+ this._derived = value
77
+ }
78
+
79
+ get derived(): DerivedUser | undefined {
80
+ return this._derived
81
+ }
82
+
83
+ set manyDerived( value: DerivedUser[] ) {
84
+ this._manyDerived = value
85
+ }
86
+
87
+ get manyDerived(): DerivedUser[] {
88
+ return this._manyDerived
89
+ }
90
+
91
+ set colleagues( value: TestUser[] ) {
92
+ this._colleagues = value
93
+ }
94
+
95
+ get colleagues(): TestUser[] {
96
+ return this._colleagues
97
+ }
98
+
99
+ @persistent @searchableArray private _colleagues: TestUser[] = []
100
+ @persistent private _name: Name | undefined
101
+ @persistent private _age: number | undefined
102
+ @persistent private _admin: boolean | undefined
103
+ @persistent private _skills: string[] | undefined
104
+
105
+ @persistentReference private _documentRef: SubClass | undefined
106
+ @persistentReference private _manyRefs: SubClass[] = []
107
+ @persistentReferenceAt('TestUser') private _derived: DerivedUser | undefined
108
+ @persistentReferenceAt('TestUser') private _manyDerived: DerivedUser[] = []
109
+ }
110
+
111
+ @registerPersistentClass( 'DerivedUser' )
112
+ export class DerivedUser extends TestUser {
113
+ set salary(value: number | undefined ) {
114
+ this._salary = value
115
+ }
116
+
117
+ get salary(): number | undefined {
118
+ return this._salary
119
+ }
120
+
121
+ @persistent private _salary: number | undefined
122
+ }