@duskmoon-dev/el-bottom-sheet 0.4.0
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/cjs/index.js +425 -0
- package/dist/cjs/index.js.map +11 -0
- package/dist/cjs/register.js +428 -0
- package/dist/cjs/register.js.map +12 -0
- package/dist/esm/index.js +393 -0
- package/dist/esm/index.js.map +11 -0
- package/dist/esm/register.js +392 -0
- package/dist/esm/register.js.map +12 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/types/el-dm-bottom-sheet.d.ts +79 -0
- package/dist/types/el-dm-bottom-sheet.d.ts.map +1 -0
- package/dist/types/index.d.ts +4 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/register.d.ts +2 -0
- package/dist/types/register.d.ts.map +1 -0
- package/package.json +63 -0
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DuskMoon Bottom Sheet Element
|
|
3
|
+
*
|
|
4
|
+
* A mobile bottom panel/sheet component for displaying content that slides up from the bottom.
|
|
5
|
+
* Supports snap points, swipe gestures, and modal mode.
|
|
6
|
+
*
|
|
7
|
+
* @element el-dm-bottom-sheet
|
|
8
|
+
*
|
|
9
|
+
* @attr {boolean} open - Whether the bottom sheet is open
|
|
10
|
+
* @attr {boolean} modal - Whether to show backdrop and trap focus
|
|
11
|
+
* @attr {boolean} persistent - Prevent dismiss by outside click or swipe down
|
|
12
|
+
* @attr {string} snap-points - Comma-separated list of snap point heights (e.g., "25%,50%,100%")
|
|
13
|
+
*
|
|
14
|
+
* @slot - Default slot for sheet content
|
|
15
|
+
* @slot header - Header content above the drag handle
|
|
16
|
+
*
|
|
17
|
+
* @csspart sheet - The sheet container
|
|
18
|
+
* @csspart backdrop - The backdrop overlay (modal mode)
|
|
19
|
+
* @csspart handle - The drag handle
|
|
20
|
+
* @csspart content - The content wrapper
|
|
21
|
+
* @csspart header - The header section
|
|
22
|
+
*
|
|
23
|
+
* @fires open - Fired when sheet opens
|
|
24
|
+
* @fires close - Fired when sheet closes
|
|
25
|
+
* @fires snap - Fired when sheet snaps to a point, detail contains { height, index }
|
|
26
|
+
*/
|
|
27
|
+
import { BaseElement } from '@duskmoon-dev/el-core';
|
|
28
|
+
export declare class ElDmBottomSheet extends BaseElement {
|
|
29
|
+
static properties: {
|
|
30
|
+
open: {
|
|
31
|
+
type: BooleanConstructor;
|
|
32
|
+
reflect: boolean;
|
|
33
|
+
};
|
|
34
|
+
modal: {
|
|
35
|
+
type: BooleanConstructor;
|
|
36
|
+
reflect: boolean;
|
|
37
|
+
};
|
|
38
|
+
persistent: {
|
|
39
|
+
type: BooleanConstructor;
|
|
40
|
+
reflect: boolean;
|
|
41
|
+
};
|
|
42
|
+
snapPoints: {
|
|
43
|
+
type: StringConstructor;
|
|
44
|
+
reflect: boolean;
|
|
45
|
+
attribute: string;
|
|
46
|
+
};
|
|
47
|
+
};
|
|
48
|
+
open: boolean;
|
|
49
|
+
modal: boolean;
|
|
50
|
+
persistent: boolean;
|
|
51
|
+
snapPoints: string;
|
|
52
|
+
private _startY;
|
|
53
|
+
private _currentY;
|
|
54
|
+
private _sheetHeight;
|
|
55
|
+
private _isDragging;
|
|
56
|
+
private _parsedSnapPoints;
|
|
57
|
+
private _currentSnapIndex;
|
|
58
|
+
private _focusableElements;
|
|
59
|
+
private _previouslyFocused;
|
|
60
|
+
constructor();
|
|
61
|
+
connectedCallback(): void;
|
|
62
|
+
private _parseSnapPoints;
|
|
63
|
+
private _handleBackdropClick;
|
|
64
|
+
private _handleKeyDown;
|
|
65
|
+
private _trapFocus;
|
|
66
|
+
private _handleTouchStart;
|
|
67
|
+
private _handleTouchMove;
|
|
68
|
+
private _handleTouchEnd;
|
|
69
|
+
private _handleMouseDown;
|
|
70
|
+
private _handleMouseMove;
|
|
71
|
+
private _handleMouseUp;
|
|
72
|
+
private _snapToNearestPoint;
|
|
73
|
+
show(): void;
|
|
74
|
+
hide(): void;
|
|
75
|
+
disconnectedCallback(): void;
|
|
76
|
+
render(): string;
|
|
77
|
+
update(): void;
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=el-dm-bottom-sheet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"el-dm-bottom-sheet.d.ts","sourceRoot":"","sources":["../../src/el-dm-bottom-sheet.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAE,WAAW,EAAO,MAAM,uBAAuB,CAAC;AA4HzD,qBAAa,eAAgB,SAAQ,WAAW;IAC9C,MAAM,CAAC,UAAU;;;;;;;;;;;;;;;;;;MAKf;IAEM,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;IACf,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IAE3B,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,iBAAiB,CAAgB;IACzC,OAAO,CAAC,iBAAiB,CAAM;IAC/B,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,kBAAkB,CAA4B;;IAOtD,iBAAiB,IAAI,IAAI;IAKzB,OAAO,CAAC,gBAAgB;IAuBxB,OAAO,CAAC,oBAAoB,CAI1B;IAEF,OAAO,CAAC,cAAc,CASpB;IAEF,OAAO,CAAC,UAAU;IA6BlB,OAAO,CAAC,iBAAiB,CAUvB;IAEF,OAAO,CAAC,gBAAgB,CActB;IAEF,OAAO,CAAC,eAAe,CAsBrB;IAEF,OAAO,CAAC,gBAAgB,CAYtB;IAEF,OAAO,CAAC,gBAAgB,CAYtB;IAEF,OAAO,CAAC,cAAc,CAyBpB;IAEF,OAAO,CAAC,mBAAmB;IA8B3B,IAAI,IAAI,IAAI;IAyBZ,IAAI,IAAI,IAAI;IAaZ,oBAAoB,IAAI,IAAI;IAQ5B,MAAM,IAAI,MAAM;IAyBhB,MAAM,IAAI,IAAI;CAgBf"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,OAAO,EAAE,eAAe,EAAE,CAAC;AAE3B,wBAAgB,QAAQ,IAAI,IAAI,CAI/B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../src/register.ts"],"names":[],"mappings":""}
|
package/package.json
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@duskmoon-dev/el-bottom-sheet",
|
|
3
|
+
"version": "0.4.0",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"main": "./dist/cjs/index.js",
|
|
6
|
+
"module": "./dist/esm/index.js",
|
|
7
|
+
"types": "./dist/types/index.d.ts",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": {
|
|
10
|
+
"types": "./dist/types/index.d.ts",
|
|
11
|
+
"import": "./dist/esm/index.js",
|
|
12
|
+
"require": "./dist/cjs/index.js"
|
|
13
|
+
},
|
|
14
|
+
"./register": {
|
|
15
|
+
"types": "./dist/types/register.d.ts",
|
|
16
|
+
"import": "./dist/esm/register.js",
|
|
17
|
+
"require": "./dist/cjs/register.js"
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
"files": [
|
|
21
|
+
"dist"
|
|
22
|
+
],
|
|
23
|
+
"scripts": {
|
|
24
|
+
"prebuild": "bun run clean",
|
|
25
|
+
"build": "bun run build:esm && bun run build:cjs && bun run build:types",
|
|
26
|
+
"build:esm": "bun build ./src/index.ts ./src/register.ts --outdir ./dist/esm --format esm --sourcemap --external @duskmoon-dev/el-core --external @duskmoon-dev/core",
|
|
27
|
+
"build:cjs": "bun build ./src/index.ts ./src/register.ts --outdir ./dist/cjs --format cjs --sourcemap --external @duskmoon-dev/el-core --external @duskmoon-dev/core",
|
|
28
|
+
"build:types": "tsc --emitDeclarationOnly --outDir ./dist/types",
|
|
29
|
+
"dev": "bun build ./src/index.ts --outdir ./dist/esm --format esm --sourcemap --external @duskmoon-dev/el-core --watch",
|
|
30
|
+
"clean": "del-cli dist",
|
|
31
|
+
"test": "bun test",
|
|
32
|
+
"typecheck": "tsc --noEmit",
|
|
33
|
+
"format": "prettier --write 'src/**/*.ts' '*.json'",
|
|
34
|
+
"format:check": "prettier --check 'src/**/*.ts' '*.json'",
|
|
35
|
+
"lint": "eslint src",
|
|
36
|
+
"lint:check": "eslint src --max-warnings 0",
|
|
37
|
+
"lint:fix": "eslint src --fix",
|
|
38
|
+
"release": "bun publish",
|
|
39
|
+
"release:dry-run": "bun publish --dry-run"
|
|
40
|
+
},
|
|
41
|
+
"dependencies": {
|
|
42
|
+
"@duskmoon-dev/el-core": "0.3.0",
|
|
43
|
+
"@duskmoon-dev/core": "^1.1.1"
|
|
44
|
+
},
|
|
45
|
+
"devDependencies": {
|
|
46
|
+
"typescript": "^5.7.2"
|
|
47
|
+
},
|
|
48
|
+
"publishConfig": {
|
|
49
|
+
"access": "public"
|
|
50
|
+
},
|
|
51
|
+
"customElements": "custom-elements.json",
|
|
52
|
+
"keywords": [
|
|
53
|
+
"duskmoon-dev",
|
|
54
|
+
"duskmoon",
|
|
55
|
+
"custom-elements",
|
|
56
|
+
"customelements",
|
|
57
|
+
"web-components",
|
|
58
|
+
"webcomponents",
|
|
59
|
+
"html",
|
|
60
|
+
"bottom-sheet",
|
|
61
|
+
"mobile"
|
|
62
|
+
]
|
|
63
|
+
}
|