@everipedia/iq-utils 0.1.1 → 0.1.3

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/CHANGELOG.md CHANGED
@@ -1,5 +1,38 @@
1
1
  # @everipedia/iq-utils
2
2
 
3
+ ## 0.1.3
4
+
5
+ ### Patch Changes
6
+
7
+ - 0810860: Adds Event type to wiki
8
+
9
+ ## 0.1.2
10
+
11
+ ### Patch Changes
12
+
13
+ - 81787e9: # Changes
14
+
15
+ - Adds RecordTypePicker which works for any type
16
+
17
+ # Example
18
+
19
+ ```ts
20
+ // The NewWikiType will only have user, title, content, summary and user only has id, profile with username and avatar.
21
+ type NewWikiType = RecordTypePicker<
22
+ Wiki,
23
+ {
24
+ user: {
25
+ id;
26
+ profile: {
27
+ username;
28
+ avatar;
29
+ };
30
+ };
31
+ },
32
+ 'title' | 'content' | 'summary'
33
+ >;
34
+ ```
35
+
3
36
  ## 0.1.1
4
37
 
5
38
  ### Patch Changes
@@ -130,6 +130,17 @@ export declare enum LinkedWikiKey {
130
130
  BLOCKCHAIN = "blockchains"
131
131
  }
132
132
  export type LinkedWikis = Partial<Record<LinkedWikiKey, string[]>>;
133
+ export declare enum EventType {
134
+ CREATED = "CREATED",
135
+ DEFAULT = "DEFAULT"
136
+ }
137
+ export interface BaseEvents {
138
+ date: string;
139
+ title?: string;
140
+ type: EventType;
141
+ description?: string;
142
+ link?: string;
143
+ }
133
144
  export interface Wiki {
134
145
  id: string;
135
146
  transactionHash?: string;
@@ -142,6 +153,7 @@ export interface Wiki {
142
153
  tags: BaseTag[];
143
154
  images?: Image[];
144
155
  media?: Media[];
156
+ events?: BaseEvents[];
145
157
  user: User;
146
158
  metadata: MData[];
147
159
  linkedWikis?: LinkedWikis;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.whiteListedLinkNames = exports.whiteListedDomains = exports.LinkedWikiKey = exports.Languages = exports.LanguagesISOEnum = exports.EditSpecificMetaIds = exports.ValidatorCodes = exports.WikiPossibleSocialsList = exports.CommonMetaIds = exports.CreateNewWikiSlug = exports.EditorContentOverride = exports.MediaSource = exports.MediaType = void 0;
3
+ exports.whiteListedLinkNames = exports.whiteListedDomains = exports.EventType = exports.LinkedWikiKey = exports.Languages = exports.LanguagesISOEnum = exports.EditSpecificMetaIds = exports.ValidatorCodes = exports.WikiPossibleSocialsList = exports.CommonMetaIds = exports.CreateNewWikiSlug = exports.EditorContentOverride = exports.MediaSource = exports.MediaType = void 0;
4
4
  var MediaType;
5
5
  (function (MediaType) {
6
6
  MediaType["GALLERY"] = "GALLERY";
@@ -121,6 +121,11 @@ var LinkedWikiKey;
121
121
  LinkedWikiKey["FOUNDER"] = "founders";
122
122
  LinkedWikiKey["BLOCKCHAIN"] = "blockchains";
123
123
  })(LinkedWikiKey = exports.LinkedWikiKey || (exports.LinkedWikiKey = {}));
124
+ var EventType;
125
+ (function (EventType) {
126
+ EventType["CREATED"] = "CREATED";
127
+ EventType["DEFAULT"] = "DEFAULT";
128
+ })(EventType = exports.EventType || (exports.EventType = {}));
124
129
  exports.whiteListedDomains = [
125
130
  'youtube.com/watch',
126
131
  'youtu.be',
@@ -131,4 +136,4 @@ exports.whiteListedDomains = [
131
136
  'ipfs.everipedia.org/ipfs',
132
137
  ];
133
138
  exports.whiteListedLinkNames = ['YOUTUBE@VID', 'DUNE@EMBED'];
134
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lraS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90eXBlcy93aWtpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQTZCQSxJQUFZLFNBR1g7QUFIRCxXQUFZLFNBQVM7SUFDbkIsZ0NBQW1CLENBQUE7SUFDbkIsMEJBQWEsQ0FBQTtBQUNmLENBQUMsRUFIVyxTQUFTLEdBQVQsaUJBQVMsS0FBVCxpQkFBUyxRQUdwQjtBQUVELElBQVksV0FLWDtBQUxELFdBQVksV0FBVztJQUNyQixvQ0FBcUIsQ0FBQTtJQUNyQiw4QkFBZSxDQUFBO0lBQ2Ysa0NBQW1CLENBQUE7SUFDbkIsb0NBQXFCLENBQUE7QUFDdkIsQ0FBQyxFQUxXLFdBQVcsR0FBWCxtQkFBVyxLQUFYLG1CQUFXLFFBS3RCO0FBWVksUUFBQSxxQkFBcUIsR0FBRyw0QkFBNEIsQ0FBQztBQUNyRCxRQUFBLGlCQUFpQixHQUFHLHFCQUFxQixDQUFDO0FBRXZELElBQVksYUE2Qlg7QUE3QkQsV0FBWSxhQUFhO0lBQ3ZCLDBDQUF5QixDQUFBO0lBRXpCLGFBQWE7SUFDYixvQ0FBbUIsQ0FBQTtJQUNuQiw4Q0FBNkIsQ0FBQTtJQUU3QixlQUFlO0lBQ2Ysd0NBQXVCLENBQUE7SUFDdkIsc0RBQXFDLENBQUE7SUFDckMsd0RBQXVDLENBQUE7SUFDdkMsb0RBQW1DLENBQUE7SUFDbkMsc0RBQXFDLENBQUE7SUFDckMsb0RBQW1DLENBQUE7SUFDbkMsb0RBQW1DLENBQUE7SUFDbkMsOENBQTZCLENBQUE7SUFDN0Isa0RBQWlDLENBQUE7SUFDakMsOENBQTZCLENBQUE7SUFDN0Isc0RBQXFDLENBQUE7SUFDckMsd0RBQXVDLENBQUE7SUFDdkMsb0RBQW1DLENBQUE7SUFDbkMsa0RBQWlDLENBQUE7SUFFakMsWUFBWTtJQUNaLHdEQUF1QyxDQUFBO0lBQ3ZDLHNEQUFxQyxDQUFBO0lBQ3JDLDREQUEyQyxDQUFBO0lBQzNDLG9EQUFtQyxDQUFBO0lBQ25DLDhFQUE2RCxD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
139
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lraS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90eXBlcy93aWtpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQTZCQSxJQUFZLFNBR1g7QUFIRCxXQUFZLFNBQVM7SUFDbkIsZ0NBQW1CLENBQUE7SUFDbkIsMEJBQWEsQ0FBQTtBQUNmLENBQUMsRUFIVyxTQUFTLEdBQVQsaUJBQVMsS0FBVCxpQkFBUyxRQUdwQjtBQUVELElBQVksV0FLWDtBQUxELFdBQVksV0FBVztJQUNyQixvQ0FBcUIsQ0FBQTtJQUNyQiw4QkFBZSxDQUFBO0lBQ2Ysa0NBQW1CLENBQUE7SUFDbkIsb0NBQXFCLENBQUE7QUFDdkIsQ0FBQyxFQUxXLFdBQVcsR0FBWCxtQkFBVyxLQUFYLG1CQUFXLFFBS3RCO0FBWVksUUFBQSxxQkFBcUIsR0FBRyw0QkFBNEIsQ0FBQztBQUNyRCxRQUFBLGlCQUFpQixHQUFHLHFCQUFxQixDQUFDO0FBRXZELElBQVksYUE2Qlg7QUE3QkQsV0FBWSxhQUFhO0lBQ3ZCLDBDQUF5QixDQUFBO0lBRXpCLGFBQWE7SUFDYixvQ0FBbUIsQ0FBQTtJQUNuQiw4Q0FBNkIsQ0FBQTtJQUU3QixlQUFlO0lBQ2Ysd0NBQXVCLENBQUE7SUFDdkIsc0RBQXFDLENBQUE7SUFDckMsd0RBQXVDLENBQUE7SUFDdkMsb0RBQW1DLENBQUE7SUFDbkMsc0RBQXFDLENBQUE7SUFDckMsb0RBQW1DLENBQUE7SUFDbkMsb0RBQW1DLENBQUE7SUFDbkMsOENBQTZCLENBQUE7SUFDN0Isa0RBQWlDLENBQUE7SUFDakMsOENBQTZCLENBQUE7SUFDN0Isc0RBQXFDLENBQUE7SUFDckMsd0RBQXVDLENBQUE7SUFDdkMsb0RBQW1DLENBQUE7SUFDbkMsa0RBQWlDLENBQUE7SUFFakMsWUFBWTtJQUNaLHdEQUF1QyxDQUFBO0lBQ3ZDLHNEQUFxQyxDQUFBO0lBQ3JDLDREQUEyQyxDQUFBO0lBQzNDLG9EQUFtQyxDQUFBO0lBQ25DLDhFQUE2RCxDQUFBO0FBQy9ELENBQUMsRUE3QlcsYUFBYSxHQUFiLHFCQUFhLEtBQWIscUJBQWEsUUE2QnhCO0FBRVksUUFBQSx1QkFBdUIsR0FBRztJQUNyQyxhQUFhO0lBQ2IsYUFBYSxDQUFDLE9BQU87SUFDckIsYUFBYSxDQUFDLFlBQVk7SUFFMUIsZUFBZTtJQUNmLGFBQWEsQ0FBQyxTQUFTO0lBQ3ZCLGFBQWEsQ0FBQyxnQkFBZ0I7SUFDOUIsYUFBYSxDQUFDLGlCQUFpQjtJQUMvQixhQUFhLENBQUMsZUFBZTtJQUM3QixhQUFhLENBQUMsZ0JBQWdCO0lBQzlCLGFBQWEsQ0FBQyxlQUFlO0lBQzdCLGFBQWEsQ0FBQyxVQUFVO0lBQ3hCLGFBQWEsQ0FBQyxZQUFZO0lBQzFCLGFBQWEsQ0FBQyxlQUFlO0lBQzdCLGFBQWEsQ0FBQyxVQUFVO0lBQ3hCLGFBQWEsQ0FBQyxlQUFlO0lBQzdCLGFBQWEsQ0FBQyxpQkFBaUI7SUFDL0IsYUFBYSxDQUFDLGVBQWU7SUFDN0IsYUFBYSxDQUFDLGNBQWM7SUFFNUIsWUFBWTtJQUNaLGFBQWEsQ0FBQyxpQkFBaUI7SUFDL0IsYUFBYSxDQUFDLGdCQUFnQjtJQUM5QixhQUFhLENBQUMsbUJBQW1CO0lBQ2pDLGFBQWEsQ0FBQyxlQUFlO0lBQzdCLGFBQWEsQ0FBQyw0QkFBNEI7Q0FDM0MsQ0FBQztBQUVGLElBQVksY0FnQlg7QUFoQkQsV0FBWSxjQUFjO0lBQ3hCLDJDQUF5QixDQUFBO0lBQ3pCLGlDQUFlLENBQUE7SUFDZiw2Q0FBMkIsQ0FBQTtJQUMzQixxQ0FBbUIsQ0FBQTtJQUNuQiw0Q0FBMEIsQ0FBQTtJQUMxQiw2Q0FBMkIsQ0FBQTtJQUMzQiwyQ0FBeUIsQ0FBQTtJQUN6Qix1Q0FBcUIsQ0FBQTtJQUNyQixtQ0FBaUIsQ0FBQTtJQUNqQiw0Q0FBMEIsQ0FBQTtJQUMxQiw2Q0FBMkIsQ0FBQTtJQUMzQix1Q0FBcUIsQ0FBQTtJQUNyQix5REFBdUMsQ0FBQTtJQUN2Qyx1Q0FBcUIsQ0FBQTtJQUNyQiwrQ0FBNkIsQ0FBQTtBQUMvQixDQUFDLEVBaEJXLGNBQWMsR0FBZCxzQkFBYyxLQUFkLHNCQUFjLFFBZ0J6QjtBQUVELElBQVksbUJBT1g7QUFQRCxXQUFZLG1CQUFtQjtJQUM3QixvREFBNkIsQ0FBQTtJQUM3Qix3REFBaUMsQ0FBQTtJQUNqQyxzREFBK0IsQ0FBQTtJQUMvQiwwREFBbUMsQ0FBQTtJQUNuQyx3REFBaUMsQ0FBQTtJQUNqQyxnREFBeUIsQ0FBQTtBQUMzQixDQUFDLEVBUFcsbUJBQW1CLEdBQW5CLDJCQUFtQixLQUFuQiwyQkFBbUIsUUFPOUI7QUF3QkQsSUFBSyxtQkFLSjtBQUxELFdBQUssbUJBQW1CO0lBQ3RCLCtDQUFtQixDQUFBO0lBQ25CLDBDQUFtQixDQUFBO0lBQ25CLCtDQUFjLENBQUE7SUFDZCxvREFBYyxDQUFBO0FBQ2hCLENBQUMsRUFMSSxtQkFBbUIsS0FBbkIsbUJBQW1CLFFBS3ZCO0FBRUQsSUFBWSxnQkFLWDtBQUxELFdBQVksZ0JBQWdCO0lBQzFCLDZCQUFTLENBQUE7SUFDVCw2QkFBUyxDQUFBO0lBQ1QsNkJBQVMsQ0FBQTtJQUNULDZCQUFTLENBQUE7QUFDWCxDQUFDLEVBTFcsZ0JBQWdCLEdBQWhCLHdCQUFnQixLQUFoQix3QkFBZ0IsUUFLM0I7QUFJWSxRQUFBLFNBQVMsR0FBa0I7SUFDdEMsRUFBRSxFQUFFLG1CQUFtQixDQUFDLE9BQU87SUFDL0IsRUFBRSxFQUFFLG1CQUFtQixDQUFDLE9BQU87SUFDL0IsRUFBRSxFQUFFLG1CQUFtQixDQUFDLE9BQU87SUFDL0IsRUFBRSxFQUFFLG1CQUFtQixDQUFDLE1BQU07Q0FDL0IsQ0FBQztBQUVGLElBQVksYUFHWDtBQUhELFdBQVksYUFBYTtJQUN2QixxQ0FBb0IsQ0FBQTtJQUNwQiwyQ0FBMEIsQ0FBQTtBQUM1QixDQUFDLEVBSFcsYUFBYSxHQUFiLHFCQUFhLEtBQWIscUJBQWEsUUFHeEI7QUFJRCxJQUFZLFNBR1g7QUFIRCxXQUFZLFNBQVM7SUFDbkIsZ0NBQW1CLENBQUE7SUFDbkIsZ0NBQW1CLENBQUE7QUFDckIsQ0FBQyxFQUhXLFNBQVMsR0FBVCxpQkFBUyxLQUFULGlCQUFTLFFBR3BCO0FBNERZLFFBQUEsa0JBQWtCLEdBQUc7SUFDaEMsbUJBQW1CO0lBQ25CLFVBQVU7SUFDVixXQUFXO0lBQ1gsMkJBQTJCO0lBQzNCLDBCQUEwQjtJQUMxQixjQUFjO0lBQ2QsMEJBQTBCO0NBQzNCLENBQUM7QUFFVyxRQUFBLG9CQUFvQixHQUFHLENBQUMsYUFBYSxFQUFFLFlBQVksQ0FBQyxDQUFDIn0=
@@ -1,17 +1,11 @@
1
- import { Author, BaseCategory, BaseTag, Image, LanguagesISOEnum, LinkedWikis, MData, Media, User, Wiki } from './wiki';
1
+ import { Wiki } from './wiki';
2
2
  type DeepPartial<T> = {
3
3
  [P in keyof T]?: DeepPartial<T[P]>;
4
4
  };
5
- export type WikiTypeBuilderExtender = DeepPartial<{
6
- categories: BaseCategory[];
7
- tags: BaseTag[];
8
- images: Image[];
9
- media: Media[];
10
- user: User;
11
- metadata: MData[];
12
- linkedWikis?: LinkedWikis;
13
- language: LanguagesISOEnum;
14
- author: Author;
5
+ type PrimitiveType = number | string | boolean | symbol | null | undefined;
6
+ export type RecordTypeNonPrimitive<T> = DeepPartial<{
7
+ [K in keyof T]: [T[K]] extends [PrimitiveType] ? never : T[K];
15
8
  }>;
16
- export type WikiTypeBuilder<C extends WikiTypeBuilderExtender, L extends keyof Wiki> = C & Pick<Wiki, Exclude<L, keyof C>>;
9
+ export type RecordTypePicker<T extends object, NonPrimitiveOverrides extends RecordTypeNonPrimitive<T>, Keys extends keyof T> = NonPrimitiveOverrides & Pick<T, Exclude<Keys, keyof NonPrimitiveOverrides>>;
10
+ export type WikiBuilder<NonPrimitiveOverrides extends RecordTypeNonPrimitive<Wiki>, Keys extends keyof Wiki> = RecordTypePicker<Wiki, NonPrimitiveOverrides, Keys>;
17
11
  export {};
@@ -130,6 +130,17 @@ export declare enum LinkedWikiKey {
130
130
  BLOCKCHAIN = "blockchains"
131
131
  }
132
132
  export type LinkedWikis = Partial<Record<LinkedWikiKey, string[]>>;
133
+ export declare enum EventType {
134
+ CREATED = "CREATED",
135
+ DEFAULT = "DEFAULT"
136
+ }
137
+ export interface BaseEvents {
138
+ date: string;
139
+ title?: string;
140
+ type: EventType;
141
+ description?: string;
142
+ link?: string;
143
+ }
133
144
  export interface Wiki {
134
145
  id: string;
135
146
  transactionHash?: string;
@@ -142,6 +153,7 @@ export interface Wiki {
142
153
  tags: BaseTag[];
143
154
  images?: Image[];
144
155
  media?: Media[];
156
+ events?: BaseEvents[];
145
157
  user: User;
146
158
  metadata: MData[];
147
159
  linkedWikis?: LinkedWikis;
@@ -118,6 +118,11 @@ export var LinkedWikiKey;
118
118
  LinkedWikiKey["FOUNDER"] = "founders";
119
119
  LinkedWikiKey["BLOCKCHAIN"] = "blockchains";
120
120
  })(LinkedWikiKey || (LinkedWikiKey = {}));
121
+ export var EventType;
122
+ (function (EventType) {
123
+ EventType["CREATED"] = "CREATED";
124
+ EventType["DEFAULT"] = "DEFAULT";
125
+ })(EventType || (EventType = {}));
121
126
  export const whiteListedDomains = [
122
127
  'youtube.com/watch',
123
128
  'youtu.be',
@@ -128,4 +133,4 @@ export const whiteListedDomains = [
128
133
  'ipfs.everipedia.org/ipfs',
129
134
  ];
130
135
  export const whiteListedLinkNames = ['YOUTUBE@VID', 'DUNE@EMBED'];
131
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lraS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90eXBlcy93aWtpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTZCQSxNQUFNLENBQU4sSUFBWSxTQUdYO0FBSEQsV0FBWSxTQUFTO0lBQ25CLGdDQUFtQixDQUFBO0lBQ25CLDBCQUFhLENBQUE7QUFDZixDQUFDLEVBSFcsU0FBUyxLQUFULFNBQVMsUUFHcEI7QUFFRCxNQUFNLENBQU4sSUFBWSxXQUtYO0FBTEQsV0FBWSxXQUFXO0lBQ3JCLG9DQUFxQixDQUFBO0lBQ3JCLDhCQUFlLENBQUE7SUFDZixrQ0FBbUIsQ0FBQTtJQUNuQixvQ0FBcUIsQ0FBQTtBQUN2QixDQUFDLEVBTFcsV0FBVyxLQUFYLFdBQVcsUUFLdEI7QUFZRCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyw0QkFBNEIsQ0FBQztBQUNsRSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxxQkFBcUIsQ0FBQztBQUV2RCxNQUFNLENBQU4sSUFBWSxhQTZCWDtBQTdCRCxXQUFZLGFBQWE7SUFDdkIsMENBQXlCLENBQUE7SUFFekIsYUFBYTtJQUNiLG9DQUFtQixDQUFBO0lBQ25CLDhDQUE2QixDQUFBO0lBRTdCLGVBQWU7SUFDZix3Q0FBdUIsQ0FBQTtJQUN2QixzREFBcUMsQ0FBQTtJQUNyQyx3REFBdUMsQ0FBQTtJQUN2QyxvREFBbUMsQ0FBQTtJQUNuQyxzREFBcUMsQ0FBQTtJQUNyQyxvREFBbUMsQ0FBQTtJQUNuQyxvREFBbUMsQ0FBQTtJQUNuQyw4Q0FBNkIsQ0FBQTtJQUM3QixrREFBaUMsQ0FBQTtJQUNqQyw4Q0FBNkIsQ0FBQTtJQUM3QixzREFBcUMsQ0FBQTtJQUNyQyx3REFBdUMsQ0FBQTtJQUN2QyxvREFBbUMsQ0FBQTtJQUNuQyxrREFBaUMsQ0FBQTtJQUVqQyxZQUFZO0lBQ1osd0RBQXVDLENBQUE7SUFDdkMsc0RBQXFDLENBQUE7SUFDckMsNERBQTJDLENBQUE7SUFDM0Msb0RB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
136
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lraS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90eXBlcy93aWtpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTZCQSxNQUFNLENBQU4sSUFBWSxTQUdYO0FBSEQsV0FBWSxTQUFTO0lBQ25CLGdDQUFtQixDQUFBO0lBQ25CLDBCQUFhLENBQUE7QUFDZixDQUFDLEVBSFcsU0FBUyxLQUFULFNBQVMsUUFHcEI7QUFFRCxNQUFNLENBQU4sSUFBWSxXQUtYO0FBTEQsV0FBWSxXQUFXO0lBQ3JCLG9DQUFxQixDQUFBO0lBQ3JCLDhCQUFlLENBQUE7SUFDZixrQ0FBbUIsQ0FBQTtJQUNuQixvQ0FBcUIsQ0FBQTtBQUN2QixDQUFDLEVBTFcsV0FBVyxLQUFYLFdBQVcsUUFLdEI7QUFZRCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyw0QkFBNEIsQ0FBQztBQUNsRSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxxQkFBcUIsQ0FBQztBQUV2RCxNQUFNLENBQU4sSUFBWSxhQTZCWDtBQTdCRCxXQUFZLGFBQWE7SUFDdkIsMENBQXlCLENBQUE7SUFFekIsYUFBYTtJQUNiLG9DQUFtQixDQUFBO0lBQ25CLDhDQUE2QixDQUFBO0lBRTdCLGVBQWU7SUFDZix3Q0FBdUIsQ0FBQTtJQUN2QixzREFBcUMsQ0FBQTtJQUNyQyx3REFBdUMsQ0FBQTtJQUN2QyxvREFBbUMsQ0FBQTtJQUNuQyxzREFBcUMsQ0FBQTtJQUNyQyxvREFBbUMsQ0FBQTtJQUNuQyxvREFBbUMsQ0FBQTtJQUNuQyw4Q0FBNkIsQ0FBQTtJQUM3QixrREFBaUMsQ0FBQTtJQUNqQyw4Q0FBNkIsQ0FBQTtJQUM3QixzREFBcUMsQ0FBQTtJQUNyQyx3REFBdUMsQ0FBQTtJQUN2QyxvREFBbUMsQ0FBQTtJQUNuQyxrREFBaUMsQ0FBQTtJQUVqQyxZQUFZO0lBQ1osd0RBQXVDLENBQUE7SUFDdkMsc0RBQXFDLENBQUE7SUFDckMsNERBQTJDLENBQUE7SUFDM0Msb0RBQW1DLENBQUE7SUFDbkMsOEVBQTZELENBQUE7QUFDL0QsQ0FBQyxFQTdCVyxhQUFhLEtBQWIsYUFBYSxRQTZCeEI7QUFFRCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRztJQUNyQyxhQUFhO0lBQ2IsYUFBYSxDQUFDLE9BQU87SUFDckIsYUFBYSxDQUFDLFlBQVk7SUFFMUIsZUFBZTtJQUNmLGFBQWEsQ0FBQyxTQUFTO0lBQ3ZCLGFBQWEsQ0FBQyxnQkFBZ0I7SUFDOUIsYUFBYSxDQUFDLGlCQUFpQjtJQUMvQixhQUFhLENBQUMsZUFBZTtJQUM3QixhQUFhLENBQUMsZ0JBQWdCO0lBQzlCLGFBQWEsQ0FBQyxlQUFlO0lBQzdCLGFBQWEsQ0FBQyxVQUFVO0lBQ3hCLGFBQWEsQ0FBQyxZQUFZO0lBQzFCLGFBQWEsQ0FBQyxlQUFlO0lBQzdCLGFBQWEsQ0FBQyxVQUFVO0lBQ3hCLGFBQWEsQ0FBQyxlQUFlO0lBQzdCLGFBQWEsQ0FBQyxpQkFBaUI7SUFDL0IsYUFBYSxDQUFDLGVBQWU7SUFDN0IsYUFBYSxDQUFDLGNBQWM7SUFFNUIsWUFBWTtJQUNaLGFBQWEsQ0FBQyxpQkFBaUI7SUFDL0IsYUFBYSxDQUFDLGdCQUFnQjtJQUM5QixhQUFhLENBQUMsbUJBQW1CO0lBQ2pDLGFBQWEsQ0FBQyxlQUFlO0lBQzdCLGFBQWEsQ0FBQyw0QkFBNEI7Q0FDM0MsQ0FBQztBQUVGLE1BQU0sQ0FBTixJQUFZLGNBZ0JYO0FBaEJELFdBQVksY0FBYztJQUN4QiwyQ0FBeUIsQ0FBQTtJQUN6QixpQ0FBZSxDQUFBO0lBQ2YsNkNBQTJCLENBQUE7SUFDM0IscUNBQW1CLENBQUE7SUFDbkIsNENBQTBCLENBQUE7SUFDMUIsNkNBQTJCLENBQUE7SUFDM0IsMkNBQXlCLENBQUE7SUFDekIsdUNBQXFCLENBQUE7SUFDckIsbUNBQWlCLENBQUE7SUFDakIsNENBQTBCLENBQUE7SUFDMUIsNkNBQTJCLENBQUE7SUFDM0IsdUNBQXFCLENBQUE7SUFDckIseURBQXVDLENBQUE7SUFDdkMsdUNBQXFCLENBQUE7SUFDckIsK0NBQTZCLENBQUE7QUFDL0IsQ0FBQyxFQWhCVyxjQUFjLEtBQWQsY0FBYyxRQWdCekI7QUFFRCxNQUFNLENBQU4sSUFBWSxtQkFPWDtBQVBELFdBQVksbUJBQW1CO0lBQzdCLG9EQUE2QixDQUFBO0lBQzdCLHdEQUFpQyxDQUFBO0lBQ2pDLHNEQUErQixDQUFBO0lBQy9CLDBEQUFtQyxDQUFBO0lBQ25DLHdEQUFpQyxDQUFBO0lBQ2pDLGdEQUF5QixDQUFBO0FBQzNCLENBQUMsRUFQVyxtQkFBbUIsS0FBbkIsbUJBQW1CLFFBTzlCO0FBd0JELElBQUssbUJBS0o7QUFMRCxXQUFLLG1CQUFtQjtJQUN0QiwrQ0FBbUIsQ0FBQTtJQUNuQiwwQ0FBbUIsQ0FBQTtJQUNuQiwrQ0FBYyxDQUFBO0lBQ2Qsb0RBQWMsQ0FBQTtBQUNoQixDQUFDLEVBTEksbUJBQW1CLEtBQW5CLG1CQUFtQixRQUt2QjtBQUVELE1BQU0sQ0FBTixJQUFZLGdCQUtYO0FBTEQsV0FBWSxnQkFBZ0I7SUFDMUIsNkJBQVMsQ0FBQTtJQUNULDZCQUFTLENBQUE7SUFDVCw2QkFBUyxDQUFBO0lBQ1QsNkJBQVMsQ0FBQTtBQUNYLENBQUMsRUFMVyxnQkFBZ0IsS0FBaEIsZ0JBQWdCLFFBSzNCO0FBSUQsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFrQjtJQUN0QyxFQUFFLEVBQUUsbUJBQW1CLENBQUMsT0FBTztJQUMvQixFQUFFLEVBQUUsbUJBQW1CLENBQUMsT0FBTztJQUMvQixFQUFFLEVBQUUsbUJBQW1CLENBQUMsT0FBTztJQUMvQixFQUFFLEVBQUUsbUJBQW1CLENBQUMsTUFBTTtDQUMvQixDQUFDO0FBRUYsTUFBTSxDQUFOLElBQVksYUFHWDtBQUhELFdBQVksYUFBYTtJQUN2QixxQ0FBb0IsQ0FBQTtJQUNwQiwyQ0FBMEIsQ0FBQTtBQUM1QixDQUFDLEVBSFcsYUFBYSxLQUFiLGFBQWEsUUFHeEI7QUFJRCxNQUFNLENBQU4sSUFBWSxTQUdYO0FBSEQsV0FBWSxTQUFTO0lBQ25CLGdDQUFtQixDQUFBO0lBQ25CLGdDQUFtQixDQUFBO0FBQ3JCLENBQUMsRUFIVyxTQUFTLEtBQVQsU0FBUyxRQUdwQjtBQTRERCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRztJQUNoQyxtQkFBbUI7SUFDbkIsVUFBVTtJQUNWLFdBQVc7SUFDWCwyQkFBMkI7SUFDM0IsMEJBQTBCO0lBQzFCLGNBQWM7SUFDZCwwQkFBMEI7Q0FDM0IsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLENBQUMsYUFBYSxFQUFFLFlBQVksQ0FBQyxDQUFDIn0=
@@ -1,17 +1,11 @@
1
- import { Author, BaseCategory, BaseTag, Image, LanguagesISOEnum, LinkedWikis, MData, Media, User, Wiki } from './wiki';
1
+ import { Wiki } from './wiki';
2
2
  type DeepPartial<T> = {
3
3
  [P in keyof T]?: DeepPartial<T[P]>;
4
4
  };
5
- export type WikiTypeBuilderExtender = DeepPartial<{
6
- categories: BaseCategory[];
7
- tags: BaseTag[];
8
- images: Image[];
9
- media: Media[];
10
- user: User;
11
- metadata: MData[];
12
- linkedWikis?: LinkedWikis;
13
- language: LanguagesISOEnum;
14
- author: Author;
5
+ type PrimitiveType = number | string | boolean | symbol | null | undefined;
6
+ export type RecordTypeNonPrimitive<T> = DeepPartial<{
7
+ [K in keyof T]: [T[K]] extends [PrimitiveType] ? never : T[K];
15
8
  }>;
16
- export type WikiTypeBuilder<C extends WikiTypeBuilderExtender, L extends keyof Wiki> = C & Pick<Wiki, Exclude<L, keyof C>>;
9
+ export type RecordTypePicker<T extends object, NonPrimitiveOverrides extends RecordTypeNonPrimitive<T>, Keys extends keyof T> = NonPrimitiveOverrides & Pick<T, Exclude<Keys, keyof NonPrimitiveOverrides>>;
10
+ export type WikiBuilder<NonPrimitiveOverrides extends RecordTypeNonPrimitive<Wiki>, Keys extends keyof Wiki> = RecordTypePicker<Wiki, NonPrimitiveOverrides, Keys>;
17
11
  export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@everipedia/iq-utils",
3
- "version": "0.1.1",
3
+ "version": "0.1.3",
4
4
  "description": "Common utility library for IQ projects",
5
5
  "main": "build/main/index.js",
6
6
  "typings": "build/main/index.d.ts",