@ibgib/core-gib 0.1.49 → 0.1.50
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/common/comment/comment-constants.d.mts +5 -0
- package/dist/common/comment/comment-constants.d.mts.map +1 -1
- package/dist/common/comment/comment-constants.mjs +5 -0
- package/dist/common/comment/comment-constants.mjs.map +1 -1
- package/dist/common/comment/comment-helper.d.mts +9 -1
- package/dist/common/comment/comment-helper.d.mts.map +1 -1
- package/dist/common/comment/comment-helper.mjs +7 -5
- package/dist/common/comment/comment-helper.mjs.map +1 -1
- package/package.json +1 -1
- package/src/common/comment/comment-constants.mts +6 -0
- package/src/common/comment/comment-helper.mts +13 -4
|
@@ -8,4 +8,9 @@ export declare const DEFAULT_COMMENT_TEXT_IB_SUBSTRING_LENGTH = 20;
|
|
|
8
8
|
* @example "comment thisisacomm here_is_addl_metadata"
|
|
9
9
|
*/
|
|
10
10
|
export declare const DEFAULT_COMMENT_METADATA_IB_SUBSTRING_LENGTH = 128;
|
|
11
|
+
/**
|
|
12
|
+
* if whitespace-only comment ibgib is enabled, the ib will contain this in
|
|
13
|
+
* place of the whitespace text.
|
|
14
|
+
*/
|
|
15
|
+
export declare const COMMENT_IB_WHITESPACE_ONLY_TEXT = "___whitespace___";
|
|
11
16
|
//# sourceMappingURL=comment-constants.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"comment-constants.d.mts","sourceRoot":"","sources":["../../../src/common/comment/comment-constants.mts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,wCAAwC,KAAK,CAAC;AAC3D;;;;GAIG;AACH,eAAO,MAAM,4CAA4C,MAAM,CAAC"}
|
|
1
|
+
{"version":3,"file":"comment-constants.d.mts","sourceRoot":"","sources":["../../../src/common/comment/comment-constants.mts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,wCAAwC,KAAK,CAAC;AAC3D;;;;GAIG;AACH,eAAO,MAAM,4CAA4C,MAAM,CAAC;AAEhE;;;GAGG;AACH,eAAO,MAAM,+BAA+B,qBAAqB,CAAC"}
|
|
@@ -8,4 +8,9 @@ export const DEFAULT_COMMENT_TEXT_IB_SUBSTRING_LENGTH = 20;
|
|
|
8
8
|
* @example "comment thisisacomm here_is_addl_metadata"
|
|
9
9
|
*/
|
|
10
10
|
export const DEFAULT_COMMENT_METADATA_IB_SUBSTRING_LENGTH = 128;
|
|
11
|
+
/**
|
|
12
|
+
* if whitespace-only comment ibgib is enabled, the ib will contain this in
|
|
13
|
+
* place of the whitespace text.
|
|
14
|
+
*/
|
|
15
|
+
export const COMMENT_IB_WHITESPACE_ONLY_TEXT = '___whitespace___';
|
|
11
16
|
//# sourceMappingURL=comment-constants.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"comment-constants.mjs","sourceRoot":"","sources":["../../../src/common/comment/comment-constants.mts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,wCAAwC,GAAG,EAAE,CAAC;AAC3D;;;;GAIG;AACH,MAAM,CAAC,MAAM,4CAA4C,GAAG,GAAG,CAAC"}
|
|
1
|
+
{"version":3,"file":"comment-constants.mjs","sourceRoot":"","sources":["../../../src/common/comment/comment-constants.mts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,wCAAwC,GAAG,EAAE,CAAC;AAC3D;;;;GAIG;AACH,MAAM,CAAC,MAAM,4CAA4C,GAAG,GAAG,CAAC;AAEhE;;;GAGG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,kBAAkB,CAAC"}
|
|
@@ -31,7 +31,7 @@ export declare function parseCommentIb({ ib, }: {
|
|
|
31
31
|
* creates a comment ibgib, returning the transform result,
|
|
32
32
|
* optionally saving it in a given {@link space}.
|
|
33
33
|
*/
|
|
34
|
-
export declare function createCommentIbGib({ text, addlMetadataText, saveInSpace, space, }: {
|
|
34
|
+
export declare function createCommentIbGib({ text, addlMetadataText, saveInSpace, space, dontTrimText, }: {
|
|
35
35
|
/**
|
|
36
36
|
* comment text
|
|
37
37
|
*/
|
|
@@ -52,6 +52,14 @@ export declare function createCommentIbGib({ text, addlMetadataText, saveInSpace
|
|
|
52
52
|
* this space.
|
|
53
53
|
*/
|
|
54
54
|
space?: IbGibSpaceAny;
|
|
55
|
+
/**
|
|
56
|
+
* If true, stores `text` verbatim without trimming leading/trailing
|
|
57
|
+
* whitespace. Required for lossless chunking where rawTexts must tile the
|
|
58
|
+
* parent source exactly.
|
|
59
|
+
*
|
|
60
|
+
* Default: false (existing behaviour — trims whitespace).
|
|
61
|
+
*/
|
|
62
|
+
dontTrimText?: boolean;
|
|
55
63
|
}): Promise<TransformResult<CommentIbGib_V1>>;
|
|
56
64
|
export declare function isComment({ ibGib, }: {
|
|
57
65
|
ibGib: IbGib_V1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"comment-helper.d.mts","sourceRoot":"","sources":["../../../src/common/comment/comment-helper.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAyB,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAGlF,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAEtE,OAAO,EAAkB,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAMtE;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,EAC3B,WAAW,EACX,gBAAgB,GACjB,EAAE;IACD,WAAW,EAAE,MAAM,CAAC;IACpB;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,GAAG,MAAM,CA6BT;AAED,wBAAgB,cAAc,CAAC,EAC7B,EAAE,GACH,EAAE;IACD,EAAE,EAAE,EAAE,CAAC;CACR,GAAG;IACF,iBAAiB,EAAE,MAAM,CAAC;IAC1B,yBAAyB,CAAC,EAAE,MAAM,CAAC;CACpC,CAmBA;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,EACvC,IAAI,EACJ,gBAAgB,EAChB,WAAW,EACX,KAAK,
|
|
1
|
+
{"version":3,"file":"comment-helper.d.mts","sourceRoot":"","sources":["../../../src/common/comment/comment-helper.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAyB,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAGlF,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAEtE,OAAO,EAAkB,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAMtE;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,EAC3B,WAAW,EACX,gBAAgB,GACjB,EAAE;IACD,WAAW,EAAE,MAAM,CAAC;IACpB;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,GAAG,MAAM,CA6BT;AAED,wBAAgB,cAAc,CAAC,EAC7B,EAAE,GACH,EAAE;IACD,EAAE,EAAE,EAAE,CAAC;CACR,GAAG;IACF,iBAAiB,EAAE,MAAM,CAAC;IAC1B,yBAAyB,CAAC,EAAE,MAAM,CAAC;CACpC,CAmBA;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,EACvC,IAAI,EACJ,gBAAgB,EAChB,WAAW,EACX,KAAK,EACL,YAAY,GACb,EAAE;IACD;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,GAAG,OAAO,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC,CAuC5C;AAED,wBAAgB,SAAS,CAAC,EACxB,KAAK,GACN,EAAE;IACD,KAAK,EAAE,QAAQ,CAAC;CACjB,GAAG,OAAO,CAwCV"}
|
|
@@ -2,7 +2,7 @@ import { getSaferSubstring, getTimestamp, pretty } from '@ibgib/helper-gib/dist/
|
|
|
2
2
|
import { Factory_V1 as factory } from '@ibgib/ts-gib/dist/V1/index.mjs';
|
|
3
3
|
import { GLOBAL_LOG_A_LOT } from '../../core-constants.mjs';
|
|
4
4
|
import { persistTransformResult } from '../../witness/space/space-helper.mjs';
|
|
5
|
-
import { DEFAULT_COMMENT_METADATA_IB_SUBSTRING_LENGTH, DEFAULT_COMMENT_TEXT_IB_SUBSTRING_LENGTH } from './comment-constants.mjs';
|
|
5
|
+
import { COMMENT_IB_WHITESPACE_ONLY_TEXT, DEFAULT_COMMENT_METADATA_IB_SUBSTRING_LENGTH, DEFAULT_COMMENT_TEXT_IB_SUBSTRING_LENGTH } from './comment-constants.mjs';
|
|
6
6
|
const logalot = GLOBAL_LOG_A_LOT || false;
|
|
7
7
|
/**
|
|
8
8
|
* generates an ib based on the comment text.
|
|
@@ -74,7 +74,7 @@ export function parseCommentIb({ ib, }) {
|
|
|
74
74
|
* creates a comment ibgib, returning the transform result,
|
|
75
75
|
* optionally saving it in a given {@link space}.
|
|
76
76
|
*/
|
|
77
|
-
export async function createCommentIbGib({ text, addlMetadataText, saveInSpace, space, }) {
|
|
77
|
+
export async function createCommentIbGib({ text, addlMetadataText, saveInSpace, space, dontTrimText, }) {
|
|
78
78
|
const lc = `[${createCommentIbGib.name}]`;
|
|
79
79
|
if (logalot) {
|
|
80
80
|
console.log(`${lc} starting...`);
|
|
@@ -83,15 +83,17 @@ export async function createCommentIbGib({ text, addlMetadataText, saveInSpace,
|
|
|
83
83
|
if (!text) {
|
|
84
84
|
throw new Error(`text required (E: 3e3d0f555e1a83771a6548eb10943522)`);
|
|
85
85
|
}
|
|
86
|
-
|
|
86
|
+
if (!dontTrimText) {
|
|
87
|
+
text = text.trim();
|
|
88
|
+
}
|
|
87
89
|
if (!text) {
|
|
88
|
-
throw new Error(`text cannot be only whitespace (E: d6db3537b9834294836aeb70987c908e)`);
|
|
90
|
+
throw new Error(`text cannot be only whitespace when dontTrimText is falsy. (E: d6db3537b9834294836aeb70987c908e)`);
|
|
89
91
|
}
|
|
90
92
|
const data = { text, textTimestamp: getTimestamp() };
|
|
91
93
|
// create an ibgib with the filename and ext
|
|
92
94
|
const opts = {
|
|
93
95
|
parentIbGib: factory.primitive({ ib: 'comment' }),
|
|
94
|
-
ib: getCommentIb({ commentText: text, addlMetadataText }),
|
|
96
|
+
ib: getCommentIb({ commentText: text.trim() || COMMENT_IB_WHITESPACE_ONLY_TEXT, addlMetadataText }),
|
|
95
97
|
data,
|
|
96
98
|
dna: true,
|
|
97
99
|
tjp: { uuid: true, timestamp: true },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"comment-helper.mjs","sourceRoot":"","sources":["../../../src/common/comment/comment-helper.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,iDAAiD,CAAC;AAE1G,OAAO,EAAE,UAAU,IAAI,OAAO,EAAY,MAAM,iCAAiC,CAAC;AAElF,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAE9E,OAAO,EAAE,4CAA4C,EAAE,wCAAwC,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"comment-helper.mjs","sourceRoot":"","sources":["../../../src/common/comment/comment-helper.mts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ibgib/core-gib",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.50",
|
|
4
4
|
"description": "ibgib core functionality, including base architecture for witnesses, spaces, apps, robbots, etc., as well as shared utility functions. Node v19+ needed for heavily-used isomorphic webcrypto hashing consumed in both node and browsers.",
|
|
5
5
|
"funding": {
|
|
6
6
|
"type": "individual",
|
|
@@ -8,3 +8,9 @@ export const DEFAULT_COMMENT_TEXT_IB_SUBSTRING_LENGTH = 20;
|
|
|
8
8
|
* @example "comment thisisacomm here_is_addl_metadata"
|
|
9
9
|
*/
|
|
10
10
|
export const DEFAULT_COMMENT_METADATA_IB_SUBSTRING_LENGTH = 128;
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* if whitespace-only comment ibgib is enabled, the ib will contain this in
|
|
14
|
+
* place of the whitespace text.
|
|
15
|
+
*/
|
|
16
|
+
export const COMMENT_IB_WHITESPACE_ONLY_TEXT = '___whitespace___';
|
|
@@ -6,7 +6,7 @@ import { GLOBAL_LOG_A_LOT } from '../../core-constants.mjs';
|
|
|
6
6
|
import { IbGibSpaceAny } from '../../witness/space/space-base-v1.mjs';
|
|
7
7
|
import { persistTransformResult } from '../../witness/space/space-helper.mjs';
|
|
8
8
|
import { CommentData_V1, CommentIbGib_V1 } from './comment-types.mjs';
|
|
9
|
-
import { DEFAULT_COMMENT_METADATA_IB_SUBSTRING_LENGTH, DEFAULT_COMMENT_TEXT_IB_SUBSTRING_LENGTH } from './comment-constants.mjs';
|
|
9
|
+
import { COMMENT_IB_WHITESPACE_ONLY_TEXT, DEFAULT_COMMENT_METADATA_IB_SUBSTRING_LENGTH, DEFAULT_COMMENT_TEXT_IB_SUBSTRING_LENGTH } from './comment-constants.mjs';
|
|
10
10
|
|
|
11
11
|
const logalot = GLOBAL_LOG_A_LOT || false;
|
|
12
12
|
|
|
@@ -100,6 +100,7 @@ export async function createCommentIbGib({
|
|
|
100
100
|
addlMetadataText,
|
|
101
101
|
saveInSpace,
|
|
102
102
|
space,
|
|
103
|
+
dontTrimText,
|
|
103
104
|
}: {
|
|
104
105
|
/**
|
|
105
106
|
* comment text
|
|
@@ -121,6 +122,14 @@ export async function createCommentIbGib({
|
|
|
121
122
|
* this space.
|
|
122
123
|
*/
|
|
123
124
|
space?: IbGibSpaceAny,
|
|
125
|
+
/**
|
|
126
|
+
* If true, stores `text` verbatim without trimming leading/trailing
|
|
127
|
+
* whitespace. Required for lossless chunking where rawTexts must tile the
|
|
128
|
+
* parent source exactly.
|
|
129
|
+
*
|
|
130
|
+
* Default: false (existing behaviour — trims whitespace).
|
|
131
|
+
*/
|
|
132
|
+
dontTrimText?: boolean,
|
|
124
133
|
}): Promise<TransformResult<CommentIbGib_V1>> {
|
|
125
134
|
const lc = `[${createCommentIbGib.name}]`;
|
|
126
135
|
|
|
@@ -128,16 +137,16 @@ export async function createCommentIbGib({
|
|
|
128
137
|
try {
|
|
129
138
|
if (!text) { throw new Error(`text required (E: 3e3d0f555e1a83771a6548eb10943522)`); }
|
|
130
139
|
|
|
131
|
-
text = text.trim();
|
|
140
|
+
if (!dontTrimText) { text = text.trim(); }
|
|
132
141
|
|
|
133
|
-
if (!text) { throw new Error(`text cannot be only whitespace (E: d6db3537b9834294836aeb70987c908e)`); }
|
|
142
|
+
if (!text) { throw new Error(`text cannot be only whitespace when dontTrimText is falsy. (E: d6db3537b9834294836aeb70987c908e)`); }
|
|
134
143
|
|
|
135
144
|
const data: CommentData_V1 = { text, textTimestamp: getTimestamp() };
|
|
136
145
|
|
|
137
146
|
// create an ibgib with the filename and ext
|
|
138
147
|
const opts: any = {
|
|
139
148
|
parentIbGib: factory.primitive({ ib: 'comment' }),
|
|
140
|
-
ib: getCommentIb({ commentText: text, addlMetadataText }),
|
|
149
|
+
ib: getCommentIb({ commentText: text.trim() || COMMENT_IB_WHITESPACE_ONLY_TEXT, addlMetadataText }),
|
|
141
150
|
data,
|
|
142
151
|
dna: true,
|
|
143
152
|
tjp: { uuid: true, timestamp: true },
|