@vtecx/vtecxnext 2.0.1 → 2.0.2

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.
@@ -1,3 +1,4 @@
1
+ /// <reference types="node" />
1
2
  import { NextRequest } from 'next/server';
2
3
  import type { Readable } from 'node:stream';
3
4
  /**
@@ -700,6 +701,12 @@ export declare class VtecxNext {
700
701
  * @return message
701
702
  */
702
703
  putcontentBySize: (uri: string) => Promise<any>;
704
+ /**
705
+ * upload content and numbering
706
+ * @param parenturi parent key
707
+ * @return numbered key
708
+ */
709
+ postcontent: (parenturi: string) => Promise<any>;
703
710
  /**
704
711
  * delete content
705
712
  * @param uri key
package/dist/vtecxnext.js CHANGED
@@ -2781,6 +2781,36 @@ class VtecxNext {
2781
2781
  putcontentBySize = async (uri) => {
2782
2782
  return this.putcontent(uri, true);
2783
2783
  };
2784
+ /**
2785
+ * upload content and numbering
2786
+ * @param parenturi parent key
2787
+ * @return numbered key
2788
+ */
2789
+ postcontent = async (parenturi) => {
2790
+ //console.log(`[vtecxnext postcontent] start. parenturi=${parenturi} content-type:${req.headers['content-type']} content-length:${req.headers['content-length']}`)
2791
+ // キー入力値チェック
2792
+ checkUri(parenturi);
2793
+ // vte.cxへリクエスト
2794
+ const method = 'POST';
2795
+ const url = `${SERVLETPATH_PROVIDER}${parenturi}?_content`;
2796
+ //console.log(`[vtecxnext postcontent] request. url=${url}`)
2797
+ const headers = { 'Content-Type': this.req.headers.get('content-type') };
2798
+ //const buf = await buffer(this.req)
2799
+ const buf = await this.req.arrayBuffer();
2800
+ let response;
2801
+ try {
2802
+ response = await this.requestVtecx(method, url, buf, headers);
2803
+ }
2804
+ catch (e) {
2805
+ throw newFetchError(e, true);
2806
+ }
2807
+ //console.log(`[vtecxnext postcontent] response. status=${response.status}`)
2808
+ // vte.cxからのset-cookieを転記
2809
+ this.setCookie(response);
2810
+ // レスポンスのエラーチェック
2811
+ await checkVtecxResponse(response);
2812
+ return await getJson(response);
2813
+ };
2784
2814
  /**
2785
2815
  * delete content
2786
2816
  * @param uri key
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vtecx/vtecxnext",
3
- "version": "2.0.1",
3
+ "version": "2.0.2",
4
4
  "description": "vte.cx Next.js api",
5
5
  "main": "dist/index.js",
6
6
  "files": [
@@ -22,13 +22,13 @@
22
22
  },
23
23
  "homepage": "https://github.com/reflexworks/vtecxnext#readme",
24
24
  "devDependencies": {
25
- "@types/node": "^20.8.2",
26
- "@types/sqlstring": "^2.3.0",
27
- "ts-node": "^10.9.1",
28
- "typescript": "^5.2.2"
25
+ "@types/node": "^20.11.14",
26
+ "@types/sqlstring": "^2.3.2",
27
+ "ts-node": "^10.9.2",
28
+ "typescript": "^5.3.3"
29
29
  },
30
30
  "dependencies": {
31
- "next": "^13.5.4",
32
- "sqlstring": "^2.3.3"
31
+ "next": "^14.1.0",
32
+ "sqlstring": "^2.3.2"
33
33
  }
34
34
  }