domquery-com 1.0.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/LICENSE ADDED
@@ -0,0 +1,22 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Byeonghee Gong & Taeyoon Gong
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
22
+
package/README.ko.md ADDED
@@ -0,0 +1,273 @@
1
+ # DomQuery
2
+
3
+ > 웹앱 개발에 필요한 모든 기능을 하나의 통합 생태계로 제공합니다
4
+
5
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
6
+ [![Version](https://img.shields.io/badge/version-1.0.0-blue.svg)](https://github.com/domquery-com/domquery)
7
+
8
+ **DomQuery**는 웹앱 개발에 필요한 모든 기능을 통합한 현대적인 JavaScript 라이브러리입니다.
9
+ 하이브리드 앱/WebView 환경에 특화되어 있습니다.
10
+
11
+ ## ✨ 주요 기능
12
+
13
+ - 🚀 **강력한 기능**: 고급 커스텀 선택자, 네이티브 Promise, 30개 이상의 이징 함수
14
+ - 📱 **하이브리드 앱 특화**: 자동 WebView Bridge 지원, 완벽한 file:// URL 처리
15
+ - 🎨 **모바일 UX 패턴**: Alert, Select, Pulling 등 모바일 최적화 UI
16
+ - 🔗 **통합 생태계**: DOM 조작, Ajax, Animation, History 등 올인원 솔루션
17
+ - ⚡ **현대적 API**: 네이티브 Promise, async/await 지원
18
+
19
+ ## 📊 주요 특징
20
+
21
+ | 기능 | 설명 |
22
+ |---------|-------------|
23
+ | 커스텀 선택자 | **풍부함** (text=, depth=, sibling[] 등) |
24
+ | Promise | **네이티브 Promise** 지원 |
25
+ | 애니메이션 | **고급** (30개 이상의 이징 함수) |
26
+ | WebView Bridge | **자동 지원** |
27
+ | 히스토리 관리 | **내장** |
28
+ | 모바일 UX | **내장** (Alert, Select, Pulling 등) |
29
+
30
+ ## 🚀 빠른 시작
31
+
32
+ ### 설치
33
+
34
+ 터미널(명령줄)에서 다음 명령어로 설치할 수 있습니다:
35
+
36
+ #### npm (Node Package Manager)
37
+ ```bash
38
+ # 기본 설치 (로컬)
39
+ npm install domquery-com
40
+
41
+ # 특정 버전 설치
42
+ npm install domquery-com@1.0.0
43
+
44
+ # 개발 의존성으로 설치
45
+ npm install domquery-com --save-dev
46
+
47
+ # 전역 설치 (권장하지 않음)
48
+ npm install -g domquery-com
49
+ ```
50
+
51
+ #### yarn
52
+ ```bash
53
+ # 기본 설치
54
+ yarn add domquery-com
55
+
56
+ # 특정 버전 설치
57
+ yarn add domquery-com@1.0.0
58
+
59
+ # 개발 의존성으로 설치
60
+ yarn add domquery-com --dev
61
+ ```
62
+
63
+ #### pnpm
64
+ ```bash
65
+ # 기본 설치
66
+ pnpm add domquery-com
67
+
68
+ # 특정 버전 설치
69
+ pnpm add domquery-com@1.0.0
70
+
71
+ # 개발 의존성으로 설치
72
+ pnpm add -D domquery-com
73
+ ```
74
+
75
+ #### 설치 확인
76
+ ```bash
77
+ # 설치된 버전 확인
78
+ npm list domquery-com
79
+
80
+ # 또는
81
+ npm info domquery-com version
82
+ ```
83
+
84
+ > **참고**: npm은 패키지 전체(원본 + minified)를 설치합니다.
85
+ > 하지만 코드에서 원하는 버전(원본 또는 minified)을 선택해서 사용할 수 있습니다.
86
+
87
+ ### Node.js 및 번들러에서 사용
88
+
89
+ #### 원본 vs Minified 선택
90
+
91
+ npm 설치 시 원본과 minified가 모두 설치되지만, 코드에서 원하는 버전을 선택할 수 있습니다:
92
+
93
+ **원본 사용 (개발용 - 디버깅 용이)**
94
+ ```javascript
95
+ const $ = require('domquery-com');
96
+ // 또는
97
+ import $ from 'domquery-com';
98
+ ```
99
+
100
+ **Minified 사용 (프로덕션용 - 파일 크기 최소화)**
101
+ ```javascript
102
+ const $ = require('domquery-com/min');
103
+ // 또는
104
+ import $ from 'domquery-com/minified';
105
+ ```
106
+
107
+ **번들러 설정 (Webpack, Vite 등)에서 Minified만 포함**
108
+
109
+ 번들러를 사용하는 경우, 프로덕션 빌드에서 minified만 포함하도록 설정할 수 있습니다:
110
+
111
+ ```javascript
112
+ // webpack.config.js 예시
113
+ module.exports = {
114
+ resolve: {
115
+ alias: {
116
+ 'domquery-com': process.env.NODE_ENV === 'production'
117
+ ? 'domquery-com/min'
118
+ : 'domquery-com'
119
+ }
120
+ }
121
+ };
122
+ ```
123
+
124
+ #### CommonJS (require)
125
+ ```javascript
126
+ // 원본 버전 (기본)
127
+ const $ = require('domquery-com');
128
+
129
+ // Minified 버전
130
+ const $ = require('domquery-com/min');
131
+ ```
132
+
133
+ #### ES Modules (import)
134
+ ```javascript
135
+ // 원본 버전 (기본)
136
+ import $ from 'domquery-com';
137
+
138
+ // Minified 버전
139
+ import $ from 'domquery-com/minified';
140
+ ```
141
+
142
+ #### Browser (HTML)
143
+ ```html
144
+ <!-- npm으로 설치한 경우 node_modules에서 직접 사용 -->
145
+ <script src="./node_modules/domquery-com/domquery.js"></script>
146
+ <script src="./node_modules/domquery-com/domquery.min.js"></script>
147
+ ```
148
+
149
+ ### CDN 사용 (npm 설치 없이 사용)
150
+
151
+ npm에 패키지가 등록되면 **자동으로 CDN이 제공**됩니다. npm 설치 없이 바로 사용할 수 있습니다.
152
+
153
+ ```html
154
+ <!-- npm 기반 CDN (자동 제공) - 권장 -->
155
+ <!-- 개발용 -->
156
+ <script src="https://cdn.jsdelivr.net/npm/domquery-com@1.0.0/domquery.js"></script>
157
+ <!-- 또는 -->
158
+ <script src="https://unpkg.com/domquery-com@1.0.0/domquery.js"></script>
159
+
160
+ <!-- 프로덕션 권장 -->
161
+ <script src="https://cdn.jsdelivr.net/npm/domquery-com@1.0.0/domquery.min.js"></script>
162
+ <!-- 또는 -->
163
+ <script src="https://unpkg.com/domquery-com@1.0.0/domquery.min.js"></script>
164
+
165
+ <!-- 최신 버전 사용 (버전 번호 생략 가능) -->
166
+ <script src="https://unpkg.com/domquery-com/domquery.min.js"></script>
167
+ ```
168
+
169
+ > **참고**:
170
+ > - **npm 기반 CDN**은 npm에 패키지가 등록되면 자동으로 제공됩니다.
171
+ > - `unpkg`와 `jsdelivr` 모두 무료로 제공하는 CDN 서비스입니다.
172
+ > - 프로덕션에서는 특정 버전(`@1.0.0`)을 명시하는 것을 권장합니다.
173
+ > - `package.json`의 `unpkg`와 `jsdelivr` 필드가 자동으로 minified 버전을 가리킵니다.
174
+
175
+ #### 추가 모듈 로드 (Loading Additional Modules)
176
+
177
+ 추가 모듈을 별도로 로드해야 하는 경우, CDN을 통해 접근할 수 있습니다:
178
+
179
+ ```html
180
+ <!-- 메인 라이브러리 (Main library) -->
181
+ <script src="https://unpkg.com/domquery-com@1.0.0/domquery.min.js"></script>
182
+
183
+ <!-- 추가 모듈 (Additional modules) -->
184
+ <script src="https://unpkg.com/domquery-com@1.0.0/src_min/alert.min.js"></script>
185
+ <script src="https://unpkg.com/domquery-com@1.0.0/src_min/ajax.min.js"></script>
186
+ <script src="https://unpkg.com/domquery-com@1.0.0/src_min/select.min.js"></script>
187
+ <script src="https://unpkg.com/domquery-com@1.0.0/src_min/animate.min.js"></script>
188
+ <!-- 등등... -->
189
+
190
+ <!-- 또는 jsdelivr 사용 -->
191
+ <script src="https://cdn.jsdelivr.net/npm/domquery-com@1.0.0/src_min/alert.min.js"></script>
192
+ ```
193
+
194
+ > **참고**: `package.json`의 `files` 필드에 포함된 모든 파일은 CDN을 통해 접근 가능합니다.
195
+ > (All files included in the `files` field of `package.json` are accessible via CDN.)
196
+
197
+ ### 사용 예제
198
+
199
+ ```javascript
200
+ // DOM 조작
201
+ $('.my-element').addClass('active').css('color', 'red');
202
+
203
+ // Ajax (Promise 기반)
204
+ const data = await $.ajax({
205
+ url: '/api/data',
206
+ method: 'GET'
207
+ });
208
+
209
+ // Alert (모바일 최적화)
210
+ $alert('Hello World!', {
211
+ radius: '15px',
212
+ background: '#68717e'
213
+ });
214
+ ```
215
+
216
+ ## 📖 문서
217
+
218
+ - [공식 문서](https://domquery.com)
219
+ - [소개](https://domquery.com/?introduction)
220
+ - [API 참조](https://domquery.com)
221
+ - [예제](https://domquery.com)
222
+
223
+ ## 🎯 사용 사례
224
+
225
+ - 하이브리드 앱 개발 (Android/iOS WebView)
226
+ - 모바일 웹앱
227
+ - SPA (Single Page Application)
228
+ - file:// URL 기반 앱
229
+
230
+ ## 📦 파일 구조
231
+
232
+ ```
233
+ DomQuery/
234
+ ├── domquery.js # 핵심 라이브러리
235
+ ├── src/
236
+ │ ├── ajax.js # Ajax 모듈
237
+ │ ├── alert.js # Alert 모듈
238
+ │ ├── select.js # Select 모듈
239
+ │ ├── animate.js # Animation 모듈
240
+ │ ├── lazyLoadImages.js # LazyLoad 모듈
241
+ │ ├── pulling.js # Pulling 모듈
242
+ │ ├── AES.js # 암호화 유틸리티
243
+ │ └── SHA256.js # 해시 유틸리티
244
+ └── docs/ # 문서
245
+ ```
246
+
247
+ ## 🤝 기여
248
+
249
+ 기여를 환영합니다! Issues와 Pull Requests를 통해 참여해주세요.
250
+
251
+ - [기여 가이드라인](https://github.com/domquery-com/domquery/blob/main/CONTRIBUTING.md)
252
+ - [행동 강령](https://github.com/domquery-com/domquery/blob/main/CODE_OF_CONDUCT.md)
253
+
254
+ ## 📄 라이선스
255
+
256
+ MIT 라이선스 - 자세한 내용은 [LICENSE](LICENSE) 파일을 참조하세요.
257
+
258
+ ## 👥 개발자
259
+
260
+ - **Byeonghee Gong** - bankcgi@naver.com
261
+ - **Taeyoon Gong** - domquery.com@gmail.com
262
+
263
+ ## 🔗 링크
264
+
265
+ - [공식 웹사이트](https://domquery.com)
266
+ - [문서](https://domquery.com/?introduction)
267
+ - [GitHub Issues](https://github.com/domquery-com/domquery/issues)
268
+ - [GitHub Discussions](https://github.com/domquery-com/domquery/discussions)
269
+
270
+ ---
271
+
272
+ ⭐ 이 프로젝트가 도움이 되었다면 Star를 눌러주세요!
273
+
package/README.md ADDED
@@ -0,0 +1,272 @@
1
+ # DomQuery
2
+
3
+ > Complete all features needed for web app development in one unified ecosystem
4
+
5
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
6
+ [![Version](https://img.shields.io/badge/version-1.0.0-blue.svg)](https://github.com/domquery-com/domquery)
7
+
8
+ **DomQuery** is a modern JavaScript library that integrates all features needed for web app development.
9
+ It is especially optimized for hybrid app/WebView environments.
10
+
11
+ ## ✨ Key Features
12
+
13
+ - 🚀 **Powerful Features**: Advanced custom selectors, native Promise, 30+ easing functions
14
+ - 📱 **Hybrid App Specialized**: Automatic WebView Bridge support, perfect file:// URL handling
15
+ - 🎨 **Mobile UX Patterns**: Alert, Select, Pulling and other mobile-optimized UI
16
+ - 🔗 **Unified Ecosystem**: DOM manipulation, Ajax, Animation, History and all-in-one solution
17
+ - ⚡ **Modern API**: Native Promise, async/await support
18
+
19
+ ## 📊 DomQuery's Key Characteristics
20
+
21
+ | Feature | Description |
22
+ |---------|-------------|
23
+ | Custom Selectors | **Rich** (text=, depth=, sibling[] etc.) |
24
+ | Promise | **Native Promise** support |
25
+ | Animation | **Advanced** (30+ easing functions) |
26
+ | WebView Bridge | **Automatic support** |
27
+ | History Management | **Built-in** |
28
+ | Mobile UX | **Built-in** (Alert, Select, Pulling etc.) |
29
+
30
+ ## 🚀 Quick Start
31
+
32
+ ### Installation
33
+
34
+ Install using the following commands in terminal (command line):
35
+
36
+ #### npm (Node Package Manager)
37
+ ```bash
38
+ # Basic installation (local)
39
+ npm install domquery-com
40
+
41
+ # Install specific version
42
+ npm install domquery-com@1.0.0
43
+
44
+ # Install as dev dependency
45
+ npm install domquery-com --save-dev
46
+
47
+ # Global installation (not recommended)
48
+ npm install -g domquery-com
49
+ ```
50
+
51
+ #### yarn
52
+ ```bash
53
+ # Basic installation
54
+ yarn add domquery-com
55
+
56
+ # Install specific version
57
+ yarn add domquery-com@1.0.0
58
+
59
+ # Install as dev dependency
60
+ yarn add domquery-com --dev
61
+ ```
62
+
63
+ #### pnpm
64
+ ```bash
65
+ # Basic installation
66
+ pnpm add domquery-com
67
+
68
+ # Install specific version
69
+ pnpm add domquery-com@1.0.0
70
+
71
+ # Install as dev dependency
72
+ pnpm add -D domquery-com
73
+ ```
74
+
75
+ #### Verify Installation
76
+ ```bash
77
+ # Check installed version
78
+ npm list domquery-com
79
+
80
+ # or
81
+ npm info domquery-com version
82
+ ```
83
+
84
+ > **Note**: npm installs the entire package (original + minified).
85
+ > However, you can choose which version (original or minified) to use in your code.
86
+
87
+ ### Usage in Node.js / Bundlers
88
+
89
+ #### Choosing Original vs Minified
90
+
91
+ When installing via npm, both original and minified versions are installed, but you can choose which version to use in your code:
92
+
93
+ **Original (Development - Easy debugging)**
94
+ ```javascript
95
+ const $ = require('domquery-com');
96
+ // or
97
+ import $ from 'domquery-com';
98
+ ```
99
+
100
+ **Minified (Production - Minimized file size)**
101
+ ```javascript
102
+ const $ = require('domquery-com/min');
103
+ // or
104
+ import $ from 'domquery-com/minified';
105
+ ```
106
+
107
+ **Bundle Configuration (Webpack, Vite, etc.)**
108
+
109
+ When using a bundler, you can configure it to include only the minified version in production builds:
110
+
111
+ ```javascript
112
+ // webpack.config.js Example
113
+ module.exports = {
114
+ resolve: {
115
+ alias: {
116
+ 'domquery-com': process.env.NODE_ENV === 'production'
117
+ ? 'domquery-com/min'
118
+ : 'domquery-com'
119
+ }
120
+ }
121
+ };
122
+ ```
123
+
124
+ #### CommonJS (require)
125
+ ```javascript
126
+ // Original version (default)
127
+ const $ = require('domquery-com');
128
+
129
+ // Minified version
130
+ const $ = require('domquery-com/min');
131
+ ```
132
+
133
+ #### ES Modules (import)
134
+ ```javascript
135
+ // Original version (default)
136
+ import $ from 'domquery-com';
137
+
138
+ // Minified version
139
+ import $ from 'domquery-com/minified';
140
+ ```
141
+
142
+ #### Browser (HTML)
143
+ ```html
144
+ <!-- When installed via npm, use directly from node_modules -->
145
+ <script src="./node_modules/domquery-com/domquery.js"></script>
146
+ <script src="./node_modules/domquery-com/domquery.min.js"></script>
147
+ ```
148
+
149
+ ### CDN Usage (Without npm installation)
150
+
151
+ When a package is registered on npm, **CDN is automatically provided**. You can use it immediately without npm installation.
152
+
153
+ ```html
154
+ <!-- npm-based CDN (automatically provided) - Recommended -->
155
+ <!-- Original version (Development) -->
156
+ <script src="https://cdn.jsdelivr.net/npm/domquery-com@1.0.0/domquery.js"></script>
157
+ <!-- or -->
158
+ <script src="https://unpkg.com/domquery-com@1.0.0/domquery.js"></script>
159
+
160
+ <!-- Minified version (Production recommended) -->
161
+ <script src="https://cdn.jsdelivr.net/npm/domquery-com@1.0.0/domquery.min.js"></script>
162
+ <!-- or -->
163
+ <script src="https://unpkg.com/domquery-com@1.0.0/domquery.min.js"></script>
164
+
165
+ <!-- Latest version (version number can be omitted) -->
166
+ <script src="https://unpkg.com/domquery-com/domquery.min.js"></script>
167
+ ```
168
+
169
+ > **Note**:
170
+ > - **npm-based CDN** is automatically provided when a package is registered on npm.
171
+ > - Both `unpkg` and `jsdelivr` are free CDN services.
172
+ > - It is recommended to specify a specific version (`@1.0.0`) in production.
173
+ > - The `unpkg` and `jsdelivr` fields in `package.json` automatically point to the minified version.
174
+
175
+ #### Loading Additional Modules (추가 모듈 로드)
176
+
177
+ If you need to load additional modules separately, you can access them via CDN:
178
+
179
+ ```html
180
+ <!-- Main library (메인 라이브러리) -->
181
+ <script src="https://unpkg.com/domquery-com@1.0.0/domquery.min.js"></script>
182
+
183
+ <!-- Additional modules (추가 모듈) -->
184
+ <script src="https://unpkg.com/domquery-com@1.0.0/src_min/alert.min.js"></script>
185
+ <script src="https://unpkg.com/domquery-com@1.0.0/src_min/ajax.min.js"></script>
186
+ <script src="https://unpkg.com/domquery-com@1.0.0/src_min/select.min.js"></script>
187
+ <script src="https://unpkg.com/domquery-com@1.0.0/src_min/animate.min.js"></script>
188
+ <!-- etc... -->
189
+
190
+ <!-- Or using jsdelivr -->
191
+ <script src="https://cdn.jsdelivr.net/npm/domquery-com@1.0.0/src_min/alert.min.js"></script>
192
+ ```
193
+
194
+ > **Note**: All files included in the `files` field of `package.json` are accessible via CDN.
195
+ > (`package.json`의 `files` 필드에 포함된 모든 파일은 CDN을 통해 접근 가능합니다.)
196
+
197
+ ### Usage Examples
198
+
199
+ ```javascript
200
+ // DOM manipulation
201
+ $('.my-element').addClass('active').css('color', 'red');
202
+
203
+ // Ajax (Promise-based)
204
+ const data = await $.ajax({
205
+ url: '/api/data',
206
+ method: 'GET'
207
+ });
208
+
209
+ // Alert (Mobile-optimized)
210
+ $alert('Hello World!', {
211
+ radius: '15px',
212
+ background: '#68717e'
213
+ });
214
+ ```
215
+
216
+ ## 📖 Documentation
217
+
218
+ - [Official Documentation](https://domquery.com)
219
+ - [Introduction](https://domquery.com/?introduction)
220
+ - [API Reference](https://domquery.com)
221
+ - [Examples](https://domquery.com)
222
+
223
+ ## 🎯 Use Cases
224
+
225
+ - Hybrid app development (Android/iOS WebView)
226
+ - Mobile web apps
227
+ - SPA (Single Page Application)
228
+ - file:// URL-based apps
229
+
230
+ ## 📦 File Structure
231
+
232
+ ```
233
+ DomQuery/
234
+ ├── domquery.js # Core library
235
+ ├── src/
236
+ │ ├── ajax.js # Ajax module
237
+ │ ├── alert.js # Alert module
238
+ │ ├── select.js # Select module
239
+ │ ├── animate.js # Animation module
240
+ │ ├── lazyLoadImages.js # LazyLoad module
241
+ │ ├── pulling.js # Pulling module
242
+ │ ├── AES.js # Encryption utility
243
+ │ └── SHA256.js # Hash utility
244
+ └── docs/ # Documentation
245
+ ```
246
+
247
+ ## 🤝 Contributing
248
+
249
+ Contributions are welcome! Please participate through Issues and Pull Requests.
250
+
251
+ - [Contributing Guidelines](https://github.com/domquery-com/domquery/blob/main/CONTRIBUTING.md)
252
+ - [Code of Conduct](https://github.com/domquery-com/domquery/blob/main/CODE_OF_CONDUCT.md)
253
+
254
+ ## 📄 License
255
+
256
+ MIT License - See [LICENSE](LICENSE) file for details.
257
+
258
+ ## 👥 Developers
259
+
260
+ - **Byeonghee Gong** - bankcgi@naver.com
261
+ - **Taeyoon Gong** - domquery.com@gmail.com
262
+
263
+ ## 🔗 Links
264
+
265
+ - [Official Website](https://domquery.com)
266
+ - [Documentation](https://domquery.com/?introduction)
267
+ - [GitHub Issues](https://github.com/domquery-com/domquery/issues)
268
+ - [GitHub Discussions](https://github.com/domquery-com/domquery/discussions)
269
+
270
+ ---
271
+
272
+ ⭐ If this project helped you, please give it a Star!