@spinajs/intl-orm 2.0.86 → 2.0.88

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 (63) hide show
  1. package/lib/{decorators.d.ts → cjs/decorators.d.ts} +0 -0
  2. package/lib/cjs/decorators.d.ts.map +1 -0
  3. package/lib/cjs/decorators.js +19 -0
  4. package/lib/cjs/decorators.js.map +1 -0
  5. package/lib/{index.d.ts → cjs/index.d.ts} +0 -0
  6. package/lib/cjs/index.d.ts.map +1 -0
  7. package/lib/cjs/index.js +186 -0
  8. package/lib/cjs/index.js.map +1 -0
  9. package/lib/{migrations → cjs/migrations}/IntlOrm_2022_06_28_01_13_00.d.ts +0 -0
  10. package/lib/cjs/migrations/IntlOrm_2022_06_28_01_13_00.d.ts.map +1 -0
  11. package/lib/cjs/migrations/IntlOrm_2022_06_28_01_13_00.js +38 -0
  12. package/lib/cjs/migrations/IntlOrm_2022_06_28_01_13_00.js.map +1 -0
  13. package/lib/{model.d.ts → cjs/model.d.ts} +0 -0
  14. package/lib/cjs/model.d.ts.map +1 -0
  15. package/lib/cjs/model.js +71 -0
  16. package/lib/cjs/model.js.map +1 -0
  17. package/lib/{models → cjs/models}/IntlResource.d.ts +0 -0
  18. package/lib/cjs/models/IntlResource.d.ts.map +1 -0
  19. package/lib/cjs/models/IntlResource.js +23 -0
  20. package/lib/cjs/models/IntlResource.js.map +1 -0
  21. package/lib/{models → cjs/models}/IntlTranslation.d.ts +0 -0
  22. package/lib/cjs/models/IntlTranslation.d.ts.map +1 -0
  23. package/lib/cjs/models/IntlTranslation.js +30 -0
  24. package/lib/cjs/models/IntlTranslation.js.map +1 -0
  25. package/lib/mjs/decorators.d.ts +2 -0
  26. package/lib/mjs/decorators.d.ts.map +1 -0
  27. package/lib/{decorators.js → mjs/decorators.js} +0 -0
  28. package/lib/mjs/decorators.js.map +1 -0
  29. package/lib/mjs/index.d.ts +42 -0
  30. package/lib/mjs/index.d.ts.map +1 -0
  31. package/lib/{index.js → mjs/index.js} +0 -0
  32. package/lib/mjs/index.js.map +1 -0
  33. package/lib/mjs/migrations/IntlOrm_2022_06_28_01_13_00.d.ts +6 -0
  34. package/lib/mjs/migrations/IntlOrm_2022_06_28_01_13_00.d.ts.map +1 -0
  35. package/lib/{migrations → mjs/migrations}/IntlOrm_2022_06_28_01_13_00.js +0 -0
  36. package/lib/mjs/migrations/IntlOrm_2022_06_28_01_13_00.js.map +1 -0
  37. package/lib/mjs/model.d.ts +13 -0
  38. package/lib/mjs/model.d.ts.map +1 -0
  39. package/lib/{model.js → mjs/model.js} +0 -0
  40. package/lib/mjs/model.js.map +1 -0
  41. package/lib/mjs/models/IntlResource.d.ts +14 -0
  42. package/lib/mjs/models/IntlResource.d.ts.map +1 -0
  43. package/lib/{models → mjs/models}/IntlResource.js +0 -0
  44. package/lib/mjs/models/IntlResource.js.map +1 -0
  45. package/lib/mjs/models/IntlTranslation.d.ts +13 -0
  46. package/lib/mjs/models/IntlTranslation.d.ts.map +1 -0
  47. package/lib/{models → mjs/models}/IntlTranslation.js +0 -0
  48. package/lib/mjs/models/IntlTranslation.js.map +1 -0
  49. package/lib/tsconfig.cjs.tsbuildinfo +1 -0
  50. package/lib/tsconfig.tsbuildinfo +1 -0
  51. package/package.json +20 -11
  52. package/lib/decorators.d.ts.map +0 -1
  53. package/lib/decorators.js.map +0 -1
  54. package/lib/index.d.ts.map +0 -1
  55. package/lib/index.js.map +0 -1
  56. package/lib/migrations/IntlOrm_2022_06_28_01_13_00.d.ts.map +0 -1
  57. package/lib/migrations/IntlOrm_2022_06_28_01_13_00.js.map +0 -1
  58. package/lib/model.d.ts.map +0 -1
  59. package/lib/model.js.map +0 -1
  60. package/lib/models/IntlResource.d.ts.map +0 -1
  61. package/lib/models/IntlResource.js.map +0 -1
  62. package/lib/models/IntlTranslation.d.ts.map +0 -1
  63. package/lib/models/IntlTranslation.js.map +0 -1
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"AAEA,wBAAgB,SAAS,QAYxB"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Translate = void 0;
4
+ const orm_1 = require("@spinajs/orm");
5
+ function Translate() {
6
+ return (0, orm_1.extractDecoratorDescriptor)((model, _target, propertyKey) => {
7
+ const columnDesc = model.Columns.find((c) => c.Name === propertyKey);
8
+ if (!columnDesc) {
9
+ // we dont want to fill all props, they will be loaded from db and mergeg with this
10
+ model.Columns.push({ Name: propertyKey, Translate: true });
11
+ }
12
+ else {
13
+ columnDesc.Translate = true;
14
+ }
15
+ model.Translatable = true;
16
+ }, true);
17
+ }
18
+ exports.Translate = Translate;
19
+ //# sourceMappingURL=decorators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":";;;AAAA,sCAA4E;AAE5E,SAAgB,SAAS;IACvB,OAAO,IAAA,gCAA0B,EAAC,CAAC,KAAuB,EAAE,OAAY,EAAE,WAAmB,EAAE,EAAE;QAC/F,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;QACrE,IAAI,CAAC,UAAU,EAAE;YACf,mFAAmF;YACnF,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,EAAS,CAAC,CAAC;SACnE;aAAM;YACL,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC;SAC7B;QAEA,KAAa,CAAC,YAAY,GAAG,IAAI,CAAC;IACrC,CAAC,EAAE,IAAI,CAAC,CAAC;AACX,CAAC;AAZD,8BAYC"}
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAA0B,gBAAgB,EAAE,SAAS,EAAE,GAAG,EAAE,WAAW,EAAgB,kBAAkB,EAAE,YAAY,EAAE,eAAe,EAAE,kBAAkB,EAAE,YAAY,EAAqB,MAAM,cAAc,CAAC;AAC3N,OAAO,EAAE,iBAAiB,EAAkC,MAAM,eAAe,CAAC;AAKlF,cAAc,iBAAiB,CAAC;AAChC,cAAc,6CAA6C,CAAC;AAC5D,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAI5C,OAAO,QAAQ,cAAc,CAAC;IAC5B,UAAU,kBAAkB,CAAC,CAAC;QAC5B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC;QAC/C,UAAU,EAAE,OAAO,CAAC;KACrB;IACD,UAAU,iBAAiB;QACzB,SAAS,EAAE,OAAO,CAAC;KACpB;CACF;AAED,qBACa,iBAAkB,SAAQ,WAAW;IACpC,SAAS,CAAC,KAAK,EAAE,MAAM;IAA8C,SAAS,CAAC,YAAY,EAAE,gBAAgB;gBAAnG,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,kBAAkB,CAAC,GAAG,CAAC,EAAY,YAAY,EAAE,gBAAgB,EAAE,eAAe,CAAC,EAAE,WAAW;IAoBjJ,OAAO,IAAI,IAAI;IAIf,SAAS,CAAC,KAAK,EAAE,MAAM;CAG/B;AAED,qBAAa,mBAAoB,YAAW,kBAAkB;IAChD,SAAS,CAAC,KAAK,EAAE,MAAM;IAAE,SAAS,CAAC,cAAc,EAAE,kBAAkB;IAAE,SAAS,CAAC,YAAY,EAAE,gBAAgB;IAAE,SAAS,CAAC,MAAM,EAAE,YAAY;gBAArI,KAAK,EAAE,MAAM,EAAY,cAAc,EAAE,kBAAkB,EAAY,YAAY,EAAE,gBAAgB,EAAY,MAAM,EAAE,YAAY;IAEpJ,kBAAkB,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,CAAC,GAAG,IAAI;IAEnD,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,GAAG,EAAE;IAG9B,aAAa,CAAC,CAAC,EAAE,GAAG,GAAG,SAAS;IAG1B,cAAc,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;CA0D/D;AA0BD,qBACa,mBAAoB,SAAQ,eAAe;IACtD,kBAAkB,CAAC,OAAO,EAAE,YAAY;CAUzC;AAED,qBACa,mBAAoB,SAAQ,iBAAiB;IAC3C,IAAI;;;CAWlB"}
@@ -0,0 +1,186 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
14
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
15
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
16
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
17
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
18
+ };
19
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
20
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
21
+ };
22
+ var __metadata = (this && this.__metadata) || function (k, v) {
23
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.DbTranslationSource = exports.IntlQueryMiddleware = exports.IntlModelMiddleware = exports.IntlModelRelation = void 0;
30
+ const di_1 = require("@spinajs/di");
31
+ const orm_1 = require("@spinajs/orm");
32
+ const intl_1 = require("@spinajs/intl");
33
+ const lodash_1 = __importDefault(require("lodash"));
34
+ const IntlTranslation_js_1 = require("./models/IntlTranslation.js");
35
+ const IntlResource_js_1 = require("./models/IntlResource.js");
36
+ __exportStar(require("./decorators.js"), exports);
37
+ __exportStar(require("./migrations/IntlOrm_2022_06_28_01_13_00.js"), exports);
38
+ __exportStar(require("./models/IntlResource.js"), exports);
39
+ __exportStar(require("./models/IntlTranslation.js"), exports);
40
+ const { SelectQueryBuilder: SQB } = require('@spinajs/orm');
41
+ let IntlModelRelation = class IntlModelRelation extends orm_1.OrmRelation {
42
+ constructor(_lang, _orm, _query, _mDescriptor, _parentRelation) {
43
+ super(_orm, _query, {
44
+ TargetModel: IntlResource_js_1.IntlResource,
45
+ TargetModelType: IntlResource_js_1.IntlResource,
46
+ Name: 'Translations',
47
+ Type: orm_1.RelationType.Many,
48
+ SourceModel: null,
49
+ ForeignKey: '',
50
+ PrimaryKey: '',
51
+ Recursive: false,
52
+ }, _parentRelation);
53
+ this._lang = _lang;
54
+ this._mDescriptor = _mDescriptor;
55
+ this._relationQuery.from('intl_resources', this.Alias);
56
+ }
57
+ execute() {
58
+ this._query.middleware(new IntlModelMiddleware(this._lang, this._relationQuery, this._mDescriptor, this.parentRelation));
59
+ }
60
+ translate(_lang) {
61
+ // empty, cannot translate translation relation!
62
+ }
63
+ };
64
+ IntlModelRelation = __decorate([
65
+ (0, di_1.NewInstance)(),
66
+ __metadata("design:paramtypes", [String, orm_1.Orm, orm_1.SelectQueryBuilder, Object, orm_1.OrmRelation])
67
+ ], IntlModelRelation);
68
+ exports.IntlModelRelation = IntlModelRelation;
69
+ class IntlModelMiddleware {
70
+ constructor(_lang, _relationQuery, _description, _owner) {
71
+ this._lang = _lang;
72
+ this._relationQuery = _relationQuery;
73
+ this._description = _description;
74
+ this._owner = _owner;
75
+ }
76
+ afterQueryCreation(_query) { }
77
+ afterQuery(data) {
78
+ return data;
79
+ }
80
+ modelCreation(_) {
81
+ return null;
82
+ }
83
+ async afterHydration(data) {
84
+ const self = this;
85
+ const pks = data.map((d) => {
86
+ // do this as one pass
87
+ return d[this._description.PrimaryKey];
88
+ });
89
+ const hydrateMiddleware = {
90
+ afterQuery(data) {
91
+ return data;
92
+ },
93
+ modelCreation() {
94
+ return null;
95
+ },
96
+ async afterHydration(relationData) {
97
+ data.forEach((d) => {
98
+ const relData = relationData.filter((rd) => {
99
+ return rd['ResourceId'] === d[self._description.PrimaryKey];
100
+ });
101
+ relData.forEach((rd) => {
102
+ if (self._owner && self._owner instanceof orm_1.BelongsToRelation) {
103
+ let val = d;
104
+ let rel = self._owner;
105
+ let relArr = [];
106
+ while (rel) {
107
+ relArr.push(rel);
108
+ rel = rel.parentRelation;
109
+ }
110
+ relArr = relArr.reverse();
111
+ relArr.forEach((r) => {
112
+ val = val[r.Name].Value;
113
+ });
114
+ val[rd.Column] = rd.Value;
115
+ val.setLanguage(self._lang);
116
+ }
117
+ else {
118
+ d[rd.Column] = rd.Value;
119
+ }
120
+ });
121
+ d.Language = self._lang;
122
+ });
123
+ },
124
+ };
125
+ if (pks.length !== 0) {
126
+ this._relationQuery.whereIn('ResourceId', pks);
127
+ this._relationQuery.where('Resource', this._description.Name);
128
+ this._relationQuery.where('Lang', this._lang);
129
+ this._relationQuery.middleware(hydrateMiddleware);
130
+ return await this._relationQuery;
131
+ }
132
+ return [];
133
+ }
134
+ }
135
+ exports.IntlModelMiddleware = IntlModelMiddleware;
136
+ SQB.prototype['translate'] = function (lang) {
137
+ /**
138
+ * Cannot translate query that cames from translation middleware !
139
+ */
140
+ if (this.Owner !== null && this.Owner instanceof IntlModelRelation) {
141
+ return;
142
+ }
143
+ this.translated = true;
144
+ const descriptor = (0, orm_1.extractModelDescriptor)(this._model);
145
+ const relInstance = this._container.resolve(IntlModelRelation, [lang, this._container.get(orm_1.Orm), this, descriptor, this._owner]);
146
+ relInstance.execute();
147
+ // translate all other relations automatically
148
+ this._relations.forEach((r) => {
149
+ r.executeOnQuery(function () {
150
+ this.translate(lang);
151
+ });
152
+ });
153
+ this._relations.push(relInstance);
154
+ return this;
155
+ };
156
+ let IntlQueryMiddleware = class IntlQueryMiddleware extends orm_1.QueryMiddleware {
157
+ afterQueryCreation(builder) {
158
+ if (builder instanceof SQB && !builder.translated) {
159
+ const lang = (0, intl_1.guessLanguage)();
160
+ const dLang = (0, intl_1.defaultLanguage)();
161
+ if (lang && dLang !== lang) {
162
+ builder.translate(lang);
163
+ }
164
+ }
165
+ }
166
+ };
167
+ IntlQueryMiddleware = __decorate([
168
+ (0, di_1.Injectable)(orm_1.QueryMiddleware)
169
+ ], IntlQueryMiddleware);
170
+ exports.IntlQueryMiddleware = IntlQueryMiddleware;
171
+ let DbTranslationSource = class DbTranslationSource extends intl_1.TranslationSource {
172
+ async load() {
173
+ const translations = await IntlTranslation_js_1.IntlTranslation.all();
174
+ return lodash_1.default.mapValues(lodash_1.default.groupBy(translations, 'Lang'), (t) => {
175
+ const vals = t.map((tt) => {
176
+ return { [tt.Key]: tt.Value };
177
+ });
178
+ return lodash_1.default.assign.apply(lodash_1.default, vals);
179
+ });
180
+ }
181
+ };
182
+ DbTranslationSource = __decorate([
183
+ (0, di_1.Injectable)(intl_1.TranslationSource)
184
+ ], DbTranslationSource);
185
+ exports.DbTranslationSource = DbTranslationSource;
186
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IntlOrm_2022_06_28_01_13_00.d.ts","sourceRoot":"","sources":["../../../src/migrations/IntlOrm_2022_06_28_01_13_00.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,SAAS,EAAa,MAAM,cAAc,CAAC;AAElE,qBACa,2BAA4B,SAAQ,YAAY;IAC9C,EAAE,CAAC,UAAU,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBxC,IAAI,CAAC,WAAW,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;CACzD"}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.IntlOrm_2022_06_28_01_13_00 = void 0;
10
+ /* eslint-disable @typescript-eslint/no-unused-vars */
11
+ const orm_1 = require("@spinajs/orm");
12
+ let IntlOrm_2022_06_28_01_13_00 = class IntlOrm_2022_06_28_01_13_00 extends orm_1.OrmMigration {
13
+ async up(connection) {
14
+ await connection.schema().createTable('intl_resources', (table) => {
15
+ table.int('ResourceId').notNull();
16
+ table.string('Resource', 32).notNull();
17
+ table.string('Column', 16).notNull();
18
+ table.string('Lang', 6).notNull();
19
+ table.text('Value');
20
+ });
21
+ await connection.schema().createTable('intl_translations', (table) => {
22
+ table.int('Id').primaryKey().autoIncrement();
23
+ table.string('Key', 32).notNull();
24
+ table.text('Value');
25
+ table.string('Lang', 6).notNull();
26
+ });
27
+ await connection.index().unique().table('intl_resources').name('intl_resources_idx').columns(['ResourceId', 'Resource', 'Column', 'Lang']);
28
+ await connection.index().unique().table('intl_translations').name('intl_translations_idx').columns(['Key', 'Lang']);
29
+ }
30
+ // tslint:disable-next-line: no-empty
31
+ // eslint-disable-next-line @typescript-eslint/no-empty-function
32
+ async down(_connection) { }
33
+ };
34
+ IntlOrm_2022_06_28_01_13_00 = __decorate([
35
+ (0, orm_1.Migration)('default')
36
+ ], IntlOrm_2022_06_28_01_13_00);
37
+ exports.IntlOrm_2022_06_28_01_13_00 = IntlOrm_2022_06_28_01_13_00;
38
+ //# sourceMappingURL=IntlOrm_2022_06_28_01_13_00.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IntlOrm_2022_06_28_01_13_00.js","sourceRoot":"","sources":["../../../src/migrations/IntlOrm_2022_06_28_01_13_00.ts"],"names":[],"mappings":";;;;;;;;;AAAA,sDAAsD;AACtD,sCAAkE;AAG3D,IAAM,2BAA2B,GAAjC,MAAM,2BAA4B,SAAQ,kBAAY;IACpD,KAAK,CAAC,EAAE,CAAC,UAAqB;QACnC,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC,KAAK,EAAE,EAAE;YAChE,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAC;YAClC,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;YACvC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;YACrC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;YAClC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACtB,CAAC,CAAC,CAAC;QAEH,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,mBAAmB,EAAE,CAAC,KAAK,EAAE,EAAE;YACnE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC,aAAa,EAAE,CAAC;YAC7C,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;YAClC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACpB,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QACpC,CAAC,CAAC,CAAC;QAEH,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;QAC3I,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IACtH,CAAC;IAED,qCAAqC;IACrC,gEAAgE;IACzD,KAAK,CAAC,IAAI,CAAC,WAAsB,IAAkB,CAAC;CAC5D,CAAA;AAxBY,2BAA2B;IADvC,IAAA,eAAS,EAAC,SAAS,CAAC;GACR,2BAA2B,CAwBvC;AAxBY,kEAA2B"}
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/model.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,SAAS,EAAE,MAAM,cAAc,CAAC;AAK1D,qBAAa,YAAa,SAAQ,SAAS;IACzC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE3B;;;;OAIG;IACU,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM;IAgB7B,WAAW,CAAC,IAAI,EAAE,MAAM;IAIlB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;CA2CrC"}
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Translatable = void 0;
7
+ const di_1 = require("@spinajs/di");
8
+ const orm_1 = require("@spinajs/orm");
9
+ const lodash_1 = __importDefault(require("lodash"));
10
+ const IntlResource_js_1 = require("./models/IntlResource.js");
11
+ const configuration_1 = require("@spinajs/configuration");
12
+ const intl_1 = require("@spinajs/intl");
13
+ class Translatable extends orm_1.ModelBase {
14
+ /**
15
+ * Reloads entity with proper translation
16
+ *
17
+ * @param lang - language to load
18
+ */
19
+ async translate(lang) {
20
+ const selectedLang = (0, intl_1.guessLanguage)(lang);
21
+ const translations = await IntlResource_js_1.IntlResource.where({
22
+ ResourceId: this.PrimaryKeyValue,
23
+ Resource: this.constructor.name,
24
+ Lang: selectedLang,
25
+ });
26
+ translations.forEach((rd) => {
27
+ this[rd.Column] = rd.Value;
28
+ });
29
+ this.Language = selectedLang;
30
+ }
31
+ setLanguage(lang) {
32
+ this.Language = lang;
33
+ }
34
+ async update() {
35
+ const selectedLang = (0, intl_1.guessLanguage)(this.Language);
36
+ const defaultLanguage = di_1.DI.get(configuration_1.Configuration).get('intl.defaultLocale');
37
+ if (!selectedLang || defaultLanguage === selectedLang) {
38
+ await super.update();
39
+ }
40
+ else {
41
+ this.Language = selectedLang;
42
+ // TODO: temporaty use uniqyBy, pls FIX model descriptor proper handling in ORM module
43
+ const tColumns = lodash_1.default.uniqBy(this.ModelDescriptor.Columns.filter((c) => c.Translate), 'Name');
44
+ const { query } = this.createUpdateQuery();
45
+ if (this.ModelDescriptor.Timestamps.UpdatedAt) {
46
+ this[this.ModelDescriptor.Timestamps.UpdatedAt] = new Date();
47
+ }
48
+ // update only non translated
49
+ const cToDehydrate = [...tColumns.map((c) => c.Name)];
50
+ const dToUpdate = lodash_1.default.omit(this.toSql(), cToDehydrate);
51
+ if (Object.keys(dToUpdate).length !== 0) {
52
+ await query.update(dToUpdate).where(this.PrimaryKeyName, this.PrimaryKeyValue);
53
+ }
54
+ const translations = tColumns.map((c) => {
55
+ return new IntlResource_js_1.IntlResource({
56
+ ResourceId: this.PrimaryKeyValue,
57
+ Resource: this.constructor.name,
58
+ Column: c.Name,
59
+ Lang: this.Language,
60
+ Value: this[c.Name],
61
+ });
62
+ });
63
+ // update or insert translations to database
64
+ for (const t of translations) {
65
+ await t.insert(orm_1.InsertBehaviour.InsertOrUpdate);
66
+ }
67
+ }
68
+ }
69
+ }
70
+ exports.Translatable = Translatable;
71
+ //# sourceMappingURL=model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../src/model.ts"],"names":[],"mappings":"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"}
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IntlResource.d.ts","sourceRoot":"","sources":["../../../src/models/IntlResource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAqB,MAAM,cAAc,CAAC;AAE5D;;;;GAIG;AACH,qBAEa,YAAa,SAAQ,SAAS;IAClC,UAAU,EAAE,MAAM,CAAC;IAEnB,QAAQ,EAAE,MAAM,CAAC;IAEjB,MAAM,EAAE,MAAM,CAAC;IAEf,IAAI,EAAE,MAAM,CAAC;IAEb,KAAK,EAAE,MAAM,CAAC;CACtB"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.IntlResource = void 0;
10
+ const orm_1 = require("@spinajs/orm");
11
+ /**
12
+ * Base modele for users used by ACL
13
+ *
14
+ * To add / extend fields simply extend this model and register as default user model in ACL service
15
+ */
16
+ let IntlResource = class IntlResource extends orm_1.ModelBase {
17
+ };
18
+ IntlResource = __decorate([
19
+ (0, orm_1.Connection)('default'),
20
+ (0, orm_1.Model)('intl_resources')
21
+ ], IntlResource);
22
+ exports.IntlResource = IntlResource;
23
+ //# sourceMappingURL=IntlResource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IntlResource.js","sourceRoot":"","sources":["../../../src/models/IntlResource.ts"],"names":[],"mappings":";;;;;;;;;AAAA,sCAA4D;AAE5D;;;;GAIG;AAGI,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,eAAS;CAU1C,CAAA;AAVY,YAAY;IAFxB,IAAA,gBAAU,EAAC,SAAS,CAAC;IACrB,IAAA,WAAK,EAAC,gBAAgB,CAAC;GACX,YAAY,CAUxB;AAVY,oCAAY"}
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IntlTranslation.d.ts","sourceRoot":"","sources":["../../../src/models/IntlTranslation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA8B,MAAM,cAAc,CAAC;AAErE;;;;GAIG;AACH,qBAEa,eAAgB,SAAQ,SAAS;IAErC,EAAE,EAAE,MAAM,CAAC;IAEX,GAAG,EAAE,MAAM,CAAC;IAEZ,KAAK,EAAE,MAAM,CAAC;IAEd,IAAI,EAAE,MAAM,CAAC;CACrB"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.IntlTranslation = void 0;
13
+ const orm_1 = require("@spinajs/orm");
14
+ /**
15
+ * Base modele for users used by ACL
16
+ *
17
+ * To add / extend fields simply extend this model and register as default user model in ACL service
18
+ */
19
+ let IntlTranslation = class IntlTranslation extends orm_1.ModelBase {
20
+ };
21
+ __decorate([
22
+ (0, orm_1.Primary)(),
23
+ __metadata("design:type", Number)
24
+ ], IntlTranslation.prototype, "Id", void 0);
25
+ IntlTranslation = __decorate([
26
+ (0, orm_1.Connection)('default'),
27
+ (0, orm_1.Model)('intl_translations')
28
+ ], IntlTranslation);
29
+ exports.IntlTranslation = IntlTranslation;
30
+ //# sourceMappingURL=IntlTranslation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IntlTranslation.js","sourceRoot":"","sources":["../../../src/models/IntlTranslation.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sCAAqE;AAErE;;;;GAIG;AAGI,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,eAAS;CAS7C,CAAA;AARC;IAAC,IAAA,aAAO,GAAE;;2CACQ;AAFP,eAAe;IAF3B,IAAA,gBAAU,EAAC,SAAS,CAAC;IACrB,IAAA,WAAK,EAAC,mBAAmB,CAAC;GACd,eAAe,CAS3B;AATY,0CAAe"}
@@ -0,0 +1,2 @@
1
+ export declare function Translate(): any;
2
+ //# sourceMappingURL=decorators.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"AAEA,wBAAgB,SAAS,QAYxB"}
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAoB,MAAM,cAAc,CAAC;AAE5E,MAAM,UAAU,SAAS;IACvB,OAAO,0BAA0B,CAAC,CAAC,KAAuB,EAAE,OAAY,EAAE,WAAmB,EAAE,EAAE;QAC/F,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;QACrE,IAAI,CAAC,UAAU,EAAE;YACf,mFAAmF;YACnF,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,EAAS,CAAC,CAAC;SACnE;aAAM;YACL,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC;SAC7B;QAEA,KAAa,CAAC,YAAY,GAAG,IAAI,CAAC;IACrC,CAAC,EAAE,IAAI,CAAC,CAAC;AACX,CAAC"}
@@ -0,0 +1,42 @@
1
+ import { IModelDescriptor, ModelBase, Orm, OrmRelation, SelectQueryBuilder, QueryBuilder, QueryMiddleware, IBuilderMiddleware, IOrmRelation } from '@spinajs/orm';
2
+ import { TranslationSource } from '@spinajs/intl';
3
+ export * from './decorators.js';
4
+ export * from './migrations/IntlOrm_2022_06_28_01_13_00.js';
5
+ export * from './models/IntlResource.js';
6
+ export * from './models/IntlTranslation.js';
7
+ declare module '@spinajs/orm' {
8
+ interface SelectQueryBuilder<T> {
9
+ translate(lang: string): SelectQueryBuilder<T>;
10
+ translated: boolean;
11
+ }
12
+ interface IColumnDescriptor {
13
+ Translate: boolean;
14
+ }
15
+ }
16
+ export declare class IntlModelRelation extends OrmRelation {
17
+ protected _lang: string;
18
+ protected _mDescriptor: IModelDescriptor;
19
+ constructor(_lang: string, _orm: Orm, _query: SelectQueryBuilder<any>, _mDescriptor: IModelDescriptor, _parentRelation?: OrmRelation);
20
+ execute(): void;
21
+ translate(_lang: string): void;
22
+ }
23
+ export declare class IntlModelMiddleware implements IBuilderMiddleware {
24
+ protected _lang: string;
25
+ protected _relationQuery: SelectQueryBuilder;
26
+ protected _description: IModelDescriptor;
27
+ protected _owner: IOrmRelation;
28
+ constructor(_lang: string, _relationQuery: SelectQueryBuilder, _description: IModelDescriptor, _owner: IOrmRelation);
29
+ afterQueryCreation(_query: QueryBuilder<any>): void;
30
+ afterQuery(data: any[]): any[];
31
+ modelCreation(_: any): ModelBase;
32
+ afterHydration(data: ModelBase[]): Promise<any[]>;
33
+ }
34
+ export declare class IntlQueryMiddleware extends QueryMiddleware {
35
+ afterQueryCreation(builder: QueryBuilder): void;
36
+ }
37
+ export declare class DbTranslationSource extends TranslationSource {
38
+ load(): Promise<{
39
+ [x: string]: any;
40
+ }>;
41
+ }
42
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAA0B,gBAAgB,EAAE,SAAS,EAAE,GAAG,EAAE,WAAW,EAAgB,kBAAkB,EAAE,YAAY,EAAE,eAAe,EAAE,kBAAkB,EAAE,YAAY,EAAqB,MAAM,cAAc,CAAC;AAC3N,OAAO,EAAE,iBAAiB,EAAkC,MAAM,eAAe,CAAC;AAKlF,cAAc,iBAAiB,CAAC;AAChC,cAAc,6CAA6C,CAAC;AAC5D,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAI5C,OAAO,QAAQ,cAAc,CAAC;IAC5B,UAAU,kBAAkB,CAAC,CAAC;QAC5B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC;QAC/C,UAAU,EAAE,OAAO,CAAC;KACrB;IACD,UAAU,iBAAiB;QACzB,SAAS,EAAE,OAAO,CAAC;KACpB;CACF;AAED,qBACa,iBAAkB,SAAQ,WAAW;IACpC,SAAS,CAAC,KAAK,EAAE,MAAM;IAA8C,SAAS,CAAC,YAAY,EAAE,gBAAgB;gBAAnG,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,kBAAkB,CAAC,GAAG,CAAC,EAAY,YAAY,EAAE,gBAAgB,EAAE,eAAe,CAAC,EAAE,WAAW;IAoBjJ,OAAO,IAAI,IAAI;IAIf,SAAS,CAAC,KAAK,EAAE,MAAM;CAG/B;AAED,qBAAa,mBAAoB,YAAW,kBAAkB;IAChD,SAAS,CAAC,KAAK,EAAE,MAAM;IAAE,SAAS,CAAC,cAAc,EAAE,kBAAkB;IAAE,SAAS,CAAC,YAAY,EAAE,gBAAgB;IAAE,SAAS,CAAC,MAAM,EAAE,YAAY;gBAArI,KAAK,EAAE,MAAM,EAAY,cAAc,EAAE,kBAAkB,EAAY,YAAY,EAAE,gBAAgB,EAAY,MAAM,EAAE,YAAY;IAEpJ,kBAAkB,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,CAAC,GAAG,IAAI;IAEnD,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,GAAG,EAAE;IAG9B,aAAa,CAAC,CAAC,EAAE,GAAG,GAAG,SAAS;IAG1B,cAAc,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;CA0D/D;AA0BD,qBACa,mBAAoB,SAAQ,eAAe;IACtD,kBAAkB,CAAC,OAAO,EAAE,YAAY;CAUzC;AAED,qBACa,mBAAoB,SAAQ,iBAAiB;IAC3C,IAAI;;;CAWlB"}
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAA+B,GAAG,EAAE,WAAW,EAAE,YAAY,EAAE,kBAAkB,EAAgB,eAAe,EAAoC,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAC3N,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAClF,OAAO,CAAC,MAAM,QAAQ,CAAC;AACvB,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,cAAc,iBAAiB,CAAC;AAChC,cAAc,6CAA6C,CAAC;AAC5D,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAE5C,MAAM,EAAE,kBAAkB,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAarD,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,WAAW;IAChD,YAAsB,KAAa,EAAE,IAAS,EAAE,MAA+B,EAAY,YAA8B,EAAE,eAA6B;QACtJ,KAAK,CACH,IAAI,EACJ,MAAM,EACN;YACE,WAAW,EAAE,YAAY;YACzB,eAAe,EAAE,YAAY;YAC7B,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,YAAY,CAAC,IAAI;YACvB,WAAW,EAAE,IAAI;YACjB,UAAU,EAAE,EAAE;YACd,UAAU,EAAE,EAAE;YACd,SAAS,EAAE,KAAK;SACjB,EACD,eAAe,CAChB,CAAC;QAfkB,UAAK,GAAL,KAAK,CAAQ;QAAwD,iBAAY,GAAZ,YAAY,CAAkB;QAiBvH,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACzD,CAAC;IAEM,OAAO;QACZ,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,mBAAmB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;IAC3H,CAAC;IAEM,SAAS,CAAC,KAAa;QAC5B,gDAAgD;IAClD,CAAC;CACF,CAAA;AA5BY,iBAAiB;IAD7B,WAAW,EAAE;6CAE+B,GAAG,EAAU,kBAAkB,UAAmE,WAAW;GAD7I,iBAAiB,CA4B7B;SA5BY,iBAAiB;AA8B9B,MAAM,OAAO,mBAAmB;IAC9B,YAAsB,KAAa,EAAY,cAAkC,EAAY,YAA8B,EAAY,MAAoB;QAArI,UAAK,GAAL,KAAK,CAAQ;QAAY,mBAAc,GAAd,cAAc,CAAoB;QAAY,iBAAY,GAAZ,YAAY,CAAkB;QAAY,WAAM,GAAN,MAAM,CAAc;IAAG,CAAC;IAExJ,kBAAkB,CAAC,MAAyB,IAAS,CAAC;IAEtD,UAAU,CAAC,IAAW;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IACM,aAAa,CAAC,CAAM;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IACM,KAAK,CAAC,cAAc,CAAC,IAAiB;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC;QAClB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACzB,sBAAsB;YACtB,OAAQ,CAAS,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;QAEH,MAAM,iBAAiB,GAAG;YACxB,UAAU,CAAC,IAAW;gBACpB,OAAO,IAAI,CAAC;YACd,CAAC;YACD,aAAa;gBACX,OAAO,IAAI,CAAC;YACd,CAAC;YACD,KAAK,CAAC,cAAc,CAAC,YAAyB;gBAC5C,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;oBACjB,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE;wBACzC,OAAQ,EAAU,CAAC,YAAY,CAAC,KAAM,CAAS,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;oBAChF,CAAC,CAAC,CAAC;oBAEH,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;wBACrB,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,YAAY,iBAAiB,EAAE;4BAC3D,IAAI,GAAG,GAAG,CAAQ,CAAC;4BACnB,IAAI,GAAG,GAAG,IAAI,CAAC,MAAqB,CAAC;4BAErC,IAAI,MAAM,GAAG,EAAE,CAAC;4BAChB,OAAO,GAAG,EAAE;gCACV,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gCACjB,GAAG,GAAG,GAAG,CAAC,cAAc,CAAC;6BAC1B;4BAED,MAAM,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;4BAC1B,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;gCACnB,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC;4BAC1B,CAAC,CAAC,CAAC;4BAEH,GAAG,CAAE,EAAU,CAAC,MAAM,CAAC,GAAI,EAAU,CAAC,KAAK,CAAC;4BAC5C,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;yBAC7B;6BAAM;4BACJ,CAAS,CAAE,EAAU,CAAC,MAAM,CAAC,GAAI,EAAU,CAAC,KAAK,CAAC;yBACpD;oBACH,CAAC,CAAC,CAAC;oBAEF,CAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC;gBACnC,CAAC,CAAC,CAAC;YACL,CAAC;SACF,CAAC;QAEF,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;YACpB,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;YAC/C,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAC9D,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YAC9C,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;YAClD,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC;SAClC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;CACF;AAEA,GAAG,CAAC,SAAiB,CAAC,WAAW,CAAC,GAAG,UAAoC,IAAY;IACpF;;OAEG;IACH,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,YAAY,iBAAiB,EAAE;QAClE,OAAO;KACR;IAED,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;IACvB,MAAM,UAAU,GAAG,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvD,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAChI,WAAW,CAAC,OAAO,EAAE,CAAC;IAEtB,8CAA8C;IAC9C,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QAC5B,CAAC,CAAC,cAAc,CAAC;YACf,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAClC,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAGK,IAAM,mBAAmB,GAAzB,MAAM,mBAAoB,SAAQ,eAAe;IACtD,kBAAkB,CAAC,OAAqB;QACtC,IAAI,OAAO,YAAY,GAAG,IAAI,CAAE,OAAe,CAAC,UAAU,EAAE;YAC1D,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;YAC7B,MAAM,KAAK,GAAG,eAAe,EAAE,CAAC;YAEhC,IAAI,IAAI,IAAI,KAAK,KAAK,IAAI,EAAE;gBACzB,OAAe,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;aAClC;SACF;IACH,CAAC;CACF,CAAA;AAXY,mBAAmB;IAD/B,UAAU,CAAC,eAAe,CAAC;GACf,mBAAmB,CAW/B;SAXY,mBAAmB;AAczB,IAAM,mBAAmB,GAAzB,MAAM,mBAAoB,SAAQ,iBAAiB;IACjD,KAAK,CAAC,IAAI;QACf,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,GAAG,EAAE,CAAC;QAEjD,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE;YACxD,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;gBACxB,OAAO,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC;YAChC,CAAC,CAAC,CAAC;YAEH,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AAZY,mBAAmB;IAD/B,UAAU,CAAC,iBAAiB,CAAC;GACjB,mBAAmB,CAY/B;SAZY,mBAAmB"}
@@ -0,0 +1,6 @@
1
+ import { OrmMigration, OrmDriver } from '@spinajs/orm';
2
+ export declare class IntlOrm_2022_06_28_01_13_00 extends OrmMigration {
3
+ up(connection: OrmDriver): Promise<void>;
4
+ down(_connection: OrmDriver): Promise<void>;
5
+ }
6
+ //# sourceMappingURL=IntlOrm_2022_06_28_01_13_00.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IntlOrm_2022_06_28_01_13_00.d.ts","sourceRoot":"","sources":["../../../src/migrations/IntlOrm_2022_06_28_01_13_00.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,SAAS,EAAa,MAAM,cAAc,CAAC;AAElE,qBACa,2BAA4B,SAAQ,YAAY;IAC9C,EAAE,CAAC,UAAU,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBxC,IAAI,CAAC,WAAW,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;CACzD"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IntlOrm_2022_06_28_01_13_00.js","sourceRoot":"","sources":["../../../src/migrations/IntlOrm_2022_06_28_01_13_00.ts"],"names":[],"mappings":";;;;;;AAAA,sDAAsD;AACtD,OAAO,EAAE,YAAY,EAAa,SAAS,EAAE,MAAM,cAAc,CAAC;AAG3D,IAAM,2BAA2B,GAAjC,MAAM,2BAA4B,SAAQ,YAAY;IACpD,KAAK,CAAC,EAAE,CAAC,UAAqB;QACnC,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC,KAAK,EAAE,EAAE;YAChE,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAC;YAClC,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;YACvC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;YACrC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;YAClC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACtB,CAAC,CAAC,CAAC;QAEH,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,mBAAmB,EAAE,CAAC,KAAK,EAAE,EAAE;YACnE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC,aAAa,EAAE,CAAC;YAC7C,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;YAClC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACpB,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QACpC,CAAC,CAAC,CAAC;QAEH,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;QAC3I,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IACtH,CAAC;IAED,qCAAqC;IACrC,gEAAgE;IACzD,KAAK,CAAC,IAAI,CAAC,WAAsB,IAAkB,CAAC;CAC5D,CAAA;AAxBY,2BAA2B;IADvC,SAAS,CAAC,SAAS,CAAC;GACR,2BAA2B,CAwBvC;SAxBY,2BAA2B"}
@@ -0,0 +1,13 @@
1
+ import { ModelBase } from '@spinajs/orm';
2
+ export declare class Translatable extends ModelBase {
3
+ protected Language: string;
4
+ /**
5
+ * Reloads entity with proper translation
6
+ *
7
+ * @param lang - language to load
8
+ */
9
+ translate(lang?: string): Promise<void>;
10
+ setLanguage(lang: string): void;
11
+ update(): Promise<void>;
12
+ }
13
+ //# sourceMappingURL=model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/model.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,SAAS,EAAE,MAAM,cAAc,CAAC;AAK1D,qBAAa,YAAa,SAAQ,SAAS;IACzC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE3B;;;;OAIG;IACU,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM;IAgB7B,WAAW,CAAC,IAAI,EAAE,MAAM;IAIlB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;CA2CrC"}
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../src/model.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { ModelBase } from '@spinajs/orm';
2
+ /**
3
+ * Base modele for users used by ACL
4
+ *
5
+ * To add / extend fields simply extend this model and register as default user model in ACL service
6
+ */
7
+ export declare class IntlResource extends ModelBase {
8
+ ResourceId: number;
9
+ Resource: string;
10
+ Column: string;
11
+ Lang: string;
12
+ Value: string;
13
+ }
14
+ //# sourceMappingURL=IntlResource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IntlResource.d.ts","sourceRoot":"","sources":["../../../src/models/IntlResource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAqB,MAAM,cAAc,CAAC;AAE5D;;;;GAIG;AACH,qBAEa,YAAa,SAAQ,SAAS;IAClC,UAAU,EAAE,MAAM,CAAC;IAEnB,QAAQ,EAAE,MAAM,CAAC;IAEjB,MAAM,EAAE,MAAM,CAAC;IAEf,IAAI,EAAE,MAAM,CAAC;IAEb,KAAK,EAAE,MAAM,CAAC;CACtB"}
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IntlResource.js","sourceRoot":"","sources":["../../../src/models/IntlResource.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAE5D;;;;GAIG;AAGI,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,SAAS;CAU1C,CAAA;AAVY,YAAY;IAFxB,UAAU,CAAC,SAAS,CAAC;IACrB,KAAK,CAAC,gBAAgB,CAAC;GACX,YAAY,CAUxB;SAVY,YAAY"}
@@ -0,0 +1,13 @@
1
+ import { ModelBase } from '@spinajs/orm';
2
+ /**
3
+ * Base modele for users used by ACL
4
+ *
5
+ * To add / extend fields simply extend this model and register as default user model in ACL service
6
+ */
7
+ export declare class IntlTranslation extends ModelBase {
8
+ Id: number;
9
+ Key: string;
10
+ Value: string;
11
+ Lang: string;
12
+ }
13
+ //# sourceMappingURL=IntlTranslation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IntlTranslation.d.ts","sourceRoot":"","sources":["../../../src/models/IntlTranslation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA8B,MAAM,cAAc,CAAC;AAErE;;;;GAIG;AACH,qBAEa,eAAgB,SAAQ,SAAS;IAErC,EAAE,EAAE,MAAM,CAAC;IAEX,GAAG,EAAE,MAAM,CAAC;IAEZ,KAAK,EAAE,MAAM,CAAC;IAEd,IAAI,EAAE,MAAM,CAAC;CACrB"}
File without changes