@udi-organization/udi-package 1.0.29 → 1.0.31
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/index.js +19 -14
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/udi-package-1.0.29.tgz +0 -0
- package/webpack.config.cjs +0 -46
package/dist/index.js
CHANGED
|
@@ -2087,7 +2087,7 @@ var UdiTable = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(fu
|
|
|
2087
2087
|
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__["default"].createElement("td", {
|
|
2088
2088
|
key: "cell-".concat(rowIndex, "-").concat(colIndex, "-").concat(column.dataField),
|
|
2089
2089
|
title: row[column.dataField] // Add title attribute for tooltip
|
|
2090
|
-
}, column.render ? column.render(row[column.dataField], row, rowIndex, column.dataField, name) : row[column.dataField]);
|
|
2090
|
+
}, column.render ? column.render(row[column.dataField], row, rowIndex + 1, column.dataField, name) : row[column.dataField]);
|
|
2091
2091
|
}));
|
|
2092
2092
|
}) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__["default"].createElement("tr", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__["default"].createElement("td", {
|
|
2093
2093
|
colSpan: columns.length,
|
|
@@ -2208,7 +2208,7 @@ UdiTable.displayName = 'UdiTable';
|
|
|
2208
2208
|
/*!*********************************!*\
|
|
2209
2209
|
!*** ./src/utils/formatDate.js ***!
|
|
2210
2210
|
\*********************************/
|
|
2211
|
-
/***/ ((
|
|
2211
|
+
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
2212
2212
|
|
|
2213
2213
|
__webpack_require__.r(__webpack_exports__);
|
|
2214
2214
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
@@ -2224,7 +2224,7 @@ function formatDate(date) {
|
|
|
2224
2224
|
/*!******************************!*\
|
|
2225
2225
|
!*** ./src/utils/helpers.js ***!
|
|
2226
2226
|
\******************************/
|
|
2227
|
-
/***/ ((
|
|
2227
|
+
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
2228
2228
|
|
|
2229
2229
|
__webpack_require__.r(__webpack_exports__);
|
|
2230
2230
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
@@ -2271,7 +2271,7 @@ function sleep(time) {
|
|
|
2271
2271
|
/*!****************************!*\
|
|
2272
2272
|
!*** ./src/utils/index.js ***!
|
|
2273
2273
|
\****************************/
|
|
2274
|
-
/***/ ((
|
|
2274
|
+
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
2275
2275
|
|
|
2276
2276
|
__webpack_require__.r(__webpack_exports__);
|
|
2277
2277
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
@@ -2294,7 +2294,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
2294
2294
|
/*!***************************!*\
|
|
2295
2295
|
!*** ./src/utils/math.js ***!
|
|
2296
2296
|
\***************************/
|
|
2297
|
-
/***/ ((
|
|
2297
|
+
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
2298
2298
|
|
|
2299
2299
|
__webpack_require__.r(__webpack_exports__);
|
|
2300
2300
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
@@ -2409,17 +2409,21 @@ var __webpack_exports__ = {};
|
|
|
2409
2409
|
\**********************/
|
|
2410
2410
|
__webpack_require__.r(__webpack_exports__);
|
|
2411
2411
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
2412
|
-
/* harmony export */ UdiTable: () => (/* reexport safe */
|
|
2413
|
-
/* harmony export */ add: () => (/* reexport safe */
|
|
2414
|
-
/* harmony export */ formatDate: () => (/* reexport safe */
|
|
2415
|
-
/* harmony export */ isObject: () => (/* reexport safe */
|
|
2416
|
-
/* harmony export */ sleep: () => (/* reexport safe */
|
|
2417
|
-
/* harmony export */ subtract: () => (/* reexport safe */
|
|
2412
|
+
/* harmony export */ UdiTable: () => (/* reexport safe */ _components_udiTable_UdiTable_jsx__WEBPACK_IMPORTED_MODULE_0__["default"]),
|
|
2413
|
+
/* harmony export */ add: () => (/* reexport safe */ _utils_index_js__WEBPACK_IMPORTED_MODULE_1__.add),
|
|
2414
|
+
/* harmony export */ formatDate: () => (/* reexport safe */ _utils_index_js__WEBPACK_IMPORTED_MODULE_1__.formatDate),
|
|
2415
|
+
/* harmony export */ isObject: () => (/* reexport safe */ _utils_index_js__WEBPACK_IMPORTED_MODULE_1__.isObject),
|
|
2416
|
+
/* harmony export */ sleep: () => (/* reexport safe */ _utils_index_js__WEBPACK_IMPORTED_MODULE_1__.sleep),
|
|
2417
|
+
/* harmony export */ subtract: () => (/* reexport safe */ _utils_index_js__WEBPACK_IMPORTED_MODULE_1__.subtract),
|
|
2418
|
+
/* harmony export */ test01: () => (/* binding */ test01)
|
|
2418
2419
|
/* harmony export */ });
|
|
2419
|
-
/* harmony import */ var
|
|
2420
|
-
/* harmony import */ var
|
|
2420
|
+
/* harmony import */ var _components_udiTable_UdiTable_jsx__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./components/udiTable/UdiTable.jsx */ "./src/components/udiTable/UdiTable.jsx");
|
|
2421
|
+
/* harmony import */ var _utils_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils/index.js */ "./src/utils/index.js");
|
|
2421
2422
|
|
|
2422
2423
|
|
|
2424
|
+
function test01() {
|
|
2425
|
+
console.log('Hello from Udi Package!');
|
|
2426
|
+
}
|
|
2423
2427
|
})();
|
|
2424
2428
|
|
|
2425
2429
|
const __webpack_exports__UdiTable = __webpack_exports__.UdiTable;
|
|
@@ -2428,6 +2432,7 @@ const __webpack_exports__formatDate = __webpack_exports__.formatDate;
|
|
|
2428
2432
|
const __webpack_exports__isObject = __webpack_exports__.isObject;
|
|
2429
2433
|
const __webpack_exports__sleep = __webpack_exports__.sleep;
|
|
2430
2434
|
const __webpack_exports__subtract = __webpack_exports__.subtract;
|
|
2431
|
-
|
|
2435
|
+
const __webpack_exports__test01 = __webpack_exports__.test01;
|
|
2436
|
+
export { __webpack_exports__UdiTable as UdiTable, __webpack_exports__add as add, __webpack_exports__formatDate as formatDate, __webpack_exports__isObject as isObject, __webpack_exports__sleep as sleep, __webpack_exports__subtract as subtract, __webpack_exports__test01 as test01 };
|
|
2432
2437
|
|
|
2433
2438
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","mappings":";;;;;;;;;;;;;;;;;AAAA;AACgH;AACjB;AAC/F,8BAA8B,mFAA2B,CAAC,4FAAqC;AAC/F;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,OAAO;AACP,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,+GAA+G,MAAM,YAAY,aAAa,aAAa,aAAa,aAAa,WAAW,MAAM,UAAU,KAAK,YAAY,WAAW,YAAY,aAAa,aAAa,aAAa,aAAa,OAAO,KAAK,KAAK,UAAU,UAAU,MAAM,MAAM,UAAU,KAAK,YAAY,aAAa,OAAO,KAAK,UAAU,UAAU,YAAY,WAAW,UAAU,OAAO,KAAK,UAAU,YAAY,WAAW,YAAY,OAAO,KAAK,YAAY,WAAW,UAAU,OAAO,KAAK,YAAY,aAAa,aAAa,aAAa,WAAW,UAAU,UAAU,YAAY,aAAa,OAAO,KAAK,YAAY,aAAa,OAAO,KAAK,YAAY,OAAO,KAAK,UAAU,YAAY,aAAa,aAAa,WAAW,UAAU,YAAY,aAAa,OAAO,KAAK,YAAY,aAAa,OAAO,KAAK,YAAY,aAAa,WAAW,UAAU,YAAY,WAAW,UAAU,YAAY,aAAa,OAAO,KAAK,YAAY,OAAO,KAAK,YAAY,aAAa,WAAW,UAAU,YAAY,WAAW,UAAU,YAAY,aAAa,OAAO,KAAK,YAAY,OAAO,KAAK,UAAU,YAAY,aAAa,OAAO,KAAK,UAAU,YAAY,aAAa,aAAa,OAAO,KAAK,UAAU,UAAU,UAAU,YAAY,OAAO,KAAK,YAAY,aAAa,WAAW,UAAU,YAAY,WAAW,UAAU,YAAY,OAAO,KAAK,YAAY,OAAO,KAAK,UAAU,YAAY,WAAW,MAAM,KAAK,UAAU,YAAY,WAAW,MAAM,KAAK,YAAY,WAAW,UAAU,OAAO,KAAK,YAAY,aAAa,aAAa,WAAW,UAAU,YAAY,aAAa,OAAO,KAAK,YAAY,aAAa,OAAO,KAAK,YAAY,OAAO,UAAU,KAAK,YAAY,aAAa,aAAa,WAAW,UAAU,YAAY,aAAa,OAAO,UAAU,KAAK,YAAY,WAAW,YAAY,aAAa,aAAa,OAAO,KAAK,UAAU,UAAU,MAAM,KAAK,YAAY,aAAa,OAAO,KAAK,YAAY,aAAa,OAAO,KAAK,YAAY,OAAO,UAAU,KAAK,UAAU,YAAY,aAAa,WAAW,OAAO,MAAM,YAAY,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,OAAO,KAAK,YAAY,aAAa,WAAW,YAAY,WAAW,UAAU,YAAY,OAAO,KAAK,UAAU,YAAY,aAAa,OAAO,KAAK,YAAY,OAAO,KAAK,UAAU,MAAM,KAAK,YAAY,WAAW,OAAO,KAAK,UAAU,MAAM,KAAK,UAAU,YAAY,aAAa,WAAW,MAAM,KAAK,YAAY,WAAW,UAAU,UAAU,OAAO,KAAK,YAAY,OAAO,KAAK,YAAY,OAAO,KAAK,YAAY,OAAO,KAAK,YAAY,OAAO,KAAK,UAAU,YAAY,WAAW,YAAY,OAAO,KAAK,YAAY,WAAW,YAAY,WAAW,MAAM,KAAK,YAAY,aAAa,OAAO,KAAK,UAAU,YAAY,aAAa,WAAW,MAAM,KAAK,UAAU,UAAU,YAAY,aAAa,aAAa,aAAa,OAAO,KAAK,UAAU,UAAU,OAAO,KAAK,sBAAsB,uBAAuB,OAAO,UAAU,KAAK,UAAU,YAAY,aAAa,WAAW,YAAY,aAAa,WAAW,UAAU,MAAM,KAAK,UAAU,YAAY,WAAW,UAAU,UAAU,OAAO,KAAK,UAAU,YAAY,WAAW,MAAM,KAAK,YAAY,WAAW,OAAO,KAAK,YAAY,aAAa,aAAa,aAAa,WAAW,UAAU,UAAU,YAAY,OAAO,KAAK,YAAY,aAAa,OAAO,KAAK,YAAY,OAAO,KAAK,UAAU,OAAO,KAAK,UAAU,OAAO,KAAK,UAAU,UAAU,YAAY,OAAO,KAAK,YAAY,aAAa,WAAW,YAAY,WAAW,YAAY,WAAW,YAAY,aAAa,OAAO,KAAK,YAAY,aAAa,aAAa,WAAW,UAAU,YAAY,WAAW,YAAY,WAAW,OAAO,KAAK,YAAY,aAAa,OAAO,KAAK,YAAY,WAAW,YAAY,WAAW,MAAM,KAAK,YAAY,WAAW,YAAY,WAAW,YAAY,OAAO,KAAK,YAAY,aAAa,OAAO,KAAK,YAAY,aAAa,WAAW,MAAM,KAAK,YAAY,aAAa,OAAO,WAAW,YAAY,MAAM,KAAK,UAAU,MAAM,KAAK,YAAY,MAAM,MAAM,YAAY,MAAM,KAAK,YAAY,MAAM,MAAM,YAAY,MAAM,KAAK,YAAY,OAAO,KAAK,UAAU,MAAM,KAAK,YAAY,OAAO,MAAM,YAAY,WAAW,YAAY,OAAO,KA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;AACA;AACA;AACA;AACA;AACA,UAAU;AACV,sDAAsD,qBAAqB;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA,E;;;;;;;;;;ACpFa;;AAEb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD,cAAc;AACrE;AACA;AACA;AACA;AACA,E;;;;;;;;;;ACfa;;AAEb;AACA;AACA;AACA,kBAAkB,wBAAwB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,iBAAiB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,4BAA4B;AAChD;AACA;AACA;AACA;AACA;AACA,qBAAqB,6BAA6B;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,E;;;;;;;;;;ACnFa;;AAEb;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kC;;;;;;;;;;ACjCa;;AAEb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oC;;;;;;;;;;ACTa;;AAEb;AACA;AACA,cAAc,KAAwC,GAAG,sBAAiB,GAAG,CAAI;AACjF;AACA;AACA;AACA;AACA,gD;;;;;;;;;;ACTa;;AAEb;AACA;AACA;AACA;AACA,kDAAkD;AAClD;AACA;AACA,0CAA0C;AAC1C;AACA;AACA;AACA,iFAAiF;AACjF;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AA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","sources":["webpack://udi-package/./src/components/udiTable/UdiTable.css","webpack://udi-package/./node_modules/css-loader/dist/runtime/api.js","webpack://udi-package/./node_modules/css-loader/dist/runtime/sourceMaps.js","webpack://udi-package/./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack://udi-package/./node_modules/style-loader/dist/runtime/insertBySelector.js","webpack://udi-package/./node_modules/style-loader/dist/runtime/insertStyleElement.js","webpack://udi-package/./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js","webpack://udi-package/./node_modules/style-loader/dist/runtime/styleDomAPI.js","webpack://udi-package/./node_modules/style-loader/dist/runtime/styleTagTransform.js","webpack://udi-package/./src/components/udiTable/UdiTable.css?8f88","webpack://udi-package/./src/components/udiTable/UdiTable.jsx","webpack://udi-package/./src/utils/formatDate.js","webpack://udi-package/./src/utils/helpers.js","webpack://udi-package/./src/utils/index.js","webpack://udi-package/./src/utils/math.js","webpack://udi-package/external module \"react\"","webpack://udi-package/webpack/bootstrap","webpack://udi-package/webpack/runtime/compat get default export","webpack://udi-package/webpack/runtime/define property getters","webpack://udi-package/webpack/runtime/hasOwnProperty shorthand","webpack://udi-package/webpack/runtime/make namespace object","webpack://udi-package/webpack/runtime/nonce","webpack://udi-package/./src/index.js"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/* UdiTable 樣式 */\n\n.udi-table-container {\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', sans-serif;\n background: white;\n border-radius: 8px;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);\n overflow: hidden;\n width: 100%;\n}\n\n/* 錯誤訊息樣式 */\n.udi-table-container .error-message {\n background: #f8d7da;\n color: #721c24;\n padding: 12px 16px;\n border-left: 4px solid #dc3545;\n margin-bottom: 16px;\n border-radius: 4px;\n font-weight: 500;\n}\n\n@media (max-width: 768px) {\n .udi-table-container .error-message {\n margin: 8px;\n font-size: 14px;\n }\n}\n\n/* 篩選器樣式 */\n.udi-table-filter {\n background: #f8f9fa;\n border-bottom: 1px solid #e9ecef;\n}\n\n.udi-table-filter .filter-section .basic-filter {\n padding: 16px;\n display: flex;\n align-items: center;\n gap: 12px;\n flex-wrap: wrap;\n}\n\n.udi-table-filter .filter-section .basic-filter .filter-column-selector {\n display: flex;\n align-items: center;\n gap: 8px;\n white-space: nowrap;\n}\n\n.udi-table-filter .filter-section .basic-filter .filter-column-selector label {\n font-weight: 500;\n color: #495057;\n font-size: 14px;\n}\n\n.udi-table-filter .filter-section .basic-filter .filter-column-selector .filter-column-select {\n padding: 8px 12px;\n border: 1px solid #ced4da;\n border-radius: 4px;\n background: white;\n font-size: 14px;\n cursor: pointer;\n outline: none;\n transition: border-color 0.15s ease-in-out;\n min-width: 120px;\n}\n\n.udi-table-filter .filter-section .basic-filter .filter-column-selector .filter-column-select:focus {\n border-color: #007bff;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.udi-table-filter .filter-section .basic-filter .filter-column-selector .filter-column-select:hover {\n border-color: #adb5bd;\n}\n\n.udi-table-filter .filter-section .basic-filter .filter-input {\n flex: 1;\n padding: 8px 12px;\n border: 1px solid #ced4da;\n border-radius: 4px;\n font-size: 14px;\n outline: none;\n transition: border-color 0.15s ease-in-out;\n min-width: 200px;\n}\n\n.udi-table-filter .filter-section .basic-filter .filter-input:focus {\n border-color: #007bff;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.udi-table-filter .filter-section .basic-filter .advanced-filter-toggle {\n padding: 8px 16px;\n background: #007bff;\n color: white;\n border: none;\n border-radius: 4px;\n cursor: pointer;\n font-size: 14px;\n transition: background-color 0.15s ease-in-out;\n white-space: nowrap;\n}\n\n.udi-table-filter .filter-section .basic-filter .advanced-filter-toggle:hover {\n background: #0056b3;\n}\n\n.udi-table-filter .filter-section .basic-filter .reset-button {\n padding: 8px 16px;\n background: #6c757d;\n color: white;\n border: none;\n border-radius: 4px;\n cursor: pointer;\n font-size: 14px;\n transition: background-color 0.15s ease-in-out;\n white-space: nowrap;\n}\n\n.udi-table-filter .filter-section .basic-filter .reset-button:hover {\n background: #5a6268;\n}\n\n.udi-table-filter .filter-section .advanced-filter {\n padding: 16px;\n background: #f1f3f4;\n border-top: 1px solid #e9ecef;\n}\n\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 16px;\n}\n\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-header h4 {\n margin: 0;\n color: #495057;\n font-size: 16px;\n font-weight: 600;\n}\n\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-header .clear-advanced-button {\n padding: 6px 12px;\n background: #dc3545;\n color: white;\n border: none;\n border-radius: 4px;\n cursor: pointer;\n font-size: 12px;\n transition: background-color 0.15s ease-in-out;\n}\n\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-header .clear-advanced-button:hover {\n background: #c82333;\n}\n\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));\n gap: 12px;\n}\n\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item label {\n font-weight: 500;\n color: #495057;\n font-size: 13px;\n}\n\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item .advanced-filter-input {\n padding: 8px 12px;\n border: 1px solid #ced4da;\n border-radius: 4px;\n font-size: 14px;\n outline: none;\n transition: border-color 0.15s ease-in-out;\n background: white;\n}\n\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item .advanced-filter-input:focus {\n border-color: #007bff;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item .advanced-filter-input:hover {\n border-color: #adb5bd;\n}\n\n/* 滾動位置顯示器 */\n.scroll-position-indicator {\n padding: 8px 16px;\n background: #e3f2fd;\n border-bottom: 1px solid #bbdefb;\n font-size: 12px;\n color: #1565c0;\n font-family: 'Courier New', monospace;\n text-align: center;\n}\n\n/* 表格包裝器 */\n.udi-table-wrapper {\n overflow-x: auto;\n height: 300px;\n overflow-y: auto;\n border: 1px solid #e9ecef;\n -webkit-overflow-scrolling: touch;\n}\n\n.udi-table-wrapper::-webkit-scrollbar {\n width: 8px;\n height: 8px;\n}\n\n.udi-table-wrapper::-webkit-scrollbar-track {\n background: #f8f9fa;\n border-radius: 4px;\n}\n\n.udi-table-wrapper::-webkit-scrollbar-thumb {\n background: #cbd5e0;\n border-radius: 4px;\n}\n\n.udi-table-wrapper::-webkit-scrollbar-thumb:hover {\n background: #a0aec0;\n}\n\n/* 表格樣式 */\n.udi-table {\n width: 200%;\n min-width: 800px;\n border-collapse: collapse;\n font-size: 14px;\n}\n\n.udi-table th,\n.udi-table td {\n padding: 12px 16px;\n text-align: left;\n border-bottom: 1px solid #e9ecef;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n max-width: 300px;\n}\n\n.udi-table th {\n background: #f8f9fa;\n font-weight: 600;\n color: #495057;\n position: sticky;\n top: 0;\n z-index: 10;\n border-bottom: 2px solid #dee2e6;\n}\n\n.udi-table th.sortable {\n cursor: pointer;\n user-select: none;\n transition: background-color 0.15s ease-in-out;\n}\n\n.udi-table th.sortable:hover {\n background: #e9ecef;\n}\n\n.udi-table th.sortable .sort-icon {\n opacity: 0.4;\n}\n\n.udi-table th.sorted {\n background: #e3f2fd;\n color: #1976d2;\n}\n\n.udi-table th.sorted .sort-icon {\n opacity: 1;\n}\n\n.udi-table th .th-content {\n display: flex;\n align-items: center;\n justify-content: space-between;\n min-width: 0;\n}\n\n.udi-table th .sort-icon {\n margin-left: 8px;\n font-size: 12px;\n opacity: 0.7;\n flex-shrink: 0;\n}\n\n.udi-table tbody tr {\n transition: background-color 0.15s ease-in-out;\n}\n\n.udi-table tbody tr:hover {\n background: #f8f9fa;\n}\n\n.udi-table tbody tr:nth-child(even) {\n background: #fdfdfe;\n}\n\n.udi-table tbody tr:nth-child(even):hover {\n background: #f8f9fa;\n}\n\n.udi-table tbody td:first-child {\n left: 0;\n background: inherit;\n z-index: 5;\n border-right: 1px solid #e9ecef;\n}\n\n.udi-table .no-data {\n text-align: center;\n color: #6c757d;\n font-style: italic;\n padding: 32px;\n}\n\n.udi-table .loading-state {\n text-align: center;\n padding: 40px 20px;\n}\n\n.udi-table .loading-state .loading-spinner {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 12px;\n}\n\n.udi-table .loading-state .loading-spinner .spinner {\n width: 32px;\n height: 32px;\n border: 3px solid #f3f3f3;\n border-top: 3px solid #007bff;\n border-radius: 50%;\n animation: spin 1s linear infinite;\n}\n\n.udi-table .loading-state .loading-spinner span {\n color: #868e96;\n font-size: 14px;\n}\n\n@keyframes spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n}\n\n/* 分頁樣式 */\n.udi-table-pagination {\n padding: 16px;\n background: #f8f9fa;\n border-top: 1px solid #e9ecef;\n display: flex;\n justify-content: space-between;\n align-items: center;\n flex-wrap: wrap;\n gap: 12px;\n}\n\n.udi-table-pagination .pagination-info {\n display: flex;\n flex-direction: column;\n gap: 8px;\n color: #6c757d;\n font-size: 14px;\n}\n\n.udi-table-pagination .pagination-info .page-size-selector {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.udi-table-pagination .pagination-info .page-size-selector label {\n font-weight: 500;\n color: #495057;\n}\n\n.udi-table-pagination .pagination-info .page-size-selector .page-size-select {\n padding: 4px 8px;\n border: 1px solid #ced4da;\n border-radius: 4px;\n background: white;\n font-size: 14px;\n cursor: pointer;\n outline: none;\n transition: border-color 0.15s ease-in-out;\n}\n\n.udi-table-pagination .pagination-info .page-size-selector .page-size-select:focus {\n border-color: #007bff;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.udi-table-pagination .pagination-info .page-size-selector .page-size-select:hover {\n border-color: #adb5bd;\n}\n\n.udi-table-pagination .pagination-info .page-size-selector span {\n color: #495057;\n}\n\n.udi-table-pagination .pagination-info .pagination-summary {\n font-size: 13px;\n}\n\n.udi-table-pagination .pagination-controls {\n display: flex;\n gap: 4px;\n align-items: center;\n}\n\n.udi-table-pagination .pagination-controls .current-page-mobile {\n padding: 8px 12px;\n background: #007bff;\n color: white;\n border-radius: 4px;\n font-size: 14px;\n font-weight: 500;\n min-width: 60px;\n text-align: center;\n border: 1px solid #007bff;\n}\n\n.udi-table-pagination .pagination-controls .pagination-button {\n padding: 6px 12px;\n border: 1px solid #ced4da;\n background: white;\n color: #495057;\n cursor: pointer;\n border-radius: 4px;\n font-size: 14px;\n transition: all 0.15s ease-in-out;\n min-width: 40px;\n}\n\n.udi-table-pagination .pagination-controls .pagination-button:hover:not(:disabled) {\n background: #e9ecef;\n border-color: #adb5bd;\n}\n\n.udi-table-pagination .pagination-controls .pagination-button:disabled {\n background: #f8f9fa;\n color: #6c757d;\n cursor: not-allowed;\n opacity: 0.6;\n}\n\n.udi-table-pagination .pagination-controls .pagination-button.disabled {\n background: #f1f3f4;\n color: #9aa0a6;\n cursor: not-allowed;\n opacity: 0.5;\n border-color: #dadce0;\n}\n\n.udi-table-pagination .pagination-controls .pagination-button.disabled:hover {\n background: #f1f3f4;\n border-color: #dadce0;\n}\n\n.udi-table-pagination .pagination-controls .pagination-button.active {\n background: #007bff;\n border-color: #007bff;\n color: white;\n}\n\n.udi-table-pagination .pagination-controls .pagination-button.active:hover {\n background: #0056b3;\n border-color: #0056b3;\n}\n\n/* 響應式設計 */\n\n/* 大螢幕 (1200px+) - 桌面 */\n@media (min-width: 1200px) {\n .udi-table-wrapper {\n height: 400px;\n }\n \n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid {\n grid-template-columns: repeat(3, 1fr);\n }\n}\n\n/* 中等螢幕 (992px - 1199px) - 桌面/平板橫向 */\n@media (max-width: 1199px) and (min-width: 992px) {\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid {\n grid-template-columns: repeat(2, 1fr);\n }\n}\n\n/* 小螢幕 (768px - 991px) - 平板 */\n@media (max-width: 991px) and (min-width: 768px) {\n .udi-table-container {\n border-radius: 6px;\n }\n\n .udi-table-wrapper {\n height: 350px;\n }\n\n .udi-table {\n min-width: 600px;\n }\n \n .udi-table th,\n .udi-table td {\n padding: 10px 12px;\n font-size: 13px;\n max-width: 200px;\n }\n\n .udi-table-filter .filter-section .basic-filter {\n flex-wrap: wrap;\n gap: 10px;\n }\n \n .udi-table-filter .filter-section .basic-filter .filter-input {\n min-width: 180px;\n }\n\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid {\n grid-template-columns: repeat(2, 1fr);\n gap: 10px;\n }\n\n .udi-table-pagination {\n padding: 12px;\n }\n \n .udi-table-pagination .pagination-info .page-size-selector {\n flex-direction: column;\n align-items: flex-start;\n gap: 4px;\n }\n}\n\n/* 手機螢幕 (481px - 767px) */\n@media (max-width: 767px) and (min-width: 481px) {\n .udi-table-container {\n border-radius: 4px;\n margin: 0 4px;\n }\n\n .udi-table-wrapper {\n height: 300px;\n }\n\n .udi-table {\n min-width: 500px;\n }\n \n .udi-table th,\n .udi-table td {\n padding: 8px 10px;\n font-size: 12px;\n max-width: 150px;\n }\n \n .udi-table th:first-child,\n .udi-table tbody td:first-child {\n position: sticky;\n left: 0;\n background: inherit;\n z-index: 5;\n border-right: 2px solid #e9ecef;\n font-weight: 600;\n }\n\n .scroll-position-indicator {\n padding: 6px 12px;\n font-size: 11px;\n }\n\n .udi-table-filter .filter-section .basic-filter {\n padding: 12px;\n flex-direction: column;\n align-items: stretch;\n gap: 8px;\n }\n\n .udi-table-filter .filter-section .basic-filter .filter-column-selector {\n justify-content: flex-start;\n }\n \n .udi-table-filter .filter-section .basic-filter .filter-column-selector label {\n font-size: 13px;\n }\n \n .udi-table-filter .filter-section .basic-filter .filter-column-selector .filter-column-select {\n min-width: 100px;\n flex: 1;\n font-size: 14px;\n }\n\n .udi-table-filter .filter-section .basic-filter .filter-input {\n min-width: auto;\n font-size: 16px;\n }\n\n .udi-table-filter .filter-section .basic-filter .advanced-filter-toggle,\n .udi-table-filter .filter-section .basic-filter .reset-button {\n align-self: stretch;\n font-size: 14px;\n }\n\n .udi-table-filter .filter-section .advanced-filter {\n padding: 12px;\n }\n\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-header {\n flex-direction: column;\n align-items: stretch;\n gap: 8px;\n }\n\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-header h4 {\n font-size: 14px;\n }\n \n .udi-table-filter .filter-section .advanced-filter .advanced-filter-header .clear-advanced-button {\n align-self: flex-end;\n }\n\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid {\n grid-template-columns: 1fr;\n gap: 8px;\n }\n\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item label {\n font-size: 12px;\n }\n \n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item .advanced-filter-input {\n font-size: 16px;\n }\n\n .udi-table-pagination {\n flex-direction: column;\n align-items: stretch;\n padding: 12px;\n gap: 8px;\n }\n\n .udi-table-pagination .pagination-info {\n text-align: center;\n }\n \n .udi-table-pagination .pagination-info .page-size-selector {\n justify-content: center;\n flex-wrap: wrap;\n }\n\n .udi-table-pagination .pagination-controls {\n justify-content: center;\n }\n \n .udi-table-pagination .pagination-controls .pagination-button {\n padding: 8px 12px;\n font-size: 13px;\n min-width: 36px;\n }\n}\n\n/* 極小螢幕 (320px - 480px) */\n@media (max-width: 480px) {\n .udi-table-container {\n border-radius: 0;\n margin: 0;\n box-shadow: none;\n border-left: 1px solid #e9ecef;\n border-right: 1px solid #e9ecef;\n }\n\n .udi-table-wrapper {\n height: 250px;\n border: none;\n }\n\n .udi-table {\n min-width: 400px;\n font-size: 11px;\n }\n \n .udi-table th,\n .udi-table td {\n padding: 6px 8px;\n font-size: 11px;\n max-width: 120px;\n }\n \n .udi-table th:first-child,\n .udi-table tbody td:first-child {\n min-width: 60px;\n }\n\n .scroll-position-indicator {\n padding: 4px 8px;\n font-size: 10px;\n }\n\n .udi-table-filter .filter-section .basic-filter {\n padding: 8px;\n gap: 6px;\n }\n\n .udi-table-filter .filter-section .basic-filter .filter-column-selector label {\n font-size: 12px;\n }\n \n .udi-table-filter .filter-section .basic-filter .filter-column-selector .filter-column-select {\n font-size: 13px;\n padding: 6px 8px;\n }\n\n .udi-table-filter .filter-section .basic-filter .filter-input {\n padding: 8px 10px;\n font-size: 16px;\n }\n\n .udi-table-filter .filter-section .basic-filter .advanced-filter-toggle,\n .udi-table-filter .filter-section .basic-filter .reset-button {\n padding: 8px 12px;\n font-size: 13px;\n }\n\n .udi-table-filter .filter-section .advanced-filter {\n padding: 8px;\n }\n\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-header h4 {\n font-size: 13px;\n }\n \n .udi-table-filter .filter-section .advanced-filter .advanced-filter-header .clear-advanced-button {\n padding: 4px 8px;\n font-size: 11px;\n }\n\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid {\n gap: 6px;\n }\n\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item label {\n font-size: 11px;\n }\n \n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item .advanced-filter-input {\n padding: 6px 8px;\n font-size: 16px;\n }\n\n .udi-table-pagination {\n padding: 8px;\n gap: 6px;\n }\n\n .udi-table-pagination .pagination-info {\n font-size: 12px;\n }\n \n .udi-table-pagination .pagination-info .page-size-selector {\n gap: 4px;\n }\n \n .udi-table-pagination .pagination-info .page-size-selector label {\n font-size: 11px;\n }\n \n .udi-table-pagination .pagination-info .page-size-selector .page-size-select {\n padding: 4px 6px;\n font-size: 12px;\n }\n \n .udi-table-pagination .pagination-info .pagination-summary {\n font-size: 11px;\n }\n\n .udi-table-pagination .pagination-controls {\n flex-wrap: wrap;\n gap: 2px;\n }\n\n .udi-table-pagination .pagination-controls .pagination-button {\n padding: 6px 8px;\n font-size: 11px;\n min-width: 28px;\n }\n}\n\n/* 橫向模式優化 */\n@media (orientation: landscape) and (max-height: 500px) {\n .udi-table-wrapper {\n height: 200px;\n }\n \n .udi-table-filter .filter-section .basic-filter {\n flex-direction: row;\n flex-wrap: wrap;\n }\n}\n\n/* 高DPI螢幕優化 */\n@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {\n .udi-table th,\n .udi-table td {\n border-width: 0.5px;\n }\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/udiTable/UdiTable.css\"],\"names\":[],\"mappings\":\"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\",\"sourcesContent\":[\"/* UdiTable 樣式 */\\n\\n.udi-table-container {\\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', sans-serif;\\n background: white;\\n border-radius: 8px;\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);\\n overflow: hidden;\\n width: 100%;\\n}\\n\\n/* 錯誤訊息樣式 */\\n.udi-table-container .error-message {\\n background: #f8d7da;\\n color: #721c24;\\n padding: 12px 16px;\\n border-left: 4px solid #dc3545;\\n margin-bottom: 16px;\\n border-radius: 4px;\\n font-weight: 500;\\n}\\n\\n@media (max-width: 768px) {\\n .udi-table-container .error-message {\\n margin: 8px;\\n font-size: 14px;\\n }\\n}\\n\\n/* 篩選器樣式 */\\n.udi-table-filter {\\n background: #f8f9fa;\\n border-bottom: 1px solid #e9ecef;\\n}\\n\\n.udi-table-filter .filter-section .basic-filter {\\n padding: 16px;\\n display: flex;\\n align-items: center;\\n gap: 12px;\\n flex-wrap: wrap;\\n}\\n\\n.udi-table-filter .filter-section .basic-filter .filter-column-selector {\\n display: flex;\\n align-items: center;\\n gap: 8px;\\n white-space: nowrap;\\n}\\n\\n.udi-table-filter .filter-section .basic-filter .filter-column-selector label {\\n font-weight: 500;\\n color: #495057;\\n font-size: 14px;\\n}\\n\\n.udi-table-filter .filter-section .basic-filter .filter-column-selector .filter-column-select {\\n padding: 8px 12px;\\n border: 1px solid #ced4da;\\n border-radius: 4px;\\n background: white;\\n font-size: 14px;\\n cursor: pointer;\\n outline: none;\\n transition: border-color 0.15s ease-in-out;\\n min-width: 120px;\\n}\\n\\n.udi-table-filter .filter-section .basic-filter .filter-column-selector .filter-column-select:focus {\\n border-color: #007bff;\\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\\n}\\n\\n.udi-table-filter .filter-section .basic-filter .filter-column-selector .filter-column-select:hover {\\n border-color: #adb5bd;\\n}\\n\\n.udi-table-filter .filter-section .basic-filter .filter-input {\\n flex: 1;\\n padding: 8px 12px;\\n border: 1px solid #ced4da;\\n border-radius: 4px;\\n font-size: 14px;\\n outline: none;\\n transition: border-color 0.15s ease-in-out;\\n min-width: 200px;\\n}\\n\\n.udi-table-filter .filter-section .basic-filter .filter-input:focus {\\n border-color: #007bff;\\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\\n}\\n\\n.udi-table-filter .filter-section .basic-filter .advanced-filter-toggle {\\n padding: 8px 16px;\\n background: #007bff;\\n color: white;\\n border: none;\\n border-radius: 4px;\\n cursor: pointer;\\n font-size: 14px;\\n transition: background-color 0.15s ease-in-out;\\n white-space: nowrap;\\n}\\n\\n.udi-table-filter .filter-section .basic-filter .advanced-filter-toggle:hover {\\n background: #0056b3;\\n}\\n\\n.udi-table-filter .filter-section .basic-filter .reset-button {\\n padding: 8px 16px;\\n background: #6c757d;\\n color: white;\\n border: none;\\n border-radius: 4px;\\n cursor: pointer;\\n font-size: 14px;\\n transition: background-color 0.15s ease-in-out;\\n white-space: nowrap;\\n}\\n\\n.udi-table-filter .filter-section .basic-filter .reset-button:hover {\\n background: #5a6268;\\n}\\n\\n.udi-table-filter .filter-section .advanced-filter {\\n padding: 16px;\\n background: #f1f3f4;\\n border-top: 1px solid #e9ecef;\\n}\\n\\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-header {\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n margin-bottom: 16px;\\n}\\n\\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-header h4 {\\n margin: 0;\\n color: #495057;\\n font-size: 16px;\\n font-weight: 600;\\n}\\n\\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-header .clear-advanced-button {\\n padding: 6px 12px;\\n background: #dc3545;\\n color: white;\\n border: none;\\n border-radius: 4px;\\n cursor: pointer;\\n font-size: 12px;\\n transition: background-color 0.15s ease-in-out;\\n}\\n\\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-header .clear-advanced-button:hover {\\n background: #c82333;\\n}\\n\\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-grid {\\n display: grid;\\n grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));\\n gap: 12px;\\n}\\n\\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item {\\n display: flex;\\n flex-direction: column;\\n gap: 4px;\\n}\\n\\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item label {\\n font-weight: 500;\\n color: #495057;\\n font-size: 13px;\\n}\\n\\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item .advanced-filter-input {\\n padding: 8px 12px;\\n border: 1px solid #ced4da;\\n border-radius: 4px;\\n font-size: 14px;\\n outline: none;\\n transition: border-color 0.15s ease-in-out;\\n background: white;\\n}\\n\\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item .advanced-filter-input:focus {\\n border-color: #007bff;\\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\\n}\\n\\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item .advanced-filter-input:hover {\\n border-color: #adb5bd;\\n}\\n\\n/* 滾動位置顯示器 */\\n.scroll-position-indicator {\\n padding: 8px 16px;\\n background: #e3f2fd;\\n border-bottom: 1px solid #bbdefb;\\n font-size: 12px;\\n color: #1565c0;\\n font-family: 'Courier New', monospace;\\n text-align: center;\\n}\\n\\n/* 表格包裝器 */\\n.udi-table-wrapper {\\n overflow-x: auto;\\n height: 300px;\\n overflow-y: auto;\\n border: 1px solid #e9ecef;\\n -webkit-overflow-scrolling: touch;\\n}\\n\\n.udi-table-wrapper::-webkit-scrollbar {\\n width: 8px;\\n height: 8px;\\n}\\n\\n.udi-table-wrapper::-webkit-scrollbar-track {\\n background: #f8f9fa;\\n border-radius: 4px;\\n}\\n\\n.udi-table-wrapper::-webkit-scrollbar-thumb {\\n background: #cbd5e0;\\n border-radius: 4px;\\n}\\n\\n.udi-table-wrapper::-webkit-scrollbar-thumb:hover {\\n background: #a0aec0;\\n}\\n\\n/* 表格樣式 */\\n.udi-table {\\n width: 200%;\\n min-width: 800px;\\n border-collapse: collapse;\\n font-size: 14px;\\n}\\n\\n.udi-table th,\\n.udi-table td {\\n padding: 12px 16px;\\n text-align: left;\\n border-bottom: 1px solid #e9ecef;\\n white-space: nowrap;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n max-width: 300px;\\n}\\n\\n.udi-table th {\\n background: #f8f9fa;\\n font-weight: 600;\\n color: #495057;\\n position: sticky;\\n top: 0;\\n z-index: 10;\\n border-bottom: 2px solid #dee2e6;\\n}\\n\\n.udi-table th.sortable {\\n cursor: pointer;\\n user-select: none;\\n transition: background-color 0.15s ease-in-out;\\n}\\n\\n.udi-table th.sortable:hover {\\n background: #e9ecef;\\n}\\n\\n.udi-table th.sortable .sort-icon {\\n opacity: 0.4;\\n}\\n\\n.udi-table th.sorted {\\n background: #e3f2fd;\\n color: #1976d2;\\n}\\n\\n.udi-table th.sorted .sort-icon {\\n opacity: 1;\\n}\\n\\n.udi-table th .th-content {\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n min-width: 0;\\n}\\n\\n.udi-table th .sort-icon {\\n margin-left: 8px;\\n font-size: 12px;\\n opacity: 0.7;\\n flex-shrink: 0;\\n}\\n\\n.udi-table tbody tr {\\n transition: background-color 0.15s ease-in-out;\\n}\\n\\n.udi-table tbody tr:hover {\\n background: #f8f9fa;\\n}\\n\\n.udi-table tbody tr:nth-child(even) {\\n background: #fdfdfe;\\n}\\n\\n.udi-table tbody tr:nth-child(even):hover {\\n background: #f8f9fa;\\n}\\n\\n.udi-table tbody td:first-child {\\n left: 0;\\n background: inherit;\\n z-index: 5;\\n border-right: 1px solid #e9ecef;\\n}\\n\\n.udi-table .no-data {\\n text-align: center;\\n color: #6c757d;\\n font-style: italic;\\n padding: 32px;\\n}\\n\\n.udi-table .loading-state {\\n text-align: center;\\n padding: 40px 20px;\\n}\\n\\n.udi-table .loading-state .loading-spinner {\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n gap: 12px;\\n}\\n\\n.udi-table .loading-state .loading-spinner .spinner {\\n width: 32px;\\n height: 32px;\\n border: 3px solid #f3f3f3;\\n border-top: 3px solid #007bff;\\n border-radius: 50%;\\n animation: spin 1s linear infinite;\\n}\\n\\n.udi-table .loading-state .loading-spinner span {\\n color: #868e96;\\n font-size: 14px;\\n}\\n\\n@keyframes spin {\\n 0% { transform: rotate(0deg); }\\n 100% { transform: rotate(360deg); }\\n}\\n\\n/* 分頁樣式 */\\n.udi-table-pagination {\\n padding: 16px;\\n background: #f8f9fa;\\n border-top: 1px solid #e9ecef;\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n flex-wrap: wrap;\\n gap: 12px;\\n}\\n\\n.udi-table-pagination .pagination-info {\\n display: flex;\\n flex-direction: column;\\n gap: 8px;\\n color: #6c757d;\\n font-size: 14px;\\n}\\n\\n.udi-table-pagination .pagination-info .page-size-selector {\\n display: flex;\\n align-items: center;\\n gap: 8px;\\n}\\n\\n.udi-table-pagination .pagination-info .page-size-selector label {\\n font-weight: 500;\\n color: #495057;\\n}\\n\\n.udi-table-pagination .pagination-info .page-size-selector .page-size-select {\\n padding: 4px 8px;\\n border: 1px solid #ced4da;\\n border-radius: 4px;\\n background: white;\\n font-size: 14px;\\n cursor: pointer;\\n outline: none;\\n transition: border-color 0.15s ease-in-out;\\n}\\n\\n.udi-table-pagination .pagination-info .page-size-selector .page-size-select:focus {\\n border-color: #007bff;\\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\\n}\\n\\n.udi-table-pagination .pagination-info .page-size-selector .page-size-select:hover {\\n border-color: #adb5bd;\\n}\\n\\n.udi-table-pagination .pagination-info .page-size-selector span {\\n color: #495057;\\n}\\n\\n.udi-table-pagination .pagination-info .pagination-summary {\\n font-size: 13px;\\n}\\n\\n.udi-table-pagination .pagination-controls {\\n display: flex;\\n gap: 4px;\\n align-items: center;\\n}\\n\\n.udi-table-pagination .pagination-controls .current-page-mobile {\\n padding: 8px 12px;\\n background: #007bff;\\n color: white;\\n border-radius: 4px;\\n font-size: 14px;\\n font-weight: 500;\\n min-width: 60px;\\n text-align: center;\\n border: 1px solid #007bff;\\n}\\n\\n.udi-table-pagination .pagination-controls .pagination-button {\\n padding: 6px 12px;\\n border: 1px solid #ced4da;\\n background: white;\\n color: #495057;\\n cursor: pointer;\\n border-radius: 4px;\\n font-size: 14px;\\n transition: all 0.15s ease-in-out;\\n min-width: 40px;\\n}\\n\\n.udi-table-pagination .pagination-controls .pagination-button:hover:not(:disabled) {\\n background: #e9ecef;\\n border-color: #adb5bd;\\n}\\n\\n.udi-table-pagination .pagination-controls .pagination-button:disabled {\\n background: #f8f9fa;\\n color: #6c757d;\\n cursor: not-allowed;\\n opacity: 0.6;\\n}\\n\\n.udi-table-pagination .pagination-controls .pagination-button.disabled {\\n background: #f1f3f4;\\n color: #9aa0a6;\\n cursor: not-allowed;\\n opacity: 0.5;\\n border-color: #dadce0;\\n}\\n\\n.udi-table-pagination .pagination-controls .pagination-button.disabled:hover {\\n background: #f1f3f4;\\n border-color: #dadce0;\\n}\\n\\n.udi-table-pagination .pagination-controls .pagination-button.active {\\n background: #007bff;\\n border-color: #007bff;\\n color: white;\\n}\\n\\n.udi-table-pagination .pagination-controls .pagination-button.active:hover {\\n background: #0056b3;\\n border-color: #0056b3;\\n}\\n\\n/* 響應式設計 */\\n\\n/* 大螢幕 (1200px+) - 桌面 */\\n@media (min-width: 1200px) {\\n .udi-table-wrapper {\\n height: 400px;\\n }\\n \\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid {\\n grid-template-columns: repeat(3, 1fr);\\n }\\n}\\n\\n/* 中等螢幕 (992px - 1199px) - 桌面/平板橫向 */\\n@media (max-width: 1199px) and (min-width: 992px) {\\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid {\\n grid-template-columns: repeat(2, 1fr);\\n }\\n}\\n\\n/* 小螢幕 (768px - 991px) - 平板 */\\n@media (max-width: 991px) and (min-width: 768px) {\\n .udi-table-container {\\n border-radius: 6px;\\n }\\n\\n .udi-table-wrapper {\\n height: 350px;\\n }\\n\\n .udi-table {\\n min-width: 600px;\\n }\\n \\n .udi-table th,\\n .udi-table td {\\n padding: 10px 12px;\\n font-size: 13px;\\n max-width: 200px;\\n }\\n\\n .udi-table-filter .filter-section .basic-filter {\\n flex-wrap: wrap;\\n gap: 10px;\\n }\\n \\n .udi-table-filter .filter-section .basic-filter .filter-input {\\n min-width: 180px;\\n }\\n\\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid {\\n grid-template-columns: repeat(2, 1fr);\\n gap: 10px;\\n }\\n\\n .udi-table-pagination {\\n padding: 12px;\\n }\\n \\n .udi-table-pagination .pagination-info .page-size-selector {\\n flex-direction: column;\\n align-items: flex-start;\\n gap: 4px;\\n }\\n}\\n\\n/* 手機螢幕 (481px - 767px) */\\n@media (max-width: 767px) and (min-width: 481px) {\\n .udi-table-container {\\n border-radius: 4px;\\n margin: 0 4px;\\n }\\n\\n .udi-table-wrapper {\\n height: 300px;\\n }\\n\\n .udi-table {\\n min-width: 500px;\\n }\\n \\n .udi-table th,\\n .udi-table td {\\n padding: 8px 10px;\\n font-size: 12px;\\n max-width: 150px;\\n }\\n \\n .udi-table th:first-child,\\n .udi-table tbody td:first-child {\\n position: sticky;\\n left: 0;\\n background: inherit;\\n z-index: 5;\\n border-right: 2px solid #e9ecef;\\n font-weight: 600;\\n }\\n\\n .scroll-position-indicator {\\n padding: 6px 12px;\\n font-size: 11px;\\n }\\n\\n .udi-table-filter .filter-section .basic-filter {\\n padding: 12px;\\n flex-direction: column;\\n align-items: stretch;\\n gap: 8px;\\n }\\n\\n .udi-table-filter .filter-section .basic-filter .filter-column-selector {\\n justify-content: flex-start;\\n }\\n \\n .udi-table-filter .filter-section .basic-filter .filter-column-selector label {\\n font-size: 13px;\\n }\\n \\n .udi-table-filter .filter-section .basic-filter .filter-column-selector .filter-column-select {\\n min-width: 100px;\\n flex: 1;\\n font-size: 14px;\\n }\\n\\n .udi-table-filter .filter-section .basic-filter .filter-input {\\n min-width: auto;\\n font-size: 16px;\\n }\\n\\n .udi-table-filter .filter-section .basic-filter .advanced-filter-toggle,\\n .udi-table-filter .filter-section .basic-filter .reset-button {\\n align-self: stretch;\\n font-size: 14px;\\n }\\n\\n .udi-table-filter .filter-section .advanced-filter {\\n padding: 12px;\\n }\\n\\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-header {\\n flex-direction: column;\\n align-items: stretch;\\n gap: 8px;\\n }\\n\\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-header h4 {\\n font-size: 14px;\\n }\\n \\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-header .clear-advanced-button {\\n align-self: flex-end;\\n }\\n\\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid {\\n grid-template-columns: 1fr;\\n gap: 8px;\\n }\\n\\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item label {\\n font-size: 12px;\\n }\\n \\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item .advanced-filter-input {\\n font-size: 16px;\\n }\\n\\n .udi-table-pagination {\\n flex-direction: column;\\n align-items: stretch;\\n padding: 12px;\\n gap: 8px;\\n }\\n\\n .udi-table-pagination .pagination-info {\\n text-align: center;\\n }\\n \\n .udi-table-pagination .pagination-info .page-size-selector {\\n justify-content: center;\\n flex-wrap: wrap;\\n }\\n\\n .udi-table-pagination .pagination-controls {\\n justify-content: center;\\n }\\n \\n .udi-table-pagination .pagination-controls .pagination-button {\\n padding: 8px 12px;\\n font-size: 13px;\\n min-width: 36px;\\n }\\n}\\n\\n/* 極小螢幕 (320px - 480px) */\\n@media (max-width: 480px) {\\n .udi-table-container {\\n border-radius: 0;\\n margin: 0;\\n box-shadow: none;\\n border-left: 1px solid #e9ecef;\\n border-right: 1px solid #e9ecef;\\n }\\n\\n .udi-table-wrapper {\\n height: 250px;\\n border: none;\\n }\\n\\n .udi-table {\\n min-width: 400px;\\n font-size: 11px;\\n }\\n \\n .udi-table th,\\n .udi-table td {\\n padding: 6px 8px;\\n font-size: 11px;\\n max-width: 120px;\\n }\\n \\n .udi-table th:first-child,\\n .udi-table tbody td:first-child {\\n min-width: 60px;\\n }\\n\\n .scroll-position-indicator {\\n padding: 4px 8px;\\n font-size: 10px;\\n }\\n\\n .udi-table-filter .filter-section .basic-filter {\\n padding: 8px;\\n gap: 6px;\\n }\\n\\n .udi-table-filter .filter-section .basic-filter .filter-column-selector label {\\n font-size: 12px;\\n }\\n \\n .udi-table-filter .filter-section .basic-filter .filter-column-selector .filter-column-select {\\n font-size: 13px;\\n padding: 6px 8px;\\n }\\n\\n .udi-table-filter .filter-section .basic-filter .filter-input {\\n padding: 8px 10px;\\n font-size: 16px;\\n }\\n\\n .udi-table-filter .filter-section .basic-filter .advanced-filter-toggle,\\n .udi-table-filter .filter-section .basic-filter .reset-button {\\n padding: 8px 12px;\\n font-size: 13px;\\n }\\n\\n .udi-table-filter .filter-section .advanced-filter {\\n padding: 8px;\\n }\\n\\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-header h4 {\\n font-size: 13px;\\n }\\n \\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-header .clear-advanced-button {\\n padding: 4px 8px;\\n font-size: 11px;\\n }\\n\\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid {\\n gap: 6px;\\n }\\n\\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item label {\\n font-size: 11px;\\n }\\n \\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item .advanced-filter-input {\\n padding: 6px 8px;\\n font-size: 16px;\\n }\\n\\n .udi-table-pagination {\\n padding: 8px;\\n gap: 6px;\\n }\\n\\n .udi-table-pagination .pagination-info {\\n font-size: 12px;\\n }\\n \\n .udi-table-pagination .pagination-info .page-size-selector {\\n gap: 4px;\\n }\\n \\n .udi-table-pagination .pagination-info .page-size-selector label {\\n font-size: 11px;\\n }\\n \\n .udi-table-pagination .pagination-info .page-size-selector .page-size-select {\\n padding: 4px 6px;\\n font-size: 12px;\\n }\\n \\n .udi-table-pagination .pagination-info .pagination-summary {\\n font-size: 11px;\\n }\\n\\n .udi-table-pagination .pagination-controls {\\n flex-wrap: wrap;\\n gap: 2px;\\n }\\n\\n .udi-table-pagination .pagination-controls .pagination-button {\\n padding: 6px 8px;\\n font-size: 11px;\\n min-width: 28px;\\n }\\n}\\n\\n/* 橫向模式優化 */\\n@media (orientation: landscape) and (max-height: 500px) {\\n .udi-table-wrapper {\\n height: 200px;\\n }\\n \\n .udi-table-filter .filter-section .basic-filter {\\n flex-direction: row;\\n flex-wrap: wrap;\\n }\\n}\\n\\n/* 高DPI螢幕優化 */\\n@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {\\n .udi-table th,\\n .udi-table td {\\n border-width: 0.5px;\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += \"}\";\n }\n if (item[2]) {\n content += \"}\";\n }\n if (item[4]) {\n content += \"}\";\n }\n return content;\n }).join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};","\"use strict\";\n\nmodule.exports = function (item) {\n var content = item[1];\n var cssMapping = item[3];\n if (!cssMapping) {\n return content;\n }\n if (typeof btoa === \"function\") {\n var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(cssMapping))));\n var data = \"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(base64);\n var sourceMapping = \"/*# \".concat(data, \" */\");\n return [content].concat([sourceMapping]).join(\"\\n\");\n }\n return [content].join(\"\\n\");\n};","\"use strict\";\n\nvar stylesInDOM = [];\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n for (var i = 0; i < stylesInDOM.length; i++) {\n if (stylesInDOM[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n return result;\n}\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = \"\".concat(id, \" \").concat(count);\n idCountMap[id] = count + 1;\n var indexByIdentifier = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3],\n supports: item[4],\n layer: item[5]\n };\n if (indexByIdentifier !== -1) {\n stylesInDOM[indexByIdentifier].references++;\n stylesInDOM[indexByIdentifier].updater(obj);\n } else {\n var updater = addElementStyle(obj, options);\n options.byIndex = i;\n stylesInDOM.splice(i, 0, {\n identifier: identifier,\n updater: updater,\n references: 1\n });\n }\n identifiers.push(identifier);\n }\n return identifiers;\n}\nfunction addElementStyle(obj, options) {\n var api = options.domAPI(options);\n api.update(obj);\n var updater = function updater(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {\n return;\n }\n api.update(obj = newObj);\n } else {\n api.remove();\n }\n };\n return updater;\n}\nmodule.exports = function (list, options) {\n options = options || {};\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\n for (var i = 0; i < lastIdentifiers.length; i++) {\n var identifier = lastIdentifiers[i];\n var index = getIndexByIdentifier(identifier);\n stylesInDOM[index].references--;\n }\n var newLastIdentifiers = modulesToDom(newList, options);\n for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n var _identifier = lastIdentifiers[_i];\n var _index = getIndexByIdentifier(_identifier);\n if (stylesInDOM[_index].references === 0) {\n stylesInDOM[_index].updater();\n stylesInDOM.splice(_index, 1);\n }\n }\n lastIdentifiers = newLastIdentifiers;\n };\n};","\"use strict\";\n\nvar memo = {};\n\n/* istanbul ignore next */\nfunction getTarget(target) {\n if (typeof memo[target] === \"undefined\") {\n var styleTarget = document.querySelector(target);\n\n // Special case to return head of iframe instead of iframe itself\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n memo[target] = styleTarget;\n }\n return memo[target];\n}\n\n/* istanbul ignore next */\nfunction insertBySelector(insert, style) {\n var target = getTarget(insert);\n if (!target) {\n throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n }\n target.appendChild(style);\n}\nmodule.exports = insertBySelector;","\"use strict\";\n\n/* istanbul ignore next */\nfunction insertStyleElement(options) {\n var element = document.createElement(\"style\");\n options.setAttributes(element, options.attributes);\n options.insert(element, options.options);\n return element;\n}\nmodule.exports = insertStyleElement;","\"use strict\";\n\n/* istanbul ignore next */\nfunction setAttributesWithoutAttributes(styleElement) {\n var nonce = typeof __webpack_nonce__ !== \"undefined\" ? __webpack_nonce__ : null;\n if (nonce) {\n styleElement.setAttribute(\"nonce\", nonce);\n }\n}\nmodule.exports = setAttributesWithoutAttributes;","\"use strict\";\n\n/* istanbul ignore next */\nfunction apply(styleElement, options, obj) {\n var css = \"\";\n if (obj.supports) {\n css += \"@supports (\".concat(obj.supports, \") {\");\n }\n if (obj.media) {\n css += \"@media \".concat(obj.media, \" {\");\n }\n var needLayer = typeof obj.layer !== \"undefined\";\n if (needLayer) {\n css += \"@layer\".concat(obj.layer.length > 0 ? \" \".concat(obj.layer) : \"\", \" {\");\n }\n css += obj.css;\n if (needLayer) {\n css += \"}\";\n }\n if (obj.media) {\n css += \"}\";\n }\n if (obj.supports) {\n css += \"}\";\n }\n var sourceMap = obj.sourceMap;\n if (sourceMap && typeof btoa !== \"undefined\") {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n }\n\n // For old IE\n /* istanbul ignore if */\n options.styleTagTransform(css, styleElement, options.options);\n}\nfunction removeStyleElement(styleElement) {\n // istanbul ignore if\n if (styleElement.parentNode === null) {\n return false;\n }\n styleElement.parentNode.removeChild(styleElement);\n}\n\n/* istanbul ignore next */\nfunction domAPI(options) {\n if (typeof document === \"undefined\") {\n return {\n update: function update() {},\n remove: function remove() {}\n };\n }\n var styleElement = options.insertStyleElement(options);\n return {\n update: function update(obj) {\n apply(styleElement, options, obj);\n },\n remove: function remove() {\n removeStyleElement(styleElement);\n }\n };\n}\nmodule.exports = domAPI;","\"use strict\";\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElement) {\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css;\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild);\n }\n styleElement.appendChild(document.createTextNode(css));\n }\n}\nmodule.exports = styleTagTransform;","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js!./UdiTable.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../node_modules/css-loader/dist/cjs.js!./UdiTable.css\";\n export default content && content.locals ? content.locals : undefined;\n","import React, { useState, useMemo, useRef, useEffect, forwardRef, useImperativeHandle, useCallback } from 'react';\nimport './UdiTable.css';\n\nconst UdiTable = forwardRef(({ \n onDataRequest = null, // 外部傳入的 callback 函數\n columns = [], \n pageSize = 10, \n sortable = true, \n filterable = true,\n className = '',\n isDev = false,\n syncTableControl=false,\n currentTableRef={currentTableRef},\n name = null,\n setTablePage\n}, ref) => {\n // 內部狀態管理\n const [data, setData] = useState([]);\n const [loading, setLoading] = useState(false);\n const [totalCount, setTotalCount] = useState(0);\n const [error, setError] = useState(null);\n const [sortConfig, setSortConfig] = useState({ key: null, direction: 'asc' });\n const [filterText, setFilterText] = useState('');\n const [filterColumn, setFilterColumn] = useState('all');\n const [showAdvancedFilter, setShowAdvancedFilter] = useState(false);\n const [advancedFilters, setAdvancedFilters] = useState({});\n const [currentPage, setCurrentPage] = useState(1);\n const [currentPageSize, setCurrentPageSize] = useState(pageSize);\n const [scrollPosition, setScrollPosition] = useState({ top: 0, left: 0, verticalPercent: 0, horizontalPercent: 0 });\n const [scrollbarInfo, setScrollbarInfo] = useState({ hasHorizontal: false, hasVertical: false, maxScrollLeft: 0, maxScrollTop: 0 });\n const tableWrapperRef = useRef(null);\n const [isHovered, setIsHovered] = useState(false);\n const [isInfiniteScroll, setIsInfiniteScroll] = useState(false);\n const [isDropdownOpen, setIsDropdownOpen] = useState(false);\n const [hasFetchedData, setHasFetchedData] = useState(false);\n\n // 內部執行外部 callback 的函數\n const executeDataRequest = useCallback(async (params) => {\n if (!onDataRequest || hasFetchedData) return;\n\n setLoading(true);\n setError(null);\n\n try {\n const result = await onDataRequest(params);\n const data = Array.isArray(result.data) ? result.data : [];\n if (isInfiniteScroll) {\n setData((prevData) => [...prevData, ...data]);\n } else {\n setData(data);\n }\n\n setTotalCount(result.totalCount || 0);\n setHasFetchedData(true);\n } catch (err) {\n console.error('❌ Callback Error:', err);\n setError(err.message);\n setData([]);\n setTotalCount(0);\n } finally {\n setLoading(false);\n }\n }, [onDataRequest, isInfiniteScroll, hasFetchedData]);\n\n // 防抖的請求執行\n const debouncedDataRequest = useMemo(() => {\n let timeoutId;\n return (params) => {\n clearTimeout(timeoutId);\n timeoutId = setTimeout(() => {\n executeDataRequest(params);\n }, 300);\n };\n }, [executeDataRequest]);\n\n useEffect(() => {\n setTablePage((prev) => {\n return { ...prev, [`${name}Page`]: currentPage ,[`${name}PageSize`]: currentPageSize };\n });\n }, [currentPageSize, currentPage]);\n\n // 暴露給外部的方法\n useImperativeHandle(ref, () => ({\n // 執行數據請求的函數 - 這是外部會調用的主要函數\n executeRequest: (customParams = {}) => {\n const params = {\n page: currentPage,\n pageSize: currentPageSize,\n search: filterText,\n searchColumn: filterColumn,\n advancedFilters: advancedFilters,\n sortBy: sortConfig.key,\n sortOrder: sortConfig.direction,\n ...customParams\n };\n executeDataRequest(params);\n },\n // 重新載入(使用當前參數)\n reload: () => {\n const params = {\n page: currentPage,\n pageSize: currentPageSize,\n search: filterText,\n searchColumn: filterColumn,\n advancedFilters: advancedFilters,\n sortBy: sortConfig.key,\n sortOrder: sortConfig.direction\n };\n executeDataRequest(params);\n },\n // 重置篩選並執行請求\n resetFilters: () => {\n setFilterText('');\n setFilterColumn('all');\n setAdvancedFilters({});\n setCurrentPage(1);\n setSortConfig({ key: null, direction: 'asc' });\n \n // 重置後立即執行請求\n const params = {\n page: 1,\n pageSize: currentPageSize,\n search: '',\n searchColumn: 'all',\n advancedFilters: {},\n sortBy: null,\n sortOrder: 'asc'\n };\n executeDataRequest(params);\n },\n setPage: (page) => {\n setCurrentPage(page);\n\n },\n setPageSize: (size) => {\n setCurrentPageSize(size);\n setCurrentPage(1);\n },\n // 完整的狀態 API - 提供所有詳細信息\n getState: () => ({\n // 基本數據狀態\n data,\n loading,\n error,\n totalCount,\n tableWrapperRef: tableWrapperRef.current,\n tableName:name,\n \n // 分頁狀態\n pagination: {\n currentPage,\n pageSize: currentPageSize,\n totalPages: Math.ceil(totalCount / currentPageSize),\n hasNextPage: currentPage < Math.ceil(totalCount / currentPageSize),\n hasPreviousPage: currentPage > 1,\n startIndex: (currentPage - 1) * currentPageSize + 1,\n endIndex: Math.min(currentPage * currentPageSize, totalCount),\n isFirstPage: currentPage === 1,\n isLastPage: currentPage === Math.ceil(totalCount / currentPageSize)\n },\n \n // 滾動狀態\n scroll: {\n position: scrollPosition,\n scrollbar: scrollbarInfo,\n isAtTop: scrollPosition.verticalPercent === 0,\n isAtBottom: scrollPosition.verticalPercent === 100,\n isAtLeft: scrollPosition.horizontalPercent === 0,\n isAtRight: scrollPosition.horizontalPercent === 100,\n canScrollVertically: scrollbarInfo.hasVertical,\n canScrollHorizontally: scrollbarInfo.hasHorizontal\n },\n \n // 排序狀態\n sort: {\n sortConfig,\n sortBy: sortConfig.key,\n sortOrder: sortConfig.direction,\n isSorted: sortConfig.key !== null\n },\n \n // 篩選狀態\n filter: {\n filterText,\n filterColumn,\n advancedFilters,\n showAdvancedFilter,\n hasBasicFilter: filterText !== '' || filterColumn !== 'all',\n hasAdvancedFilter: Object.keys(advancedFilters).length > 0,\n hasAnyFilter: filterText !== '' || filterColumn !== 'all' || Object.keys(advancedFilters).length > 0,\n activeFiltersCount: Object.keys(advancedFilters).filter(key => advancedFilters[key]).length + (filterText ? 1 : 0)\n },\n \n // 表格配置狀態\n config: {\n sortable,\n filterable,\n className,\n isDev,\n columnsCount: columns.length,\n columns: columns.map(col => ({\n dataField: col.dataField,\n title: col.title,\n width: col.width,\n sortable: sortable\n }))\n },\n \n // 響應式狀態\n responsive: {\n isMobile,\n isTablet,\n isDesktop: !isMobile && !isTablet,\n screenWidth: window.innerWidth,\n screenHeight: window.innerHeight\n },\n \n // 元數據\n meta: {\n timestamp: new Date().toISOString(),\n version: '1.0.0',\n componentName: 'UdiTable'\n },\n \n isHovered,\n }),\n\n // 簡化版狀態 API - 只返回核心信息\n getCoreState: () => ({\n currentPage,\n totalPages: Math.ceil(totalCount / currentPageSize),\n totalCount,\n pageSize: currentPageSize,\n loading,\n error,\n scrollPosition,\n hasData: data.length > 0\n }),\n \n // 滾動位置 API\n getScrollState: () => ({\n ...scrollPosition,\n ...scrollbarInfo,\n isAtTop: scrollPosition.verticalPercent === 0,\n isAtBottom: scrollPosition.verticalPercent === 100,\n isAtLeft: scrollPosition.horizontalPercent === 0,\n isAtRight: scrollPosition.horizontalPercent === 100\n }),\n \n // 分頁狀態 API\n getPaginationState: () => ({\n currentPage,\n totalPages: Math.ceil(totalCount / currentPageSize),\n pageSize: currentPageSize,\n totalCount,\n hasNextPage: currentPage < Math.ceil(totalCount / currentPageSize),\n hasPreviousPage: currentPage > 1,\n startIndex: (currentPage - 1) * currentPageSize + 1,\n endIndex: Math.min(currentPage * currentPageSize, totalCount)\n }),\n \n // 篩選狀態 API\n getFilterState: () => ({\n filterText,\n filterColumn,\n advancedFilters,\n showAdvancedFilter,\n hasAnyFilter: filterText !== '' || filterColumn !== 'all' || Object.keys(advancedFilters).length > 0\n }),\n \n // 排序狀態 API\n getSortState: () => ({\n ...sortConfig,\n isSorted: sortConfig.key !== null\n }),\n\n // 滾動控制 API\n scrollControl,\n tableWrapperRef: tableWrapperRef.current,\n }), [\n data, loading, totalCount, error, currentPage, currentPageSize,\n sortConfig, filterText, filterColumn, advancedFilters, showAdvancedFilter,\n scrollPosition, scrollbarInfo, isMobile, isTablet, sortable, filterable, className, isDev, columns,\n executeDataRequest\n ]);\n\n // 初始載入\n useEffect(() => {\n if (onDataRequest) {\n const params = {\n page: 1,\n pageSize: currentPageSize,\n search: '',\n searchColumn: 'all',\n advancedFilters: {},\n sortBy: null,\n sortOrder: 'asc'\n };\n executeDataRequest(params);\n }\n }, [onDataRequest, executeDataRequest]);\n\n // 監聽篩選和排序變化\n useEffect(() => {\n if (!onDataRequest) return;\n \n const params = {\n page: currentPage,\n pageSize: currentPageSize,\n search: filterText,\n searchColumn: filterColumn,\n advancedFilters: advancedFilters,\n sortBy: sortConfig.key,\n sortOrder: sortConfig.direction\n };\n \n debouncedDataRequest(params);\n }, [onDataRequest, currentPage, currentPageSize, filterText, filterColumn, advancedFilters, sortConfig, debouncedDataRequest]);\n\n // 計算總頁數\n const totalPages = Math.ceil(totalCount / currentPageSize);\n\n // 檢測螢幕尺寸\n const [isMobile, setIsMobile] = useState(false);\n const [isTablet, setIsTablet] = useState(false);\n\n useEffect(() => {\n const checkScreenSize = () => {\n const width = window.innerWidth;\n setIsMobile(width < 768);\n setIsTablet(width >= 768 && width < 992);\n };\n\n checkScreenSize();\n window.addEventListener('resize', checkScreenSize);\n return () => window.removeEventListener('resize', checkScreenSize);\n }, []);\n\n // 滾動事件處理(使用 throttle)\n useEffect(() => {\n const tableWrapper = tableWrapperRef.current;\n if (!tableWrapper) return;\n\n // 更新滾動條信息\n const updateScrollbarInfo = () => {\n const hasHorizontal = tableWrapper.scrollWidth > tableWrapper.clientWidth;\n const hasVertical = tableWrapper.scrollHeight > tableWrapper.clientHeight;\n const maxScrollLeft = Math.max(0, tableWrapper.scrollWidth - tableWrapper.clientWidth);\n const maxScrollTop = Math.max(0, tableWrapper.scrollHeight - tableWrapper.clientHeight);\n \n setScrollbarInfo({\n hasHorizontal,\n hasVertical,\n maxScrollLeft,\n maxScrollTop,\n scrollWidth: tableWrapper.scrollWidth,\n scrollHeight: tableWrapper.scrollHeight,\n clientWidth: tableWrapper.clientWidth,\n clientHeight: tableWrapper.clientHeight\n });\n };\n\n // 初始化滾動條信息\n updateScrollbarInfo();\n\n let isThrottled = false;\n const handleScroll = (event) => {\n if (isThrottled) return;\n \n isThrottled = true;\n requestAnimationFrame(() => { //browser api > 每次滾动事件(rerender)使用 requestAnimationFrame\n const target = event.target;\n const scrollTop = target.scrollTop;\n const scrollLeft = target.scrollLeft;\n const scrollHeight = target.scrollHeight;\n const clientHeight = target.clientHeight;\n const scrollWidth = target.scrollWidth;\n const clientWidth = target.clientWidth;\n \n // 計算滾動百分比\n const verticalScrollPercent = scrollHeight > clientHeight \n ? ((scrollTop / (scrollHeight - clientHeight)) * 100)\n : 0;\n \n const horizontalScrollPercent = scrollWidth > clientWidth\n ? ((scrollLeft / (scrollWidth - clientWidth)) * 100)\n : 0;\n\n setScrollPosition({\n top: scrollTop,\n left: scrollLeft,\n verticalPercent: parseFloat(verticalScrollPercent.toFixed(1)),\n horizontalPercent: parseFloat(horizontalScrollPercent.toFixed(1))\n });\n\n // 更新滾動條信息(以防表格尺寸發生變化)\n updateScrollbarInfo();\n\n isThrottled = false;\n });\n };\n\n // 監聽窗口大小變化\n const handleResize = () => {\n updateScrollbarInfo();\n };\n\n tableWrapper.addEventListener('scroll', handleScroll, { passive: true });\n window.addEventListener('resize', handleResize);\n \n // 使用 ResizeObserver 監聽表格內容變化(如果支援的話)\n let resizeObserver;\n if (window.ResizeObserver) {\n resizeObserver = new ResizeObserver(() => {\n updateScrollbarInfo();\n });\n resizeObserver.observe(tableWrapper);\n }\n\n return () => {\n tableWrapper.removeEventListener('scroll', handleScroll);\n window.removeEventListener('resize', handleResize);\n if (resizeObserver) {\n resizeObserver.disconnect();\n }\n };\n }, [data]); // 當數據變化時重新初始化\n\n\n\n // 排序處理\n const handleSort = useCallback((key) => {\n if (!sortable) return;\n \n setSortConfig(prev => {\n let direction = 'asc';\n if (prev.key === key && prev.direction === 'asc') {\n direction = 'desc';\n }\n return { key, direction };\n });\n \n setCurrentPage(1);\n }, [sortable]);\n\n // 分頁處理\n const handlePageChange = useCallback((page) => {\n setCurrentPage(page);\n }, []);\n\n // 重置篩選\n const resetFilter = useCallback(() => {\n setFilterText('');\n setFilterColumn('all');\n setAdvancedFilters({});\n setCurrentPage(1);\n }, []);\n\n // 處理進階篩選變更\n const handleAdvancedFilterChange = useCallback((columnKey, value) => {\n setAdvancedFilters(prev => ({\n ...prev,\n [columnKey]: value\n }));\n setCurrentPage(1);\n }, []);\n\n // 清除進階篩選\n const clearAdvancedFilters = useCallback(() => {\n setAdvancedFilters({});\n setCurrentPage(1);\n }, []);\n\n // 切換進階篩選顯示\n const toggleAdvancedFilter = useCallback(() => {\n setShowAdvancedFilter(prev => !prev);\n }, []);\n \n\n // 處理每頁顯示數量變更\n const handlePageSizeChange = useCallback((newPageSize) => {\n setCurrentPageSize(newPageSize);\n setCurrentPage(1);\n }, []);\n\n // 滾動控制函數\n const scrollControl = useCallback((axis, value) => {\n const tableWrapper = tableWrapperRef.current;\n if (!tableWrapper) return;\n\n const maxScrollTop = tableWrapper.scrollHeight - tableWrapper.clientHeight;\n const maxScrollLeft = tableWrapper.scrollWidth - tableWrapper.clientWidth;\n\n const scrollValue = axis === 'top' ? Math.min(value, maxScrollTop) : Math.min(value, maxScrollLeft);\n\n if (axis === 'top') {\n tableWrapper.scrollTop = scrollValue;\n } else {\n tableWrapper.scrollLeft = scrollValue;\n }\n }, []);\n\n // Add hover detection\n const handleMouseEnter = () => {\n setIsHovered(true);\n if (syncTableControl && currentTableRef) {\n currentTableRef.current = tableWrapperRef.current;\n }\n };\n\n const handleMouseLeave = () => {\n if (!isDropdownOpen) {\n setIsHovered(false);\n }\n };\n\n // Handle infinite scroll toggle\n const toggleInfiniteScroll = useCallback(() => {\n setIsInfiniteScroll((prev) => !prev);\n }, []);\n\n const debouncedHandlePageChange = useMemo(() => {\n let timeoutId;\n return (newPage) => {\n clearTimeout(timeoutId);\n timeoutId = setTimeout(() => {\n if (newPage <= totalPages) {\n handlePageChange(newPage);\n }\n }, 300);\n };\n }, [handlePageChange, totalPages]);\n\n useEffect(() => {\n if (isInfiniteScroll) {\n const tableWrapper = tableWrapperRef.current;\n if (!tableWrapper) return;\n const handleScroll = () => {\n const { scrollTop, scrollHeight, clientHeight } = tableWrapper;\n const verticalScrollPercent = scrollHeight > clientHeight \n ? ((scrollTop / (scrollHeight - clientHeight)) * 100) \n : 0;\n\n if (verticalScrollPercent >= 80 && currentPage < totalPages) {\n debouncedHandlePageChange(currentPage + 1);\n }\n };\n\n tableWrapper.addEventListener(\"scroll\", handleScroll);\n\n return () => {\n tableWrapper.removeEventListener(\"scroll\", handleScroll);\n };\n }\n }, [isInfiniteScroll, currentPage, totalPages, debouncedHandlePageChange]);\n\n // Dropdown focus and blur handlers\n const handleDropdownFocus = () => {\n setIsDropdownOpen(true);\n };\n\n const handleDropdownBlur = () => {\n setIsDropdownOpen(false);\n };\n\n return (\n <>\n {/* 表格名稱 */}\n {name && (\n <div className=\"udi-table-name\">\n <h3>{name}</h3>\n </div>\n )}\n <div\n className={`udi-table-container ${className}`}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n >\n {/* 錯誤顯示 */}\n {error && (\n <div className=\"error-message\">\n ❌ 載入失敗: {error}\n </div>\n )}\n \n\n {/* 搜尋篩選器 */}\n {filterable && (\n <div className=\"udi-table-filter\">\n <div className=\"filter-section\">\n <div className=\"basic-filter\">\n <div className=\"filter-column-selector\">\n <label htmlFor=\"filterColumn\">搜尋欄位:</label>\n <select\n id=\"filterColumn\"\n value={filterColumn}\n onChange={(e) => {\n setFilterColumn(e.target.value);\n setCurrentPage(1);\n }}\n className=\"filter-column-select\"\n >\n <option value=\"all\">全部欄位</option>\n {columns.map((column) => (\n <option key={column.dataField} value={column.dataField}>\n {column.title}\n </option>\n ))}\n </select>\n </div>\n <input\n type=\"text\"\n placeholder={filterColumn === 'all' ? '搜尋所有欄位...' : `搜尋 ${columns.find(col => col.key === filterColumn)?.title || ''}...`}\n value={filterText}\n onChange={(e) => {\n setFilterText(e.target.value);\n setCurrentPage(1);\n }}\n className=\"filter-input\"\n />\n <button onClick={toggleAdvancedFilter} className=\"advanced-filter-toggle\">\n {showAdvancedFilter ? '隱藏進階篩選' : '進階篩選'}\n </button>\n {(filterText || filterColumn !== 'all' || Object.keys(advancedFilters).length > 0) && (\n <button onClick={resetFilter} className=\"reset-button\">\n 重置所有篩選\n </button>\n )}\n </div>\n \n {/* 進階篩選區域 */}\n {showAdvancedFilter && (\n <div className=\"advanced-filter\">\n <div className=\"advanced-filter-header\">\n <h4>進階篩選 - 多欄位同時篩選</h4>\n {Object.keys(advancedFilters).length > 0 && (\n <button onClick={clearAdvancedFilters} className=\"clear-advanced-button\">\n 清除進階篩選\n </button>\n )}\n </div>\n <div className=\"advanced-filter-grid\">\n {columns.map((column) => (\n <div key={column.dataField} className=\"advanced-filter-item\">\n <label htmlFor={`advanced-${column.dataField}`}>{column.title}:</label>\n <input\n id={`advanced-${column.dataField}`}\n type=\"text\"\n placeholder={`篩選 ${column.title}...`}\n value={advancedFilters[column.dataField] || ''}\n onChange={(e) => handleAdvancedFilterChange(column.dataField, e.target.value)}\n className=\"advanced-filter-input\"\n />\n </div>\n ))}\n </div>\n </div>\n )}\n </div>\n </div>\n )}\n\n {/* 滾動位置顯示器 */}\n {isDev && (\n <div className=\"scroll-position-indicator\">\n <div>滾動位置: 垂直 {scrollPosition.verticalPercent.toFixed(1)}% | 水平 {scrollPosition.horizontalPercent.toFixed(1)}%</div>\n <div>分頁: {currentPage}/{Math.ceil(totalCount / currentPageSize)} | 總筆數: {totalCount}</div>\n <div>滾動條: {scrollbarInfo.hasVertical ? '垂直✓' : '垂直✗'} | {scrollbarInfo.hasHorizontal ? '水平✓' : '水平✗'}</div>\n <div>螢幕: {isMobile ? '手機' : isTablet ? '平板' : '桌面'} ({window.innerWidth}x{window.innerHeight})</div>\n </div>\n )}\n\n {/* 表格 */}\n <div className=\"udi-table-wrapper-container\" style={{ position: 'relative' }}>\n <div className=\"udi-table-wrapper\" ref={tableWrapperRef}>\n <table className=\"udi-table\">\n <thead>\n <tr>\n {columns.map((column) => (\n <th\n key={column.dataField}\n onClick={() => handleSort(column.dataField)}\n className={`\n ${sortable ? 'sortable' : ''}\n ${sortConfig.key === column.dataField ? 'sorted' : ''}\n ${sortConfig.key === column.dataField ? sortConfig.direction : ''}\n `}\n style={{ width: column.width, minWidth: column.minWidth }}\n >\n <div className=\"th-content\">\n <span>\n {column.title}\n </span>\n {sortable && (\n <span className=\"sort-icon\">\n {sortConfig.key === column.dataField ? (\n sortConfig.direction === 'asc' ? '↑' : '↓'\n ) : '↕'}\n </span>\n )}\n </div>\n </th>\n ))}\n </tr>\n </thead>\n <tbody>\n {loading ? (\n <tr>\n <td colSpan={columns.length} className=\"loading-state\">\n <div className=\"loading-spinner\">\n <div className=\"spinner\"></div>\n <span>loading...</span>\n </div>\n </td>\n </tr>\n ) : data.length > 0 ? (\n data.map((row, rowIndex) => {\n return (\n <tr key={`row-${rowIndex}-${row.id || \"\"}`}>\n {columns.map((column, colIndex) => (\n <td\n key={`cell-${rowIndex}-${colIndex}-${column.dataField}`}\n title={\n row[column.dataField]\n } // Add title attribute for tooltip\n >\n {column.render\n ? column.render(\n row[column.dataField],\n row,\n rowIndex,\n column.dataField,\n name\n )\n : row[column.dataField]}\n </td>\n ))}\n </tr>\n );\n })\n ) \n : (\n <tr>\n <td colSpan={columns.length} className=\"no-data\">\n 沒有資料\n </td>\n </tr>\n )}\n </tbody>\n </table>\n </div>\n </div>\n\n\n\n {/* 分頁控制 */}\n <div className=\"udi-table-pagination\">\n <div className=\"pagination-info\">\n <div className=\"page-size-selector\">\n <label htmlFor=\"pageSize\">每頁顯示:</label>\n <div className=\"page-size-container\" onMouseEnter={handleMouseEnter}>\n <select \n id=\"pageSize\"\n value={currentPageSize} \n onChange={(e) => handlePageSizeChange(Number(e.target.value))}\n onFocus={handleDropdownFocus}\n onBlur={handleDropdownBlur}\n className=\"page-size-select\"\n >\n <option value={5}>5</option>\n <option value={10}>10</option>\n <option value={20}>20</option>\n <option value={50}>50</option>\n <option value={100}>100</option>\n </select>\n </div>\n <span>筆</span>\n </div>\n <div className=\"pagination-summary\">\n 共 {totalCount} 筆資料{totalPages > 1 ? `,第 ${currentPage} / ${totalPages} 頁` : ''}\n </div>\n </div>\n \n {/* 分頁控制按鈕 */}\n {totalPages > 1 && (\n <div className=\"pagination-controls\">\n {/* 手機模式下只顯示上一頁、當前頁和下一頁 */}\n {isMobile ? (\n <>\n <button\n onClick={() => handlePageChange(currentPage - 1)}\n disabled={currentPage === 1}\n className=\"pagination-button\"\n >\n ‹\n </button>\n <span className=\"current-page-mobile\">\n {currentPage} / {totalPages}\n </span>\n <button\n onClick={() => handlePageChange(currentPage + 1)}\n disabled={currentPage === totalPages}\n className=\"pagination-button\"\n >\n ›\n </button>\n </>\n ) : (\n <>\n <button\n onClick={() => handlePageChange(1)}\n disabled={currentPage === 1}\n className=\"pagination-button\"\n >\n 首頁\n </button>\n <button\n onClick={() => handlePageChange(currentPage - 1)}\n disabled={currentPage === 1}\n className=\"pagination-button\"\n >\n 上一頁\n </button>\n \n {/* 頁碼按鈕 */}\n {(() => {\n const pages = [];\n \n // 計算要顯示的三個頁碼\n let centerPage = currentPage;\n let startPage = Math.max(1, centerPage - 1);\n let endPage = Math.min(totalPages, startPage + 2);\n \n // 如果右邊不足3個,向左調整\n if (endPage - startPage < 2) {\n startPage = Math.max(1, endPage - 2);\n }\n \n // 固定顯示3個按鈕\n for (let i = 0; i < 3; i++) {\n const pageNum = startPage + i;\n const isValidPage = pageNum <= totalPages;\n \n pages.push(\n <button\n key={`page-btn-${i}`}\n onClick={() => isValidPage ? handlePageChange(pageNum) : null}\n disabled={!isValidPage}\n className={`pagination-button ${\n isValidPage && currentPage === pageNum ? 'active' : ''\n } ${!isValidPage ? 'disabled' : ''}`}\n >\n {isValidPage ? pageNum : '-'}\n </button>\n );\n }\n \n return pages;\n })()}\n\n <button\n onClick={() => handlePageChange(currentPage + 1)}\n disabled={currentPage === totalPages}\n className=\"pagination-button\"\n >\n 下一頁\n </button>\n <button\n onClick={() => handlePageChange(totalPages)}\n disabled={currentPage === totalPages}\n className=\"pagination-button\"\n >\n 末頁\n </button>\n </>\n )}\n </div>\n )}\n </div>\n\n {/* Infinite Scroll Toggle Button */}\n {isDev && (\n <button\n onClick={toggleInfiniteScroll}\n className=\"toggle-infinite-scroll-button\"\n >\n {isInfiniteScroll ? \"切換到手動分頁\" : \"切換到無限滾動\"}\n </button>\n )}\n </div>\n </>\n );\n});\n\nUdiTable.displayName = 'UdiTable';\n\nexport default UdiTable;","export function formatDate(date) {\n return new Date(date).toLocaleDateString('zh-TW');\n}\n","/**\n * 判斷傳入值是否為純粹的物件(不包含陣列與 null)\n *\n * @param {*} val - 任意型別的值\n * @returns {boolean} - 若是純物件則回傳 true,否則回傳 false\n *\n * @example\n * isObject({}) // true\n * isObject([]) // false\n * isObject(null) // false\n * isObject(\"string\") // false\n */\nconst isObject = (val) => {\n return val !== null && typeof val === 'object' && !Array.isArray(val);\n};\n\n/**\n * 等待指定時間後再繼續執行\n *\n * @param {number} time - 等待的時間(毫秒為單位,例如 1000 代表 1 秒)\n * @returns {Promise<void>} - 回傳一個 Promise,在指定毫秒數後 resolve\n *\n * @example\n * await sleep(1000); // 等待 1 秒\n */\nfunction sleep(time) {\n // 建立一個 Promise,使用 setTimeout 來延遲執行 resolve\n return new Promise((resolve) => setTimeout(resolve, time));\n}\n\nexport {\n isObject,\n sleep\n}","export * from './formatDate.js';\nexport * from './helpers.js';\nexport * from './math.js';","// math.js\n\nexport function add(a, b) {\n if (typeof a !== 'number' || typeof b !== 'number') {\n throw new Error('參數必須是數字');\n }\n return a + b;\n}\n\nexport function subtract(a, b) {\n if (typeof a !== 'number' || typeof b !== 'number') {\n throw new Error('參數必須是數字');\n }\n return a - b;\n} ","module.exports = __WEBPACK_EXTERNAL_MODULE_react__;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nc = undefined;","export { default as UdiTable } from './components/udiTable/UdiTable';\nexport * from './utils';\n\n\n"],"names":["e","t","r","Symbol","n","iterator","o","toStringTag","i","c","prototype","Generator","u","Object","create","_regeneratorDefine2","f","p","y","G","v","a","d","bind","length","l","TypeError","call","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","__proto__","displayName","_regenerator","w","m","defineProperty","_regeneratorDefine","_invoke","enumerable","configurable","writable","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","Array","from","isArray","_arrayLikeToArray","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","toString","slice","constructor","name","test","next","push","React","useState","useMemo","useRef","useEffect","forwardRef","useImperativeHandle","useCallback","UdiTable","_ref","ref","_columns$find","_ref$onDataRequest","onDataRequest","_ref$columns","columns","_ref$pageSize","pageSize","_ref$sortable","sortable","_ref$filterable","filterable","_ref$className","className","_ref$isDev","isDev","_ref$syncTableControl","syncTableControl","_ref$currentTableRef","currentTableRef","_ref$name","setTablePage","_useState","_useState2","data","setData","_useState3","_useState4","loading","setLoading","_useState5","_useState6","totalCount","setTotalCount","_useState7","_useState8","error","setError","_useState9","key","direction","_useState0","sortConfig","setSortConfig","_useState1","_useState10","filterText","setFilterText","_useState11","_useState12","filterColumn","setFilterColumn","_useState13","_useState14","showAdvancedFilter","setShowAdvancedFilter","_useState15","_useState16","advancedFilters","setAdvancedFilters","_useState17","_useState18","currentPage","setCurrentPage","_useState19","_useState20","currentPageSize","setCurrentPageSize","_useState21","top","left","verticalPercent","horizontalPercent","_useState22","scrollPosition","setScrollPosition","_useState23","hasHorizontal","hasVertical","maxScrollLeft","maxScrollTop","_useState24","scrollbarInfo","setScrollbarInfo","tableWrapperRef","_useState25","_useState26","isHovered","setIsHovered","_useState27","_useState28","isInfiniteScroll","setIsInfiniteScroll","_useState29","_useState30","isDropdownOpen","setIsDropdownOpen","_useState31","_useState32","hasFetchedData","setHasFetchedData","executeDataRequest","_ref2","_callee","params","result","_data","_t","_context","prevData","concat","console","message","_x","debouncedDataRequest","timeoutId","clearTimeout","setTimeout","prev","_objectSpread","_defineProperty","executeRequest","customParams","undefined","page","search","searchColumn","sortBy","sortOrder","reload","resetFilters","setPage","setPageSize","size","getState","current","tableName","pagination","totalPages","Math","ceil","hasNextPage","hasPreviousPage","startIndex","endIndex","min","isFirstPage","isLastPage","scroll","position","scrollbar","isAtTop","isAtBottom","isAtLeft","isAtRight","canScrollVertically","canScrollHorizontally","sort","isSorted","filter","hasBasicFilter","hasAdvancedFilter","keys","hasAnyFilter","activeFiltersCount","config","columnsCount","map","col","dataField","title","width","responsive","isMobile","isTablet","isDesktop","screenWidth","window","innerWidth","screenHeight","innerHeight","meta","timestamp","Date","toISOString","version","componentName","getCoreState","hasData","getScrollState","getPaginationState","getFilterState","getSortState","scrollControl","_useState33","_useState34","setIsMobile","_useState35","_useState36","setIsTablet","checkScreenSize","addEventListener","removeEventListener","tableWrapper","updateScrollbarInfo","scrollWidth","clientWidth","scrollHeight","clientHeight","max","isThrottled","handleScroll","event","requestAnimationFrame","target","scrollTop","scrollLeft","verticalScrollPercent","horizontalScrollPercent","parseFloat","toFixed","handleResize","passive","resizeObserver","ResizeObserver","observe","disconnect","handleSort","handlePageChange","resetFilter","handleAdvancedFilterChange","columnKey","clearAdvancedFilters","toggleAdvancedFilter","handlePageSizeChange","newPageSize","axis","scrollValue","handleMouseEnter","handleMouseLeave","toggleInfiniteScroll","debouncedHandlePageChange","newPage","handleDropdownFocus","handleDropdownBlur","createElement","Fragment","onMouseEnter","onMouseLeave","htmlFor","id","onChange","column","type","placeholder","find","onClick","style","minWidth","colSpan","row","rowIndex","colIndex","render","Number","onFocus","onBlur","disabled","pages","centerPage","startPage","endPage","_loop","pageNum","isValidPage","formatDate","date","toLocaleDateString","isObject","val","_typeof","sleep","time","add","b","Error","subtract","default"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"index.js","mappings":";;;;;;;;;;;;;;;;;AAAA;AACgH;AACjB;AAC/F,8BAA8B,mFAA2B,CAAC,4FAAqC;AAC/F;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,OAAO;AACP,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,+GAA+G,MAAM,YAAY,aAAa,aAAa,aAAa,aAAa,WAAW,MAAM,UAAU,KAAK,YAAY,WAAW,YAAY,aAAa,aAAa,aAAa,aAAa,OAAO,KAAK,KAAK,UAAU,UAAU,MAAM,MAAM,UAAU,KAAK,YAAY,aAAa,OAAO,KAAK,UAAU,UAAU,YAAY,WAAW,UAAU,OAAO,KAAK,UAAU,YAAY,WAAW,YAAY,OAAO,KAAK,YAAY,WAAW,UAAU,OAAO,KAAK,YAAY,aAAa,aAAa,aAAa,WAAW,UAAU,UAAU,YAAY,aAAa,OAAO,KAAK,YAAY,aAAa,OAAO,KAAK,YAAY,OAAO,KAAK,UAAU,YAAY,aAAa,aAAa,WAAW,UAAU,YAAY,aAAa,OAAO,KAAK,YAAY,aAAa,OAAO,KAAK,YAAY,aAAa,WAAW,UAAU,YAAY,WAAW,UAAU,YAAY,aAAa,OAAO,KAAK,YAAY,OAAO,KAAK,YAAY,aAAa,WAAW,UAAU,YAAY,WAAW,UAAU,YAAY,aAAa,OAAO,KAAK,YAAY,OAAO,KAAK,UAAU,YAAY,aAAa,OAAO,KAAK,UAAU,YAAY,aAAa,aAAa,OAAO,KAAK,UAAU,UAAU,UAAU,YAAY,OAAO,KAAK,YAAY,aAAa,WAAW,UAAU,YAAY,WAAW,UAAU,YAAY,OAAO,KAAK,YAAY,OAAO,KAAK,UAAU,YAAY,WAAW,MAAM,KAAK,UAAU,YAAY,WAAW,MAAM,KAAK,YAAY,WAAW,UAAU,OAAO,KAAK,YAAY,aAAa,aAAa,WAAW,UAAU,YAAY,aAAa,OAAO,KAAK,YAAY,aAAa,OAAO,KAAK,YAAY,OAAO,UAAU,KAAK,YAAY,aAAa,aAAa,WAAW,UAAU,YAAY,aAAa,OAAO,UAAU,KAAK,YAAY,WAAW,YAAY,aAAa,aAAa,OAAO,KAAK,UAAU,UAAU,MAAM,KAAK,YAAY,aAAa,OAAO,KAAK,YAAY,aAAa,OAAO,KAAK,YAAY,OAAO,UAAU,KAAK,UAAU,YAAY,aAAa,WAAW,OAAO,MAAM,YAAY,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,OAAO,KAAK,YAAY,aAAa,WAAW,YAAY,WAAW,UAAU,YAAY,OAAO,KAAK,UAAU,YAAY,aAAa,OAAO,KAAK,YAAY,OAAO,KAAK,UAAU,MAAM,KAAK,YAAY,WAAW,OAAO,KAAK,UAAU,MAAM,KAAK,UAAU,YAAY,aAAa,WAAW,MAAM,KAAK,YAAY,WAAW,UAAU,UAAU,OAAO,KAAK,YAAY,OAAO,KAAK,YAAY,OAAO,KAAK,YAAY,OAAO,KAAK,YAAY,OAAO,KAAK,UAAU,YAAY,WAAW,YAAY,OAAO,KAAK,YAAY,WAAW,YAAY,WAAW,MAAM,KAAK,YAAY,aAAa,OAAO,KAAK,UAAU,YAAY,aAAa,WAAW,MAAM,KAAK,UAAU,UAAU,YAAY,aAAa,aAAa,aAAa,OAAO,KAAK,UAAU,UAAU,OAAO,KAAK,sBAAsB,uBAAuB,OAAO,UAAU,KAAK,UAAU,YAAY,aAAa,WAAW,YAAY,aAAa,WAAW,UAAU,MAAM,KAAK,UAAU,YAAY,WAAW,UAAU,UAAU,OAAO,KAAK,UAAU,YAAY,WAAW,MAAM,KAAK,YAAY,WAAW,OAAO,KAAK,YAAY,aAAa,aAAa,aAAa,WAAW,UAAU,UAAU,YAAY,OAAO,KAAK,YAAY,aAAa,OAAO,KAAK,YAAY,OAAO,KAAK,UAAU,OAAO,KAAK,UAAU,OAAO,KAAK,UAAU,UAAU,YAAY,OAAO,KAAK,YAAY,aAAa,WAAW,YAAY,WAAW,YAAY,WAAW,YAAY,aAAa,OAAO,KAAK,YAAY,aAAa,aAAa,WAAW,UAAU,YAAY,WAAW,YAAY,WAAW,OAAO,KAAK,YAAY,aAAa,OAAO,KAAK,YAAY,WAAW,YAAY,WAAW,MAAM,KAAK,YAAY,WAAW,YAAY,WAAW,YAAY,OAAO,KAAK,YAAY,aAAa,OAAO,KAAK,YAAY,aAAa,WAAW,MAAM,KAAK,YAAY,aAAa,OAAO,WAAW,YAAY,MAAM,KAAK,UAAU,MAAM,KAAK,YAAY,MAAM,MAAM,YAAY,MAAM,KAAK,YAAY,MAAM,MAAM,YAAY,MAAM,KAAK,YAAY,OAAO,KAAK,UAAU,MAAM,KAAK,YAAY,OAAO,MAAM,YAAY,WAAW,YAAY,OAAO,KA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;AACA;AACA;AACA;AACA;AACA,UAAU;AACV,sDAAsD,qBAAqB;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA,E;;;;;;;;;;ACpFa;;AAEb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD,cAAc;AACrE;AACA;AACA;AACA;AACA,E;;;;;;;;;;ACfa;;AAEb;AACA;AACA;AACA,kBAAkB,wBAAwB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,iBAAiB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,4BAA4B;AAChD;AACA;AACA;AACA;AACA;AACA,qBAAqB,6BAA6B;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,E;;;;;;;;;;ACnFa;;AAEb;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kC;;;;;;;;;;ACjCa;;AAEb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oC;;;;;;;;;;ACTa;;AAEb;AACA;AACA,cAAc,KAAwC,GAAG,sBAAiB,GAAG,CAAI;AACjF;AACA;AACA;AACA;AACA,gD;;;;;;;;;;ACTa;;AAEb;AACA;AACA;AACA;AACA,kDAAkD;AAClD;AACA;AACA,0CAA0C;AAC1C;AACA;AACA;AACA,iFAAiF;AACjF;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AA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","sources":["webpack://@udi-organization/udi-package/./src/components/udiTable/UdiTable.css","webpack://@udi-organization/udi-package/./node_modules/css-loader/dist/runtime/api.js","webpack://@udi-organization/udi-package/./node_modules/css-loader/dist/runtime/sourceMaps.js","webpack://@udi-organization/udi-package/./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack://@udi-organization/udi-package/./node_modules/style-loader/dist/runtime/insertBySelector.js","webpack://@udi-organization/udi-package/./node_modules/style-loader/dist/runtime/insertStyleElement.js","webpack://@udi-organization/udi-package/./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js","webpack://@udi-organization/udi-package/./node_modules/style-loader/dist/runtime/styleDomAPI.js","webpack://@udi-organization/udi-package/./node_modules/style-loader/dist/runtime/styleTagTransform.js","webpack://@udi-organization/udi-package/./src/components/udiTable/UdiTable.css?8f88","webpack://@udi-organization/udi-package/./src/components/udiTable/UdiTable.jsx","webpack://@udi-organization/udi-package/./src/utils/formatDate.js","webpack://@udi-organization/udi-package/./src/utils/helpers.js","webpack://@udi-organization/udi-package/./src/utils/index.js","webpack://@udi-organization/udi-package/./src/utils/math.js","webpack://@udi-organization/udi-package/external module \"react\"","webpack://@udi-organization/udi-package/webpack/bootstrap","webpack://@udi-organization/udi-package/webpack/runtime/compat get default export","webpack://@udi-organization/udi-package/webpack/runtime/define property getters","webpack://@udi-organization/udi-package/webpack/runtime/hasOwnProperty shorthand","webpack://@udi-organization/udi-package/webpack/runtime/make namespace object","webpack://@udi-organization/udi-package/webpack/runtime/nonce","webpack://@udi-organization/udi-package/./src/index.js"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `/* UdiTable 樣式 */\n\n.udi-table-container {\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', sans-serif;\n background: white;\n border-radius: 8px;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);\n overflow: hidden;\n width: 100%;\n}\n\n/* 錯誤訊息樣式 */\n.udi-table-container .error-message {\n background: #f8d7da;\n color: #721c24;\n padding: 12px 16px;\n border-left: 4px solid #dc3545;\n margin-bottom: 16px;\n border-radius: 4px;\n font-weight: 500;\n}\n\n@media (max-width: 768px) {\n .udi-table-container .error-message {\n margin: 8px;\n font-size: 14px;\n }\n}\n\n/* 篩選器樣式 */\n.udi-table-filter {\n background: #f8f9fa;\n border-bottom: 1px solid #e9ecef;\n}\n\n.udi-table-filter .filter-section .basic-filter {\n padding: 16px;\n display: flex;\n align-items: center;\n gap: 12px;\n flex-wrap: wrap;\n}\n\n.udi-table-filter .filter-section .basic-filter .filter-column-selector {\n display: flex;\n align-items: center;\n gap: 8px;\n white-space: nowrap;\n}\n\n.udi-table-filter .filter-section .basic-filter .filter-column-selector label {\n font-weight: 500;\n color: #495057;\n font-size: 14px;\n}\n\n.udi-table-filter .filter-section .basic-filter .filter-column-selector .filter-column-select {\n padding: 8px 12px;\n border: 1px solid #ced4da;\n border-radius: 4px;\n background: white;\n font-size: 14px;\n cursor: pointer;\n outline: none;\n transition: border-color 0.15s ease-in-out;\n min-width: 120px;\n}\n\n.udi-table-filter .filter-section .basic-filter .filter-column-selector .filter-column-select:focus {\n border-color: #007bff;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.udi-table-filter .filter-section .basic-filter .filter-column-selector .filter-column-select:hover {\n border-color: #adb5bd;\n}\n\n.udi-table-filter .filter-section .basic-filter .filter-input {\n flex: 1;\n padding: 8px 12px;\n border: 1px solid #ced4da;\n border-radius: 4px;\n font-size: 14px;\n outline: none;\n transition: border-color 0.15s ease-in-out;\n min-width: 200px;\n}\n\n.udi-table-filter .filter-section .basic-filter .filter-input:focus {\n border-color: #007bff;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.udi-table-filter .filter-section .basic-filter .advanced-filter-toggle {\n padding: 8px 16px;\n background: #007bff;\n color: white;\n border: none;\n border-radius: 4px;\n cursor: pointer;\n font-size: 14px;\n transition: background-color 0.15s ease-in-out;\n white-space: nowrap;\n}\n\n.udi-table-filter .filter-section .basic-filter .advanced-filter-toggle:hover {\n background: #0056b3;\n}\n\n.udi-table-filter .filter-section .basic-filter .reset-button {\n padding: 8px 16px;\n background: #6c757d;\n color: white;\n border: none;\n border-radius: 4px;\n cursor: pointer;\n font-size: 14px;\n transition: background-color 0.15s ease-in-out;\n white-space: nowrap;\n}\n\n.udi-table-filter .filter-section .basic-filter .reset-button:hover {\n background: #5a6268;\n}\n\n.udi-table-filter .filter-section .advanced-filter {\n padding: 16px;\n background: #f1f3f4;\n border-top: 1px solid #e9ecef;\n}\n\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 16px;\n}\n\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-header h4 {\n margin: 0;\n color: #495057;\n font-size: 16px;\n font-weight: 600;\n}\n\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-header .clear-advanced-button {\n padding: 6px 12px;\n background: #dc3545;\n color: white;\n border: none;\n border-radius: 4px;\n cursor: pointer;\n font-size: 12px;\n transition: background-color 0.15s ease-in-out;\n}\n\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-header .clear-advanced-button:hover {\n background: #c82333;\n}\n\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));\n gap: 12px;\n}\n\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item label {\n font-weight: 500;\n color: #495057;\n font-size: 13px;\n}\n\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item .advanced-filter-input {\n padding: 8px 12px;\n border: 1px solid #ced4da;\n border-radius: 4px;\n font-size: 14px;\n outline: none;\n transition: border-color 0.15s ease-in-out;\n background: white;\n}\n\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item .advanced-filter-input:focus {\n border-color: #007bff;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item .advanced-filter-input:hover {\n border-color: #adb5bd;\n}\n\n/* 滾動位置顯示器 */\n.scroll-position-indicator {\n padding: 8px 16px;\n background: #e3f2fd;\n border-bottom: 1px solid #bbdefb;\n font-size: 12px;\n color: #1565c0;\n font-family: 'Courier New', monospace;\n text-align: center;\n}\n\n/* 表格包裝器 */\n.udi-table-wrapper {\n overflow-x: auto;\n height: 300px;\n overflow-y: auto;\n border: 1px solid #e9ecef;\n -webkit-overflow-scrolling: touch;\n}\n\n.udi-table-wrapper::-webkit-scrollbar {\n width: 8px;\n height: 8px;\n}\n\n.udi-table-wrapper::-webkit-scrollbar-track {\n background: #f8f9fa;\n border-radius: 4px;\n}\n\n.udi-table-wrapper::-webkit-scrollbar-thumb {\n background: #cbd5e0;\n border-radius: 4px;\n}\n\n.udi-table-wrapper::-webkit-scrollbar-thumb:hover {\n background: #a0aec0;\n}\n\n/* 表格樣式 */\n.udi-table {\n width: 200%;\n min-width: 800px;\n border-collapse: collapse;\n font-size: 14px;\n}\n\n.udi-table th,\n.udi-table td {\n padding: 12px 16px;\n text-align: left;\n border-bottom: 1px solid #e9ecef;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n max-width: 300px;\n}\n\n.udi-table th {\n background: #f8f9fa;\n font-weight: 600;\n color: #495057;\n position: sticky;\n top: 0;\n z-index: 10;\n border-bottom: 2px solid #dee2e6;\n}\n\n.udi-table th.sortable {\n cursor: pointer;\n user-select: none;\n transition: background-color 0.15s ease-in-out;\n}\n\n.udi-table th.sortable:hover {\n background: #e9ecef;\n}\n\n.udi-table th.sortable .sort-icon {\n opacity: 0.4;\n}\n\n.udi-table th.sorted {\n background: #e3f2fd;\n color: #1976d2;\n}\n\n.udi-table th.sorted .sort-icon {\n opacity: 1;\n}\n\n.udi-table th .th-content {\n display: flex;\n align-items: center;\n justify-content: space-between;\n min-width: 0;\n}\n\n.udi-table th .sort-icon {\n margin-left: 8px;\n font-size: 12px;\n opacity: 0.7;\n flex-shrink: 0;\n}\n\n.udi-table tbody tr {\n transition: background-color 0.15s ease-in-out;\n}\n\n.udi-table tbody tr:hover {\n background: #f8f9fa;\n}\n\n.udi-table tbody tr:nth-child(even) {\n background: #fdfdfe;\n}\n\n.udi-table tbody tr:nth-child(even):hover {\n background: #f8f9fa;\n}\n\n.udi-table tbody td:first-child {\n left: 0;\n background: inherit;\n z-index: 5;\n border-right: 1px solid #e9ecef;\n}\n\n.udi-table .no-data {\n text-align: center;\n color: #6c757d;\n font-style: italic;\n padding: 32px;\n}\n\n.udi-table .loading-state {\n text-align: center;\n padding: 40px 20px;\n}\n\n.udi-table .loading-state .loading-spinner {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 12px;\n}\n\n.udi-table .loading-state .loading-spinner .spinner {\n width: 32px;\n height: 32px;\n border: 3px solid #f3f3f3;\n border-top: 3px solid #007bff;\n border-radius: 50%;\n animation: spin 1s linear infinite;\n}\n\n.udi-table .loading-state .loading-spinner span {\n color: #868e96;\n font-size: 14px;\n}\n\n@keyframes spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n}\n\n/* 分頁樣式 */\n.udi-table-pagination {\n padding: 16px;\n background: #f8f9fa;\n border-top: 1px solid #e9ecef;\n display: flex;\n justify-content: space-between;\n align-items: center;\n flex-wrap: wrap;\n gap: 12px;\n}\n\n.udi-table-pagination .pagination-info {\n display: flex;\n flex-direction: column;\n gap: 8px;\n color: #6c757d;\n font-size: 14px;\n}\n\n.udi-table-pagination .pagination-info .page-size-selector {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.udi-table-pagination .pagination-info .page-size-selector label {\n font-weight: 500;\n color: #495057;\n}\n\n.udi-table-pagination .pagination-info .page-size-selector .page-size-select {\n padding: 4px 8px;\n border: 1px solid #ced4da;\n border-radius: 4px;\n background: white;\n font-size: 14px;\n cursor: pointer;\n outline: none;\n transition: border-color 0.15s ease-in-out;\n}\n\n.udi-table-pagination .pagination-info .page-size-selector .page-size-select:focus {\n border-color: #007bff;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.udi-table-pagination .pagination-info .page-size-selector .page-size-select:hover {\n border-color: #adb5bd;\n}\n\n.udi-table-pagination .pagination-info .page-size-selector span {\n color: #495057;\n}\n\n.udi-table-pagination .pagination-info .pagination-summary {\n font-size: 13px;\n}\n\n.udi-table-pagination .pagination-controls {\n display: flex;\n gap: 4px;\n align-items: center;\n}\n\n.udi-table-pagination .pagination-controls .current-page-mobile {\n padding: 8px 12px;\n background: #007bff;\n color: white;\n border-radius: 4px;\n font-size: 14px;\n font-weight: 500;\n min-width: 60px;\n text-align: center;\n border: 1px solid #007bff;\n}\n\n.udi-table-pagination .pagination-controls .pagination-button {\n padding: 6px 12px;\n border: 1px solid #ced4da;\n background: white;\n color: #495057;\n cursor: pointer;\n border-radius: 4px;\n font-size: 14px;\n transition: all 0.15s ease-in-out;\n min-width: 40px;\n}\n\n.udi-table-pagination .pagination-controls .pagination-button:hover:not(:disabled) {\n background: #e9ecef;\n border-color: #adb5bd;\n}\n\n.udi-table-pagination .pagination-controls .pagination-button:disabled {\n background: #f8f9fa;\n color: #6c757d;\n cursor: not-allowed;\n opacity: 0.6;\n}\n\n.udi-table-pagination .pagination-controls .pagination-button.disabled {\n background: #f1f3f4;\n color: #9aa0a6;\n cursor: not-allowed;\n opacity: 0.5;\n border-color: #dadce0;\n}\n\n.udi-table-pagination .pagination-controls .pagination-button.disabled:hover {\n background: #f1f3f4;\n border-color: #dadce0;\n}\n\n.udi-table-pagination .pagination-controls .pagination-button.active {\n background: #007bff;\n border-color: #007bff;\n color: white;\n}\n\n.udi-table-pagination .pagination-controls .pagination-button.active:hover {\n background: #0056b3;\n border-color: #0056b3;\n}\n\n/* 響應式設計 */\n\n/* 大螢幕 (1200px+) - 桌面 */\n@media (min-width: 1200px) {\n .udi-table-wrapper {\n height: 400px;\n }\n \n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid {\n grid-template-columns: repeat(3, 1fr);\n }\n}\n\n/* 中等螢幕 (992px - 1199px) - 桌面/平板橫向 */\n@media (max-width: 1199px) and (min-width: 992px) {\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid {\n grid-template-columns: repeat(2, 1fr);\n }\n}\n\n/* 小螢幕 (768px - 991px) - 平板 */\n@media (max-width: 991px) and (min-width: 768px) {\n .udi-table-container {\n border-radius: 6px;\n }\n\n .udi-table-wrapper {\n height: 350px;\n }\n\n .udi-table {\n min-width: 600px;\n }\n \n .udi-table th,\n .udi-table td {\n padding: 10px 12px;\n font-size: 13px;\n max-width: 200px;\n }\n\n .udi-table-filter .filter-section .basic-filter {\n flex-wrap: wrap;\n gap: 10px;\n }\n \n .udi-table-filter .filter-section .basic-filter .filter-input {\n min-width: 180px;\n }\n\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid {\n grid-template-columns: repeat(2, 1fr);\n gap: 10px;\n }\n\n .udi-table-pagination {\n padding: 12px;\n }\n \n .udi-table-pagination .pagination-info .page-size-selector {\n flex-direction: column;\n align-items: flex-start;\n gap: 4px;\n }\n}\n\n/* 手機螢幕 (481px - 767px) */\n@media (max-width: 767px) and (min-width: 481px) {\n .udi-table-container {\n border-radius: 4px;\n margin: 0 4px;\n }\n\n .udi-table-wrapper {\n height: 300px;\n }\n\n .udi-table {\n min-width: 500px;\n }\n \n .udi-table th,\n .udi-table td {\n padding: 8px 10px;\n font-size: 12px;\n max-width: 150px;\n }\n \n .udi-table th:first-child,\n .udi-table tbody td:first-child {\n position: sticky;\n left: 0;\n background: inherit;\n z-index: 5;\n border-right: 2px solid #e9ecef;\n font-weight: 600;\n }\n\n .scroll-position-indicator {\n padding: 6px 12px;\n font-size: 11px;\n }\n\n .udi-table-filter .filter-section .basic-filter {\n padding: 12px;\n flex-direction: column;\n align-items: stretch;\n gap: 8px;\n }\n\n .udi-table-filter .filter-section .basic-filter .filter-column-selector {\n justify-content: flex-start;\n }\n \n .udi-table-filter .filter-section .basic-filter .filter-column-selector label {\n font-size: 13px;\n }\n \n .udi-table-filter .filter-section .basic-filter .filter-column-selector .filter-column-select {\n min-width: 100px;\n flex: 1;\n font-size: 14px;\n }\n\n .udi-table-filter .filter-section .basic-filter .filter-input {\n min-width: auto;\n font-size: 16px;\n }\n\n .udi-table-filter .filter-section .basic-filter .advanced-filter-toggle,\n .udi-table-filter .filter-section .basic-filter .reset-button {\n align-self: stretch;\n font-size: 14px;\n }\n\n .udi-table-filter .filter-section .advanced-filter {\n padding: 12px;\n }\n\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-header {\n flex-direction: column;\n align-items: stretch;\n gap: 8px;\n }\n\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-header h4 {\n font-size: 14px;\n }\n \n .udi-table-filter .filter-section .advanced-filter .advanced-filter-header .clear-advanced-button {\n align-self: flex-end;\n }\n\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid {\n grid-template-columns: 1fr;\n gap: 8px;\n }\n\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item label {\n font-size: 12px;\n }\n \n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item .advanced-filter-input {\n font-size: 16px;\n }\n\n .udi-table-pagination {\n flex-direction: column;\n align-items: stretch;\n padding: 12px;\n gap: 8px;\n }\n\n .udi-table-pagination .pagination-info {\n text-align: center;\n }\n \n .udi-table-pagination .pagination-info .page-size-selector {\n justify-content: center;\n flex-wrap: wrap;\n }\n\n .udi-table-pagination .pagination-controls {\n justify-content: center;\n }\n \n .udi-table-pagination .pagination-controls .pagination-button {\n padding: 8px 12px;\n font-size: 13px;\n min-width: 36px;\n }\n}\n\n/* 極小螢幕 (320px - 480px) */\n@media (max-width: 480px) {\n .udi-table-container {\n border-radius: 0;\n margin: 0;\n box-shadow: none;\n border-left: 1px solid #e9ecef;\n border-right: 1px solid #e9ecef;\n }\n\n .udi-table-wrapper {\n height: 250px;\n border: none;\n }\n\n .udi-table {\n min-width: 400px;\n font-size: 11px;\n }\n \n .udi-table th,\n .udi-table td {\n padding: 6px 8px;\n font-size: 11px;\n max-width: 120px;\n }\n \n .udi-table th:first-child,\n .udi-table tbody td:first-child {\n min-width: 60px;\n }\n\n .scroll-position-indicator {\n padding: 4px 8px;\n font-size: 10px;\n }\n\n .udi-table-filter .filter-section .basic-filter {\n padding: 8px;\n gap: 6px;\n }\n\n .udi-table-filter .filter-section .basic-filter .filter-column-selector label {\n font-size: 12px;\n }\n \n .udi-table-filter .filter-section .basic-filter .filter-column-selector .filter-column-select {\n font-size: 13px;\n padding: 6px 8px;\n }\n\n .udi-table-filter .filter-section .basic-filter .filter-input {\n padding: 8px 10px;\n font-size: 16px;\n }\n\n .udi-table-filter .filter-section .basic-filter .advanced-filter-toggle,\n .udi-table-filter .filter-section .basic-filter .reset-button {\n padding: 8px 12px;\n font-size: 13px;\n }\n\n .udi-table-filter .filter-section .advanced-filter {\n padding: 8px;\n }\n\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-header h4 {\n font-size: 13px;\n }\n \n .udi-table-filter .filter-section .advanced-filter .advanced-filter-header .clear-advanced-button {\n padding: 4px 8px;\n font-size: 11px;\n }\n\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid {\n gap: 6px;\n }\n\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item label {\n font-size: 11px;\n }\n \n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item .advanced-filter-input {\n padding: 6px 8px;\n font-size: 16px;\n }\n\n .udi-table-pagination {\n padding: 8px;\n gap: 6px;\n }\n\n .udi-table-pagination .pagination-info {\n font-size: 12px;\n }\n \n .udi-table-pagination .pagination-info .page-size-selector {\n gap: 4px;\n }\n \n .udi-table-pagination .pagination-info .page-size-selector label {\n font-size: 11px;\n }\n \n .udi-table-pagination .pagination-info .page-size-selector .page-size-select {\n padding: 4px 6px;\n font-size: 12px;\n }\n \n .udi-table-pagination .pagination-info .pagination-summary {\n font-size: 11px;\n }\n\n .udi-table-pagination .pagination-controls {\n flex-wrap: wrap;\n gap: 2px;\n }\n\n .udi-table-pagination .pagination-controls .pagination-button {\n padding: 6px 8px;\n font-size: 11px;\n min-width: 28px;\n }\n}\n\n/* 橫向模式優化 */\n@media (orientation: landscape) and (max-height: 500px) {\n .udi-table-wrapper {\n height: 200px;\n }\n \n .udi-table-filter .filter-section .basic-filter {\n flex-direction: row;\n flex-wrap: wrap;\n }\n}\n\n/* 高DPI螢幕優化 */\n@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {\n .udi-table th,\n .udi-table td {\n border-width: 0.5px;\n }\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/udiTable/UdiTable.css\"],\"names\":[],\"mappings\":\"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\",\"sourcesContent\":[\"/* UdiTable 樣式 */\\n\\n.udi-table-container {\\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', sans-serif;\\n background: white;\\n border-radius: 8px;\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);\\n overflow: hidden;\\n width: 100%;\\n}\\n\\n/* 錯誤訊息樣式 */\\n.udi-table-container .error-message {\\n background: #f8d7da;\\n color: #721c24;\\n padding: 12px 16px;\\n border-left: 4px solid #dc3545;\\n margin-bottom: 16px;\\n border-radius: 4px;\\n font-weight: 500;\\n}\\n\\n@media (max-width: 768px) {\\n .udi-table-container .error-message {\\n margin: 8px;\\n font-size: 14px;\\n }\\n}\\n\\n/* 篩選器樣式 */\\n.udi-table-filter {\\n background: #f8f9fa;\\n border-bottom: 1px solid #e9ecef;\\n}\\n\\n.udi-table-filter .filter-section .basic-filter {\\n padding: 16px;\\n display: flex;\\n align-items: center;\\n gap: 12px;\\n flex-wrap: wrap;\\n}\\n\\n.udi-table-filter .filter-section .basic-filter .filter-column-selector {\\n display: flex;\\n align-items: center;\\n gap: 8px;\\n white-space: nowrap;\\n}\\n\\n.udi-table-filter .filter-section .basic-filter .filter-column-selector label {\\n font-weight: 500;\\n color: #495057;\\n font-size: 14px;\\n}\\n\\n.udi-table-filter .filter-section .basic-filter .filter-column-selector .filter-column-select {\\n padding: 8px 12px;\\n border: 1px solid #ced4da;\\n border-radius: 4px;\\n background: white;\\n font-size: 14px;\\n cursor: pointer;\\n outline: none;\\n transition: border-color 0.15s ease-in-out;\\n min-width: 120px;\\n}\\n\\n.udi-table-filter .filter-section .basic-filter .filter-column-selector .filter-column-select:focus {\\n border-color: #007bff;\\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\\n}\\n\\n.udi-table-filter .filter-section .basic-filter .filter-column-selector .filter-column-select:hover {\\n border-color: #adb5bd;\\n}\\n\\n.udi-table-filter .filter-section .basic-filter .filter-input {\\n flex: 1;\\n padding: 8px 12px;\\n border: 1px solid #ced4da;\\n border-radius: 4px;\\n font-size: 14px;\\n outline: none;\\n transition: border-color 0.15s ease-in-out;\\n min-width: 200px;\\n}\\n\\n.udi-table-filter .filter-section .basic-filter .filter-input:focus {\\n border-color: #007bff;\\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\\n}\\n\\n.udi-table-filter .filter-section .basic-filter .advanced-filter-toggle {\\n padding: 8px 16px;\\n background: #007bff;\\n color: white;\\n border: none;\\n border-radius: 4px;\\n cursor: pointer;\\n font-size: 14px;\\n transition: background-color 0.15s ease-in-out;\\n white-space: nowrap;\\n}\\n\\n.udi-table-filter .filter-section .basic-filter .advanced-filter-toggle:hover {\\n background: #0056b3;\\n}\\n\\n.udi-table-filter .filter-section .basic-filter .reset-button {\\n padding: 8px 16px;\\n background: #6c757d;\\n color: white;\\n border: none;\\n border-radius: 4px;\\n cursor: pointer;\\n font-size: 14px;\\n transition: background-color 0.15s ease-in-out;\\n white-space: nowrap;\\n}\\n\\n.udi-table-filter .filter-section .basic-filter .reset-button:hover {\\n background: #5a6268;\\n}\\n\\n.udi-table-filter .filter-section .advanced-filter {\\n padding: 16px;\\n background: #f1f3f4;\\n border-top: 1px solid #e9ecef;\\n}\\n\\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-header {\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n margin-bottom: 16px;\\n}\\n\\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-header h4 {\\n margin: 0;\\n color: #495057;\\n font-size: 16px;\\n font-weight: 600;\\n}\\n\\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-header .clear-advanced-button {\\n padding: 6px 12px;\\n background: #dc3545;\\n color: white;\\n border: none;\\n border-radius: 4px;\\n cursor: pointer;\\n font-size: 12px;\\n transition: background-color 0.15s ease-in-out;\\n}\\n\\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-header .clear-advanced-button:hover {\\n background: #c82333;\\n}\\n\\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-grid {\\n display: grid;\\n grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));\\n gap: 12px;\\n}\\n\\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item {\\n display: flex;\\n flex-direction: column;\\n gap: 4px;\\n}\\n\\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item label {\\n font-weight: 500;\\n color: #495057;\\n font-size: 13px;\\n}\\n\\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item .advanced-filter-input {\\n padding: 8px 12px;\\n border: 1px solid #ced4da;\\n border-radius: 4px;\\n font-size: 14px;\\n outline: none;\\n transition: border-color 0.15s ease-in-out;\\n background: white;\\n}\\n\\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item .advanced-filter-input:focus {\\n border-color: #007bff;\\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\\n}\\n\\n.udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item .advanced-filter-input:hover {\\n border-color: #adb5bd;\\n}\\n\\n/* 滾動位置顯示器 */\\n.scroll-position-indicator {\\n padding: 8px 16px;\\n background: #e3f2fd;\\n border-bottom: 1px solid #bbdefb;\\n font-size: 12px;\\n color: #1565c0;\\n font-family: 'Courier New', monospace;\\n text-align: center;\\n}\\n\\n/* 表格包裝器 */\\n.udi-table-wrapper {\\n overflow-x: auto;\\n height: 300px;\\n overflow-y: auto;\\n border: 1px solid #e9ecef;\\n -webkit-overflow-scrolling: touch;\\n}\\n\\n.udi-table-wrapper::-webkit-scrollbar {\\n width: 8px;\\n height: 8px;\\n}\\n\\n.udi-table-wrapper::-webkit-scrollbar-track {\\n background: #f8f9fa;\\n border-radius: 4px;\\n}\\n\\n.udi-table-wrapper::-webkit-scrollbar-thumb {\\n background: #cbd5e0;\\n border-radius: 4px;\\n}\\n\\n.udi-table-wrapper::-webkit-scrollbar-thumb:hover {\\n background: #a0aec0;\\n}\\n\\n/* 表格樣式 */\\n.udi-table {\\n width: 200%;\\n min-width: 800px;\\n border-collapse: collapse;\\n font-size: 14px;\\n}\\n\\n.udi-table th,\\n.udi-table td {\\n padding: 12px 16px;\\n text-align: left;\\n border-bottom: 1px solid #e9ecef;\\n white-space: nowrap;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n max-width: 300px;\\n}\\n\\n.udi-table th {\\n background: #f8f9fa;\\n font-weight: 600;\\n color: #495057;\\n position: sticky;\\n top: 0;\\n z-index: 10;\\n border-bottom: 2px solid #dee2e6;\\n}\\n\\n.udi-table th.sortable {\\n cursor: pointer;\\n user-select: none;\\n transition: background-color 0.15s ease-in-out;\\n}\\n\\n.udi-table th.sortable:hover {\\n background: #e9ecef;\\n}\\n\\n.udi-table th.sortable .sort-icon {\\n opacity: 0.4;\\n}\\n\\n.udi-table th.sorted {\\n background: #e3f2fd;\\n color: #1976d2;\\n}\\n\\n.udi-table th.sorted .sort-icon {\\n opacity: 1;\\n}\\n\\n.udi-table th .th-content {\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n min-width: 0;\\n}\\n\\n.udi-table th .sort-icon {\\n margin-left: 8px;\\n font-size: 12px;\\n opacity: 0.7;\\n flex-shrink: 0;\\n}\\n\\n.udi-table tbody tr {\\n transition: background-color 0.15s ease-in-out;\\n}\\n\\n.udi-table tbody tr:hover {\\n background: #f8f9fa;\\n}\\n\\n.udi-table tbody tr:nth-child(even) {\\n background: #fdfdfe;\\n}\\n\\n.udi-table tbody tr:nth-child(even):hover {\\n background: #f8f9fa;\\n}\\n\\n.udi-table tbody td:first-child {\\n left: 0;\\n background: inherit;\\n z-index: 5;\\n border-right: 1px solid #e9ecef;\\n}\\n\\n.udi-table .no-data {\\n text-align: center;\\n color: #6c757d;\\n font-style: italic;\\n padding: 32px;\\n}\\n\\n.udi-table .loading-state {\\n text-align: center;\\n padding: 40px 20px;\\n}\\n\\n.udi-table .loading-state .loading-spinner {\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n gap: 12px;\\n}\\n\\n.udi-table .loading-state .loading-spinner .spinner {\\n width: 32px;\\n height: 32px;\\n border: 3px solid #f3f3f3;\\n border-top: 3px solid #007bff;\\n border-radius: 50%;\\n animation: spin 1s linear infinite;\\n}\\n\\n.udi-table .loading-state .loading-spinner span {\\n color: #868e96;\\n font-size: 14px;\\n}\\n\\n@keyframes spin {\\n 0% { transform: rotate(0deg); }\\n 100% { transform: rotate(360deg); }\\n}\\n\\n/* 分頁樣式 */\\n.udi-table-pagination {\\n padding: 16px;\\n background: #f8f9fa;\\n border-top: 1px solid #e9ecef;\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n flex-wrap: wrap;\\n gap: 12px;\\n}\\n\\n.udi-table-pagination .pagination-info {\\n display: flex;\\n flex-direction: column;\\n gap: 8px;\\n color: #6c757d;\\n font-size: 14px;\\n}\\n\\n.udi-table-pagination .pagination-info .page-size-selector {\\n display: flex;\\n align-items: center;\\n gap: 8px;\\n}\\n\\n.udi-table-pagination .pagination-info .page-size-selector label {\\n font-weight: 500;\\n color: #495057;\\n}\\n\\n.udi-table-pagination .pagination-info .page-size-selector .page-size-select {\\n padding: 4px 8px;\\n border: 1px solid #ced4da;\\n border-radius: 4px;\\n background: white;\\n font-size: 14px;\\n cursor: pointer;\\n outline: none;\\n transition: border-color 0.15s ease-in-out;\\n}\\n\\n.udi-table-pagination .pagination-info .page-size-selector .page-size-select:focus {\\n border-color: #007bff;\\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\\n}\\n\\n.udi-table-pagination .pagination-info .page-size-selector .page-size-select:hover {\\n border-color: #adb5bd;\\n}\\n\\n.udi-table-pagination .pagination-info .page-size-selector span {\\n color: #495057;\\n}\\n\\n.udi-table-pagination .pagination-info .pagination-summary {\\n font-size: 13px;\\n}\\n\\n.udi-table-pagination .pagination-controls {\\n display: flex;\\n gap: 4px;\\n align-items: center;\\n}\\n\\n.udi-table-pagination .pagination-controls .current-page-mobile {\\n padding: 8px 12px;\\n background: #007bff;\\n color: white;\\n border-radius: 4px;\\n font-size: 14px;\\n font-weight: 500;\\n min-width: 60px;\\n text-align: center;\\n border: 1px solid #007bff;\\n}\\n\\n.udi-table-pagination .pagination-controls .pagination-button {\\n padding: 6px 12px;\\n border: 1px solid #ced4da;\\n background: white;\\n color: #495057;\\n cursor: pointer;\\n border-radius: 4px;\\n font-size: 14px;\\n transition: all 0.15s ease-in-out;\\n min-width: 40px;\\n}\\n\\n.udi-table-pagination .pagination-controls .pagination-button:hover:not(:disabled) {\\n background: #e9ecef;\\n border-color: #adb5bd;\\n}\\n\\n.udi-table-pagination .pagination-controls .pagination-button:disabled {\\n background: #f8f9fa;\\n color: #6c757d;\\n cursor: not-allowed;\\n opacity: 0.6;\\n}\\n\\n.udi-table-pagination .pagination-controls .pagination-button.disabled {\\n background: #f1f3f4;\\n color: #9aa0a6;\\n cursor: not-allowed;\\n opacity: 0.5;\\n border-color: #dadce0;\\n}\\n\\n.udi-table-pagination .pagination-controls .pagination-button.disabled:hover {\\n background: #f1f3f4;\\n border-color: #dadce0;\\n}\\n\\n.udi-table-pagination .pagination-controls .pagination-button.active {\\n background: #007bff;\\n border-color: #007bff;\\n color: white;\\n}\\n\\n.udi-table-pagination .pagination-controls .pagination-button.active:hover {\\n background: #0056b3;\\n border-color: #0056b3;\\n}\\n\\n/* 響應式設計 */\\n\\n/* 大螢幕 (1200px+) - 桌面 */\\n@media (min-width: 1200px) {\\n .udi-table-wrapper {\\n height: 400px;\\n }\\n \\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid {\\n grid-template-columns: repeat(3, 1fr);\\n }\\n}\\n\\n/* 中等螢幕 (992px - 1199px) - 桌面/平板橫向 */\\n@media (max-width: 1199px) and (min-width: 992px) {\\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid {\\n grid-template-columns: repeat(2, 1fr);\\n }\\n}\\n\\n/* 小螢幕 (768px - 991px) - 平板 */\\n@media (max-width: 991px) and (min-width: 768px) {\\n .udi-table-container {\\n border-radius: 6px;\\n }\\n\\n .udi-table-wrapper {\\n height: 350px;\\n }\\n\\n .udi-table {\\n min-width: 600px;\\n }\\n \\n .udi-table th,\\n .udi-table td {\\n padding: 10px 12px;\\n font-size: 13px;\\n max-width: 200px;\\n }\\n\\n .udi-table-filter .filter-section .basic-filter {\\n flex-wrap: wrap;\\n gap: 10px;\\n }\\n \\n .udi-table-filter .filter-section .basic-filter .filter-input {\\n min-width: 180px;\\n }\\n\\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid {\\n grid-template-columns: repeat(2, 1fr);\\n gap: 10px;\\n }\\n\\n .udi-table-pagination {\\n padding: 12px;\\n }\\n \\n .udi-table-pagination .pagination-info .page-size-selector {\\n flex-direction: column;\\n align-items: flex-start;\\n gap: 4px;\\n }\\n}\\n\\n/* 手機螢幕 (481px - 767px) */\\n@media (max-width: 767px) and (min-width: 481px) {\\n .udi-table-container {\\n border-radius: 4px;\\n margin: 0 4px;\\n }\\n\\n .udi-table-wrapper {\\n height: 300px;\\n }\\n\\n .udi-table {\\n min-width: 500px;\\n }\\n \\n .udi-table th,\\n .udi-table td {\\n padding: 8px 10px;\\n font-size: 12px;\\n max-width: 150px;\\n }\\n \\n .udi-table th:first-child,\\n .udi-table tbody td:first-child {\\n position: sticky;\\n left: 0;\\n background: inherit;\\n z-index: 5;\\n border-right: 2px solid #e9ecef;\\n font-weight: 600;\\n }\\n\\n .scroll-position-indicator {\\n padding: 6px 12px;\\n font-size: 11px;\\n }\\n\\n .udi-table-filter .filter-section .basic-filter {\\n padding: 12px;\\n flex-direction: column;\\n align-items: stretch;\\n gap: 8px;\\n }\\n\\n .udi-table-filter .filter-section .basic-filter .filter-column-selector {\\n justify-content: flex-start;\\n }\\n \\n .udi-table-filter .filter-section .basic-filter .filter-column-selector label {\\n font-size: 13px;\\n }\\n \\n .udi-table-filter .filter-section .basic-filter .filter-column-selector .filter-column-select {\\n min-width: 100px;\\n flex: 1;\\n font-size: 14px;\\n }\\n\\n .udi-table-filter .filter-section .basic-filter .filter-input {\\n min-width: auto;\\n font-size: 16px;\\n }\\n\\n .udi-table-filter .filter-section .basic-filter .advanced-filter-toggle,\\n .udi-table-filter .filter-section .basic-filter .reset-button {\\n align-self: stretch;\\n font-size: 14px;\\n }\\n\\n .udi-table-filter .filter-section .advanced-filter {\\n padding: 12px;\\n }\\n\\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-header {\\n flex-direction: column;\\n align-items: stretch;\\n gap: 8px;\\n }\\n\\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-header h4 {\\n font-size: 14px;\\n }\\n \\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-header .clear-advanced-button {\\n align-self: flex-end;\\n }\\n\\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid {\\n grid-template-columns: 1fr;\\n gap: 8px;\\n }\\n\\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item label {\\n font-size: 12px;\\n }\\n \\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item .advanced-filter-input {\\n font-size: 16px;\\n }\\n\\n .udi-table-pagination {\\n flex-direction: column;\\n align-items: stretch;\\n padding: 12px;\\n gap: 8px;\\n }\\n\\n .udi-table-pagination .pagination-info {\\n text-align: center;\\n }\\n \\n .udi-table-pagination .pagination-info .page-size-selector {\\n justify-content: center;\\n flex-wrap: wrap;\\n }\\n\\n .udi-table-pagination .pagination-controls {\\n justify-content: center;\\n }\\n \\n .udi-table-pagination .pagination-controls .pagination-button {\\n padding: 8px 12px;\\n font-size: 13px;\\n min-width: 36px;\\n }\\n}\\n\\n/* 極小螢幕 (320px - 480px) */\\n@media (max-width: 480px) {\\n .udi-table-container {\\n border-radius: 0;\\n margin: 0;\\n box-shadow: none;\\n border-left: 1px solid #e9ecef;\\n border-right: 1px solid #e9ecef;\\n }\\n\\n .udi-table-wrapper {\\n height: 250px;\\n border: none;\\n }\\n\\n .udi-table {\\n min-width: 400px;\\n font-size: 11px;\\n }\\n \\n .udi-table th,\\n .udi-table td {\\n padding: 6px 8px;\\n font-size: 11px;\\n max-width: 120px;\\n }\\n \\n .udi-table th:first-child,\\n .udi-table tbody td:first-child {\\n min-width: 60px;\\n }\\n\\n .scroll-position-indicator {\\n padding: 4px 8px;\\n font-size: 10px;\\n }\\n\\n .udi-table-filter .filter-section .basic-filter {\\n padding: 8px;\\n gap: 6px;\\n }\\n\\n .udi-table-filter .filter-section .basic-filter .filter-column-selector label {\\n font-size: 12px;\\n }\\n \\n .udi-table-filter .filter-section .basic-filter .filter-column-selector .filter-column-select {\\n font-size: 13px;\\n padding: 6px 8px;\\n }\\n\\n .udi-table-filter .filter-section .basic-filter .filter-input {\\n padding: 8px 10px;\\n font-size: 16px;\\n }\\n\\n .udi-table-filter .filter-section .basic-filter .advanced-filter-toggle,\\n .udi-table-filter .filter-section .basic-filter .reset-button {\\n padding: 8px 12px;\\n font-size: 13px;\\n }\\n\\n .udi-table-filter .filter-section .advanced-filter {\\n padding: 8px;\\n }\\n\\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-header h4 {\\n font-size: 13px;\\n }\\n \\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-header .clear-advanced-button {\\n padding: 4px 8px;\\n font-size: 11px;\\n }\\n\\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid {\\n gap: 6px;\\n }\\n\\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item label {\\n font-size: 11px;\\n }\\n \\n .udi-table-filter .filter-section .advanced-filter .advanced-filter-grid .advanced-filter-item .advanced-filter-input {\\n padding: 6px 8px;\\n font-size: 16px;\\n }\\n\\n .udi-table-pagination {\\n padding: 8px;\\n gap: 6px;\\n }\\n\\n .udi-table-pagination .pagination-info {\\n font-size: 12px;\\n }\\n \\n .udi-table-pagination .pagination-info .page-size-selector {\\n gap: 4px;\\n }\\n \\n .udi-table-pagination .pagination-info .page-size-selector label {\\n font-size: 11px;\\n }\\n \\n .udi-table-pagination .pagination-info .page-size-selector .page-size-select {\\n padding: 4px 6px;\\n font-size: 12px;\\n }\\n \\n .udi-table-pagination .pagination-info .pagination-summary {\\n font-size: 11px;\\n }\\n\\n .udi-table-pagination .pagination-controls {\\n flex-wrap: wrap;\\n gap: 2px;\\n }\\n\\n .udi-table-pagination .pagination-controls .pagination-button {\\n padding: 6px 8px;\\n font-size: 11px;\\n min-width: 28px;\\n }\\n}\\n\\n/* 橫向模式優化 */\\n@media (orientation: landscape) and (max-height: 500px) {\\n .udi-table-wrapper {\\n height: 200px;\\n }\\n \\n .udi-table-filter .filter-section .basic-filter {\\n flex-direction: row;\\n flex-wrap: wrap;\\n }\\n}\\n\\n/* 高DPI螢幕優化 */\\n@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {\\n .udi-table th,\\n .udi-table td {\\n border-width: 0.5px;\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += \"}\";\n }\n if (item[2]) {\n content += \"}\";\n }\n if (item[4]) {\n content += \"}\";\n }\n return content;\n }).join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};","\"use strict\";\n\nmodule.exports = function (item) {\n var content = item[1];\n var cssMapping = item[3];\n if (!cssMapping) {\n return content;\n }\n if (typeof btoa === \"function\") {\n var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(cssMapping))));\n var data = \"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(base64);\n var sourceMapping = \"/*# \".concat(data, \" */\");\n return [content].concat([sourceMapping]).join(\"\\n\");\n }\n return [content].join(\"\\n\");\n};","\"use strict\";\n\nvar stylesInDOM = [];\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n for (var i = 0; i < stylesInDOM.length; i++) {\n if (stylesInDOM[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n return result;\n}\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = \"\".concat(id, \" \").concat(count);\n idCountMap[id] = count + 1;\n var indexByIdentifier = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3],\n supports: item[4],\n layer: item[5]\n };\n if (indexByIdentifier !== -1) {\n stylesInDOM[indexByIdentifier].references++;\n stylesInDOM[indexByIdentifier].updater(obj);\n } else {\n var updater = addElementStyle(obj, options);\n options.byIndex = i;\n stylesInDOM.splice(i, 0, {\n identifier: identifier,\n updater: updater,\n references: 1\n });\n }\n identifiers.push(identifier);\n }\n return identifiers;\n}\nfunction addElementStyle(obj, options) {\n var api = options.domAPI(options);\n api.update(obj);\n var updater = function updater(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {\n return;\n }\n api.update(obj = newObj);\n } else {\n api.remove();\n }\n };\n return updater;\n}\nmodule.exports = function (list, options) {\n options = options || {};\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\n for (var i = 0; i < lastIdentifiers.length; i++) {\n var identifier = lastIdentifiers[i];\n var index = getIndexByIdentifier(identifier);\n stylesInDOM[index].references--;\n }\n var newLastIdentifiers = modulesToDom(newList, options);\n for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n var _identifier = lastIdentifiers[_i];\n var _index = getIndexByIdentifier(_identifier);\n if (stylesInDOM[_index].references === 0) {\n stylesInDOM[_index].updater();\n stylesInDOM.splice(_index, 1);\n }\n }\n lastIdentifiers = newLastIdentifiers;\n };\n};","\"use strict\";\n\nvar memo = {};\n\n/* istanbul ignore next */\nfunction getTarget(target) {\n if (typeof memo[target] === \"undefined\") {\n var styleTarget = document.querySelector(target);\n\n // Special case to return head of iframe instead of iframe itself\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n memo[target] = styleTarget;\n }\n return memo[target];\n}\n\n/* istanbul ignore next */\nfunction insertBySelector(insert, style) {\n var target = getTarget(insert);\n if (!target) {\n throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n }\n target.appendChild(style);\n}\nmodule.exports = insertBySelector;","\"use strict\";\n\n/* istanbul ignore next */\nfunction insertStyleElement(options) {\n var element = document.createElement(\"style\");\n options.setAttributes(element, options.attributes);\n options.insert(element, options.options);\n return element;\n}\nmodule.exports = insertStyleElement;","\"use strict\";\n\n/* istanbul ignore next */\nfunction setAttributesWithoutAttributes(styleElement) {\n var nonce = typeof __webpack_nonce__ !== \"undefined\" ? __webpack_nonce__ : null;\n if (nonce) {\n styleElement.setAttribute(\"nonce\", nonce);\n }\n}\nmodule.exports = setAttributesWithoutAttributes;","\"use strict\";\n\n/* istanbul ignore next */\nfunction apply(styleElement, options, obj) {\n var css = \"\";\n if (obj.supports) {\n css += \"@supports (\".concat(obj.supports, \") {\");\n }\n if (obj.media) {\n css += \"@media \".concat(obj.media, \" {\");\n }\n var needLayer = typeof obj.layer !== \"undefined\";\n if (needLayer) {\n css += \"@layer\".concat(obj.layer.length > 0 ? \" \".concat(obj.layer) : \"\", \" {\");\n }\n css += obj.css;\n if (needLayer) {\n css += \"}\";\n }\n if (obj.media) {\n css += \"}\";\n }\n if (obj.supports) {\n css += \"}\";\n }\n var sourceMap = obj.sourceMap;\n if (sourceMap && typeof btoa !== \"undefined\") {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n }\n\n // For old IE\n /* istanbul ignore if */\n options.styleTagTransform(css, styleElement, options.options);\n}\nfunction removeStyleElement(styleElement) {\n // istanbul ignore if\n if (styleElement.parentNode === null) {\n return false;\n }\n styleElement.parentNode.removeChild(styleElement);\n}\n\n/* istanbul ignore next */\nfunction domAPI(options) {\n if (typeof document === \"undefined\") {\n return {\n update: function update() {},\n remove: function remove() {}\n };\n }\n var styleElement = options.insertStyleElement(options);\n return {\n update: function update(obj) {\n apply(styleElement, options, obj);\n },\n remove: function remove() {\n removeStyleElement(styleElement);\n }\n };\n}\nmodule.exports = domAPI;","\"use strict\";\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElement) {\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css;\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild);\n }\n styleElement.appendChild(document.createTextNode(css));\n }\n}\nmodule.exports = styleTagTransform;","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js!./UdiTable.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../node_modules/css-loader/dist/cjs.js!./UdiTable.css\";\n export default content && content.locals ? content.locals : undefined;\n","import React, { useState, useMemo, useRef, useEffect, forwardRef, useImperativeHandle, useCallback } from 'react';\nimport './UdiTable.css';\n\nconst UdiTable = forwardRef(({ \n onDataRequest = null, // 外部傳入的 callback 函數\n columns = [], \n pageSize = 10, \n sortable = true, \n filterable = true,\n className = '',\n isDev = false,\n syncTableControl=false,\n currentTableRef={currentTableRef},\n name = null,\n setTablePage\n}, ref) => {\n // 內部狀態管理\n const [data, setData] = useState([]);\n const [loading, setLoading] = useState(false);\n const [totalCount, setTotalCount] = useState(0);\n const [error, setError] = useState(null);\n const [sortConfig, setSortConfig] = useState({ key: null, direction: 'asc' });\n const [filterText, setFilterText] = useState('');\n const [filterColumn, setFilterColumn] = useState('all');\n const [showAdvancedFilter, setShowAdvancedFilter] = useState(false);\n const [advancedFilters, setAdvancedFilters] = useState({});\n const [currentPage, setCurrentPage] = useState(1);\n const [currentPageSize, setCurrentPageSize] = useState(pageSize);\n const [scrollPosition, setScrollPosition] = useState({ top: 0, left: 0, verticalPercent: 0, horizontalPercent: 0 });\n const [scrollbarInfo, setScrollbarInfo] = useState({ hasHorizontal: false, hasVertical: false, maxScrollLeft: 0, maxScrollTop: 0 });\n const tableWrapperRef = useRef(null);\n const [isHovered, setIsHovered] = useState(false);\n const [isInfiniteScroll, setIsInfiniteScroll] = useState(false);\n const [isDropdownOpen, setIsDropdownOpen] = useState(false);\n const [hasFetchedData, setHasFetchedData] = useState(false);\n\n // 內部執行外部 callback 的函數\n const executeDataRequest = useCallback(async (params) => {\n if (!onDataRequest || hasFetchedData) return;\n\n setLoading(true);\n setError(null);\n\n try {\n const result = await onDataRequest(params);\n const data = Array.isArray(result.data) ? result.data : [];\n if (isInfiniteScroll) {\n setData((prevData) => [...prevData, ...data]);\n } else {\n setData(data);\n }\n\n setTotalCount(result.totalCount || 0);\n setHasFetchedData(true);\n } catch (err) {\n console.error('❌ Callback Error:', err);\n setError(err.message);\n setData([]);\n setTotalCount(0);\n } finally {\n setLoading(false);\n }\n }, [onDataRequest, isInfiniteScroll, hasFetchedData]);\n\n // 防抖的請求執行\n const debouncedDataRequest = useMemo(() => {\n let timeoutId;\n return (params) => {\n clearTimeout(timeoutId);\n timeoutId = setTimeout(() => {\n executeDataRequest(params);\n }, 300);\n };\n }, [executeDataRequest]);\n\n useEffect(() => {\n setTablePage((prev) => {\n return { ...prev, [`${name}Page`]: currentPage ,[`${name}PageSize`]: currentPageSize };\n });\n }, [currentPageSize, currentPage]);\n\n // 暴露給外部的方法\n useImperativeHandle(ref, () => ({\n // 執行數據請求的函數 - 這是外部會調用的主要函數\n executeRequest: (customParams = {}) => {\n const params = {\n page: currentPage,\n pageSize: currentPageSize,\n search: filterText,\n searchColumn: filterColumn,\n advancedFilters: advancedFilters,\n sortBy: sortConfig.key,\n sortOrder: sortConfig.direction,\n ...customParams\n };\n executeDataRequest(params);\n },\n // 重新載入(使用當前參數)\n reload: () => {\n const params = {\n page: currentPage,\n pageSize: currentPageSize,\n search: filterText,\n searchColumn: filterColumn,\n advancedFilters: advancedFilters,\n sortBy: sortConfig.key,\n sortOrder: sortConfig.direction\n };\n executeDataRequest(params);\n },\n // 重置篩選並執行請求\n resetFilters: () => {\n setFilterText('');\n setFilterColumn('all');\n setAdvancedFilters({});\n setCurrentPage(1);\n setSortConfig({ key: null, direction: 'asc' });\n \n // 重置後立即執行請求\n const params = {\n page: 1,\n pageSize: currentPageSize,\n search: '',\n searchColumn: 'all',\n advancedFilters: {},\n sortBy: null,\n sortOrder: 'asc'\n };\n executeDataRequest(params);\n },\n setPage: (page) => {\n setCurrentPage(page);\n\n },\n setPageSize: (size) => {\n setCurrentPageSize(size);\n setCurrentPage(1);\n },\n // 完整的狀態 API - 提供所有詳細信息\n getState: () => ({\n // 基本數據狀態\n data,\n loading,\n error,\n totalCount,\n tableWrapperRef: tableWrapperRef.current,\n tableName:name,\n \n // 分頁狀態\n pagination: {\n currentPage,\n pageSize: currentPageSize,\n totalPages: Math.ceil(totalCount / currentPageSize),\n hasNextPage: currentPage < Math.ceil(totalCount / currentPageSize),\n hasPreviousPage: currentPage > 1,\n startIndex: (currentPage - 1) * currentPageSize + 1,\n endIndex: Math.min(currentPage * currentPageSize, totalCount),\n isFirstPage: currentPage === 1,\n isLastPage: currentPage === Math.ceil(totalCount / currentPageSize)\n },\n \n // 滾動狀態\n scroll: {\n position: scrollPosition,\n scrollbar: scrollbarInfo,\n isAtTop: scrollPosition.verticalPercent === 0,\n isAtBottom: scrollPosition.verticalPercent === 100,\n isAtLeft: scrollPosition.horizontalPercent === 0,\n isAtRight: scrollPosition.horizontalPercent === 100,\n canScrollVertically: scrollbarInfo.hasVertical,\n canScrollHorizontally: scrollbarInfo.hasHorizontal\n },\n \n // 排序狀態\n sort: {\n sortConfig,\n sortBy: sortConfig.key,\n sortOrder: sortConfig.direction,\n isSorted: sortConfig.key !== null\n },\n \n // 篩選狀態\n filter: {\n filterText,\n filterColumn,\n advancedFilters,\n showAdvancedFilter,\n hasBasicFilter: filterText !== '' || filterColumn !== 'all',\n hasAdvancedFilter: Object.keys(advancedFilters).length > 0,\n hasAnyFilter: filterText !== '' || filterColumn !== 'all' || Object.keys(advancedFilters).length > 0,\n activeFiltersCount: Object.keys(advancedFilters).filter(key => advancedFilters[key]).length + (filterText ? 1 : 0)\n },\n \n // 表格配置狀態\n config: {\n sortable,\n filterable,\n className,\n isDev,\n columnsCount: columns.length,\n columns: columns.map(col => ({\n dataField: col.dataField,\n title: col.title,\n width: col.width,\n sortable: sortable\n }))\n },\n \n // 響應式狀態\n responsive: {\n isMobile,\n isTablet,\n isDesktop: !isMobile && !isTablet,\n screenWidth: window.innerWidth,\n screenHeight: window.innerHeight\n },\n \n // 元數據\n meta: {\n timestamp: new Date().toISOString(),\n version: '1.0.0',\n componentName: 'UdiTable'\n },\n \n isHovered,\n }),\n\n // 簡化版狀態 API - 只返回核心信息\n getCoreState: () => ({\n currentPage,\n totalPages: Math.ceil(totalCount / currentPageSize),\n totalCount,\n pageSize: currentPageSize,\n loading,\n error,\n scrollPosition,\n hasData: data.length > 0\n }),\n \n // 滾動位置 API\n getScrollState: () => ({\n ...scrollPosition,\n ...scrollbarInfo,\n isAtTop: scrollPosition.verticalPercent === 0,\n isAtBottom: scrollPosition.verticalPercent === 100,\n isAtLeft: scrollPosition.horizontalPercent === 0,\n isAtRight: scrollPosition.horizontalPercent === 100\n }),\n \n // 分頁狀態 API\n getPaginationState: () => ({\n currentPage,\n totalPages: Math.ceil(totalCount / currentPageSize),\n pageSize: currentPageSize,\n totalCount,\n hasNextPage: currentPage < Math.ceil(totalCount / currentPageSize),\n hasPreviousPage: currentPage > 1,\n startIndex: (currentPage - 1) * currentPageSize + 1,\n endIndex: Math.min(currentPage * currentPageSize, totalCount)\n }),\n \n // 篩選狀態 API\n getFilterState: () => ({\n filterText,\n filterColumn,\n advancedFilters,\n showAdvancedFilter,\n hasAnyFilter: filterText !== '' || filterColumn !== 'all' || Object.keys(advancedFilters).length > 0\n }),\n \n // 排序狀態 API\n getSortState: () => ({\n ...sortConfig,\n isSorted: sortConfig.key !== null\n }),\n\n // 滾動控制 API\n scrollControl,\n tableWrapperRef: tableWrapperRef.current,\n }), [\n data, loading, totalCount, error, currentPage, currentPageSize,\n sortConfig, filterText, filterColumn, advancedFilters, showAdvancedFilter,\n scrollPosition, scrollbarInfo, isMobile, isTablet, sortable, filterable, className, isDev, columns,\n executeDataRequest\n ]);\n\n // 初始載入\n useEffect(() => {\n if (onDataRequest) {\n const params = {\n page: 1,\n pageSize: currentPageSize,\n search: '',\n searchColumn: 'all',\n advancedFilters: {},\n sortBy: null,\n sortOrder: 'asc'\n };\n executeDataRequest(params);\n }\n }, [onDataRequest, executeDataRequest]);\n\n // 監聽篩選和排序變化\n useEffect(() => {\n if (!onDataRequest) return;\n \n const params = {\n page: currentPage,\n pageSize: currentPageSize,\n search: filterText,\n searchColumn: filterColumn,\n advancedFilters: advancedFilters,\n sortBy: sortConfig.key,\n sortOrder: sortConfig.direction\n };\n \n debouncedDataRequest(params);\n }, [onDataRequest, currentPage, currentPageSize, filterText, filterColumn, advancedFilters, sortConfig, debouncedDataRequest]);\n\n // 計算總頁數\n const totalPages = Math.ceil(totalCount / currentPageSize);\n\n // 檢測螢幕尺寸\n const [isMobile, setIsMobile] = useState(false);\n const [isTablet, setIsTablet] = useState(false);\n\n useEffect(() => {\n const checkScreenSize = () => {\n const width = window.innerWidth;\n setIsMobile(width < 768);\n setIsTablet(width >= 768 && width < 992);\n };\n\n checkScreenSize();\n window.addEventListener('resize', checkScreenSize);\n return () => window.removeEventListener('resize', checkScreenSize);\n }, []);\n\n // 滾動事件處理(使用 throttle)\n useEffect(() => {\n const tableWrapper = tableWrapperRef.current;\n if (!tableWrapper) return;\n\n // 更新滾動條信息\n const updateScrollbarInfo = () => {\n const hasHorizontal = tableWrapper.scrollWidth > tableWrapper.clientWidth;\n const hasVertical = tableWrapper.scrollHeight > tableWrapper.clientHeight;\n const maxScrollLeft = Math.max(0, tableWrapper.scrollWidth - tableWrapper.clientWidth);\n const maxScrollTop = Math.max(0, tableWrapper.scrollHeight - tableWrapper.clientHeight);\n \n setScrollbarInfo({\n hasHorizontal,\n hasVertical,\n maxScrollLeft,\n maxScrollTop,\n scrollWidth: tableWrapper.scrollWidth,\n scrollHeight: tableWrapper.scrollHeight,\n clientWidth: tableWrapper.clientWidth,\n clientHeight: tableWrapper.clientHeight\n });\n };\n\n // 初始化滾動條信息\n updateScrollbarInfo();\n\n let isThrottled = false;\n const handleScroll = (event) => {\n if (isThrottled) return;\n \n isThrottled = true;\n requestAnimationFrame(() => { //browser api > 每次滾动事件(rerender)使用 requestAnimationFrame\n const target = event.target;\n const scrollTop = target.scrollTop;\n const scrollLeft = target.scrollLeft;\n const scrollHeight = target.scrollHeight;\n const clientHeight = target.clientHeight;\n const scrollWidth = target.scrollWidth;\n const clientWidth = target.clientWidth;\n \n // 計算滾動百分比\n const verticalScrollPercent = scrollHeight > clientHeight \n ? ((scrollTop / (scrollHeight - clientHeight)) * 100)\n : 0;\n \n const horizontalScrollPercent = scrollWidth > clientWidth\n ? ((scrollLeft / (scrollWidth - clientWidth)) * 100)\n : 0;\n\n setScrollPosition({\n top: scrollTop,\n left: scrollLeft,\n verticalPercent: parseFloat(verticalScrollPercent.toFixed(1)),\n horizontalPercent: parseFloat(horizontalScrollPercent.toFixed(1))\n });\n\n // 更新滾動條信息(以防表格尺寸發生變化)\n updateScrollbarInfo();\n\n isThrottled = false;\n });\n };\n\n // 監聽窗口大小變化\n const handleResize = () => {\n updateScrollbarInfo();\n };\n\n tableWrapper.addEventListener('scroll', handleScroll, { passive: true });\n window.addEventListener('resize', handleResize);\n \n // 使用 ResizeObserver 監聽表格內容變化(如果支援的話)\n let resizeObserver;\n if (window.ResizeObserver) {\n resizeObserver = new ResizeObserver(() => {\n updateScrollbarInfo();\n });\n resizeObserver.observe(tableWrapper);\n }\n\n return () => {\n tableWrapper.removeEventListener('scroll', handleScroll);\n window.removeEventListener('resize', handleResize);\n if (resizeObserver) {\n resizeObserver.disconnect();\n }\n };\n }, [data]); // 當數據變化時重新初始化\n\n\n\n // 排序處理\n const handleSort = useCallback((key) => {\n if (!sortable) return;\n \n setSortConfig(prev => {\n let direction = 'asc';\n if (prev.key === key && prev.direction === 'asc') {\n direction = 'desc';\n }\n return { key, direction };\n });\n \n setCurrentPage(1);\n }, [sortable]);\n\n // 分頁處理\n const handlePageChange = useCallback((page) => {\n setCurrentPage(page);\n }, []);\n\n // 重置篩選\n const resetFilter = useCallback(() => {\n setFilterText('');\n setFilterColumn('all');\n setAdvancedFilters({});\n setCurrentPage(1);\n }, []);\n\n // 處理進階篩選變更\n const handleAdvancedFilterChange = useCallback((columnKey, value) => {\n setAdvancedFilters(prev => ({\n ...prev,\n [columnKey]: value\n }));\n setCurrentPage(1);\n }, []);\n\n // 清除進階篩選\n const clearAdvancedFilters = useCallback(() => {\n setAdvancedFilters({});\n setCurrentPage(1);\n }, []);\n\n // 切換進階篩選顯示\n const toggleAdvancedFilter = useCallback(() => {\n setShowAdvancedFilter(prev => !prev);\n }, []);\n \n\n // 處理每頁顯示數量變更\n const handlePageSizeChange = useCallback((newPageSize) => {\n setCurrentPageSize(newPageSize);\n setCurrentPage(1);\n }, []);\n\n // 滾動控制函數\n const scrollControl = useCallback((axis, value) => {\n const tableWrapper = tableWrapperRef.current;\n if (!tableWrapper) return;\n\n const maxScrollTop = tableWrapper.scrollHeight - tableWrapper.clientHeight;\n const maxScrollLeft = tableWrapper.scrollWidth - tableWrapper.clientWidth;\n\n const scrollValue = axis === 'top' ? Math.min(value, maxScrollTop) : Math.min(value, maxScrollLeft);\n\n if (axis === 'top') {\n tableWrapper.scrollTop = scrollValue;\n } else {\n tableWrapper.scrollLeft = scrollValue;\n }\n }, []);\n\n // Add hover detection\n const handleMouseEnter = () => {\n setIsHovered(true);\n if (syncTableControl && currentTableRef) {\n currentTableRef.current = tableWrapperRef.current;\n }\n };\n\n const handleMouseLeave = () => {\n if (!isDropdownOpen) {\n setIsHovered(false);\n }\n };\n\n // Handle infinite scroll toggle\n const toggleInfiniteScroll = useCallback(() => {\n setIsInfiniteScroll((prev) => !prev);\n }, []);\n\n const debouncedHandlePageChange = useMemo(() => {\n let timeoutId;\n return (newPage) => {\n clearTimeout(timeoutId);\n timeoutId = setTimeout(() => {\n if (newPage <= totalPages) {\n handlePageChange(newPage);\n }\n }, 300);\n };\n }, [handlePageChange, totalPages]);\n\n useEffect(() => {\n if (isInfiniteScroll) {\n const tableWrapper = tableWrapperRef.current;\n if (!tableWrapper) return;\n const handleScroll = () => {\n const { scrollTop, scrollHeight, clientHeight } = tableWrapper;\n const verticalScrollPercent = scrollHeight > clientHeight \n ? ((scrollTop / (scrollHeight - clientHeight)) * 100) \n : 0;\n\n if (verticalScrollPercent >= 80 && currentPage < totalPages) {\n debouncedHandlePageChange(currentPage + 1);\n }\n };\n\n tableWrapper.addEventListener(\"scroll\", handleScroll);\n\n return () => {\n tableWrapper.removeEventListener(\"scroll\", handleScroll);\n };\n }\n }, [isInfiniteScroll, currentPage, totalPages, debouncedHandlePageChange]);\n\n // Dropdown focus and blur handlers\n const handleDropdownFocus = () => {\n setIsDropdownOpen(true);\n };\n\n const handleDropdownBlur = () => {\n setIsDropdownOpen(false);\n };\n\n return (\n <>\n {/* 表格名稱 */}\n {name && (\n <div className=\"udi-table-name\">\n <h3>{name}</h3>\n </div>\n )}\n <div\n className={`udi-table-container ${className}`}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n >\n {/* 錯誤顯示 */}\n {error && (\n <div className=\"error-message\">\n ❌ 載入失敗: {error}\n </div>\n )}\n \n\n {/* 搜尋篩選器 */}\n {filterable && (\n <div className=\"udi-table-filter\">\n <div className=\"filter-section\">\n <div className=\"basic-filter\">\n <div className=\"filter-column-selector\">\n <label htmlFor=\"filterColumn\">搜尋欄位:</label>\n <select\n id=\"filterColumn\"\n value={filterColumn}\n onChange={(e) => {\n setFilterColumn(e.target.value);\n setCurrentPage(1);\n }}\n className=\"filter-column-select\"\n >\n <option value=\"all\">全部欄位</option>\n {columns.map((column) => (\n <option key={column.dataField} value={column.dataField}>\n {column.title}\n </option>\n ))}\n </select>\n </div>\n <input\n type=\"text\"\n placeholder={filterColumn === 'all' ? '搜尋所有欄位...' : `搜尋 ${columns.find(col => col.key === filterColumn)?.title || ''}...`}\n value={filterText}\n onChange={(e) => {\n setFilterText(e.target.value);\n setCurrentPage(1);\n }}\n className=\"filter-input\"\n />\n <button onClick={toggleAdvancedFilter} className=\"advanced-filter-toggle\">\n {showAdvancedFilter ? '隱藏進階篩選' : '進階篩選'}\n </button>\n {(filterText || filterColumn !== 'all' || Object.keys(advancedFilters).length > 0) && (\n <button onClick={resetFilter} className=\"reset-button\">\n 重置所有篩選\n </button>\n )}\n </div>\n \n {/* 進階篩選區域 */}\n {showAdvancedFilter && (\n <div className=\"advanced-filter\">\n <div className=\"advanced-filter-header\">\n <h4>進階篩選 - 多欄位同時篩選</h4>\n {Object.keys(advancedFilters).length > 0 && (\n <button onClick={clearAdvancedFilters} className=\"clear-advanced-button\">\n 清除進階篩選\n </button>\n )}\n </div>\n <div className=\"advanced-filter-grid\">\n {columns.map((column) => (\n <div key={column.dataField} className=\"advanced-filter-item\">\n <label htmlFor={`advanced-${column.dataField}`}>{column.title}:</label>\n <input\n id={`advanced-${column.dataField}`}\n type=\"text\"\n placeholder={`篩選 ${column.title}...`}\n value={advancedFilters[column.dataField] || ''}\n onChange={(e) => handleAdvancedFilterChange(column.dataField, e.target.value)}\n className=\"advanced-filter-input\"\n />\n </div>\n ))}\n </div>\n </div>\n )}\n </div>\n </div>\n )}\n\n {/* 滾動位置顯示器 */}\n {isDev && (\n <div className=\"scroll-position-indicator\">\n <div>滾動位置: 垂直 {scrollPosition.verticalPercent.toFixed(1)}% | 水平 {scrollPosition.horizontalPercent.toFixed(1)}%</div>\n <div>分頁: {currentPage}/{Math.ceil(totalCount / currentPageSize)} | 總筆數: {totalCount}</div>\n <div>滾動條: {scrollbarInfo.hasVertical ? '垂直✓' : '垂直✗'} | {scrollbarInfo.hasHorizontal ? '水平✓' : '水平✗'}</div>\n <div>螢幕: {isMobile ? '手機' : isTablet ? '平板' : '桌面'} ({window.innerWidth}x{window.innerHeight})</div>\n </div>\n )}\n\n {/* 表格 */}\n <div className=\"udi-table-wrapper-container\" style={{ position: 'relative' }}>\n <div className=\"udi-table-wrapper\" ref={tableWrapperRef}>\n <table className=\"udi-table\">\n <thead>\n <tr>\n {columns.map((column) => (\n <th\n key={column.dataField}\n onClick={() => handleSort(column.dataField)}\n className={`\n ${sortable ? 'sortable' : ''}\n ${sortConfig.key === column.dataField ? 'sorted' : ''}\n ${sortConfig.key === column.dataField ? sortConfig.direction : ''}\n `}\n style={{ width: column.width, minWidth: column.minWidth }}\n >\n <div className=\"th-content\">\n <span>\n {column.title}\n </span>\n {sortable && (\n <span className=\"sort-icon\">\n {sortConfig.key === column.dataField ? (\n sortConfig.direction === 'asc' ? '↑' : '↓'\n ) : '↕'}\n </span>\n )}\n </div>\n </th>\n ))}\n </tr>\n </thead>\n <tbody>\n {loading ? (\n <tr>\n <td colSpan={columns.length} className=\"loading-state\">\n <div className=\"loading-spinner\">\n <div className=\"spinner\"></div>\n <span>loading...</span>\n </div>\n </td>\n </tr>\n ) : data.length > 0 ? (\n data.map((row, rowIndex) => {\n return (\n <tr key={`row-${rowIndex}-${row.id || \"\"}`}>\n {columns.map((column, colIndex) => (\n <td\n key={`cell-${rowIndex}-${colIndex}-${column.dataField}`}\n title={\n row[column.dataField]\n } // Add title attribute for tooltip\n >\n {column.render\n ? column.render(\n row[column.dataField],\n row,\n rowIndex+1,\n column.dataField,\n name\n )\n : row[column.dataField]}\n </td>\n ))}\n </tr>\n );\n })\n ) \n : (\n <tr>\n <td colSpan={columns.length} className=\"no-data\">\n 沒有資料\n </td>\n </tr>\n )}\n </tbody>\n </table>\n </div>\n </div>\n\n\n\n {/* 分頁控制 */}\n <div className=\"udi-table-pagination\">\n <div className=\"pagination-info\">\n <div className=\"page-size-selector\">\n <label htmlFor=\"pageSize\">每頁顯示:</label>\n <div className=\"page-size-container\" onMouseEnter={handleMouseEnter}>\n <select \n id=\"pageSize\"\n value={currentPageSize} \n onChange={(e) => handlePageSizeChange(Number(e.target.value))}\n onFocus={handleDropdownFocus}\n onBlur={handleDropdownBlur}\n className=\"page-size-select\"\n >\n <option value={5}>5</option>\n <option value={10}>10</option>\n <option value={20}>20</option>\n <option value={50}>50</option>\n <option value={100}>100</option>\n </select>\n </div>\n <span>筆</span>\n </div>\n <div className=\"pagination-summary\">\n 共 {totalCount} 筆資料{totalPages > 1 ? `,第 ${currentPage} / ${totalPages} 頁` : ''}\n </div>\n </div>\n \n {/* 分頁控制按鈕 */}\n {totalPages > 1 && (\n <div className=\"pagination-controls\">\n {/* 手機模式下只顯示上一頁、當前頁和下一頁 */}\n {isMobile ? (\n <>\n <button\n onClick={() => handlePageChange(currentPage - 1)}\n disabled={currentPage === 1}\n className=\"pagination-button\"\n >\n ‹\n </button>\n <span className=\"current-page-mobile\">\n {currentPage} / {totalPages}\n </span>\n <button\n onClick={() => handlePageChange(currentPage + 1)}\n disabled={currentPage === totalPages}\n className=\"pagination-button\"\n >\n ›\n </button>\n </>\n ) : (\n <>\n <button\n onClick={() => handlePageChange(1)}\n disabled={currentPage === 1}\n className=\"pagination-button\"\n >\n 首頁\n </button>\n <button\n onClick={() => handlePageChange(currentPage - 1)}\n disabled={currentPage === 1}\n className=\"pagination-button\"\n >\n 上一頁\n </button>\n \n {/* 頁碼按鈕 */}\n {(() => {\n const pages = [];\n \n // 計算要顯示的三個頁碼\n let centerPage = currentPage;\n let startPage = Math.max(1, centerPage - 1);\n let endPage = Math.min(totalPages, startPage + 2);\n \n // 如果右邊不足3個,向左調整\n if (endPage - startPage < 2) {\n startPage = Math.max(1, endPage - 2);\n }\n \n // 固定顯示3個按鈕\n for (let i = 0; i < 3; i++) {\n const pageNum = startPage + i;\n const isValidPage = pageNum <= totalPages;\n \n pages.push(\n <button\n key={`page-btn-${i}`}\n onClick={() => isValidPage ? handlePageChange(pageNum) : null}\n disabled={!isValidPage}\n className={`pagination-button ${\n isValidPage && currentPage === pageNum ? 'active' : ''\n } ${!isValidPage ? 'disabled' : ''}`}\n >\n {isValidPage ? pageNum : '-'}\n </button>\n );\n }\n \n return pages;\n })()}\n\n <button\n onClick={() => handlePageChange(currentPage + 1)}\n disabled={currentPage === totalPages}\n className=\"pagination-button\"\n >\n 下一頁\n </button>\n <button\n onClick={() => handlePageChange(totalPages)}\n disabled={currentPage === totalPages}\n className=\"pagination-button\"\n >\n 末頁\n </button>\n </>\n )}\n </div>\n )}\n </div>\n\n {/* Infinite Scroll Toggle Button */}\n {isDev && (\n <button\n onClick={toggleInfiniteScroll}\n className=\"toggle-infinite-scroll-button\"\n >\n {isInfiniteScroll ? \"切換到手動分頁\" : \"切換到無限滾動\"}\n </button>\n )}\n </div>\n </>\n );\n});\n\nUdiTable.displayName = 'UdiTable';\n\nexport default UdiTable;","export function formatDate(date) {\n return new Date(date).toLocaleDateString('zh-TW');\n}\n","/**\n * 判斷傳入值是否為純粹的物件(不包含陣列與 null)\n *\n * @param {*} val - 任意型別的值\n * @returns {boolean} - 若是純物件則回傳 true,否則回傳 false\n *\n * @example\n * isObject({}) // true\n * isObject([]) // false\n * isObject(null) // false\n * isObject(\"string\") // false\n */\nconst isObject = (val) => {\n return val !== null && typeof val === 'object' && !Array.isArray(val);\n};\n\n/**\n * 等待指定時間後再繼續執行\n *\n * @param {number} time - 等待的時間(毫秒為單位,例如 1000 代表 1 秒)\n * @returns {Promise<void>} - 回傳一個 Promise,在指定毫秒數後 resolve\n *\n * @example\n * await sleep(1000); // 等待 1 秒\n */\nfunction sleep(time) {\n // 建立一個 Promise,使用 setTimeout 來延遲執行 resolve\n return new Promise((resolve) => setTimeout(resolve, time));\n}\n\nexport {\n isObject,\n sleep\n}","export * from './formatDate.js';\nexport * from './helpers.js';\nexport * from './math.js';","// math.js\n\nexport function add(a, b) {\n if (typeof a !== 'number' || typeof b !== 'number') {\n throw new Error('參數必須是數字');\n }\n return a + b;\n}\n\nexport function subtract(a, b) {\n if (typeof a !== 'number' || typeof b !== 'number') {\n throw new Error('參數必須是數字');\n }\n return a - b;\n} ","module.exports = __WEBPACK_EXTERNAL_MODULE_react__;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nc = undefined;","export { default as UdiTable } from './components/udiTable/UdiTable.jsx';\nexport * from './utils/index.js';\n\n\nexport function test01() { console.log('Hello from Udi Package!');\n}"],"names":["e","t","r","Symbol","n","iterator","o","toStringTag","i","c","prototype","Generator","u","Object","create","_regeneratorDefine2","f","p","y","G","v","a","d","bind","length","l","TypeError","call","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","__proto__","displayName","_regenerator","w","m","defineProperty","_regeneratorDefine","_invoke","enumerable","configurable","writable","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","Array","from","isArray","_arrayLikeToArray","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","toString","slice","constructor","name","test","next","push","React","useState","useMemo","useRef","useEffect","forwardRef","useImperativeHandle","useCallback","UdiTable","_ref","ref","_columns$find","_ref$onDataRequest","onDataRequest","_ref$columns","columns","_ref$pageSize","pageSize","_ref$sortable","sortable","_ref$filterable","filterable","_ref$className","className","_ref$isDev","isDev","_ref$syncTableControl","syncTableControl","_ref$currentTableRef","currentTableRef","_ref$name","setTablePage","_useState","_useState2","data","setData","_useState3","_useState4","loading","setLoading","_useState5","_useState6","totalCount","setTotalCount","_useState7","_useState8","error","setError","_useState9","key","direction","_useState0","sortConfig","setSortConfig","_useState1","_useState10","filterText","setFilterText","_useState11","_useState12","filterColumn","setFilterColumn","_useState13","_useState14","showAdvancedFilter","setShowAdvancedFilter","_useState15","_useState16","advancedFilters","setAdvancedFilters","_useState17","_useState18","currentPage","setCurrentPage","_useState19","_useState20","currentPageSize","setCurrentPageSize","_useState21","top","left","verticalPercent","horizontalPercent","_useState22","scrollPosition","setScrollPosition","_useState23","hasHorizontal","hasVertical","maxScrollLeft","maxScrollTop","_useState24","scrollbarInfo","setScrollbarInfo","tableWrapperRef","_useState25","_useState26","isHovered","setIsHovered","_useState27","_useState28","isInfiniteScroll","setIsInfiniteScroll","_useState29","_useState30","isDropdownOpen","setIsDropdownOpen","_useState31","_useState32","hasFetchedData","setHasFetchedData","executeDataRequest","_ref2","_callee","params","result","_data","_t","_context","prevData","concat","console","message","_x","debouncedDataRequest","timeoutId","clearTimeout","setTimeout","prev","_objectSpread","_defineProperty","executeRequest","customParams","undefined","page","search","searchColumn","sortBy","sortOrder","reload","resetFilters","setPage","setPageSize","size","getState","current","tableName","pagination","totalPages","Math","ceil","hasNextPage","hasPreviousPage","startIndex","endIndex","min","isFirstPage","isLastPage","scroll","position","scrollbar","isAtTop","isAtBottom","isAtLeft","isAtRight","canScrollVertically","canScrollHorizontally","sort","isSorted","filter","hasBasicFilter","hasAdvancedFilter","keys","hasAnyFilter","activeFiltersCount","config","columnsCount","map","col","dataField","title","width","responsive","isMobile","isTablet","isDesktop","screenWidth","window","innerWidth","screenHeight","innerHeight","meta","timestamp","Date","toISOString","version","componentName","getCoreState","hasData","getScrollState","getPaginationState","getFilterState","getSortState","scrollControl","_useState33","_useState34","setIsMobile","_useState35","_useState36","setIsTablet","checkScreenSize","addEventListener","removeEventListener","tableWrapper","updateScrollbarInfo","scrollWidth","clientWidth","scrollHeight","clientHeight","max","isThrottled","handleScroll","event","requestAnimationFrame","target","scrollTop","scrollLeft","verticalScrollPercent","horizontalScrollPercent","parseFloat","toFixed","handleResize","passive","resizeObserver","ResizeObserver","observe","disconnect","handleSort","handlePageChange","resetFilter","handleAdvancedFilterChange","columnKey","clearAdvancedFilters","toggleAdvancedFilter","handlePageSizeChange","newPageSize","axis","scrollValue","handleMouseEnter","handleMouseLeave","toggleInfiniteScroll","debouncedHandlePageChange","newPage","handleDropdownFocus","handleDropdownBlur","createElement","Fragment","onMouseEnter","onMouseLeave","htmlFor","id","onChange","column","type","placeholder","find","onClick","style","minWidth","colSpan","row","rowIndex","colIndex","render","Number","onFocus","onBlur","disabled","pages","centerPage","startPage","endPage","_loop","pageNum","isValidPage","formatDate","date","toLocaleDateString","isObject","val","_typeof","sleep","time","add","b","Error","subtract","default","test01","log"],"sourceRoot":""}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@udi-organization/udi-package",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.31",
|
|
4
4
|
"description": "Reusable React components and utilities for UDI system",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.js",
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
"build:dev": "webpack --config webpack.config.cjs --mode development",
|
|
22
22
|
"test": "echo \"Error: no test specified\" && exit 1",
|
|
23
23
|
"release": "npm version patch && yarn publish --access public --non-interactive && git push --follow-tags",
|
|
24
|
-
"pack-test": "
|
|
24
|
+
"pack-test": "bash ./scripts/pack-test.sh"
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
27
|
"prop-types": "^15.8.1"
|
package/udi-package-1.0.29.tgz
DELETED
|
Binary file
|
package/webpack.config.cjs
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
// webpack.config.cjs
|
|
2
|
-
const path = require('path');
|
|
3
|
-
|
|
4
|
-
module.exports = (env, argv) => {
|
|
5
|
-
const isDev = argv.mode === 'development';
|
|
6
|
-
|
|
7
|
-
return {
|
|
8
|
-
mode: isDev ? 'development' : 'production',
|
|
9
|
-
entry: './src/index.js',
|
|
10
|
-
output: {
|
|
11
|
-
path: path.resolve(__dirname, 'dist'),
|
|
12
|
-
filename: 'index.js',
|
|
13
|
-
library: { type: 'module' }, // 產出 ESM
|
|
14
|
-
module: true,
|
|
15
|
-
environment: { module: true },
|
|
16
|
-
clean: true, // ✅ 每次打包前清空 dist
|
|
17
|
-
},
|
|
18
|
-
experiments: {
|
|
19
|
-
outputModule: true,
|
|
20
|
-
},
|
|
21
|
-
devtool: isDev ? 'source-map' : false, // ✅ dev 才輸出 source map
|
|
22
|
-
module: {
|
|
23
|
-
rules: [
|
|
24
|
-
{
|
|
25
|
-
test: /\.(js|jsx)$/,
|
|
26
|
-
exclude: /node_modules/,
|
|
27
|
-
use: 'babel-loader',
|
|
28
|
-
},
|
|
29
|
-
{
|
|
30
|
-
test: /\.css$/,
|
|
31
|
-
use: ['style-loader', 'css-loader'],
|
|
32
|
-
},
|
|
33
|
-
],
|
|
34
|
-
},
|
|
35
|
-
resolve: {
|
|
36
|
-
extensions: ['.js', '.jsx'],
|
|
37
|
-
},
|
|
38
|
-
externals: {
|
|
39
|
-
react: 'react',
|
|
40
|
-
'react-dom': 'react-dom',
|
|
41
|
-
},
|
|
42
|
-
optimization: {
|
|
43
|
-
minimize: !isDev, // prod 才壓縮
|
|
44
|
-
},
|
|
45
|
-
};
|
|
46
|
-
};
|