cotomy 0.1.73 → 0.2.1
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/LICENSE +20 -20
- package/README.md +101 -93
- package/dist/browser/cotomy.js +92 -42
- package/dist/browser/cotomy.js.map +1 -1
- package/dist/browser/cotomy.min.js +1 -1
- package/dist/browser/cotomy.min.js.map +1 -1
- package/dist/cjs/index.cjs +1 -1
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/esm/api.js +39 -13
- package/dist/esm/api.js.map +1 -1
- package/dist/esm/form.js +47 -27
- package/dist/esm/form.js.map +1 -1
- package/dist/esm/view.js +5 -1
- package/dist/esm/view.js.map +1 -1
- package/dist/types/api.d.ts +5 -0
- package/dist/types/form.d.ts +9 -7
- package/dist/types/view.d.ts +3 -2
- package/package.json +61 -61
package/dist/types/api.d.ts
CHANGED
|
@@ -54,12 +54,15 @@ export declare class CotomyApiResponse {
|
|
|
54
54
|
}
|
|
55
55
|
export interface ICotomyBindNameGenerator {
|
|
56
56
|
create(name: string, parent?: string): string;
|
|
57
|
+
createIndex(parent: string | undefined, index: number): string;
|
|
57
58
|
}
|
|
58
59
|
export declare class CotomyBracketBindNameGenerator implements ICotomyBindNameGenerator {
|
|
59
60
|
create(name: string, parent?: string): string;
|
|
61
|
+
createIndex(parent: string | undefined, index: number): string;
|
|
60
62
|
}
|
|
61
63
|
export declare class CotomyDotBindNameGenerator implements ICotomyBindNameGenerator {
|
|
62
64
|
create(name: string, parent?: string): string;
|
|
65
|
+
createIndex(parent: string | undefined, index: number): string;
|
|
63
66
|
}
|
|
64
67
|
export declare class CotomyViewRenderer {
|
|
65
68
|
readonly element: CotomyElement;
|
|
@@ -71,6 +74,8 @@ export declare class CotomyViewRenderer {
|
|
|
71
74
|
renderer(type: string, callback: (element: CotomyElement, value: any) => void): this;
|
|
72
75
|
get initialized(): boolean;
|
|
73
76
|
protected initialize(): this;
|
|
77
|
+
protected bindPrimitiveValue(propertyName: string, value: any): void;
|
|
78
|
+
protected applyArrayAsync(values: any[], propertyName: string): Promise<void>;
|
|
74
79
|
protected applyObjectAsync(target: any, propertyName?: string | undefined): Promise<void>;
|
|
75
80
|
applyAsync(respose: CotomyApiResponse): Promise<this>;
|
|
76
81
|
}
|
package/dist/types/form.d.ts
CHANGED
|
@@ -2,8 +2,8 @@ import { CotomyApi, CotomyApiResponse, CotomyViewRenderer, ICotomyBindNameGenera
|
|
|
2
2
|
import { CotomyElement } from "./view";
|
|
3
3
|
export declare abstract class CotomyForm extends CotomyElement {
|
|
4
4
|
generateId(prefix?: string): this;
|
|
5
|
-
protected method(): string;
|
|
6
|
-
actionUrl(): string;
|
|
5
|
+
protected get method(): string;
|
|
6
|
+
get actionUrl(): string;
|
|
7
7
|
reloadAsync(): Promise<void>;
|
|
8
8
|
get autoReload(): boolean;
|
|
9
9
|
set autoReload(value: boolean);
|
|
@@ -12,7 +12,7 @@ export declare abstract class CotomyForm extends CotomyElement {
|
|
|
12
12
|
abstract submitAsync(): Promise<void>;
|
|
13
13
|
}
|
|
14
14
|
export declare class CotomyQueryForm extends CotomyForm {
|
|
15
|
-
protected method(): string;
|
|
15
|
+
protected get method(): string;
|
|
16
16
|
submitAsync(): Promise<void>;
|
|
17
17
|
}
|
|
18
18
|
export declare class CotomyApiFailedEvent extends Event {
|
|
@@ -22,12 +22,12 @@ export declare class CotomyApiFailedEvent extends Event {
|
|
|
22
22
|
}
|
|
23
23
|
export declare class CotomyApiForm extends CotomyForm {
|
|
24
24
|
apiClient(): CotomyApi;
|
|
25
|
-
actionUrl(): string;
|
|
25
|
+
get actionUrl(): string;
|
|
26
26
|
apiFailed(handle: ((event: CotomyApiFailedEvent) => void | Promise<void>)): this;
|
|
27
27
|
protected triggerApiFailedEvent(response: CotomyApiResponse): void;
|
|
28
28
|
submitFailed(handle: ((event: CotomyApiFailedEvent) => void | Promise<void>)): this;
|
|
29
29
|
protected triggerSubmitFailedEvent(response: CotomyApiResponse): void;
|
|
30
|
-
protected method(): string;
|
|
30
|
+
protected get method(): string;
|
|
31
31
|
formData(): FormData;
|
|
32
32
|
submitAsync(): Promise<void>;
|
|
33
33
|
protected submitToApiAsync(formData: FormData): Promise<CotomyApiResponse>;
|
|
@@ -36,8 +36,8 @@ export declare class CotomyEntityApiForm extends CotomyApiForm {
|
|
|
36
36
|
protected get entityKey(): string | undefined;
|
|
37
37
|
protected get requiresEntityKey(): boolean;
|
|
38
38
|
protected get hasEntityKey(): boolean;
|
|
39
|
-
actionUrl(): string;
|
|
40
|
-
protected method(): string;
|
|
39
|
+
get actionUrl(): string;
|
|
40
|
+
protected get method(): string;
|
|
41
41
|
protected setEntityKey(response: CotomyApiResponse): void;
|
|
42
42
|
protected submitToApiAsync(formData: FormData): Promise<CotomyApiResponse>;
|
|
43
43
|
}
|
|
@@ -51,6 +51,8 @@ export declare class CotomyEntityFillApiForm extends CotomyEntityApiForm {
|
|
|
51
51
|
renderer(): CotomyViewRenderer;
|
|
52
52
|
protected canLoad(): boolean;
|
|
53
53
|
protected loadAsync(): Promise<CotomyApiResponse>;
|
|
54
|
+
protected applyValueToInputs(pname: string, value: any): void;
|
|
55
|
+
protected fillArrayAsync(bindNameGenerator: ICotomyBindNameGenerator, values: any[], propertyName: string): Promise<void>;
|
|
54
56
|
protected fillObjectAsync(bindNameGenerator: ICotomyBindNameGenerator, target: any, propertyName?: string | undefined): Promise<void>;
|
|
55
57
|
protected fillAsync(response: CotomyApiResponse): Promise<void>;
|
|
56
58
|
protected submitToApiAsync(formData: globalThis.FormData): Promise<CotomyApiResponse>;
|
package/dist/types/view.d.ts
CHANGED
|
@@ -32,6 +32,7 @@ export declare class CotomyElement implements IEventTarget {
|
|
|
32
32
|
get id(): string | null | undefined;
|
|
33
33
|
generateId(prefix?: string): this;
|
|
34
34
|
get element(): HTMLElement;
|
|
35
|
+
clone<T extends CotomyElement = CotomyElement>(type?: new (el: HTMLElement) => T): T;
|
|
35
36
|
get tagname(): string;
|
|
36
37
|
is(selector: string): boolean;
|
|
37
38
|
match(selector: string): boolean;
|
|
@@ -217,8 +218,8 @@ export declare class CotomyElement implements IEventTarget {
|
|
|
217
218
|
resize(handle: (e: Event) => void | Promise<void>): this;
|
|
218
219
|
scroll(): this;
|
|
219
220
|
scroll(handle: (e: Event) => void | Promise<void>): this;
|
|
220
|
-
|
|
221
|
-
|
|
221
|
+
changeLayout(): this;
|
|
222
|
+
changeLayout(handle: (e: Event) => void | Promise<void>): this;
|
|
222
223
|
}
|
|
223
224
|
export declare class CotomyMetaElement extends CotomyElement {
|
|
224
225
|
static get(name: string): CotomyMetaElement;
|
package/package.json
CHANGED
|
@@ -1,61 +1,61 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "cotomy",
|
|
3
|
-
"version": "0.1
|
|
4
|
-
"main": "dist/cjs/index.cjs",
|
|
5
|
-
"module": "dist/esm/index.js",
|
|
6
|
-
"types": "dist/types/index.d.ts",
|
|
7
|
-
"browser": "dist/esm/index.js",
|
|
8
|
-
"exports": {
|
|
9
|
-
".": {
|
|
10
|
-
"types": "./dist/types/index.d.ts",
|
|
11
|
-
"import": "./dist/esm/index.js",
|
|
12
|
-
"require": "./dist/cjs/index.cjs",
|
|
13
|
-
"default": "./dist/esm/index.js"
|
|
14
|
-
},
|
|
15
|
-
"./package.json": "./package.json"
|
|
16
|
-
},
|
|
17
|
-
"files": [
|
|
18
|
-
"dist",
|
|
19
|
-
"README.md",
|
|
20
|
-
"LICENSE"
|
|
21
|
-
],
|
|
22
|
-
"unpkg": "dist/browser/cotomy.min.js",
|
|
23
|
-
"scripts": {
|
|
24
|
-
"build": "npm run clean && npm run build:esm && npm run build:cjs && npm run build:browser",
|
|
25
|
-
"build:esm": "tsc --project tsconfig.esm.json",
|
|
26
|
-
"build:cjs": "webpack --config webpack.config.cjs --mode=production",
|
|
27
|
-
"build:browser": "webpack --config webpack.config.browser.cjs",
|
|
28
|
-
"dev": "webpack --config webpack.config.cjs --mode=development",
|
|
29
|
-
"clean": "rimraf dist",
|
|
30
|
-
"test": "echo \"(optional) add test runner like vitest or jest\"",
|
|
31
|
-
"prepare": "npm run build",
|
|
32
|
-
"release": "npm run clean && npm run build && npm version patch && npm publish",
|
|
33
|
-
"check": "tsc --noEmit",
|
|
34
|
-
"lint": "eslint src --ext .ts",
|
|
35
|
-
"format": "prettier --write src"
|
|
36
|
-
},
|
|
37
|
-
"publishConfig": {
|
|
38
|
-
"access": "public"
|
|
39
|
-
},
|
|
40
|
-
"keywords": [],
|
|
41
|
-
"author": "",
|
|
42
|
-
"license": "MIT",
|
|
43
|
-
"description": "",
|
|
44
|
-
"type": "module",
|
|
45
|
-
"devDependencies": {
|
|
46
|
-
"@types/jsdom": "^27.0.0",
|
|
47
|
-
"jsdom": "^27.0.0",
|
|
48
|
-
"rimraf": "^6.0.1",
|
|
49
|
-
"ts-loader": "^9.5.2",
|
|
50
|
-
"typescript": "^5.8.3",
|
|
51
|
-
"vitest": "^3.2.4",
|
|
52
|
-
"webpack": "^5.99.9",
|
|
53
|
-
"webpack-cli": "^6.0.1"
|
|
54
|
-
},
|
|
55
|
-
"dependencies": {
|
|
56
|
-
"cuid": "^3.0.0",
|
|
57
|
-
"dayjs": "^1.11.13",
|
|
58
|
-
"http-status-codes": "^2.3.0",
|
|
59
|
-
"locale-currency": "^0.0.4"
|
|
60
|
-
}
|
|
61
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "cotomy",
|
|
3
|
+
"version": "0.2.1",
|
|
4
|
+
"main": "dist/cjs/index.cjs",
|
|
5
|
+
"module": "dist/esm/index.js",
|
|
6
|
+
"types": "dist/types/index.d.ts",
|
|
7
|
+
"browser": "dist/esm/index.js",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": {
|
|
10
|
+
"types": "./dist/types/index.d.ts",
|
|
11
|
+
"import": "./dist/esm/index.js",
|
|
12
|
+
"require": "./dist/cjs/index.cjs",
|
|
13
|
+
"default": "./dist/esm/index.js"
|
|
14
|
+
},
|
|
15
|
+
"./package.json": "./package.json"
|
|
16
|
+
},
|
|
17
|
+
"files": [
|
|
18
|
+
"dist",
|
|
19
|
+
"README.md",
|
|
20
|
+
"LICENSE"
|
|
21
|
+
],
|
|
22
|
+
"unpkg": "dist/browser/cotomy.min.js",
|
|
23
|
+
"scripts": {
|
|
24
|
+
"build": "npm run clean && npm run build:esm && npm run build:cjs && npm run build:browser",
|
|
25
|
+
"build:esm": "tsc --project tsconfig.esm.json",
|
|
26
|
+
"build:cjs": "webpack --config webpack.config.cjs --mode=production",
|
|
27
|
+
"build:browser": "webpack --config webpack.config.browser.cjs",
|
|
28
|
+
"dev": "webpack --config webpack.config.cjs --mode=development",
|
|
29
|
+
"clean": "rimraf dist",
|
|
30
|
+
"test": "echo \"(optional) add test runner like vitest or jest\"",
|
|
31
|
+
"prepare": "npm run build",
|
|
32
|
+
"release": "npm run clean && npm run build && npm version patch && npm publish",
|
|
33
|
+
"check": "tsc --noEmit",
|
|
34
|
+
"lint": "eslint src --ext .ts",
|
|
35
|
+
"format": "prettier --write src"
|
|
36
|
+
},
|
|
37
|
+
"publishConfig": {
|
|
38
|
+
"access": "public"
|
|
39
|
+
},
|
|
40
|
+
"keywords": [],
|
|
41
|
+
"author": "",
|
|
42
|
+
"license": "MIT",
|
|
43
|
+
"description": "",
|
|
44
|
+
"type": "module",
|
|
45
|
+
"devDependencies": {
|
|
46
|
+
"@types/jsdom": "^27.0.0",
|
|
47
|
+
"jsdom": "^27.0.0",
|
|
48
|
+
"rimraf": "^6.0.1",
|
|
49
|
+
"ts-loader": "^9.5.2",
|
|
50
|
+
"typescript": "^5.8.3",
|
|
51
|
+
"vitest": "^3.2.4",
|
|
52
|
+
"webpack": "^5.99.9",
|
|
53
|
+
"webpack-cli": "^6.0.1"
|
|
54
|
+
},
|
|
55
|
+
"dependencies": {
|
|
56
|
+
"cuid": "^3.0.0",
|
|
57
|
+
"dayjs": "^1.11.13",
|
|
58
|
+
"http-status-codes": "^2.3.0",
|
|
59
|
+
"locale-currency": "^0.0.4"
|
|
60
|
+
}
|
|
61
|
+
}
|