@trebired/bundler 4.0.0 → 4.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/README.md +50 -7
  3. package/dist/core/frontend_app/build.d.ts.map +1 -1
  4. package/dist/core/frontend_app/build.js +15 -27
  5. package/dist/core/frontend_app/build.js.map +1 -1
  6. package/dist/core/frontend_app/config.d.ts.map +1 -1
  7. package/dist/core/frontend_app/config.js +7 -10
  8. package/dist/core/frontend_app/config.js.map +1 -1
  9. package/dist/core/frontend_app/defaults.d.ts +7 -1
  10. package/dist/core/frontend_app/defaults.d.ts.map +1 -1
  11. package/dist/core/frontend_app/defaults.js +18 -1
  12. package/dist/core/frontend_app/defaults.js.map +1 -1
  13. package/dist/core/frontend_app/global.d.ts +11 -0
  14. package/dist/core/frontend_app/global.d.ts.map +1 -0
  15. package/dist/core/frontend_app/global.js +36 -0
  16. package/dist/core/frontend_app/global.js.map +1 -0
  17. package/dist/core/frontend_app/index.d.ts +4 -2
  18. package/dist/core/frontend_app/index.d.ts.map +1 -1
  19. package/dist/core/frontend_app/index.js +4 -2
  20. package/dist/core/frontend_app/index.js.map +1 -1
  21. package/dist/core/frontend_app/node_modules.d.ts +4 -0
  22. package/dist/core/frontend_app/node_modules.d.ts.map +1 -0
  23. package/dist/core/frontend_app/node_modules.js +25 -0
  24. package/dist/core/frontend_app/node_modules.js.map +1 -0
  25. package/dist/core/frontend_app/runtime.d.ts.map +1 -1
  26. package/dist/core/frontend_app/runtime.js +40 -6
  27. package/dist/core/frontend_app/runtime.js.map +1 -1
  28. package/dist/core/frontend_app/ssr.d.ts +5 -4
  29. package/dist/core/frontend_app/ssr.d.ts.map +1 -1
  30. package/dist/core/frontend_app/ssr.js +36 -16
  31. package/dist/core/frontend_app/ssr.js.map +1 -1
  32. package/dist/core/frontend_app/static.d.ts.map +1 -1
  33. package/dist/core/frontend_app/static.js +20 -12
  34. package/dist/core/frontend_app/static.js.map +1 -1
  35. package/dist/index.d.ts +2 -2
  36. package/dist/index.d.ts.map +1 -1
  37. package/dist/index.js +1 -1
  38. package/dist/index.js.map +1 -1
  39. package/dist/plugins/i18n/validate.d.ts +0 -1
  40. package/dist/plugins/i18n/validate.d.ts.map +1 -1
  41. package/dist/plugins/i18n/validate.js +35 -83
  42. package/dist/plugins/i18n/validate.js.map +1 -1
  43. package/dist/src/core/frontend_app/build.d.ts.map +1 -1
  44. package/dist/src/core/frontend_app/build.js +15 -27
  45. package/dist/src/core/frontend_app/build.js.map +1 -1
  46. package/dist/src/core/frontend_app/config.d.ts.map +1 -1
  47. package/dist/src/core/frontend_app/config.js +7 -10
  48. package/dist/src/core/frontend_app/config.js.map +1 -1
  49. package/dist/src/core/frontend_app/defaults.d.ts +7 -1
  50. package/dist/src/core/frontend_app/defaults.d.ts.map +1 -1
  51. package/dist/src/core/frontend_app/defaults.js +18 -1
  52. package/dist/src/core/frontend_app/defaults.js.map +1 -1
  53. package/dist/src/core/frontend_app/global.d.ts +11 -0
  54. package/dist/src/core/frontend_app/global.d.ts.map +1 -0
  55. package/dist/src/core/frontend_app/global.js +36 -0
  56. package/dist/src/core/frontend_app/global.js.map +1 -0
  57. package/dist/src/core/frontend_app/index.d.ts +4 -2
  58. package/dist/src/core/frontend_app/index.d.ts.map +1 -1
  59. package/dist/src/core/frontend_app/index.js +4 -2
  60. package/dist/src/core/frontend_app/index.js.map +1 -1
  61. package/dist/src/core/frontend_app/node_modules.d.ts +4 -0
  62. package/dist/src/core/frontend_app/node_modules.d.ts.map +1 -0
  63. package/dist/src/core/frontend_app/node_modules.js +25 -0
  64. package/dist/src/core/frontend_app/node_modules.js.map +1 -0
  65. package/dist/src/core/frontend_app/runtime.d.ts.map +1 -1
  66. package/dist/src/core/frontend_app/runtime.js +40 -6
  67. package/dist/src/core/frontend_app/runtime.js.map +1 -1
  68. package/dist/src/core/frontend_app/ssr.d.ts +5 -4
  69. package/dist/src/core/frontend_app/ssr.d.ts.map +1 -1
  70. package/dist/src/core/frontend_app/ssr.js +36 -16
  71. package/dist/src/core/frontend_app/ssr.js.map +1 -1
  72. package/dist/src/core/frontend_app/static.d.ts.map +1 -1
  73. package/dist/src/core/frontend_app/static.js +20 -12
  74. package/dist/src/core/frontend_app/static.js.map +1 -1
  75. package/dist/src/index.d.ts +2 -2
  76. package/dist/src/index.d.ts.map +1 -1
  77. package/dist/src/index.js +1 -1
  78. package/dist/src/index.js.map +1 -1
  79. package/dist/src/plugins/i18n/validate.d.ts +0 -1
  80. package/dist/src/plugins/i18n/validate.d.ts.map +1 -1
  81. package/dist/src/plugins/i18n/validate.js +35 -83
  82. package/dist/src/plugins/i18n/validate.js.map +1 -1
  83. package/dist/src/types/frontend_app.d.ts +47 -18
  84. package/dist/src/types/frontend_app.d.ts.map +1 -1
  85. package/dist/src/types.d.ts +1 -1
  86. package/dist/src/types.d.ts.map +1 -1
  87. package/dist/types/frontend_app.d.ts +47 -18
  88. package/dist/types/frontend_app.d.ts.map +1 -1
  89. package/dist/types.d.ts +1 -1
  90. package/dist/types.d.ts.map +1 -1
  91. package/package.json +6 -4
  92. package/dist/plugins/i18n/parse.d.ts +0 -8
  93. package/dist/plugins/i18n/parse.d.ts.map +0 -1
  94. package/dist/plugins/i18n/parse.js +0 -162
  95. package/dist/plugins/i18n/parse.js.map +0 -1
  96. package/dist/src/plugins/i18n/parse.d.ts +0 -8
  97. package/dist/src/plugins/i18n/parse.d.ts.map +0 -1
  98. package/dist/src/plugins/i18n/parse.js +0 -162
  99. package/dist/src/plugins/i18n/parse.js.map +0 -1
@@ -1,8 +0,0 @@
1
- type MessageDictionary = {
2
- [key: string]: string | MessageDictionary;
3
- };
4
- declare function parseMessagesSource(source: string, filePath: string): MessageDictionary;
5
- declare function flattenMessageKeys(messages: MessageDictionary): string[];
6
- export { flattenMessageKeys, parseMessagesSource, };
7
- export type { MessageDictionary, };
8
- //# sourceMappingURL=parse.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../../src/plugins/i18n/parse.ts"],"names":[],"mappings":"AAAA,KAAK,iBAAiB,GAAG;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,iBAAiB,CAAC;CAC3C,CAAC;AAiJF,iBAAS,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,iBAAiB,CAEhF;AAED,iBAAS,kBAAkB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,EAAE,CAIjE;AAaD,OAAO,EACL,kBAAkB,EAClB,mBAAmB,GACpB,CAAC;AACF,YAAY,EACV,iBAAiB,GAClB,CAAC"}
@@ -1,162 +0,0 @@
1
- class MessageFileParser {
2
- constructor(source, filePath) {
3
- this.source = source;
4
- this.filePath = filePath;
5
- this.index = 0;
6
- }
7
- parse() {
8
- this.index = this.findMessagesObjectStart();
9
- return this.readObject();
10
- }
11
- findMessagesObjectStart() {
12
- const match = /\bexport\s+default\s+defineMessages\s*\(/u.exec(this.source);
13
- if (!match)
14
- this.fail("expected default export defineMessages({...})");
15
- const objectStart = this.source.indexOf("{", match.index + match[0].length);
16
- if (objectStart === -1)
17
- this.fail("expected messages object literal");
18
- return objectStart;
19
- }
20
- readObject() {
21
- const messages = {};
22
- this.expect("{");
23
- this.skipTrivia();
24
- while (!this.consume("}")) {
25
- const key = this.readKey();
26
- this.skipTrivia();
27
- this.expect(":");
28
- messages[key] = this.readValue();
29
- this.skipTrivia();
30
- if (this.consume(",")) {
31
- this.skipTrivia();
32
- continue;
33
- }
34
- if (this.peek() !== "}")
35
- this.fail("expected comma or closing brace");
36
- }
37
- return messages;
38
- }
39
- readValue() {
40
- this.skipTrivia();
41
- const char = this.peek();
42
- if (char === "\"" || char === "'")
43
- return this.readQuotedString();
44
- if (char === "`")
45
- return this.readTemplateString();
46
- if (char === "{")
47
- return this.readObject();
48
- this.fail("expected string or nested messages object");
49
- }
50
- readKey() {
51
- this.skipTrivia();
52
- const char = this.peek();
53
- if (char === "\"" || char === "'")
54
- return this.readQuotedString();
55
- const match = /^[$A-Za-z_][$A-Za-z0-9_]*/u.exec(this.source.slice(this.index));
56
- if (match) {
57
- this.index += match[0].length;
58
- return match[0];
59
- }
60
- const numeric = /^[0-9]+/u.exec(this.source.slice(this.index));
61
- if (numeric) {
62
- this.index += numeric[0].length;
63
- return numeric[0];
64
- }
65
- this.fail("expected property key");
66
- }
67
- readQuotedString() {
68
- const quote = this.source[this.index];
69
- this.index += 1;
70
- let value = "";
71
- while (this.index < this.source.length) {
72
- const char = this.source[this.index++];
73
- if (char === quote)
74
- return value;
75
- if (char === "\\") {
76
- value += char;
77
- if (this.index < this.source.length)
78
- value += this.source[this.index++];
79
- continue;
80
- }
81
- value += char;
82
- }
83
- this.fail("unterminated string literal");
84
- }
85
- readTemplateString() {
86
- this.index += 1;
87
- let value = "";
88
- while (this.index < this.source.length) {
89
- const char = this.source[this.index++];
90
- if (char === "`")
91
- return value;
92
- if (char === "$" && this.peek() === "{")
93
- this.fail("template expressions are not supported");
94
- if (char === "\\") {
95
- value += char;
96
- if (this.index < this.source.length)
97
- value += this.source[this.index++];
98
- continue;
99
- }
100
- value += char;
101
- }
102
- this.fail("unterminated template literal");
103
- }
104
- skipTrivia() {
105
- while (this.index < this.source.length) {
106
- if (/\s/u.test(this.peek())) {
107
- this.index += 1;
108
- continue;
109
- }
110
- if (this.consume("//")) {
111
- while (this.index < this.source.length && this.peek() !== "\n")
112
- this.index += 1;
113
- continue;
114
- }
115
- if (this.consume("/*")) {
116
- const end = this.source.indexOf("*/", this.index);
117
- if (end === -1)
118
- this.fail("unterminated block comment");
119
- this.index = end + 2;
120
- continue;
121
- }
122
- return;
123
- }
124
- }
125
- expect(value) {
126
- this.skipTrivia();
127
- if (!this.consume(value))
128
- this.fail(`expected ${value}`);
129
- }
130
- consume(value) {
131
- if (!this.source.startsWith(value, this.index))
132
- return false;
133
- this.index += value.length;
134
- return true;
135
- }
136
- peek() {
137
- return this.source[this.index] || "";
138
- }
139
- fail(message) {
140
- throw new Error(`${message} :: ${this.filePath}`);
141
- }
142
- }
143
- function parseMessagesSource(source, filePath) {
144
- return new MessageFileParser(source, filePath).parse();
145
- }
146
- function flattenMessageKeys(messages) {
147
- const keys = new Set();
148
- collectMessageKeys(messages, "", keys);
149
- return Array.from(keys).sort();
150
- }
151
- function collectMessageKeys(messages, prefix, keys) {
152
- for (const [key, value] of Object.entries(messages)) {
153
- const nextKey = prefix ? `${prefix}.${key}` : key;
154
- if (typeof value === "string") {
155
- keys.add(nextKey);
156
- continue;
157
- }
158
- collectMessageKeys(value, nextKey, keys);
159
- }
160
- }
161
- export { flattenMessageKeys, parseMessagesSource, };
162
- //# sourceMappingURL=parse.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse.js","sourceRoot":"","sources":["../../../../src/plugins/i18n/parse.ts"],"names":[],"mappings":"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"}