@statezero/core 0.2.51 → 0.2.52

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 (171) hide show
  1. package/dist/adaptors/vue/components/StateZeroDebugPanel.js +495 -476
  2. package/dist/adaptors/vue/reactivity.d.ts +1 -0
  3. package/dist/adaptors/vue/reactivity.js +17 -5
  4. package/dist/cli/commands/syncActions.js +33 -1
  5. package/dist/cli/commands/syncModels.js +44 -3
  6. package/dist/filtering/localFiltering.js +3 -2
  7. package/dist/flavours/django/errors.d.ts +12 -0
  8. package/dist/flavours/django/errors.js +20 -0
  9. package/dist/flavours/django/f.js +16 -15
  10. package/dist/index.d.ts +2 -1
  11. package/dist/index.js +2 -2
  12. package/dist/models/backend1/django_app/author.d.ts +284 -0
  13. package/dist/models/backend1/django_app/author.js +69 -0
  14. package/dist/models/backend1/django_app/author.schema.json +281 -0
  15. package/dist/models/backend1/django_app/book.d.ts +262 -0
  16. package/dist/models/backend1/django_app/book.js +71 -0
  17. package/dist/models/backend1/django_app/book.schema.json +254 -0
  18. package/dist/models/backend1/django_app/composeditem.d.ts +140 -0
  19. package/dist/models/backend1/django_app/composeditem.js +69 -0
  20. package/dist/models/backend1/django_app/composeditem.schema.json +122 -0
  21. package/dist/models/backend1/django_app/comprehensivemodel.schema.json +3 -3
  22. package/dist/models/backend1/django_app/dailyrate.schema.json +7 -7
  23. package/dist/models/backend1/django_app/deepmodellevel1.schema.json +1 -1
  24. package/dist/models/backend1/django_app/dummymodel.schema.json +3 -3
  25. package/dist/models/backend1/django_app/errortestcompoundunique.d.ts +124 -0
  26. package/dist/models/backend1/django_app/errortestcompoundunique.js +69 -0
  27. package/dist/models/backend1/django_app/errortestcompoundunique.schema.json +106 -0
  28. package/dist/models/backend1/django_app/errortestonetoonemodel.d.ts +118 -0
  29. package/dist/models/backend1/django_app/errortestonetoonemodel.js +71 -0
  30. package/dist/models/backend1/django_app/errortestonetoonemodel.schema.json +90 -0
  31. package/dist/models/backend1/django_app/errortestparent.d.ts +92 -0
  32. package/dist/models/backend1/django_app/errortestparent.js +69 -0
  33. package/dist/models/backend1/django_app/errortestparent.schema.json +70 -0
  34. package/dist/models/backend1/django_app/errortestprotectedchild.d.ts +118 -0
  35. package/dist/models/backend1/django_app/errortestprotectedchild.js +71 -0
  36. package/dist/models/backend1/django_app/errortestprotectedchild.schema.json +94 -0
  37. package/dist/models/backend1/django_app/errortestuniquemodel.d.ts +108 -0
  38. package/dist/models/backend1/django_app/errortestuniquemodel.js +69 -0
  39. package/dist/models/backend1/django_app/errortestuniquemodel.schema.json +88 -0
  40. package/dist/models/backend1/django_app/excludeditem.d.ts +124 -0
  41. package/dist/models/backend1/django_app/excludeditem.js +69 -0
  42. package/dist/models/backend1/django_app/excludeditem.schema.json +105 -0
  43. package/dist/models/backend1/django_app/hfchild.d.ts +118 -0
  44. package/dist/models/backend1/django_app/hfchild.js +71 -0
  45. package/dist/models/backend1/django_app/hfchild.schema.json +94 -0
  46. package/dist/models/backend1/django_app/hfparent.d.ts +124 -0
  47. package/dist/models/backend1/django_app/hfparent.js +69 -0
  48. package/dist/models/backend1/django_app/hfparent.schema.json +105 -0
  49. package/dist/models/backend1/django_app/index.js +19 -0
  50. package/dist/models/backend1/django_app/m2mdepthtestlevel1.schema.json +3 -3
  51. package/dist/models/backend1/django_app/m2mdepthtestlevel2.schema.json +3 -3
  52. package/dist/models/backend1/django_app/m2mdepthtestlevel3.schema.json +5 -5
  53. package/dist/models/backend1/django_app/modelwithrestrictedfields.schema.json +2 -2
  54. package/dist/models/backend1/django_app/nodeleteitem.d.ts +124 -0
  55. package/dist/models/backend1/django_app/nodeleteitem.js +69 -0
  56. package/dist/models/backend1/django_app/nodeleteitem.schema.json +105 -0
  57. package/dist/models/backend1/django_app/objectlevelitem.d.ts +124 -0
  58. package/dist/models/backend1/django_app/objectlevelitem.js +69 -0
  59. package/dist/models/backend1/django_app/objectlevelitem.schema.json +105 -0
  60. package/dist/models/backend1/django_app/order.schema.json +7 -7
  61. package/dist/models/backend1/django_app/orderitem.schema.json +5 -5
  62. package/dist/models/backend1/django_app/product.schema.json +11 -11
  63. package/dist/models/backend1/django_app/productcategory.schema.json +2 -2
  64. package/dist/models/backend1/django_app/rateplan.schema.json +2 -2
  65. package/dist/models/backend1/django_app/readonlyitem.d.ts +124 -0
  66. package/dist/models/backend1/django_app/readonlyitem.js +69 -0
  67. package/dist/models/backend1/django_app/readonlyitem.schema.json +105 -0
  68. package/dist/models/backend1/django_app/restrictedcreateitem.d.ts +124 -0
  69. package/dist/models/backend1/django_app/restrictedcreateitem.js +69 -0
  70. package/dist/models/backend1/django_app/restrictedcreateitem.schema.json +105 -0
  71. package/dist/models/backend1/django_app/restrictededititem.d.ts +124 -0
  72. package/dist/models/backend1/django_app/restrictededititem.js +69 -0
  73. package/dist/models/backend1/django_app/restrictededititem.schema.json +105 -0
  74. package/dist/models/backend1/django_app/restrictedfieldrelatedmodel.schema.json +1 -1
  75. package/dist/models/backend1/django_app/rowfiltereditem.d.ts +124 -0
  76. package/dist/models/backend1/django_app/rowfiltereditem.js +69 -0
  77. package/dist/models/backend1/django_app/rowfiltereditem.schema.json +105 -0
  78. package/dist/models/backend1/django_app/tag.d.ts +554 -0
  79. package/dist/models/backend1/django_app/tag.js +71 -0
  80. package/dist/models/backend1/django_app/tag.schema.json +541 -0
  81. package/dist/models/backend1/django_app/updateonlyitem.d.ts +108 -0
  82. package/dist/models/backend1/django_app/updateonlyitem.js +69 -0
  83. package/dist/models/backend1/django_app/updateonlyitem.schema.json +88 -0
  84. package/dist/models/default/django_app/author.d.ts +284 -0
  85. package/dist/models/default/django_app/author.js +69 -0
  86. package/dist/models/default/django_app/author.schema.json +281 -0
  87. package/dist/models/default/django_app/book.d.ts +262 -0
  88. package/dist/models/default/django_app/book.js +71 -0
  89. package/dist/models/default/django_app/book.schema.json +254 -0
  90. package/dist/models/default/django_app/composeditem.d.ts +140 -0
  91. package/dist/models/default/django_app/composeditem.js +69 -0
  92. package/dist/models/default/django_app/composeditem.schema.json +122 -0
  93. package/dist/models/default/django_app/comprehensivemodel.schema.json +3 -3
  94. package/dist/models/default/django_app/dailyrate.schema.json +7 -7
  95. package/dist/models/default/django_app/deepmodellevel1.d.ts +1 -13
  96. package/dist/models/default/django_app/deepmodellevel1.schema.json +2 -14
  97. package/dist/models/default/django_app/deepmodellevel2.d.ts +1 -13
  98. package/dist/models/default/django_app/deepmodellevel2.schema.json +1 -13
  99. package/dist/models/default/django_app/deepmodellevel3.d.ts +1 -13
  100. package/dist/models/default/django_app/deepmodellevel3.schema.json +1 -13
  101. package/dist/models/default/django_app/dummymodel.d.ts +1 -13
  102. package/dist/models/default/django_app/dummymodel.schema.json +4 -16
  103. package/dist/models/default/django_app/dummyrelatedmodel.d.ts +1 -13
  104. package/dist/models/default/django_app/dummyrelatedmodel.schema.json +1 -13
  105. package/dist/models/default/django_app/errortestcompoundunique.d.ts +124 -0
  106. package/dist/models/default/django_app/errortestcompoundunique.js +69 -0
  107. package/dist/models/default/django_app/errortestcompoundunique.schema.json +106 -0
  108. package/dist/models/default/django_app/errortestonetoonemodel.d.ts +118 -0
  109. package/dist/models/default/django_app/errortestonetoonemodel.js +71 -0
  110. package/dist/models/default/django_app/errortestonetoonemodel.schema.json +90 -0
  111. package/dist/models/default/django_app/errortestparent.d.ts +92 -0
  112. package/dist/models/default/django_app/errortestparent.js +69 -0
  113. package/dist/models/default/django_app/errortestparent.schema.json +70 -0
  114. package/dist/models/default/django_app/errortestprotectedchild.d.ts +118 -0
  115. package/dist/models/default/django_app/errortestprotectedchild.js +71 -0
  116. package/dist/models/default/django_app/errortestprotectedchild.schema.json +94 -0
  117. package/dist/models/default/django_app/errortestuniquemodel.d.ts +108 -0
  118. package/dist/models/default/django_app/errortestuniquemodel.js +69 -0
  119. package/dist/models/default/django_app/errortestuniquemodel.schema.json +88 -0
  120. package/dist/models/default/django_app/excludeditem.d.ts +124 -0
  121. package/dist/models/default/django_app/excludeditem.js +69 -0
  122. package/dist/models/default/django_app/excludeditem.schema.json +105 -0
  123. package/dist/models/default/django_app/filetest.d.ts +1 -13
  124. package/dist/models/default/django_app/filetest.schema.json +1 -13
  125. package/dist/models/default/django_app/hfchild.d.ts +118 -0
  126. package/dist/models/default/django_app/hfchild.js +71 -0
  127. package/dist/models/default/django_app/hfchild.schema.json +94 -0
  128. package/dist/models/default/django_app/hfparent.d.ts +124 -0
  129. package/dist/models/default/django_app/hfparent.js +69 -0
  130. package/dist/models/default/django_app/hfparent.schema.json +105 -0
  131. package/dist/models/default/django_app/index.js +19 -0
  132. package/dist/models/default/django_app/m2mdepthtestlevel1.schema.json +3 -3
  133. package/dist/models/default/django_app/m2mdepthtestlevel2.schema.json +3 -3
  134. package/dist/models/default/django_app/m2mdepthtestlevel3.schema.json +5 -5
  135. package/dist/models/default/django_app/modelwithrestrictedfields.schema.json +2 -2
  136. package/dist/models/default/django_app/nodeleteitem.d.ts +124 -0
  137. package/dist/models/default/django_app/nodeleteitem.js +69 -0
  138. package/dist/models/default/django_app/nodeleteitem.schema.json +105 -0
  139. package/dist/models/default/django_app/objectlevelitem.d.ts +124 -0
  140. package/dist/models/default/django_app/objectlevelitem.js +69 -0
  141. package/dist/models/default/django_app/objectlevelitem.schema.json +105 -0
  142. package/dist/models/default/django_app/order.schema.json +7 -7
  143. package/dist/models/default/django_app/orderitem.schema.json +5 -5
  144. package/dist/models/default/django_app/product.schema.json +11 -11
  145. package/dist/models/default/django_app/productcategory.schema.json +2 -2
  146. package/dist/models/default/django_app/rateplan.schema.json +2 -2
  147. package/dist/models/default/django_app/readonlyitem.d.ts +124 -0
  148. package/dist/models/default/django_app/readonlyitem.js +69 -0
  149. package/dist/models/default/django_app/readonlyitem.schema.json +105 -0
  150. package/dist/models/default/django_app/restrictedcreateitem.d.ts +124 -0
  151. package/dist/models/default/django_app/restrictedcreateitem.js +69 -0
  152. package/dist/models/default/django_app/restrictedcreateitem.schema.json +105 -0
  153. package/dist/models/default/django_app/restrictededititem.d.ts +124 -0
  154. package/dist/models/default/django_app/restrictededititem.js +69 -0
  155. package/dist/models/default/django_app/restrictededititem.schema.json +105 -0
  156. package/dist/models/default/django_app/restrictedfieldrelatedmodel.schema.json +1 -1
  157. package/dist/models/default/django_app/rowfiltereditem.d.ts +124 -0
  158. package/dist/models/default/django_app/rowfiltereditem.js +69 -0
  159. package/dist/models/default/django_app/rowfiltereditem.schema.json +105 -0
  160. package/dist/models/default/django_app/tag.d.ts +554 -0
  161. package/dist/models/default/django_app/tag.js +71 -0
  162. package/dist/models/default/django_app/tag.schema.json +541 -0
  163. package/dist/models/default/django_app/updateonlyitem.d.ts +108 -0
  164. package/dist/models/default/django_app/updateonlyitem.js +69 -0
  165. package/dist/models/default/django_app/updateonlyitem.schema.json +88 -0
  166. package/dist/schemaIntegrity.d.ts +14 -0
  167. package/dist/schemaIntegrity.js +29 -0
  168. package/dist/setup.js +6 -0
  169. package/dist/syncEngine/stores/operationEventHandlers.js +10 -8
  170. package/dist/syncEngine/stores/querysetStore.js +9 -0
  171. package/package.json +1 -1
@@ -0,0 +1,69 @@
1
+ /**
2
+ * This file was auto-generated. Do not make direct changes to the file.
3
+ */
4
+ import { Model, Manager, QuerySet, getModelClass } from '../../../../src';
5
+ import { wrapReactiveModel } from '../../../../src';
6
+ import schemaData from './objectlevelitem.schema.json';
7
+ /**
8
+ * Model-specific QuerySet implementation
9
+ */
10
+ export class ObjectLevelItemQuerySet extends QuerySet {
11
+ }
12
+ /**
13
+ * Model-specific Manager implementation
14
+ */
15
+ export class ObjectLevelItemManager extends Manager {
16
+ constructor(ModelClass) {
17
+ super(ModelClass, ObjectLevelItemQuerySet);
18
+ }
19
+ newQuerySet() {
20
+ return new ObjectLevelItemQuerySet(this.ModelClass);
21
+ }
22
+ }
23
+ /**
24
+ * Implementation of the ObjectLevelItem model
25
+ */
26
+ export class ObjectLevelItem extends Model {
27
+ constructor(data) {
28
+ ObjectLevelItem.validateFields(data);
29
+ super(data);
30
+ // Define getters and setters for all fields
31
+ this._defineProperties();
32
+ return wrapReactiveModel(this);
33
+ }
34
+ /**
35
+ * Define property getters and setters for all model fields
36
+ * @private
37
+ */
38
+ _defineProperties() {
39
+ // For each field, define a property that gets/sets from internal storage
40
+ ObjectLevelItem.fields.forEach(field => {
41
+ Object.defineProperty(this, field, {
42
+ get: function () {
43
+ return this.getField(field);
44
+ },
45
+ set: function (value) {
46
+ this.setField(field, value);
47
+ },
48
+ enumerable: true, // Make sure fields are enumerable for serialization
49
+ configurable: true
50
+ });
51
+ });
52
+ // Add a special read-only getter for the repr field
53
+ Object.defineProperty(this, 'repr', {
54
+ get: function () {
55
+ return this.getField('repr');
56
+ },
57
+ enumerable: true, // Make sure repr is enumerable
58
+ configurable: true
59
+ });
60
+ }
61
+ }
62
+ // Bind this model to its backend
63
+ ObjectLevelItem.configKey = 'backend1';
64
+ ObjectLevelItem.modelName = 'django_app.objectlevelitem';
65
+ ObjectLevelItem.primaryKeyField = 'id';
66
+ ObjectLevelItem.objects = new ObjectLevelItemManager(ObjectLevelItem);
67
+ ObjectLevelItem.fields = ['id', 'name', 'value', 'owner'];
68
+ ObjectLevelItem.schema = schemaData;
69
+ ObjectLevelItem.relationshipFields = new Map([]);
@@ -0,0 +1,105 @@
1
+ {
2
+ "model_name": "django_app.objectlevelitem",
3
+ "title": "Object Level Item",
4
+ "class_name": "ObjectLevelItem",
5
+ "plural_title": "Object Level Items",
6
+ "primary_key_field": "id",
7
+ "filterable_fields": [
8
+ "value",
9
+ "id",
10
+ "name",
11
+ "owner"
12
+ ],
13
+ "searchable_fields": [
14
+ "name"
15
+ ],
16
+ "ordering_fields": [
17
+ "value",
18
+ "name"
19
+ ],
20
+ "properties": {
21
+ "id": {
22
+ "type": "integer",
23
+ "title": "Id",
24
+ "required": true,
25
+ "description": null,
26
+ "nullable": false,
27
+ "format": "id",
28
+ "max_length": null,
29
+ "choices": null,
30
+ "default": null,
31
+ "validators": [],
32
+ "max_digits": null,
33
+ "decimal_places": null,
34
+ "read_only": true,
35
+ "ref": null
36
+ },
37
+ "name": {
38
+ "type": "string",
39
+ "title": "Name",
40
+ "required": true,
41
+ "description": null,
42
+ "nullable": false,
43
+ "format": null,
44
+ "max_length": 100,
45
+ "choices": null,
46
+ "default": null,
47
+ "validators": [],
48
+ "max_digits": null,
49
+ "decimal_places": null,
50
+ "read_only": false,
51
+ "ref": null
52
+ },
53
+ "value": {
54
+ "type": "integer",
55
+ "title": "Value",
56
+ "required": false,
57
+ "description": null,
58
+ "nullable": false,
59
+ "format": null,
60
+ "max_length": null,
61
+ "choices": null,
62
+ "default": 0,
63
+ "validators": [],
64
+ "max_digits": null,
65
+ "decimal_places": null,
66
+ "read_only": false,
67
+ "ref": null
68
+ },
69
+ "owner": {
70
+ "type": "string",
71
+ "title": "Owner",
72
+ "required": true,
73
+ "description": null,
74
+ "nullable": false,
75
+ "format": null,
76
+ "max_length": 100,
77
+ "choices": null,
78
+ "default": null,
79
+ "validators": [],
80
+ "max_digits": null,
81
+ "decimal_places": null,
82
+ "read_only": false,
83
+ "ref": null
84
+ }
85
+ },
86
+ "relationships": {},
87
+ "default_ordering": null,
88
+ "definitions": {
89
+ "MoneyField": {
90
+ "type": "object",
91
+ "properties": {
92
+ "amount": {
93
+ "type": "number"
94
+ },
95
+ "currency": {
96
+ "type": "string"
97
+ }
98
+ }
99
+ }
100
+ },
101
+ "datetime_format": "iso-8601",
102
+ "date_format": "iso-8601",
103
+ "time_format": "iso-8601",
104
+ "display": null
105
+ }
@@ -5,22 +5,22 @@
5
5
  "plural_title": "Orders",
6
6
  "primary_key_field": "id",
7
7
  "filterable_fields": [
8
+ "last_updated",
8
9
  "customer_email",
9
- "id",
10
+ "total",
10
11
  "created_at",
11
12
  "order_number",
12
- "customer_name",
13
13
  "status",
14
- "last_updated",
15
- "total"
14
+ "customer_name",
15
+ "id"
16
16
  ],
17
17
  "searchable_fields": [
18
18
  "customer_name",
19
19
  "order_number"
20
20
  ],
21
21
  "ordering_fields": [
22
- "total",
23
- "created_at"
22
+ "created_at",
23
+ "total"
24
24
  ],
25
25
  "properties": {
26
26
  "id": {
@@ -134,7 +134,7 @@
134
134
  "format": "date-time",
135
135
  "max_length": null,
136
136
  "choices": null,
137
- "default": "2026-02-06T14:26:11.448621+00:00",
137
+ "default": "2026-02-23T18:47:00.081929+00:00",
138
138
  "validators": [],
139
139
  "max_digits": null,
140
140
  "decimal_places": null,
@@ -5,16 +5,16 @@
5
5
  "plural_title": "Order Items",
6
6
  "primary_key_field": "id",
7
7
  "filterable_fields": [
8
- "id",
9
8
  "price",
10
- "order",
11
9
  "product",
12
- "quantity"
10
+ "quantity",
11
+ "order",
12
+ "id"
13
13
  ],
14
14
  "searchable_fields": [],
15
15
  "ordering_fields": [
16
- "price",
17
- "quantity"
16
+ "quantity",
17
+ "price"
18
18
  ],
19
19
  "properties": {
20
20
  "id": {
@@ -5,23 +5,23 @@
5
5
  "plural_title": "Products",
6
6
  "primary_key_field": "id",
7
7
  "filterable_fields": [
8
- "category",
9
- "description",
10
- "price",
11
8
  "in_stock",
12
- "id",
13
- "created_at",
9
+ "name",
10
+ "price",
14
11
  "created_by",
15
- "name"
12
+ "created_at",
13
+ "category",
14
+ "id",
15
+ "description"
16
16
  ],
17
17
  "searchable_fields": [
18
- "description",
19
- "name"
18
+ "name",
19
+ "description"
20
20
  ],
21
21
  "ordering_fields": [
22
22
  "created_at",
23
- "price",
24
- "name"
23
+ "name",
24
+ "price"
25
25
  ],
26
26
  "properties": {
27
27
  "id": {
@@ -129,7 +129,7 @@
129
129
  "format": "date-time",
130
130
  "max_length": null,
131
131
  "choices": null,
132
- "default": "2026-02-06T14:26:11.447291+00:00",
132
+ "default": "2026-02-23T18:47:00.080652+00:00",
133
133
  "validators": [],
134
134
  "max_digits": null,
135
135
  "decimal_places": null,
@@ -5,8 +5,8 @@
5
5
  "plural_title": "Product Categorys",
6
6
  "primary_key_field": "id",
7
7
  "filterable_fields": [
8
- "name",
9
- "id"
8
+ "id",
9
+ "name"
10
10
  ],
11
11
  "searchable_fields": [
12
12
  "name"
@@ -5,8 +5,8 @@
5
5
  "plural_title": "Rate Plans",
6
6
  "primary_key_field": "id",
7
7
  "filterable_fields": [
8
- "name",
9
- "id"
8
+ "id",
9
+ "name"
10
10
  ],
11
11
  "searchable_fields": [
12
12
  "name"
@@ -0,0 +1,124 @@
1
+ /**
2
+ * Model-specific QuerySet implementation
3
+ */
4
+ export class ReadOnlyItemQuerySet {
5
+ }
6
+ /**
7
+ * Model-specific Manager implementation
8
+ */
9
+ export class ReadOnlyItemManager {
10
+ constructor(ModelClass: any);
11
+ newQuerySet(): ReadOnlyItemQuerySet;
12
+ }
13
+ /**
14
+ * Implementation of the ReadOnlyItem model
15
+ */
16
+ export class ReadOnlyItem {
17
+ static configKey: string;
18
+ static modelName: string;
19
+ static primaryKeyField: string;
20
+ static objects: ReadOnlyItemManager;
21
+ static fields: string[];
22
+ static schema: {
23
+ model_name: string;
24
+ title: string;
25
+ class_name: string;
26
+ plural_title: string;
27
+ primary_key_field: string;
28
+ filterable_fields: string[];
29
+ searchable_fields: string[];
30
+ ordering_fields: string[];
31
+ properties: {
32
+ id: {
33
+ type: string;
34
+ title: string;
35
+ required: boolean;
36
+ description: null;
37
+ nullable: boolean;
38
+ format: string;
39
+ max_length: null;
40
+ choices: null;
41
+ default: null;
42
+ validators: never[];
43
+ max_digits: null;
44
+ decimal_places: null;
45
+ read_only: boolean;
46
+ ref: null;
47
+ };
48
+ name: {
49
+ type: string;
50
+ title: string;
51
+ required: boolean;
52
+ description: null;
53
+ nullable: boolean;
54
+ format: null;
55
+ max_length: number;
56
+ choices: null;
57
+ default: null;
58
+ validators: never[];
59
+ max_digits: null;
60
+ decimal_places: null;
61
+ read_only: boolean;
62
+ ref: null;
63
+ };
64
+ value: {
65
+ type: string;
66
+ title: string;
67
+ required: boolean;
68
+ description: null;
69
+ nullable: boolean;
70
+ format: null;
71
+ max_length: null;
72
+ choices: null;
73
+ default: number;
74
+ validators: never[];
75
+ max_digits: null;
76
+ decimal_places: null;
77
+ read_only: boolean;
78
+ ref: null;
79
+ };
80
+ secret: {
81
+ type: string;
82
+ title: string;
83
+ required: boolean;
84
+ description: null;
85
+ nullable: boolean;
86
+ format: null;
87
+ max_length: number;
88
+ choices: null;
89
+ default: string;
90
+ validators: never[];
91
+ max_digits: null;
92
+ decimal_places: null;
93
+ read_only: boolean;
94
+ ref: null;
95
+ };
96
+ };
97
+ relationships: {};
98
+ default_ordering: null;
99
+ definitions: {
100
+ MoneyField: {
101
+ type: string;
102
+ properties: {
103
+ amount: {
104
+ type: string;
105
+ };
106
+ currency: {
107
+ type: string;
108
+ };
109
+ };
110
+ };
111
+ };
112
+ datetime_format: string;
113
+ date_format: string;
114
+ time_format: string;
115
+ display: null;
116
+ };
117
+ static relationshipFields: Map<any, any>;
118
+ constructor(data: any);
119
+ /**
120
+ * Define property getters and setters for all model fields
121
+ * @private
122
+ */
123
+ private _defineProperties;
124
+ }
@@ -0,0 +1,69 @@
1
+ /**
2
+ * This file was auto-generated. Do not make direct changes to the file.
3
+ */
4
+ import { Model, Manager, QuerySet, getModelClass } from '../../../../src';
5
+ import { wrapReactiveModel } from '../../../../src';
6
+ import schemaData from './readonlyitem.schema.json';
7
+ /**
8
+ * Model-specific QuerySet implementation
9
+ */
10
+ export class ReadOnlyItemQuerySet extends QuerySet {
11
+ }
12
+ /**
13
+ * Model-specific Manager implementation
14
+ */
15
+ export class ReadOnlyItemManager extends Manager {
16
+ constructor(ModelClass) {
17
+ super(ModelClass, ReadOnlyItemQuerySet);
18
+ }
19
+ newQuerySet() {
20
+ return new ReadOnlyItemQuerySet(this.ModelClass);
21
+ }
22
+ }
23
+ /**
24
+ * Implementation of the ReadOnlyItem model
25
+ */
26
+ export class ReadOnlyItem extends Model {
27
+ constructor(data) {
28
+ ReadOnlyItem.validateFields(data);
29
+ super(data);
30
+ // Define getters and setters for all fields
31
+ this._defineProperties();
32
+ return wrapReactiveModel(this);
33
+ }
34
+ /**
35
+ * Define property getters and setters for all model fields
36
+ * @private
37
+ */
38
+ _defineProperties() {
39
+ // For each field, define a property that gets/sets from internal storage
40
+ ReadOnlyItem.fields.forEach(field => {
41
+ Object.defineProperty(this, field, {
42
+ get: function () {
43
+ return this.getField(field);
44
+ },
45
+ set: function (value) {
46
+ this.setField(field, value);
47
+ },
48
+ enumerable: true, // Make sure fields are enumerable for serialization
49
+ configurable: true
50
+ });
51
+ });
52
+ // Add a special read-only getter for the repr field
53
+ Object.defineProperty(this, 'repr', {
54
+ get: function () {
55
+ return this.getField('repr');
56
+ },
57
+ enumerable: true, // Make sure repr is enumerable
58
+ configurable: true
59
+ });
60
+ }
61
+ }
62
+ // Bind this model to its backend
63
+ ReadOnlyItem.configKey = 'backend1';
64
+ ReadOnlyItem.modelName = 'django_app.readonlyitem';
65
+ ReadOnlyItem.primaryKeyField = 'id';
66
+ ReadOnlyItem.objects = new ReadOnlyItemManager(ReadOnlyItem);
67
+ ReadOnlyItem.fields = ['id', 'name', 'value', 'secret'];
68
+ ReadOnlyItem.schema = schemaData;
69
+ ReadOnlyItem.relationshipFields = new Map([]);
@@ -0,0 +1,105 @@
1
+ {
2
+ "model_name": "django_app.readonlyitem",
3
+ "title": "Read Only Item",
4
+ "class_name": "ReadOnlyItem",
5
+ "plural_title": "Read Only Items",
6
+ "primary_key_field": "id",
7
+ "filterable_fields": [
8
+ "value",
9
+ "secret",
10
+ "id",
11
+ "name"
12
+ ],
13
+ "searchable_fields": [
14
+ "name"
15
+ ],
16
+ "ordering_fields": [
17
+ "value",
18
+ "name"
19
+ ],
20
+ "properties": {
21
+ "id": {
22
+ "type": "integer",
23
+ "title": "Id",
24
+ "required": true,
25
+ "description": null,
26
+ "nullable": false,
27
+ "format": "id",
28
+ "max_length": null,
29
+ "choices": null,
30
+ "default": null,
31
+ "validators": [],
32
+ "max_digits": null,
33
+ "decimal_places": null,
34
+ "read_only": true,
35
+ "ref": null
36
+ },
37
+ "name": {
38
+ "type": "string",
39
+ "title": "Name",
40
+ "required": true,
41
+ "description": null,
42
+ "nullable": false,
43
+ "format": null,
44
+ "max_length": 100,
45
+ "choices": null,
46
+ "default": null,
47
+ "validators": [],
48
+ "max_digits": null,
49
+ "decimal_places": null,
50
+ "read_only": false,
51
+ "ref": null
52
+ },
53
+ "value": {
54
+ "type": "integer",
55
+ "title": "Value",
56
+ "required": false,
57
+ "description": null,
58
+ "nullable": false,
59
+ "format": null,
60
+ "max_length": null,
61
+ "choices": null,
62
+ "default": 0,
63
+ "validators": [],
64
+ "max_digits": null,
65
+ "decimal_places": null,
66
+ "read_only": false,
67
+ "ref": null
68
+ },
69
+ "secret": {
70
+ "type": "string",
71
+ "title": "Secret",
72
+ "required": false,
73
+ "description": null,
74
+ "nullable": false,
75
+ "format": null,
76
+ "max_length": 100,
77
+ "choices": null,
78
+ "default": "",
79
+ "validators": [],
80
+ "max_digits": null,
81
+ "decimal_places": null,
82
+ "read_only": false,
83
+ "ref": null
84
+ }
85
+ },
86
+ "relationships": {},
87
+ "default_ordering": null,
88
+ "definitions": {
89
+ "MoneyField": {
90
+ "type": "object",
91
+ "properties": {
92
+ "amount": {
93
+ "type": "number"
94
+ },
95
+ "currency": {
96
+ "type": "string"
97
+ }
98
+ }
99
+ }
100
+ },
101
+ "datetime_format": "iso-8601",
102
+ "date_format": "iso-8601",
103
+ "time_format": "iso-8601",
104
+ "display": null
105
+ }