@monkeyplus/flow 3.0.2 → 3.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/generate.d.ts +1 -1
- package/dist/generate.js +37 -22
- package/dist/generate.js.map +1 -1
- package/dist/helper.js +16 -23
- package/dist/helper.js.map +1 -1
- package/dist/index.d.ts +7 -11
- package/dist/index.js +158 -112
- package/dist/index.js.map +1 -1
- package/dist/pages.d.ts +2 -1
- package/dist/pages.js +7 -2
- package/dist/pages.js.map +1 -1
- package/package.json +3 -3
- package/types/flow.d.ts +47 -11
- package/types/index.d.ts +13 -2
- package/types/interfaces.d.ts +16 -0
- package/dist/index copy.d.ts +0 -0
- package/dist/index copy.js +0 -315
- package/dist/index copy.js.map +0 -1
- package/dist/lib/index.d.ts +0 -0
- package/dist/lib/index.js +0 -24
- package/dist/lib/index.js.map +0 -1
- package/dist/lib/pages/index copy.d.ts +0 -0
- package/dist/lib/pages/index copy.js +0 -117
- package/dist/lib/pages/index copy.js.map +0 -1
- package/dist/lib/pages/index.d.ts +0 -0
- package/dist/lib/pages/index.js +0 -117
- package/dist/lib/pages/index.js.map +0 -1
- package/dist/lib/pages/pre.d.ts +0 -0
- package/dist/lib/pages/pre.js +0 -127
- package/dist/lib/pages/pre.js.map +0 -1
- package/dist/lib/utils/index.d.ts +0 -0
- package/dist/lib/utils/index.js +0 -27
- package/dist/lib/utils/index.js.map +0 -1
- package/dist/routes.json +0 -0
package/dist/generate.d.ts
CHANGED
|
@@ -5,6 +5,6 @@ interface Options {
|
|
|
5
5
|
getPath: any;
|
|
6
6
|
}
|
|
7
7
|
export declare const registerGenerate: (server: Server, { outputDir, getPath }: Options) => {
|
|
8
|
-
runGenerate: ({ assets, ommitAssets }: Flow.GenerateOptions) => Promise<
|
|
8
|
+
runGenerate: ({ assets, ommitAssets }: Flow.GenerateOptions) => Promise<boolean>;
|
|
9
9
|
};
|
|
10
10
|
export {};
|
package/dist/generate.js
CHANGED
|
@@ -108,34 +108,49 @@ const registerGenerate = (server, { outputDir, getPath }) => {
|
|
|
108
108
|
for (const file of dirFiles) {
|
|
109
109
|
const pathFile = path_1.default.join(asset.relativeTo, dir, file);
|
|
110
110
|
// const nameFile = path.posix.join()
|
|
111
|
-
const
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
111
|
+
const ext = path_1.default.extname(pathFile);
|
|
112
|
+
// eslint-disable-next-line no-extra-boolean-cast
|
|
113
|
+
if (!!ext) {
|
|
114
|
+
const pathRoute = path_1.default.posix.join('/', asset.prefix, dir, file);
|
|
115
|
+
const pathRouteOverride = (_a = asset.override) === null || _a === void 0 ? void 0 : _a[pathRoute];
|
|
116
|
+
server.route({
|
|
117
|
+
path: pathRouteOverride || pathRoute,
|
|
118
|
+
method: 'get',
|
|
119
|
+
options: {
|
|
120
|
+
plugins: {
|
|
121
|
+
generate: {
|
|
122
|
+
isAsset: true,
|
|
123
|
+
file: pathFile,
|
|
124
|
+
type: asset.type,
|
|
125
|
+
isRemane: !!pathRouteOverride
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
},
|
|
129
|
+
handler: {
|
|
130
|
+
file: {
|
|
131
|
+
path: pathFile,
|
|
132
|
+
confine: false
|
|
123
133
|
}
|
|
124
134
|
}
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
else {
|
|
138
|
+
injectAssets([
|
|
139
|
+
{
|
|
140
|
+
dirs: [path_1.default.posix.join(dir, file)],
|
|
141
|
+
prefix: asset.prefix,
|
|
142
|
+
relativeTo: asset.relativeTo,
|
|
143
|
+
override: asset.override,
|
|
144
|
+
type: 'images'
|
|
130
145
|
}
|
|
131
|
-
|
|
132
|
-
}
|
|
146
|
+
]);
|
|
147
|
+
}
|
|
133
148
|
}
|
|
134
149
|
}
|
|
135
150
|
}
|
|
136
151
|
};
|
|
137
152
|
const runGenerate = async ({ assets, ommitAssets }) => {
|
|
138
|
-
const _assetsApp = [...Object.values(server.app.generate.folders)];
|
|
153
|
+
const _assetsApp = [...Object.values(server.app.flow.generate.folders)];
|
|
139
154
|
// console.log(_assetsApp);
|
|
140
155
|
const _assets = [...(assets || []), ..._assetsApp];
|
|
141
156
|
// const _extendAssets = [...(Object.values(server.app.))]
|
|
@@ -157,7 +172,7 @@ const registerGenerate = (server, { outputDir, getPath }) => {
|
|
|
157
172
|
const groups = R.groupBy((file) => {
|
|
158
173
|
return file.type;
|
|
159
174
|
}, files);
|
|
160
|
-
console.log(groups);
|
|
175
|
+
// console.log(groups);
|
|
161
176
|
for (const type in groups) {
|
|
162
177
|
utils_1.logger.success('%i %s generated', groups[type].length, type);
|
|
163
178
|
}
|
|
@@ -166,7 +181,7 @@ const registerGenerate = (server, { outputDir, getPath }) => {
|
|
|
166
181
|
catch (error) {
|
|
167
182
|
utils_1.logger.error(error);
|
|
168
183
|
await fs_extra_1.default.remove(dirOutut);
|
|
169
|
-
|
|
184
|
+
throw new Error(error);
|
|
170
185
|
}
|
|
171
186
|
};
|
|
172
187
|
return { runGenerate };
|
package/dist/generate.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../src/generate.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../src/generate.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AACA,wDAA0B;AAC1B,gDAAwB;AACxB,yCAA2B;AAC3B,yCAAiC;AAO1B,MAAM,gBAAgB,GAAG,CAC9B,MAAc,EACd,EAAE,SAAS,EAAE,OAAO,EAAW,EAC/B,EAAE;IACF,EAAE;IAEF,MAAM,YAAY,GAAG,GAAG,EAAE;;QACxB,MAAM,KAAK,GAAoC,EAAE,CAAC;QAElD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACtD,6EAA6E;YAC7E,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;SAC3B;QACD,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;QAE9B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;YAC1B,EAAE;YACF,MAAM,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAClD,0BAA0B;YAC1B,MAAM,QAAQ,GAAG,MAAA,KAAK,CAAC,QAAQ,CAAC,OAAO,0CAAE,QAAQ,CAAC;YAElD,IAAI,CAAC,SAAS,IAAI,QAAQ,EAAE;gBAC1B,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;oBACtB,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC;iBAC9B;aACF;SACF;QAED,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,KAAK,EAAE,IAAY,EAAE,OAAgB,EAAE,EAAE;QACzD,EAAE;QACF,qBAAqB;QAErB,MAAM,kBAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC1B,MAAM,kBAAE,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5C,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,KAAK,EACtB,GAAW,EACX,GAAW,EACX,GAAoB,EACoB,EAAE;QAC1C,oBAAoB;QAEpB,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,EAAE;YACF,MAAM,OAAO,GAAG,cAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAClC,MAAM,kBAAE,CAAC,SAAS,CAAC,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;YAC5C,MAAM,IAAI,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACzC,MAAM,kBAAE,CAAC,SAAS,CAAC,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;YAC9C,yBAAyB;YACzB,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,QAAQ,EAAE,GAAG,EAAE,CAAC;SAC5C;aAAM;YACL,MAAM,CAAC,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC;gBAC5B,GAAG;gBACH,MAAM,EAAE,KAAK;aACd,CAAC,CAAC;YACH,IAAI,IAAI,GAAG,EAAE,CAAC;YACd,IAAI,OAAO,GAAG,KAAK,SAAS,EAAE;gBAC5B,IAAI,GAAG,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBAC3B,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;gBACjC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC;aAChC;iBAAM,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;gBAClC,IAAI,GAAG,KAAK,OAAO,EAAE;oBACnB,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC;oBACpC,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,GAAG,OAAO,CAAC;oBAC9D,IAAI,GAAG,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;oBAChC,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;oBACjC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;iBAC9B;qBAAM;oBACL,EAAE;oBACF,mCAAmC;oBACnC,oCAAoC;iBACrC;aACF;YACD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;SAC/B;QACD,uBAAuB;QAEvB,oCAAoC;QACpC,6DAA6D;IAC/D,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,CAAC,MAAwB,EAAE,EAAE;;QAChD,EAAE;QACF,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;YAC1B,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;YACxB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;gBACtB,MAAM,QAAQ,GAAG,kBAAE,CAAC,WAAW,CAAC,cAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC;gBAClE,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE;oBAC3B,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;oBACxD,qCAAqC;oBAErC,MAAM,GAAG,GAAG,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;oBACnC,iDAAiD;oBACjD,IAAI,CAAC,CAAC,GAAG,EAAE;wBACT,MAAM,SAAS,GAAG,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;wBAChE,MAAM,iBAAiB,GAAG,MAAA,KAAK,CAAC,QAAQ,0CAAG,SAAS,CAAC,CAAC;wBACtD,MAAM,CAAC,KAAK,CAAC;4BACX,IAAI,EAAE,iBAAiB,IAAI,SAAS;4BACpC,MAAM,EAAE,KAAK;4BACb,OAAO,EAAE;gCACP,OAAO,EAAE;oCACP,QAAQ,EAAE;wCACR,OAAO,EAAE,IAAI;wCACb,IAAI,EAAE,QAAQ;wCACd,IAAI,EAAE,KAAK,CAAC,IAAI;wCAChB,QAAQ,EAAE,CAAC,CAAC,iBAAiB;qCAC9B;iCACF;6BACF;4BACD,OAAO,EAAE;gCACP,IAAI,EAAE;oCACJ,IAAI,EAAE,QAAQ;oCACd,OAAO,EAAE,KAAK;iCACf;6BACF;yBACF,CAAC,CAAC;qBACJ;yBAAM;wBACL,YAAY,CAAC;4BACX;gCACE,IAAI,EAAE,CAAC,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;gCAClC,MAAM,EAAE,KAAK,CAAC,MAAM;gCACpB,UAAU,EAAE,KAAK,CAAC,UAAU;gCAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;gCACxB,IAAI,EAAE,QAAQ;6BACf;yBACF,CAAC,CAAC;qBACJ;iBACF;aACF;SACF;IACH,CAAC,CAAC;IACF,MAAM,WAAW,GAAG,KAAK,EAAE,EAAE,MAAM,EAAE,WAAW,EAAwB,EAAE,EAAE;QAC1E,MAAM,UAAU,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;QACxE,2BAA2B;QAE3B,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,GAAG,UAAU,CAAC,CAAC;QACnD,0DAA0D;QAC1D,YAAY,CAAC,OAAO,CAAC,CAAC;QACtB,MAAM,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;QACpC,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QACpC,MAAM,KAAK,GAAG,YAAY,EAAE,CAAC;QAC7B,MAAM,SAAS,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACnC,MAAM,KAAK,GAAG,WAAW,IAAI,EAAE,CAAC;QAEhC,IAAI;YACF,MAAM,kBAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC1B,MAAM,kBAAE,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YACnC,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE;gBAC5B,MAAM,kBAAE,CAAC,MAAM,CAAC,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;aAChD;YACD,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAC7B,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;gBACxB,OAAO,MAAM,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;YAC1C,CAAC,CAAC,CACH,CAAC;YAEF,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBAChC,OAAO,IAAI,CAAC,IAAI,CAAC;YACnB,CAAC,EAAE,KAAK,CAAC,CAAC;YACV,uBAAuB;YAEvB,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE;gBACzB,cAAM,CAAC,OAAO,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;aAC9D;YAED,OAAO,IAAI,CAAC;SACb;QAAC,OAAO,KAAK,EAAE;YACd,cAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACpB,MAAM,kBAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC;SACxB;IACH,CAAC,CAAC;IAEF,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,iBAAiB;IACjB,wBAAwB;IACxB,mBAAmB;IACnB,8BAA8B;IAE9B,MAAM;IACN,MAAM;AACR,CAAC,CAAC;AAzLW,QAAA,gBAAgB,oBAyL3B"}
|
package/dist/helper.js
CHANGED
|
@@ -18,17 +18,12 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
18
18
|
__setModuleDefault(result, mod);
|
|
19
19
|
return result;
|
|
20
20
|
};
|
|
21
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
22
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
23
|
-
};
|
|
24
21
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
22
|
exports.handlerPage = void 0;
|
|
26
|
-
const utils_1 = require("./utils/index");
|
|
27
23
|
const R = __importStar(require("ramda"));
|
|
28
|
-
const path_1 = __importDefault(require("path"));
|
|
29
24
|
const handlerPage = async (req, h) => {
|
|
30
25
|
const { configs } = req.server.plugins.flow;
|
|
31
|
-
const { flow
|
|
26
|
+
const { flow } = req.route.settings.app;
|
|
32
27
|
// console.log(req.server.app.flow.urls);
|
|
33
28
|
// console.log(req.app);
|
|
34
29
|
const local = {};
|
|
@@ -38,31 +33,29 @@ const handlerPage = async (req, h) => {
|
|
|
38
33
|
...R.pick(['name', 'locale', 'level', 'template', 'bundle'], flow)
|
|
39
34
|
};
|
|
40
35
|
const dataContent = {};
|
|
41
|
-
if (req.params.url) {
|
|
42
|
-
|
|
43
|
-
try {
|
|
44
|
-
// @ts-ignore
|
|
45
|
-
const data = await (req === null || req === void 0 ? void 0 : req.$content(pathData).fetch());
|
|
46
|
-
Object.assign(dataContent, data);
|
|
47
|
-
}
|
|
48
|
-
catch (error) {
|
|
49
|
-
utils_1.logger.warn(error);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
36
|
+
// if (req.params.url) {
|
|
37
|
+
// }
|
|
52
38
|
const utils = {
|
|
53
|
-
...req.
|
|
39
|
+
...req.plugins.flow.utils,
|
|
54
40
|
getLocalUrl: (name) => {
|
|
55
41
|
return h.getUrl(flow.locale, name);
|
|
56
42
|
},
|
|
57
43
|
getUrl: h.getUrl
|
|
58
44
|
};
|
|
59
|
-
const contextMethod = {
|
|
45
|
+
const contextMethod = {
|
|
46
|
+
req,
|
|
47
|
+
h,
|
|
48
|
+
page,
|
|
49
|
+
extensions: Object.freeze(req.plugins.flow.extensions),
|
|
50
|
+
global: Object.freeze(req.plugins.flow.global),
|
|
51
|
+
utils: Object.freeze(utils)
|
|
52
|
+
};
|
|
60
53
|
const seo = {
|
|
61
54
|
...flow.seo,
|
|
62
55
|
...req.pre.seo,
|
|
63
56
|
url: configs.url,
|
|
64
|
-
pageUrl: `${configs.url}${page.path}
|
|
65
|
-
utils
|
|
57
|
+
pageUrl: `${configs.url}${page.path}`
|
|
58
|
+
// utils
|
|
66
59
|
};
|
|
67
60
|
if (flow.runSharedContext) {
|
|
68
61
|
const _context = await flow.runSharedContext(contextMethod);
|
|
@@ -78,11 +71,11 @@ const handlerPage = async (req, h) => {
|
|
|
78
71
|
bundle: flow.bundle,
|
|
79
72
|
template: flow.template
|
|
80
73
|
},
|
|
81
|
-
context: { ...local, ...req.
|
|
74
|
+
context: { ...local, ...req.plugins.flow.local },
|
|
82
75
|
seo,
|
|
83
76
|
page,
|
|
84
77
|
utils: {},
|
|
85
|
-
global: { ...global, ...req.
|
|
78
|
+
global: { ...global, ...req.plugins.flow.global }
|
|
86
79
|
};
|
|
87
80
|
if (req.query.context) {
|
|
88
81
|
context.utils = Object.keys(utils);
|
package/dist/helper.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helper.js","sourceRoot":"","sources":["../src/helper.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"helper.js","sourceRoot":"","sources":["../src/helper.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,27 +1,22 @@
|
|
|
1
1
|
import { Plugin } from '@hapi/hapi';
|
|
2
2
|
import { PageInfo } from '@monkeyplus/flow-core';
|
|
3
|
-
import { Flow, FlowOptions, GenerateOptions,
|
|
4
|
-
|
|
5
|
-
export {
|
|
3
|
+
import { Flow, FlowOptions, GenerateOptions, FlowExtensions } from "../types/index";
|
|
4
|
+
import { definePage } from "./pages";
|
|
5
|
+
export { definePage };
|
|
6
|
+
export { RunDefinePage, OptionsHapiPage, RunPreDefinePage, FlowOptions, GenerateFolder, Extension, Flow, FlowExtensions, FlowPluginExtension, FlowPluginUtils, FlowPluginGlobal, FlowPluginLocal } from "../types/index";
|
|
6
7
|
export declare const plugin: Plugin<FlowOptions>;
|
|
7
8
|
declare module '@hapi/hapi' {
|
|
8
9
|
interface ServerApplicationState {
|
|
9
10
|
flow: Flow.AppState;
|
|
10
|
-
generate: {
|
|
11
|
-
folders: Record<string, GenerateFolder>;
|
|
12
|
-
};
|
|
13
11
|
}
|
|
14
12
|
interface RouteOptionsApp {
|
|
15
13
|
flow: PageInfo;
|
|
16
|
-
content?: string;
|
|
17
14
|
}
|
|
18
15
|
interface HandlerDecorations {
|
|
19
16
|
flow?: Flow.HandlerOptions;
|
|
20
17
|
}
|
|
21
|
-
interface
|
|
22
|
-
|
|
23
|
-
global: any;
|
|
24
|
-
utils: any;
|
|
18
|
+
interface PluginsStates {
|
|
19
|
+
flow: Flow.PluginState;
|
|
25
20
|
}
|
|
26
21
|
interface ResponseToolkit {
|
|
27
22
|
getUrl: (locale: string, name: string) => string;
|
|
@@ -29,6 +24,7 @@ declare module '@hapi/hapi' {
|
|
|
29
24
|
interface PluginSpecificConfiguration {
|
|
30
25
|
flow?: {
|
|
31
26
|
proxy?: boolean;
|
|
27
|
+
extensions?: FlowExtensions;
|
|
32
28
|
};
|
|
33
29
|
generate?: GenerateOptions;
|
|
34
30
|
}
|
package/dist/index.js
CHANGED
|
@@ -12,8 +12,7 @@ const helper_1 = require("./helper");
|
|
|
12
12
|
const path_1 = __importDefault(require("path"));
|
|
13
13
|
const generate_1 = require("./generate");
|
|
14
14
|
const pages_1 = require("./pages");
|
|
15
|
-
|
|
16
|
-
Object.defineProperty(exports, "definePage", { enumerable: true, get: function () { return pages_2.definePage; } });
|
|
15
|
+
Object.defineProperty(exports, "definePage", { enumerable: true, get: function () { return pages_1.definePage; } });
|
|
17
16
|
// const logger = require('consola').withScope('@monkeyplus/flow');
|
|
18
17
|
const isProduction = process.env.NODE_ENV === 'production';
|
|
19
18
|
exports.plugin = {
|
|
@@ -24,24 +23,78 @@ exports.plugin = {
|
|
|
24
23
|
const config = utils_1.getConfigs(server, _options);
|
|
25
24
|
// console.log(config);
|
|
26
25
|
server.expose('configs', config);
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
26
|
+
/**
|
|
27
|
+
*
|
|
28
|
+
*/
|
|
29
|
+
const state = {
|
|
30
|
+
redirects: {},
|
|
31
|
+
pages: {},
|
|
32
|
+
truncates: {},
|
|
33
|
+
urls: {},
|
|
34
|
+
dynamicPages: {},
|
|
35
|
+
extensions: {},
|
|
36
|
+
generate: {
|
|
37
|
+
folders: {}
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
// const stateExtension: any = {};
|
|
41
|
+
// const stateGenerate = {
|
|
42
|
+
// folders: {}
|
|
43
|
+
// };
|
|
44
|
+
// const dynamicContent: Flow.DynamicContent = {};
|
|
45
|
+
server.app.flow = state;
|
|
46
|
+
// server.app.generate = stateGenerate;
|
|
47
|
+
/**
|
|
48
|
+
*
|
|
49
|
+
*/
|
|
50
|
+
const helpers = {
|
|
51
|
+
addRedirect: (key, urlPath) => {
|
|
52
|
+
state.redirects[key] = urlPath;
|
|
53
|
+
},
|
|
54
|
+
addUrl: (key, url) => {
|
|
55
|
+
if (/\{url?(.+)\}/.test(url.url)) {
|
|
56
|
+
return void 0;
|
|
57
|
+
}
|
|
58
|
+
if (state.urls[key]) {
|
|
59
|
+
utils_1.logger.warn('The namePage %s already exist', state.urls[key]);
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
state.urls[key] = url;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
/**
|
|
67
|
+
*
|
|
68
|
+
*/
|
|
69
|
+
server.ext('onRequest', (req, h) => {
|
|
70
|
+
/**
|
|
71
|
+
* Initize states route
|
|
72
|
+
*/
|
|
73
|
+
req.plugins.flow = {
|
|
74
|
+
global: {},
|
|
75
|
+
local: {},
|
|
76
|
+
//@ts-ignore
|
|
77
|
+
utils: {},
|
|
78
|
+
//@ts-ignore
|
|
79
|
+
extensions: {}
|
|
80
|
+
};
|
|
81
|
+
const pathRedirect = state.redirects[req.path];
|
|
82
|
+
if (state.truncates[req.path]) {
|
|
83
|
+
return h.redirect('/').takeover();
|
|
84
|
+
}
|
|
85
|
+
if (pathRedirect) {
|
|
86
|
+
return h.redirect(pathRedirect).takeover();
|
|
87
|
+
}
|
|
88
|
+
return h.continue;
|
|
30
89
|
});
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
const pages = {};
|
|
35
|
-
const truncates = {};
|
|
36
|
-
const dynamicContent = {};
|
|
37
|
-
const dynamicPages = {};
|
|
38
|
-
server.app.flow = { redirects, urls, pages, truncates, dynamicPages };
|
|
39
|
-
server.app.generate = { folders: {} };
|
|
90
|
+
/**
|
|
91
|
+
*
|
|
92
|
+
*/
|
|
40
93
|
server.decorate('toolkit', 'getUrl', (_locale, _name) => {
|
|
41
94
|
// console.log('locale: %s, name:%s', _locale, _name);
|
|
42
95
|
try {
|
|
43
96
|
const pageName = path_1.default.posix.join(_locale, _name);
|
|
44
|
-
const page = urls[pageName];
|
|
97
|
+
const page = state.urls[pageName];
|
|
45
98
|
if (page) {
|
|
46
99
|
return page.url;
|
|
47
100
|
}
|
|
@@ -55,55 +108,27 @@ exports.plugin = {
|
|
|
55
108
|
return '/';
|
|
56
109
|
}
|
|
57
110
|
});
|
|
58
|
-
server.ext('onRequest', (req, h) => {
|
|
59
|
-
// console.log(req.path);
|
|
60
|
-
// console.log(req.app);
|
|
61
|
-
req.app.global = {};
|
|
62
|
-
req.app.local = {};
|
|
63
|
-
req.app.utils = {};
|
|
64
|
-
// req.app.
|
|
65
|
-
const pathRedirect = redirects[req.path];
|
|
66
|
-
if (truncates[req.path]) {
|
|
67
|
-
return h.redirect('/').takeover();
|
|
68
|
-
}
|
|
69
|
-
if (pathRedirect) {
|
|
70
|
-
return h.redirect(pathRedirect).takeover();
|
|
71
|
-
}
|
|
72
|
-
return h.continue;
|
|
73
|
-
});
|
|
74
|
-
const addRedirect = (key, urlPath) => {
|
|
75
|
-
redirects[key] = urlPath;
|
|
76
|
-
};
|
|
77
|
-
const addUrl = (key, url) => {
|
|
78
|
-
// console.log(key, urlPath);
|
|
79
|
-
if (/\{url?(.+)\}/.test(url.url)) {
|
|
80
|
-
return 0;
|
|
81
|
-
}
|
|
82
|
-
if (urls[key]) {
|
|
83
|
-
utils_1.logger.warn('The namePage %s already exist', urls[key]);
|
|
84
|
-
}
|
|
85
|
-
else {
|
|
86
|
-
urls[key] = url;
|
|
87
|
-
}
|
|
88
|
-
// console.log(urls);
|
|
89
|
-
};
|
|
90
111
|
const flowDecorate = (route, options) => {
|
|
91
|
-
var _a, _b, _c;
|
|
92
|
-
// route.settings.
|
|
112
|
+
var _a, _b, _c, _d, _e, _f;
|
|
113
|
+
// route.settings.
|
|
114
|
+
// route.settings.
|
|
115
|
+
// route.settings.
|
|
93
116
|
const { plugins, app } = route.settings;
|
|
94
117
|
Object.assign(plugins, { generate: '.html' });
|
|
95
118
|
const flow = (_a = route.settings.app) === null || _a === void 0 ? void 0 : _a.flow;
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
addUrl(flow.name, {
|
|
119
|
+
const runCommons = (pageInfo) => {
|
|
120
|
+
helpers.addUrl(pageInfo.name, {
|
|
99
121
|
url: route.path,
|
|
100
|
-
locale:
|
|
101
|
-
name:
|
|
102
|
-
originalName:
|
|
122
|
+
locale: pageInfo.locale,
|
|
123
|
+
name: pageInfo.name,
|
|
124
|
+
originalName: pageInfo.originName
|
|
103
125
|
});
|
|
104
|
-
if (
|
|
105
|
-
addRedirect(
|
|
126
|
+
if (pageInfo.redirect) {
|
|
127
|
+
helpers.addRedirect(pageInfo.redirect, route.path);
|
|
106
128
|
}
|
|
129
|
+
};
|
|
130
|
+
if (flow) {
|
|
131
|
+
runCommons(flow);
|
|
107
132
|
}
|
|
108
133
|
else {
|
|
109
134
|
const routes = flow_core_1.definePages({
|
|
@@ -121,53 +146,51 @@ exports.plugin = {
|
|
|
121
146
|
{ locale: options.locale || config.locale, url: route.path }
|
|
122
147
|
]);
|
|
123
148
|
const pageInfo = routes[0];
|
|
124
|
-
|
|
125
|
-
addRedirect(pageInfo.redirect, route.path);
|
|
126
|
-
}
|
|
127
|
-
addUrl(pageInfo.name, {
|
|
128
|
-
url: route.path,
|
|
129
|
-
locale: pageInfo.locale,
|
|
130
|
-
name: pageInfo.name,
|
|
131
|
-
originalName: pageInfo.originName
|
|
132
|
-
});
|
|
149
|
+
runCommons(pageInfo);
|
|
133
150
|
Object.assign(app, { flow: pageInfo, content: options.content });
|
|
134
151
|
}
|
|
152
|
+
/**
|
|
153
|
+
*
|
|
154
|
+
*/
|
|
135
155
|
if (isProduction && !((_c = (_b = route.settings.plugins) === null || _b === void 0 ? void 0 : _b.flow) === null || _c === void 0 ? void 0 : _c.proxy)) {
|
|
136
|
-
truncates[route.path] = route.path;
|
|
156
|
+
state.truncates[route.path] = route.path;
|
|
137
157
|
}
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
158
|
+
const extensions = ((_d = plugins === null || plugins === void 0 ? void 0 : plugins.flow) === null || _d === void 0 ? void 0 : _d.extensions) || {};
|
|
159
|
+
for (const extension in extensions) {
|
|
160
|
+
// @ts-ignore
|
|
161
|
+
const optionExtension = (_e = plugins === null || plugins === void 0 ? void 0 : plugins.flow) === null || _e === void 0 ? void 0 : _e.extensions[extension];
|
|
162
|
+
const routeMethod = (_f = state.extensions[extension]) === null || _f === void 0 ? void 0 : _f.routeMethod;
|
|
163
|
+
if (routeMethod) {
|
|
164
|
+
routeMethod({ pageInfo: app.flow, route }, optionExtension);
|
|
165
|
+
}
|
|
166
|
+
// console.log(extension, optionExtension);
|
|
143
167
|
}
|
|
168
|
+
// console.log('Extensions');
|
|
169
|
+
// if (app?.content) {
|
|
170
|
+
// dynamicContent[`${app.flow.locale}${app.content}`] = {
|
|
171
|
+
// path: route.path,
|
|
172
|
+
// page: app.flow
|
|
173
|
+
// };
|
|
174
|
+
// }
|
|
144
175
|
return isProduction
|
|
145
176
|
? (req, h) => h.file(`${config.outputDir}${route.path}.html`)
|
|
146
177
|
: helper_1.handlerPage;
|
|
147
178
|
};
|
|
148
179
|
server.decorate('handler', 'flow', flowDecorate);
|
|
180
|
+
/**
|
|
181
|
+
*
|
|
182
|
+
*/
|
|
149
183
|
const registerPages = (_pages) => {
|
|
150
184
|
//
|
|
151
185
|
for (const _route of _pages) {
|
|
152
|
-
if (pages[_route.path]) {
|
|
186
|
+
if (state.pages[_route.path]) {
|
|
153
187
|
utils_1.logger.warn('The route %s alredy exist', _route.path);
|
|
154
188
|
}
|
|
155
189
|
else {
|
|
156
|
-
pages[_route.path] = _route;
|
|
190
|
+
state.pages[_route.path] = _route;
|
|
157
191
|
}
|
|
158
192
|
}
|
|
159
193
|
};
|
|
160
|
-
const addPage = (_page) => {
|
|
161
|
-
let _pages;
|
|
162
|
-
if (typeof _page === 'function') {
|
|
163
|
-
_pages = _page(config);
|
|
164
|
-
registerPages(_pages);
|
|
165
|
-
}
|
|
166
|
-
else {
|
|
167
|
-
_pages = pages_1.definePage(_page)()(config);
|
|
168
|
-
registerPages(_pages);
|
|
169
|
-
}
|
|
170
|
-
};
|
|
171
194
|
const registerRoute = (route) => {
|
|
172
195
|
const _routes = server.table();
|
|
173
196
|
const _route = _routes.find((v) => v.path === route.path);
|
|
@@ -178,34 +201,55 @@ exports.plugin = {
|
|
|
178
201
|
server.route(route);
|
|
179
202
|
}
|
|
180
203
|
};
|
|
181
|
-
const
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
for (const contentPage of list) {
|
|
187
|
-
const singlePage = dynamicContent[key];
|
|
188
|
-
const baseUrl = singlePage.path.replace(/\/\{url?(.+)\}/, contentPage.url);
|
|
189
|
-
const name = path_1.default.posix.join(singlePage.page.name, contentPage.slug);
|
|
190
|
-
const originalName = path_1.default.posix.join(singlePage.page.originName, contentPage.slug);
|
|
191
|
-
addUrl(name, {
|
|
192
|
-
url: baseUrl,
|
|
193
|
-
locale: singlePage.page.locale,
|
|
194
|
-
name,
|
|
195
|
-
originalName
|
|
196
|
-
});
|
|
197
|
-
dRoutes.push(baseUrl);
|
|
198
|
-
}
|
|
199
|
-
dynamicPages[key] = dRoutes;
|
|
204
|
+
const addPage = (_page) => {
|
|
205
|
+
let _pages;
|
|
206
|
+
if (typeof _page === 'function') {
|
|
207
|
+
_pages = _page(config);
|
|
208
|
+
registerPages(_pages);
|
|
200
209
|
}
|
|
201
|
-
|
|
202
|
-
|
|
210
|
+
else {
|
|
211
|
+
_pages = pages_1.definePage(_page)()(config);
|
|
212
|
+
registerPages(_pages);
|
|
203
213
|
}
|
|
204
214
|
};
|
|
215
|
+
// const loadDinamicContent = async (key: string) => {
|
|
216
|
+
// interface DPage {
|
|
217
|
+
// url: string;
|
|
218
|
+
// slug: string;
|
|
219
|
+
// name?: string;
|
|
220
|
+
// }
|
|
221
|
+
// try {
|
|
222
|
+
// //@ts-ignore
|
|
223
|
+
// const list = await server.$content(key).fetch<DPage[]>();
|
|
224
|
+
// const dRoutes: string[] = [];
|
|
225
|
+
// for (const contentPage of list) {
|
|
226
|
+
// const singlePage = dynamicContent[key];
|
|
227
|
+
// const baseUrl = singlePage.path.replace(
|
|
228
|
+
// /\/\{url?(.+)\}/,
|
|
229
|
+
// contentPage.url
|
|
230
|
+
// );
|
|
231
|
+
// const name = path.posix.join(singlePage.page.name, contentPage.slug);
|
|
232
|
+
// const originalName = path.posix.join(
|
|
233
|
+
// singlePage.page.originName,
|
|
234
|
+
// contentPage.slug
|
|
235
|
+
// );
|
|
236
|
+
// helpers.addUrl(name, {
|
|
237
|
+
// url: baseUrl,
|
|
238
|
+
// locale: singlePage.page.locale,
|
|
239
|
+
// name,
|
|
240
|
+
// originalName
|
|
241
|
+
// });
|
|
242
|
+
// dRoutes.push(baseUrl);
|
|
243
|
+
// }
|
|
244
|
+
// state.dynamicPages[key] = dRoutes;
|
|
245
|
+
// } catch (error) {
|
|
246
|
+
// logger.warn(error);
|
|
247
|
+
// }
|
|
248
|
+
// };
|
|
205
249
|
const init = async () => {
|
|
206
250
|
var _a, _b, _c, _d;
|
|
207
|
-
for (const key in pages) {
|
|
208
|
-
const page = pages[key];
|
|
251
|
+
for (const key in state.pages) {
|
|
252
|
+
const page = state.pages[key];
|
|
209
253
|
if (isProduction) {
|
|
210
254
|
if ((_d = (_c = (_b = (_a = page) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.plugins) === null || _c === void 0 ? void 0 : _c.flow) === null || _d === void 0 ? void 0 : _d.proxy) {
|
|
211
255
|
registerRoute({
|
|
@@ -220,11 +264,13 @@ exports.plugin = {
|
|
|
220
264
|
registerRoute(page);
|
|
221
265
|
}
|
|
222
266
|
}
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
267
|
+
for (const key in state.extensions) {
|
|
268
|
+
const ext = state.extensions[key];
|
|
269
|
+
if (ext.initMethod) {
|
|
270
|
+
await ext.initMethod({ helpers });
|
|
271
|
+
}
|
|
226
272
|
}
|
|
227
|
-
utils_1.logger.info(`Register %s pages`, `${Object.values(urls).length}`);
|
|
273
|
+
utils_1.logger.info(`Register %s pages`, `${Object.values(state.urls).length}`);
|
|
228
274
|
};
|
|
229
275
|
const getPath = (...paths) => path_1.default.join(config.relativeTo, ...paths);
|
|
230
276
|
const { runGenerate } = generate_1.registerGenerate(server, {
|