@teppen/react-ui 1.8.15 → 1.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (151) hide show
  1. package/README.md +16 -3
  2. package/dist/cjs/node_modules/react-icons/bi/index.js +1 -1
  3. package/dist/cjs/node_modules/react-icons/bi/index.js.map +1 -1
  4. package/dist/cjs/node_modules/react-icons/lib/iconBase.js +1 -1
  5. package/dist/cjs/node_modules/react-icons/lib/iconBase.js.map +1 -1
  6. package/dist/cjs/node_modules/react-icons/lu/index.js +1 -1
  7. package/dist/cjs/node_modules/react-icons/lu/index.js.map +1 -1
  8. package/dist/cjs/node_modules/react-icons/md/index.js +1 -1
  9. package/dist/cjs/node_modules/react-icons/md/index.js.map +1 -1
  10. package/dist/cjs/node_modules/react-icons/ti/index.js +1 -1
  11. package/dist/cjs/node_modules/react-icons/ti/index.js.map +1 -1
  12. package/dist/cjs/node_modules/tslib/tslib.es6.js.map +1 -1
  13. package/dist/cjs/src/file-uploader/component.js.map +1 -1
  14. package/dist/cjs/src/file-uploader/hook.js.map +1 -1
  15. package/dist/cjs/src/icon/cancel-icon.js.map +1 -1
  16. package/dist/cjs/src/lib/errors.js.map +1 -1
  17. package/dist/cjs/src/search-bar/condition-search-bar/condition-input-management/context.js.map +1 -1
  18. package/dist/cjs/src/search-bar/condition-search-bar/condition-input-management/hook.js.map +1 -1
  19. package/dist/cjs/src/search-bar/condition-search-bar/condition-input-management/provider.js.map +1 -1
  20. package/dist/cjs/src/search-bar/condition-search-bar/condition-input-management/reducer.js.map +1 -1
  21. package/dist/cjs/src/search-bar/condition-search-bar/input-form.js +1 -1
  22. package/dist/cjs/src/search-bar/id-generator/context.js.map +1 -1
  23. package/dist/cjs/src/select-box/id/provider.js.map +1 -1
  24. package/dist/cjs/src/select-box/lib/id-generator.js.map +1 -1
  25. package/dist/cjs/src/select-box/options-window/component.js.map +1 -1
  26. package/dist/cjs/src/select-box/options-window/context.js.map +1 -1
  27. package/dist/cjs/src/select-box/options-window/hook.js.map +1 -1
  28. package/dist/cjs/src/select-box/options-window/provider.js.map +1 -1
  29. package/dist/cjs/src/select-box/options-window/reducer.js.map +1 -1
  30. package/dist/cjs/src/select-box/parts/frame.js.map +1 -1
  31. package/dist/cjs/src/select-box/parts/input-area.js +1 -1
  32. package/dist/cjs/src/table/cell/hooks.js.map +1 -1
  33. package/dist/cjs/src/table/cell/ui/cell.js +1 -1
  34. package/dist/cjs/src/table/checkbox/hooks.js.map +1 -1
  35. package/dist/cjs/src/table/checkbox/provider.js.map +1 -1
  36. package/dist/cjs/src/table/copy/components.js.map +1 -1
  37. package/dist/cjs/src/table/copy/hooks.js.map +1 -1
  38. package/dist/cjs/src/table/copy/provider.js.map +1 -1
  39. package/dist/cjs/src/table/edit/hooks.js.map +1 -1
  40. package/dist/cjs/src/table/edit/ui/base-input.js +1 -1
  41. package/dist/cjs/src/table/edit/ui/editor.js.map +1 -1
  42. package/dist/cjs/src/table/edit/ui/select-input.js +1 -1
  43. package/dist/cjs/src/table/filter-v2/context.js.map +1 -1
  44. package/dist/cjs/src/table/filter-v2/hook.js.map +1 -1
  45. package/dist/cjs/src/table/filter-v2/provider.js.map +1 -1
  46. package/dist/cjs/src/table/filter-v2/reducer.js.map +1 -1
  47. package/dist/cjs/src/table/header/columns-width/context.js.map +1 -1
  48. package/dist/cjs/src/table/header/columns-width/reducer.js.map +1 -1
  49. package/dist/cjs/src/table/header/header-v2-hook.js.map +1 -1
  50. package/dist/cjs/src/table/header/header-v2.js +1 -1
  51. package/dist/cjs/src/table/header/header-v2.js.map +1 -1
  52. package/dist/cjs/src/table/header/header.js +1 -1
  53. package/dist/cjs/src/table/header/x-scroll-position/context.js.map +1 -1
  54. package/dist/cjs/src/table/header/x-scroll-position/provider.js.map +1 -1
  55. package/dist/cjs/src/table/header/x-scroll-position/reducer.js.map +1 -1
  56. package/dist/cjs/src/table/id/id-generator.js.map +1 -1
  57. package/dist/cjs/src/table/id/provider.js.map +1 -1
  58. package/dist/cjs/src/table/lib/errors.js.map +1 -1
  59. package/dist/cjs/src/table/libs/conditional-formatting.js.map +1 -1
  60. package/dist/cjs/src/table/libs/generate-validate-function.js.map +1 -1
  61. package/dist/cjs/src/table/pagenation/components.js +1 -1
  62. package/dist/cjs/src/table/pagenation/hooks.js.map +1 -1
  63. package/dist/cjs/src/table/paste/hooks.js +1 -1
  64. package/dist/cjs/src/table/paste/hooks.js.map +1 -1
  65. package/dist/cjs/src/table/paste/logic.js.map +1 -1
  66. package/dist/cjs/src/table/paste/provider.js.map +1 -1
  67. package/dist/cjs/src/table/range/hooks.js.map +1 -1
  68. package/dist/cjs/src/table/range/provider.js +1 -1
  69. package/dist/cjs/src/table/range/provider.js.map +1 -1
  70. package/dist/cjs/src/table/sheet/components.js +1 -1
  71. package/dist/cjs/src/table/sheet/components.js.map +1 -1
  72. package/dist/cjs/src/table/sort/hooks.js.map +1 -1
  73. package/dist/cjs/src/table/sort/icon.js.map +1 -1
  74. package/dist/cjs/src/table/table/base.js +1 -1
  75. package/dist/cjs/src/table/table/hook.js.map +1 -1
  76. package/dist/cjs/src/table/table-property/hook.js.map +1 -1
  77. package/dist/cjs/src/table/table-property/provider.js.map +1 -1
  78. package/dist/esm/node_modules/react-icons/bi/index.js +1 -1
  79. package/dist/esm/node_modules/react-icons/bi/index.js.map +1 -1
  80. package/dist/esm/node_modules/react-icons/lib/iconBase.js +1 -1
  81. package/dist/esm/node_modules/react-icons/lib/iconBase.js.map +1 -1
  82. package/dist/esm/node_modules/react-icons/lu/index.js +1 -1
  83. package/dist/esm/node_modules/react-icons/lu/index.js.map +1 -1
  84. package/dist/esm/node_modules/react-icons/md/index.js +1 -1
  85. package/dist/esm/node_modules/react-icons/md/index.js.map +1 -1
  86. package/dist/esm/node_modules/react-icons/ti/index.js +1 -1
  87. package/dist/esm/node_modules/react-icons/ti/index.js.map +1 -1
  88. package/dist/esm/node_modules/tslib/tslib.es6.js.map +1 -1
  89. package/dist/esm/src/file-uploader/component.js +1 -1
  90. package/dist/esm/src/file-uploader/component.js.map +1 -1
  91. package/dist/esm/src/file-uploader/hook.js.map +1 -1
  92. package/dist/esm/src/icon/cancel-icon.js.map +1 -1
  93. package/dist/esm/src/lib/errors.js.map +1 -1
  94. package/dist/esm/src/search-bar/condition-search-bar/condition-input-management/hook.js.map +1 -1
  95. package/dist/esm/src/search-bar/condition-search-bar/condition-input-management/reducer.js.map +1 -1
  96. package/dist/esm/src/search-bar/condition-search-bar/input-form.js +1 -1
  97. package/dist/esm/src/select-box/lib/id-generator.js.map +1 -1
  98. package/dist/esm/src/select-box/options-window/component.js.map +1 -1
  99. package/dist/esm/src/select-box/options-window/hook.js.map +1 -1
  100. package/dist/esm/src/select-box/options-window/reducer.js.map +1 -1
  101. package/dist/esm/src/select-box/parts/frame.js.map +1 -1
  102. package/dist/esm/src/select-box/parts/input-area.js +1 -1
  103. package/dist/esm/src/table/cell/hooks.js.map +1 -1
  104. package/dist/esm/src/table/cell/ui/cell.js +1 -1
  105. package/dist/esm/src/table/checkbox/provider.js.map +1 -1
  106. package/dist/esm/src/table/copy/components.js.map +1 -1
  107. package/dist/esm/src/table/copy/hooks.js.map +1 -1
  108. package/dist/esm/src/table/copy/provider.js.map +1 -1
  109. package/dist/esm/src/table/edit/hooks.js.map +1 -1
  110. package/dist/esm/src/table/edit/provider.js +1 -1
  111. package/dist/esm/src/table/edit/ui/base-input.js +1 -1
  112. package/dist/esm/src/table/edit/ui/editor.js.map +1 -1
  113. package/dist/esm/src/table/edit/ui/select-input.js +1 -1
  114. package/dist/esm/src/table/filter-v2/context.js.map +1 -1
  115. package/dist/esm/src/table/filter-v2/hook.js.map +1 -1
  116. package/dist/esm/src/table/filter-v2/provider.js.map +1 -1
  117. package/dist/esm/src/table/filter-v2/reducer.js.map +1 -1
  118. package/dist/esm/src/table/header/columns-width/provider.js +1 -1
  119. package/dist/esm/src/table/header/columns-width/reducer.js +1 -1
  120. package/dist/esm/src/table/header/columns-width/reducer.js.map +1 -1
  121. package/dist/esm/src/table/header/header-v2-hook.js.map +1 -1
  122. package/dist/esm/src/table/header/header-v2.js +1 -1
  123. package/dist/esm/src/table/header/header-v2.js.map +1 -1
  124. package/dist/esm/src/table/header/header.js +1 -1
  125. package/dist/esm/src/table/header/x-scroll-position/reducer.js.map +1 -1
  126. package/dist/esm/src/table/id/id-generator.js.map +1 -1
  127. package/dist/esm/src/table/id/provider.js.map +1 -1
  128. package/dist/esm/src/table/lib/errors.js.map +1 -1
  129. package/dist/esm/src/table/libs/conditional-formatting.js.map +1 -1
  130. package/dist/esm/src/table/libs/generate-validate-function.js.map +1 -1
  131. package/dist/esm/src/table/pagenation/components.js +1 -1
  132. package/dist/esm/src/table/pagenation/constants.js.map +1 -1
  133. package/dist/esm/src/table/pagenation/hooks.js.map +1 -1
  134. package/dist/esm/src/table/paste/hooks.js +1 -1
  135. package/dist/esm/src/table/paste/hooks.js.map +1 -1
  136. package/dist/esm/src/table/paste/logic.js.map +1 -1
  137. package/dist/esm/src/table/paste/provider.js.map +1 -1
  138. package/dist/esm/src/table/range/hooks.js.map +1 -1
  139. package/dist/esm/src/table/range/provider.js +1 -1
  140. package/dist/esm/src/table/range/provider.js.map +1 -1
  141. package/dist/esm/src/table/sheet/components.js +1 -1
  142. package/dist/esm/src/table/sheet/components.js.map +1 -1
  143. package/dist/esm/src/table/sheet/providers.js +1 -1
  144. package/dist/esm/src/table/sort/hooks.js.map +1 -1
  145. package/dist/esm/src/table/sort/icon.js.map +1 -1
  146. package/dist/esm/src/table/table/base.js +1 -1
  147. package/dist/esm/src/table/table/hook.js.map +1 -1
  148. package/dist/esm/src/table/table-property/hook.js.map +1 -1
  149. package/dist/esm/src/table/table-property/provider.js.map +1 -1
  150. package/dist/index.d.ts +11 -10
  151. package/package.json +33 -25
@@ -1 +1 @@
1
- {"version":3,"file":"tslib.es6.js","sources":["../../../../node_modules/tslib/tslib.es6.js"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n function next() {\r\n while (env.stack.length) {\r\n var rec = env.stack.pop();\r\n try {\r\n var result = rec.dispose && rec.dispose.call(rec.value);\r\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","prototype","hasOwnProperty","call","__extends","TypeError","String","__","this","constructor","create","__assign","assign","t","s","i","n","arguments","length","apply","__spreadArray","to","from","pack","ar","l","slice","concat","SuppressedError"],"mappings":"AAgBA,IAAIA,EAAgB,SAASC,EAAGC,GAI5B,OAHAF,EAAgBG,OAAOC,gBAClB,CAAEC,UAAW,cAAgBC,OAAS,SAAUL,EAAGC,GAAKD,EAAEI,UAAYH,CAAE,GACzE,SAAUD,EAAGC,GAAK,IAAK,IAAIK,KAAKL,EAAOC,OAAOK,UAAUC,eAAeC,KAAKR,EAAGK,KAAIN,EAAEM,GAAKL,EAAEK,KACzFP,EAAcC,EAAGC,EAC5B,EAEO,SAASS,EAAUV,EAAGC,GACzB,GAAiB,mBAANA,GAA0B,OAANA,EAC3B,MAAM,IAAIU,UAAU,uBAAyBC,OAAOX,GAAK,iCAE7D,SAASY,IAAOC,KAAKC,YAAcf,CAAI,CADvCD,EAAcC,EAAGC,GAEjBD,EAAEO,UAAkB,OAANN,EAAaC,OAAOc,OAAOf,IAAMY,EAAGN,UAAYN,EAAEM,UAAW,IAAIM,EACnF,CAEU,IAACI,EAAW,WAQlB,OAPAA,EAAWf,OAAOgB,QAAU,SAAkBC,GAC1C,IAAK,IAAIC,EAAGC,EAAI,EAAGC,EAAIC,UAAUC,OAAQH,EAAIC,EAAGD,IAE5C,IAAK,IAAIf,KADTc,EAAIG,UAAUF,GACOnB,OAAOK,UAAUC,eAAeC,KAAKW,EAAGd,KAAIa,EAAEb,GAAKc,EAAEd,IAE9E,OAAOa,CACV,EACMF,EAASQ,MAAMX,KAAMS,UAChC,EA6KO,SAASG,EAAcC,EAAIC,EAAMC,GACpC,GAAIA,GAA6B,IAArBN,UAAUC,OAAc,IAAK,IAA4BM,EAAxBT,EAAI,EAAGU,EAAIH,EAAKJ,OAAYH,EAAIU,EAAGV,KACxES,GAAQT,KAAKO,IACRE,IAAIA,EAAKzB,MAAME,UAAUyB,MAAMvB,KAAKmB,EAAM,EAAGP,IAClDS,EAAGT,GAAKO,EAAKP,IAGrB,OAAOM,EAAGM,OAAOH,GAAMzB,MAAME,UAAUyB,MAAMvB,KAAKmB,GACtD,CA8FkD,mBAApBM,iBAAiCA","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"tslib.es6.js","sources":["../../../../node_modules/tslib/tslib.es6.js"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n function next() {\r\n while (env.stack.length) {\r\n var rec = env.stack.pop();\r\n try {\r\n var result = rec.dispose && rec.dispose.call(rec.value);\r\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","prototype","hasOwnProperty","call","__extends","TypeError","String","__","this","constructor","create","__assign","assign","t","s","i","n","arguments","length","apply","__spreadArray","to","from","pack","ar","l","slice","concat","SuppressedError"],"mappings":"AAgBA,IAAIA,EAAgB,SAASC,EAAGC,GAI5B,OAHAF,EAAgBG,OAAOC,gBAClB,CAAEC,UAAW,cAAgBC,OAAS,SAAUL,EAAGC,GAAKD,EAAEI,UAAYH,CAAG,GAC1E,SAAUD,EAAGC,GAAK,IAAK,IAAIK,KAAKL,EAAOC,OAAOK,UAAUC,eAAeC,KAAKR,EAAGK,KAAIN,EAAEM,GAAKL,EAAEK,GAAI,EAC7FP,EAAcC,EAAGC,EAC5B,EAEO,SAASS,EAAUV,EAAGC,GACzB,GAAiB,mBAANA,GAA0B,OAANA,EAC3B,MAAM,IAAIU,UAAU,uBAAyBC,OAAOX,GAAK,iCAE7D,SAASY,IAAOC,KAAKC,YAAcf,CAAG,CADtCD,EAAcC,EAAGC,GAEjBD,EAAEO,UAAkB,OAANN,EAAaC,OAAOc,OAAOf,IAAMY,EAAGN,UAAYN,EAAEM,UAAW,IAAIM,EACnF,CAEU,IAACI,EAAW,WAQlB,OAPAA,EAAWf,OAAOgB,QAAU,SAAkBC,GAC1C,IAAK,IAAIC,EAAGC,EAAI,EAAGC,EAAIC,UAAUC,OAAQH,EAAIC,EAAGD,IAE5C,IAAK,IAAIf,KADTc,EAAIG,UAAUF,GACOnB,OAAOK,UAAUC,eAAeC,KAAKW,EAAGd,KAAIa,EAAEb,GAAKc,EAAEd,IAE9E,OAAOa,CACX,EACOF,EAASQ,MAAMX,KAAMS,UAChC,EA6KO,SAASG,EAAcC,EAAIC,EAAMC,GACpC,GAAIA,GAA6B,IAArBN,UAAUC,OAAc,IAAK,IAA4BM,EAAxBT,EAAI,EAAGU,EAAIH,EAAKJ,OAAYH,EAAIU,EAAGV,KACxES,GAAQT,KAAKO,IACRE,IAAIA,EAAKzB,MAAME,UAAUyB,MAAMvB,KAAKmB,EAAM,EAAGP,IAClDS,EAAGT,GAAKO,EAAKP,IAGrB,OAAOM,EAAGM,OAAOH,GAAMzB,MAAME,UAAUyB,MAAMvB,KAAKmB,GACtD,CA8FkD,mBAApBM,iBAAiCA","x_google_ignoreList":[0]}
@@ -1,2 +1,2 @@
1
- import{__spreadArray as e,__assign as i}from"../../node_modules/tslib/tslib.es6.js";import{jsx as r,jsxs as o,Fragment as d}from"react/jsx-runtime";import{useState as l}from"react";import{useFileUploader as t}from"./hook.js";import{LuUpload as n}from"../../node_modules/react-icons/lu/index.js";function a(a){var c=a.className,s=void 0===c?"":c,m=a.dropAreaClassName,u=void 0===m?"":m,p=a.dragActiveText,h=void 0===p?"ここにファイルをドロップ":p,f=a.defaultText,g=void 0===f?"ファイルの選択":f,v=a.icon,b=void 0===v?r(n,{size:48}):v,x=a.multiple,F=void 0===x||x,j=a.acceptedFileTypes,N=a.allowedExtensions,y=a.maxFileSize,w=a.files,T=a.rejectedFiles,A=a.onFilesAdded,S=a.onFilesRejected,z=a.useInternalState,E=void 0===z?void 0===w:z,I=a.showFileList,R=void 0===I||I,M=a.showRejectedFiles,P=void 0===M||M,_=a.rejectedFilesText,k=void 0===_?"These files are not accepted:":_,C=a.renderFileItem,D=a.renderRejectedFileItem,H=a.dropAreaHeight,L=void 0===H?"h-40":H,V=l([]),q=V[0],B=V[1],G=l([]),J=G[0],K=G[1],O=E?q:w||[],Q=E?J:T||[],U=t({addFiles:function(i){E&&B((function(r){return e(e([],r,!0),i,!0)})),null==A||A(i)},onValidationError:function(e){E&&K(e),null==S||S(e)},acceptedFileTypes:j,allowedExtensions:N,maxFileSize:y}),W=U.inputProps,X=U.dropSpaceProps,Y=U.isDragging;return o(d,{children:[o("div",{className:"w-full mx-auto border-2 border-dashed border-gray-300 rounded-lg bg-gray-50 ".concat(s),children:[o("div",i({},X,{className:"cursor-pointer w-full ".concat(L," flex flex-col gap-5 items-center justify-center rounded-lg transition-colors hover:bg-blue-100 ").concat(Y?"bg-blue-100":""," ").concat(u),children:[r("div",{children:b}),r("p",{children:Y?h:g})]})),r("input",i({},W,{multiple:F}))]}),R&&O.length>0&&r("ul",{className:"space-y-2 mt-4",children:O.map((function(e){return r("li",{className:"bg-white border border-gray-300 p-2 rounded-lg",children:C?C(e):e.name},"".concat(e.name,"-").concat(e.lastModified))}))}),P&&Q.length>0&&o("div",{className:"mt-4 text-red-500",children:[r("p",{children:k}),r("ul",{className:"space-y-2",children:Q.map((function(e){return r("li",{className:"bg-red-100 border border-red-300 p-2 rounded-lg",children:D?D(e):e.name},"".concat(e.name,"-").concat(e.lastModified))}))})]})]})}export{a as FileUploader};
1
+ import{__assign as e,__spreadArray as i}from"../../node_modules/tslib/tslib.es6.js";import{jsx as r,jsxs as o,Fragment as d}from"react/jsx-runtime";import{useState as l}from"react";import{useFileUploader as t}from"./hook.js";import{LuUpload as n}from"../../node_modules/react-icons/lu/index.js";function a(a){var c=a.className,s=void 0===c?"":c,m=a.dropAreaClassName,u=void 0===m?"":m,p=a.dragActiveText,h=void 0===p?"ここにファイルをドロップ":p,f=a.defaultText,g=void 0===f?"ファイルの選択":f,v=a.icon,b=void 0===v?r(n,{size:48}):v,x=a.multiple,F=void 0===x||x,j=a.acceptedFileTypes,N=a.allowedExtensions,y=a.maxFileSize,w=a.files,T=a.rejectedFiles,A=a.onFilesAdded,S=a.onFilesRejected,z=a.useInternalState,E=void 0===z?void 0===w:z,I=a.showFileList,R=void 0===I||I,M=a.showRejectedFiles,P=void 0===M||M,_=a.rejectedFilesText,k=void 0===_?"These files are not accepted:":_,C=a.renderFileItem,D=a.renderRejectedFileItem,H=a.dropAreaHeight,L=void 0===H?"h-40":H,V=l([]),q=V[0],B=V[1],G=l([]),J=G[0],K=G[1],O=E?q:w||[],Q=E?J:T||[],U=t({addFiles:function(e){E&&B((function(r){return i(i([],r,!0),e,!0)})),null==A||A(e)},onValidationError:function(e){E&&K(e),null==S||S(e)},acceptedFileTypes:j,allowedExtensions:N,maxFileSize:y}),W=U.inputProps,X=U.dropSpaceProps,Y=U.isDragging;return o(d,{children:[o("div",{className:"w-full mx-auto border-2 border-dashed border-gray-300 rounded-lg bg-gray-50 ".concat(s),children:[o("div",e({},X,{className:"cursor-pointer w-full ".concat(L," flex flex-col gap-5 items-center justify-center rounded-lg transition-colors hover:bg-blue-100 ").concat(Y?"bg-blue-100":""," ").concat(u),children:[r("div",{children:b}),r("p",{children:Y?h:g})]})),r("input",e({},W,{multiple:F}))]}),R&&O.length>0&&r("ul",{className:"space-y-2 mt-4",children:O.map((function(e){return r("li",{className:"bg-white border border-gray-300 p-2 rounded-lg",children:C?C(e):e.name},"".concat(e.name,"-").concat(e.lastModified))}))}),P&&Q.length>0&&o("div",{className:"mt-4 text-red-500",children:[r("p",{children:k}),r("ul",{className:"space-y-2",children:Q.map((function(e){return r("li",{className:"bg-red-100 border border-red-300 p-2 rounded-lg",children:D?D(e):e.name},"".concat(e.name,"-").concat(e.lastModified))}))})]})]})}export{a as FileUploader};
2
2
  //# sourceMappingURL=component.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sources":["../../../../src/file-uploader/component.tsx"],"sourcesContent":["import { useState } from \"react\";\nimport { useFileUploader } from \"./hook\";\nimport { LuUpload } from \"react-icons/lu\";\n\nexport interface FileUploaderProps {\n /**\n * Custom class name for the container\n */\n className?: string;\n /**\n * Custom class name for the drop area\n */\n dropAreaClassName?: string;\n /**\n * Text displayed when dragging files over the drop area\n */\n dragActiveText?: string;\n /**\n * Default text for the uploader\n */\n defaultText?: string;\n /**\n * Custom icon component to display instead of the default upload icon\n */\n icon?: React.ReactNode;\n /**\n * Whether to accept multiple files (default: true)\n */\n multiple?: boolean;\n /**\n * List of accepted file types (MIME types or extensions)\n * If not provided, defaults to a predefined list of common formats\n */\n acceptedFileTypes?: string[];\n /**\n * List of allowed file extensions (e.g. ['.jpg', '.pdf'])\n * If not provided, defaults to a predefined list\n */\n allowedExtensions?: string[];\n /**\n * Maximum allowed file size in bytes\n */\n maxFileSize?: number;\n /**\n * External controlled array of files\n */\n files?: File[];\n /**\n * External controlled array of rejected files\n */\n rejectedFiles?: File[];\n /**\n * Callback when files are added (and pass validation)\n */\n onFilesAdded?: (files: File[]) => void;\n /**\n * Callback when files are rejected\n */\n onFilesRejected?: (rejectedFiles: File[]) => void;\n /**\n * Whether to use internal state for files management (default: true if files prop not provided)\n */\n useInternalState?: boolean;\n /**\n * Whether to show the file list below the uploader (default: true)\n */\n showFileList?: boolean;\n /**\n * Whether to show rejected files list (default: true)\n */\n showRejectedFiles?: boolean;\n /**\n * Custom text for rejected files section\n */\n rejectedFilesText?: string;\n /**\n * Custom function to render each file item\n */\n renderFileItem?: (file: File) => React.ReactNode;\n /**\n * Custom function to render each rejected file item\n */\n renderRejectedFileItem?: (file: File) => React.ReactNode;\n /**\n * Height of the drop area (default: \"h-40\")\n */\n dropAreaHeight?: string;\n}\n\nexport function FileUploader({\n className = \"\",\n dropAreaClassName = \"\",\n dragActiveText = \"ここにファイルをドロップ\", // \"Drop files here\"\n defaultText = \"ファイルの選択\", // \"Select files\"\n icon = <LuUpload size={48} />,\n multiple = true,\n acceptedFileTypes,\n allowedExtensions,\n maxFileSize,\n files: externalFiles,\n rejectedFiles: externalRejectedFiles,\n onFilesAdded,\n onFilesRejected,\n useInternalState = externalFiles === undefined,\n showFileList = true,\n showRejectedFiles = true,\n rejectedFilesText = \"These files are not accepted:\",\n renderFileItem,\n renderRejectedFileItem,\n dropAreaHeight = \"h-40\",\n}: FileUploaderProps) {\n // Internal state for files if not controlled externally\n const [internalFiles, setInternalFiles] = useState<File[]>([]);\n const [internalRejectedFiles, setInternalRejectedFiles] = useState<File[]>(\n []\n );\n\n // Use either external or internal state based on props\n const files = useInternalState ? internalFiles : externalFiles || [];\n const rejectedFiles = useInternalState\n ? internalRejectedFiles\n : externalRejectedFiles || [];\n\n const { inputProps, dropSpaceProps, isDragging } = useFileUploader({\n addFiles: (newFiles) => {\n if (useInternalState) {\n setInternalFiles((f) => [...f, ...newFiles]);\n }\n onFilesAdded?.(newFiles);\n },\n onValidationError: (rejectedFiles) => {\n if (useInternalState) {\n setInternalRejectedFiles(rejectedFiles);\n }\n onFilesRejected?.(rejectedFiles);\n },\n acceptedFileTypes,\n allowedExtensions,\n maxFileSize,\n });\n\n return (\n <>\n <div\n className={`w-full mx-auto border-2 border-dashed border-gray-300 rounded-lg bg-gray-50 ${className}`}\n >\n <div\n {...dropSpaceProps}\n className={`cursor-pointer w-full ${dropAreaHeight} flex flex-col gap-5 items-center justify-center rounded-lg transition-colors hover:bg-blue-100 ${\n isDragging ? \"bg-blue-100\" : \"\"\n } ${dropAreaClassName}`}\n >\n <div>{icon}</div>\n <p>{isDragging ? dragActiveText : defaultText}</p>\n </div>\n <input {...inputProps} multiple={multiple} />\n </div>\n\n {showFileList && files.length > 0 && (\n <ul className=\"space-y-2 mt-4\">\n {files.map((file) => (\n <li\n key={`${file.name}-${file.lastModified}`}\n className=\"bg-white border border-gray-300 p-2 rounded-lg\"\n >\n {renderFileItem ? renderFileItem(file) : file.name}\n </li>\n ))}\n </ul>\n )}\n\n {showRejectedFiles && rejectedFiles.length > 0 && (\n <div className=\"mt-4 text-red-500\">\n <p>{rejectedFilesText}</p>\n <ul className=\"space-y-2\">\n {rejectedFiles.map((file) => (\n <li\n key={`${file.name}-${file.lastModified}`}\n className=\"bg-red-100 border border-red-300 p-2 rounded-lg\"\n >\n {renderRejectedFileItem\n ? renderRejectedFileItem(file)\n : file.name}\n </li>\n ))}\n </ul>\n </div>\n )}\n </>\n );\n}\n"],"names":["FileUploader","_a","_b","className","_c","dropAreaClassName","_d","dragActiveText","_e","defaultText","_f","icon","_jsx","LuUpload","size","_g","multiple","acceptedFileTypes","allowedExtensions","maxFileSize","externalFiles","files","externalRejectedFiles","onFilesAdded","onFilesRejected","_h","useInternalState","undefined","_j","showFileList","_k","showRejectedFiles","_l","rejectedFilesText","renderFileItem","renderRejectedFileItem","_m","dropAreaHeight","_o","useState","internalFiles","setInternalFiles","_p","internalRejectedFiles","setInternalRejectedFiles","rejectedFiles","_q","useFileUploader","addFiles","newFiles","f","__spreadArray","onValidationError","inputProps","dropSpaceProps","isDragging","_jsxs","_Fragment","children","concat","__assign","length","map","file","name","lastModified"],"mappings":"uSAyFM,SAAUA,EAAaC,OAC3BC,EAAcD,EAAAE,UAAdA,OAAY,IAAAD,EAAA,KACZE,EAAAH,EAAAI,kBAAAA,OAAiB,IAAAD,EAAG,GAAEA,EACtBE,mBAAAC,aAAiB,eAAcD,EAC/BE,EAAAP,EAAAQ,YAAAA,OAAc,IAAAD,EAAA,UAASA,EACvBE,EAAAT,EAAAU,KAAAA,aAAOC,EAACC,EAAS,CAAAC,KAAM,KAAMJ,EAC7BK,aAAAC,OAAW,IAAAD,KACXE,EAAiBhB,EAAAgB,kBACjBC,EAAiBjB,EAAAiB,kBACjBC,EAAWlB,EAAAkB,YACJC,EAAanB,EAAAoB,MACLC,kBACfC,iBACAC,oBACAC,EAAAxB,EAAAyB,iBAAAA,kBAAqCC,IAAlBP,EAA2BK,EAC9CG,EAAmB3B,EAAA4B,aAAnBA,OAAY,IAAAD,GAAOA,EACnBE,sBAAAC,cAAwBD,EACxBE,EAAA/B,EAAAgC,kBAAAA,OAAiB,IAAAD,EAAG,gCAA+BA,EACnDE,EAAcjC,EAAAiC,eACdC,2BACAC,EAAAnC,EAAAoC,eAAAA,OAAc,IAAAD,EAAG,OAAMA,EAGjBE,EAAoCC,EAAiB,IAApDC,EAAaF,EAAA,GAAEG,EAAgBH,EAAA,GAChCI,EAAoDH,EACxD,IADKI,EAAqBD,EAAA,GAAEE,EAAwBF,EAAA,GAKhDrB,EAAQK,EAAmBc,EAAgBpB,GAAiB,GAC5DyB,EAAgBnB,EAClBiB,EACArB,GAAyB,GAEvBwB,EAA6CC,EAAgB,CACjEC,SAAU,SAACC,GACLvB,GACFe,GAAiB,SAACS,GAAM,OAAAC,EAAAA,EAAA,GAAID,GAAC,GAAKD,GAAQ,EAAC,IAE7C1B,SAAAA,EAAe0B,EAChB,EACDG,kBAAmB,SAACP,GACdnB,GACFkB,EAAyBC,GAE3BrB,SAAAA,EAAkBqB,EACnB,EACD5B,kBAAiBA,EACjBC,kBAAiBA,EACjBC,YAAWA,IAfLkC,EAAUP,EAAAO,WAAEC,EAAcR,EAAAQ,eAAEC,EAAUT,EAAAS,WAkB9C,OACEC,EAAAC,EAAA,CAAAC,SAAA,CACEF,EACE,MAAA,CAAArD,UAAW,+EAA+EwD,OAAAxD,GAAWuD,SAAA,CAErGF,aACMF,EAAc,CAClBnD,UAAW,gCAAyBkC,EAAc,oGAAAsB,OAChDJ,EAAa,cAAgB,GAAE,KAAAI,OAC7BtD,aAEJO,EAAM,MAAA,CAAA8C,SAAA/C,IACNC,gBAAI2C,EAAahD,EAAiBE,QAEpCG,EAAA,QAAAgD,EAAA,CAAA,EAAWP,EAAY,CAAArC,SAAUA,QAGlCa,GAAgBR,EAAMwC,OAAS,GAC9BjD,EAAA,KAAA,CAAIT,UAAU,iBACXuD,SAAArC,EAAMyC,KAAI,SAACC,GAAS,OACnBnD,EAAA,KAAA,CAEET,UAAU,iDAETuD,SAAAxB,EAAiBA,EAAe6B,GAAQA,EAAKC,MAHzC,GAAAL,OAAGI,EAAKC,KAAQ,KAAAL,OAAAI,EAAKE,cAK7B,MAIJlC,GAAqBc,EAAcgB,OAAS,GAC3CL,EAAK,MAAA,CAAArD,UAAU,oBAAmBuD,SAAA,CAChC9C,EAAI,IAAA,CAAA8C,SAAAzB,IACJrB,EAAA,KAAA,CAAIT,UAAU,YACXuD,SAAAb,EAAciB,KAAI,SAACC,GAAS,OAC3BnD,EAEE,KAAA,CAAAT,UAAU,2DAETgC,EACGA,EAAuB4B,GACvBA,EAAKC,MALJ,UAAGD,EAAKC,KAAI,KAAAL,OAAII,EAAKE,yBAa1C"}
1
+ {"version":3,"file":"component.js","sources":["../../../../src/file-uploader/component.tsx"],"sourcesContent":["import { useState } from \"react\";\nimport { useFileUploader } from \"./hook\";\nimport { LuUpload } from \"react-icons/lu\";\n\nexport interface FileUploaderProps {\n /**\n * Custom class name for the container\n */\n className?: string;\n /**\n * Custom class name for the drop area\n */\n dropAreaClassName?: string;\n /**\n * Text displayed when dragging files over the drop area\n */\n dragActiveText?: string;\n /**\n * Default text for the uploader\n */\n defaultText?: string;\n /**\n * Custom icon component to display instead of the default upload icon\n */\n icon?: React.ReactNode;\n /**\n * Whether to accept multiple files (default: true)\n */\n multiple?: boolean;\n /**\n * List of accepted file types (MIME types or extensions)\n * If not provided, defaults to a predefined list of common formats\n */\n acceptedFileTypes?: string[];\n /**\n * List of allowed file extensions (e.g. ['.jpg', '.pdf'])\n * If not provided, defaults to a predefined list\n */\n allowedExtensions?: string[];\n /**\n * Maximum allowed file size in bytes\n */\n maxFileSize?: number;\n /**\n * External controlled array of files\n */\n files?: File[];\n /**\n * External controlled array of rejected files\n */\n rejectedFiles?: File[];\n /**\n * Callback when files are added (and pass validation)\n */\n onFilesAdded?: (files: File[]) => void;\n /**\n * Callback when files are rejected\n */\n onFilesRejected?: (rejectedFiles: File[]) => void;\n /**\n * Whether to use internal state for files management (default: true if files prop not provided)\n */\n useInternalState?: boolean;\n /**\n * Whether to show the file list below the uploader (default: true)\n */\n showFileList?: boolean;\n /**\n * Whether to show rejected files list (default: true)\n */\n showRejectedFiles?: boolean;\n /**\n * Custom text for rejected files section\n */\n rejectedFilesText?: string;\n /**\n * Custom function to render each file item\n */\n renderFileItem?: (file: File) => React.ReactNode;\n /**\n * Custom function to render each rejected file item\n */\n renderRejectedFileItem?: (file: File) => React.ReactNode;\n /**\n * Height of the drop area (default: \"h-40\")\n */\n dropAreaHeight?: string;\n}\n\nexport function FileUploader({\n className = \"\",\n dropAreaClassName = \"\",\n dragActiveText = \"ここにファイルをドロップ\", // \"Drop files here\"\n defaultText = \"ファイルの選択\", // \"Select files\"\n icon = <LuUpload size={48} />,\n multiple = true,\n acceptedFileTypes,\n allowedExtensions,\n maxFileSize,\n files: externalFiles,\n rejectedFiles: externalRejectedFiles,\n onFilesAdded,\n onFilesRejected,\n useInternalState = externalFiles === undefined,\n showFileList = true,\n showRejectedFiles = true,\n rejectedFilesText = \"These files are not accepted:\",\n renderFileItem,\n renderRejectedFileItem,\n dropAreaHeight = \"h-40\",\n}: FileUploaderProps) {\n // Internal state for files if not controlled externally\n const [internalFiles, setInternalFiles] = useState<File[]>([]);\n const [internalRejectedFiles, setInternalRejectedFiles] = useState<File[]>(\n []\n );\n\n // Use either external or internal state based on props\n const files = useInternalState ? internalFiles : externalFiles || [];\n const rejectedFiles = useInternalState\n ? internalRejectedFiles\n : externalRejectedFiles || [];\n\n const { inputProps, dropSpaceProps, isDragging } = useFileUploader({\n addFiles: (newFiles) => {\n if (useInternalState) {\n setInternalFiles((f) => [...f, ...newFiles]);\n }\n onFilesAdded?.(newFiles);\n },\n onValidationError: (rejectedFiles) => {\n if (useInternalState) {\n setInternalRejectedFiles(rejectedFiles);\n }\n onFilesRejected?.(rejectedFiles);\n },\n acceptedFileTypes,\n allowedExtensions,\n maxFileSize,\n });\n\n return (\n <>\n <div\n className={`w-full mx-auto border-2 border-dashed border-gray-300 rounded-lg bg-gray-50 ${className}`}\n >\n <div\n {...dropSpaceProps}\n className={`cursor-pointer w-full ${dropAreaHeight} flex flex-col gap-5 items-center justify-center rounded-lg transition-colors hover:bg-blue-100 ${\n isDragging ? \"bg-blue-100\" : \"\"\n } ${dropAreaClassName}`}\n >\n <div>{icon}</div>\n <p>{isDragging ? dragActiveText : defaultText}</p>\n </div>\n <input {...inputProps} multiple={multiple} />\n </div>\n\n {showFileList && files.length > 0 && (\n <ul className=\"space-y-2 mt-4\">\n {files.map((file) => (\n <li\n key={`${file.name}-${file.lastModified}`}\n className=\"bg-white border border-gray-300 p-2 rounded-lg\"\n >\n {renderFileItem ? renderFileItem(file) : file.name}\n </li>\n ))}\n </ul>\n )}\n\n {showRejectedFiles && rejectedFiles.length > 0 && (\n <div className=\"mt-4 text-red-500\">\n <p>{rejectedFilesText}</p>\n <ul className=\"space-y-2\">\n {rejectedFiles.map((file) => (\n <li\n key={`${file.name}-${file.lastModified}`}\n className=\"bg-red-100 border border-red-300 p-2 rounded-lg\"\n >\n {renderRejectedFileItem\n ? renderRejectedFileItem(file)\n : file.name}\n </li>\n ))}\n </ul>\n </div>\n )}\n </>\n );\n}\n"],"names":["FileUploader","_a","_b","className","_c","dropAreaClassName","_d","dragActiveText","_e","defaultText","_f","icon","_jsx","LuUpload","size","_g","multiple","acceptedFileTypes","allowedExtensions","maxFileSize","externalFiles","files","externalRejectedFiles","onFilesAdded","onFilesRejected","_h","useInternalState","undefined","_j","showFileList","_k","showRejectedFiles","_l","rejectedFilesText","renderFileItem","renderRejectedFileItem","_m","dropAreaHeight","_o","useState","internalFiles","setInternalFiles","_p","internalRejectedFiles","setInternalRejectedFiles","rejectedFiles","_q","useFileUploader","addFiles","newFiles","f","__spreadArray","onValidationError","inputProps","dropSpaceProps","isDragging","_jsxs","_Fragment","children","concat","__assign","length","map","file","name","lastModified"],"mappings":"uSAyFM,SAAUA,EAAaC,OAC3BC,EAAAD,EAAAE,UAAAA,OAAS,IAAAD,EAAG,KACZE,EAAAH,EAAAI,kBAAAA,OAAiB,IAAAD,EAAG,GAAEA,EACtBE,mBAAAC,aAAiB,eAAcD,EAC/BE,EAAAP,EAAAQ,YAAAA,OAAW,IAAAD,EAAG,UAASA,EACvBE,EAAAT,EAAAU,KAAAA,aAAOC,EAACC,EAAQ,CAACC,KAAM,KAAMJ,EAC7BK,aAAAC,OAAQ,IAAAD,KACRE,EAAiBhB,EAAAgB,kBACjBC,EAAiBjB,EAAAiB,kBACjBC,EAAWlB,EAAAkB,YACJC,EAAanB,EAAAoB,MACLC,kBACfC,iBACAC,oBACAC,EAAAxB,EAAAyB,iBAAAA,kBAAqCC,IAAlBP,EAA2BK,EAC9CG,EAAA3B,EAAA4B,aAAAA,OAAY,IAAAD,GAAOA,EACnBE,sBAAAC,cAAwBD,EACxBE,EAAA/B,EAAAgC,kBAAAA,OAAiB,IAAAD,EAAG,gCAA+BA,EACnDE,EAAcjC,EAAAiC,eACdC,2BACAC,EAAAnC,EAAAoC,eAAAA,OAAc,IAAAD,EAAG,OAAMA,EAGjBE,EAAoCC,EAAiB,IAApDC,EAAaF,EAAA,GAAEG,EAAgBH,EAAA,GAChCI,EAAoDH,EACxD,IADKI,EAAqBD,EAAA,GAAEE,EAAwBF,EAAA,GAKhDrB,EAAQK,EAAmBc,EAAgBpB,GAAiB,GAC5DyB,EAAgBnB,EAClBiB,EACArB,GAAyB,GAEvBwB,EAA6CC,EAAgB,CACjEC,SAAU,SAACC,GACLvB,GACFe,GAAiB,SAACS,GAAM,OAAAC,EAAAA,EAAA,GAAID,GAAC,GAAKD,GAAQ,EAAlB,IAE1B1B,SAAAA,EAAe0B,EACjB,EACAG,kBAAmB,SAACP,GACdnB,GACFkB,EAAyBC,GAE3BrB,SAAAA,EAAkBqB,EACpB,EACA5B,kBAAiBA,EACjBC,kBAAiBA,EACjBC,YAAWA,IAfLkC,EAAUP,EAAAO,WAAEC,EAAcR,EAAAQ,eAAEC,EAAUT,EAAAS,WAkB9C,OACEC,EAAAC,EAAA,CAAAC,SAAA,CACEF,EAAA,MAAA,CACErD,UAAW,+EAAAwD,OAA+ExD,GAAWuD,SAAA,CAErGF,aACMF,EAAc,CAClBnD,UAAW,gCAAyBkC,EAAc,oGAAAsB,OAChDJ,EAAa,cAAgB,GAAE,KAAAI,OAC7BtD,aAEJO,EAAA,MAAA,CAAA8C,SAAM/C,IACNC,gBAAI2C,EAAahD,EAAiBE,QAEpCG,EAAA,QAAAgD,EAAA,CAAA,EAAWP,EAAU,CAAErC,SAAUA,QAGlCa,GAAgBR,EAAMwC,OAAS,GAC9BjD,EAAA,KAAA,CAAIT,UAAU,iBAAgBuD,SAC3BrC,EAAMyC,KAAI,SAACC,GAAS,OACnBnD,EAAA,KAAA,CAEET,UAAU,iDAAgDuD,SAEzDxB,EAAiBA,EAAe6B,GAAQA,EAAKC,MAHzC,GAAAL,OAAGI,EAAKC,KAAI,KAAAL,OAAII,EAAKE,cAFT,MAWxBlC,GAAqBc,EAAcgB,OAAS,GAC3CL,EAAA,MAAA,CAAKrD,UAAU,oBAAmBuD,SAAA,CAChC9C,EAAA,IAAA,CAAA8C,SAAIzB,IACJrB,EAAA,KAAA,CAAIT,UAAU,YAAWuD,SACtBb,EAAciB,KAAI,SAACC,GAAS,OAC3BnD,EAAA,KAAA,CAEET,UAAU,2DAETgC,EACGA,EAAuB4B,GACvBA,EAAKC,MALJ,UAAGD,EAAKC,KAAI,KAAAL,OAAII,EAAKE,cAFD,WAezC"}
@@ -1 +1 @@
1
- {"version":3,"file":"hook.js","sources":["../../../../src/file-uploader/hook.ts"],"sourcesContent":["import { useRef, useState } from \"react\";\n\ninterface IPropsFileUploader {\n addFiles: (files: File[]) => void;\n onValidationError?: (rejectedFiles: File[]) => void;\n acceptedFileTypes?: string[];\n allowedExtensions?: string[];\n maxFileSize?: number;\n}\n\ninterface IReturnFileUploader {\n inputProps: {\n ref: React.RefObject<HTMLInputElement>;\n type: \"file\";\n accept?: string;\n className?: string;\n onChange: React.ChangeEventHandler<HTMLInputElement>;\n };\n isDragging: boolean;\n dropSpaceProps: {\n onClick?: React.MouseEventHandler;\n onDrop: (e: React.DragEvent) => void;\n onDragOver: (e: React.DragEvent) => void;\n onDragLeave: (e: React.DragEvent) => void;\n };\n}\n\n// Default accepted file types\nconst DEFAULT_ACCEPTED_TYPES = [\n \"image/*\", // image\n \"text/*\", // .txt\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\", // .xlsx\n \"application/vnd.openxmlformats-officedocument.presentationml.presentation\", // .pptx\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\", // .docx\n \"application/vnd.ms-excel\", // .xls\n \"application/vnd.ms-outlook\", // .msg\n \"application/json\", // .json\n \"application/xml\", // .xml\n \"application/pdf\", // .pdf\n \"application/x-compressed\", // .tgz\n \"application/x-zip-compressed\", // .zip\n \"application/x-gzip\", // .gz\n \"application/x-bzip2\", // .bz2\n \"application/x-tar\", // .tar\n \"application/x-rar-compressed\", // .rar\n \"application/x-7z-compressed\", // .7z\n \"application/zip\", // .zip\n];\n\n// Default allowed extensions\nconst DEFAULT_ALLOWED_EXTENSIONS = [\n \".msg\",\n \".jpg\",\n \".jpeg\",\n \".png\",\n \".pdf\",\n \".xlsx\",\n \".docx\",\n \".txt\",\n \".zip\",\n];\n\nexport function useFileUploader(\n props: IPropsFileUploader\n): IReturnFileUploader {\n const inputRef = useRef<HTMLInputElement>(null);\n const [isDragging, setIsDragging] = useState(false);\n\n const acceptedTypes = props.acceptedFileTypes || DEFAULT_ACCEPTED_TYPES;\n const allowedExtensions =\n props.allowedExtensions || DEFAULT_ALLOWED_EXTENSIONS;\n\n const validateFiles = (\n files: File[]\n ): { validFiles: File[]; rejectedFiles: File[] } => {\n const validFiles: File[] = [];\n const rejectedFiles: File[] = [];\n\n files.forEach((file) => {\n // Check file size if maxFileSize is specified\n if (props.maxFileSize && file.size > props.maxFileSize) {\n rejectedFiles.push(file);\n return;\n }\n\n const extension = file.name.split(\".\").pop();\n if (\n extension &&\n allowedExtensions.some(\n (ext) =>\n ext.toLowerCase() === `.${extension.toLowerCase()}` ||\n ext.toLowerCase() === extension.toLowerCase()\n )\n ) {\n validFiles.push(file);\n return;\n }\n\n if (\n acceptedTypes.some((type) => {\n if (type.endsWith(\"/*\")) {\n const mainType = type.split(\"/\")[0];\n return file.type.startsWith(`${mainType}/`);\n }\n return file.type === type;\n })\n ) {\n validFiles.push(file);\n } else {\n rejectedFiles.push(file);\n }\n });\n\n return { validFiles, rejectedFiles };\n };\n\n const addFiles = (files: File[]) => {\n const { validFiles, rejectedFiles } = validateFiles(files);\n if (validFiles.length > 0) {\n props.addFiles(validFiles);\n }\n if (rejectedFiles.length > 0 && props.onValidationError) {\n props.onValidationError(rejectedFiles);\n }\n };\n\n const handleDrop = (e: React.DragEvent) => {\n e.preventDefault();\n setIsDragging(false);\n if (e.dataTransfer.files) {\n const droppedFiles = Array.from(e.dataTransfer.files);\n addFiles(droppedFiles);\n }\n };\n\n const handleDragOver = (e: React.DragEvent) => {\n e.preventDefault();\n setIsDragging(true);\n };\n\n const handleDragLeave = (e: React.DragEvent) => {\n setIsDragging(false);\n };\n\n return {\n inputProps: {\n ref: inputRef,\n type: \"file\",\n className: \"hidden\",\n accept: acceptedTypes.join(\",\"),\n onChange: (e) => {\n if (e.target.files) {\n const selectedFiles = Array.from(e.target.files);\n addFiles(selectedFiles);\n }\n },\n },\n isDragging,\n dropSpaceProps: {\n onClick: () => inputRef.current?.click(),\n onDrop: handleDrop,\n onDragOver: handleDragOver,\n onDragLeave: handleDragLeave,\n },\n };\n}\n"],"names":["DEFAULT_ACCEPTED_TYPES","DEFAULT_ALLOWED_EXTENSIONS","useFileUploader","props","inputRef","useRef","_a","useState","isDragging","setIsDragging","acceptedTypes","acceptedFileTypes","allowedExtensions","addFiles","files","validFiles","rejectedFiles","forEach","file","maxFileSize","size","push","extension","name","split","pop","some","ext","toLowerCase","type","endsWith","mainType","startsWith","concat","validateFiles","length","onValidationError","inputProps","ref","className","accept","join","onChange","e","target","selectedFiles","Array","from","dropSpaceProps","onClick","current","click","onDrop","preventDefault","dataTransfer","droppedFiles","onDragOver","onDragLeave"],"mappings":"6CA4BA,IAAMA,EAAyB,CAC7B,UACA,SACA,oEACA,4EACA,0EACA,2BACA,6BACA,mBACA,kBACA,kBACA,2BACA,+BACA,qBACA,sBACA,oBACA,+BACA,8BACA,mBAIIC,EAA6B,CACjC,OACA,OACA,QACA,OACA,OACA,QACA,QACA,OACA,QAGI,SAAUC,EACdC,GAEA,IAAMC,EAAWC,EAAyB,MACpCC,EAA8BC,GAAS,GAAtCC,EAAUF,EAAA,GAAEG,EAAaH,EAAA,GAE1BI,EAAgBP,EAAMQ,mBAAqBX,EAC3CY,EACJT,EAAMS,mBAAqBX,EA8CvBY,EAAW,SAACC,GACV,IAAAR,EA7Cc,SACpBQ,GAEA,IAAMC,EAAqB,GACrBC,EAAwB,GAqC9B,OAnCAF,EAAMG,SAAQ,SAACC,GAEb,GAAIf,EAAMgB,aAAeD,EAAKE,KAAOjB,EAAMgB,YACzCH,EAAcK,KAAKH,OADrB,CAKA,IAAMI,EAAYJ,EAAKK,KAAKC,MAAM,KAAKC,MAErCH,GACAV,EAAkBc,MAChB,SAACC,GACC,OAAAA,EAAIC,gBAAkB,WAAIN,EAAUM,gBACpCD,EAAIC,gBAAkBN,EAAUM,kBAQpClB,EAAcgB,MAAK,SAACG,GAClB,GAAIA,EAAKC,SAAS,MAAO,CACvB,IAAMC,EAAWF,EAAKL,MAAM,KAAK,GACjC,OAAON,EAAKW,KAAKG,WAAW,GAAGC,OAAAF,EAAW,KAC3C,CACD,OAAOb,EAAKW,OAASA,KAVvBd,EAAWM,KAAKH,GAehBF,EAAcK,KAAKH,EA1BpB,CA4BH,IAEO,CAAEH,WAAUA,EAAEC,cAAaA,EACpC,CAGwCkB,CAAcpB,GAA5CC,EAAUT,EAAAS,WAAEC,EAAaV,EAAAU,cAC7BD,EAAWoB,OAAS,GACtBhC,EAAMU,SAASE,GAEbC,EAAcmB,OAAS,GAAKhC,EAAMiC,mBACpCjC,EAAMiC,kBAAkBpB,EAE5B,EAoBA,MAAO,CACLqB,WAAY,CACVC,IAAKlC,EACLyB,KAAM,OACNU,UAAW,SACXC,OAAQ9B,EAAc+B,KAAK,KAC3BC,SAAU,SAACC,GACT,GAAIA,EAAEC,OAAO9B,MAAO,CAClB,IAAM+B,EAAgBC,MAAMC,KAAKJ,EAAEC,OAAO9B,OAC1CD,EAASgC,EACV,CACF,GAEHrC,WAAUA,EACVwC,eAAgB,CACdC,QAAS,WAAM,IAAA3C,EAAA,OAAkB,QAAlBA,EAAAF,EAAS8C,eAAS,IAAA5C,OAAA,EAAAA,EAAA6C,OAAO,EACxCC,OAlCe,SAACT,GAGlB,GAFAA,EAAEU,iBACF5C,GAAc,GACVkC,EAAEW,aAAaxC,MAAO,CACxB,IAAMyC,EAAeT,MAAMC,KAAKJ,EAAEW,aAAaxC,OAC/CD,EAAS0C,EACV,CACH,EA4BIC,WA1BmB,SAACb,GACtBA,EAAEU,iBACF5C,GAAc,EAChB,EAwBIgD,YAtBoB,SAACd,GACvBlC,GAAc,EAChB,GAuBF"}
1
+ {"version":3,"file":"hook.js","sources":["../../../../src/file-uploader/hook.ts"],"sourcesContent":["import { useRef, useState } from \"react\";\n\n// Type returned by useRef<T>(null).\n// React 18: RefObject<T> (current: T | null) / React 19: RefObject<T | null>\ntype NullableRefObject<T> = null extends React.RefObject<T>[\"current\"]\n ? React.RefObject<T>\n : React.RefObject<T | null>;\n\ninterface IPropsFileUploader {\n addFiles: (files: File[]) => void;\n onValidationError?: (rejectedFiles: File[]) => void;\n acceptedFileTypes?: string[];\n allowedExtensions?: string[];\n maxFileSize?: number;\n}\n\ninterface IReturnFileUploader {\n inputProps: {\n ref: NullableRefObject<HTMLInputElement>;\n type: \"file\";\n accept?: string;\n className?: string;\n onChange: React.ChangeEventHandler<HTMLInputElement>;\n };\n isDragging: boolean;\n dropSpaceProps: {\n onClick?: React.MouseEventHandler;\n onDrop: (e: React.DragEvent) => void;\n onDragOver: (e: React.DragEvent) => void;\n onDragLeave: (e: React.DragEvent) => void;\n };\n}\n\n// Default accepted file types\nconst DEFAULT_ACCEPTED_TYPES = [\n \"image/*\", // image\n \"text/*\", // .txt\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\", // .xlsx\n \"application/vnd.openxmlformats-officedocument.presentationml.presentation\", // .pptx\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\", // .docx\n \"application/vnd.ms-excel\", // .xls\n \"application/vnd.ms-outlook\", // .msg\n \"application/json\", // .json\n \"application/xml\", // .xml\n \"application/pdf\", // .pdf\n \"application/x-compressed\", // .tgz\n \"application/x-zip-compressed\", // .zip\n \"application/x-gzip\", // .gz\n \"application/x-bzip2\", // .bz2\n \"application/x-tar\", // .tar\n \"application/x-rar-compressed\", // .rar\n \"application/x-7z-compressed\", // .7z\n \"application/zip\", // .zip\n];\n\n// Default allowed extensions\nconst DEFAULT_ALLOWED_EXTENSIONS = [\n \".msg\",\n \".jpg\",\n \".jpeg\",\n \".png\",\n \".pdf\",\n \".xlsx\",\n \".docx\",\n \".txt\",\n \".zip\",\n];\n\nexport function useFileUploader(\n props: IPropsFileUploader\n): IReturnFileUploader {\n const inputRef = useRef<HTMLInputElement>(null);\n const [isDragging, setIsDragging] = useState(false);\n\n const acceptedTypes = props.acceptedFileTypes || DEFAULT_ACCEPTED_TYPES;\n const allowedExtensions =\n props.allowedExtensions || DEFAULT_ALLOWED_EXTENSIONS;\n\n const validateFiles = (\n files: File[]\n ): { validFiles: File[]; rejectedFiles: File[] } => {\n const validFiles: File[] = [];\n const rejectedFiles: File[] = [];\n\n files.forEach((file) => {\n // Check file size if maxFileSize is specified\n if (props.maxFileSize && file.size > props.maxFileSize) {\n rejectedFiles.push(file);\n return;\n }\n\n const extension = file.name.split(\".\").pop();\n if (\n extension &&\n allowedExtensions.some(\n (ext) =>\n ext.toLowerCase() === `.${extension.toLowerCase()}` ||\n ext.toLowerCase() === extension.toLowerCase()\n )\n ) {\n validFiles.push(file);\n return;\n }\n\n if (\n acceptedTypes.some((type) => {\n if (type.endsWith(\"/*\")) {\n const mainType = type.split(\"/\")[0];\n return file.type.startsWith(`${mainType}/`);\n }\n return file.type === type;\n })\n ) {\n validFiles.push(file);\n } else {\n rejectedFiles.push(file);\n }\n });\n\n return { validFiles, rejectedFiles };\n };\n\n const addFiles = (files: File[]) => {\n const { validFiles, rejectedFiles } = validateFiles(files);\n if (validFiles.length > 0) {\n props.addFiles(validFiles);\n }\n if (rejectedFiles.length > 0 && props.onValidationError) {\n props.onValidationError(rejectedFiles);\n }\n };\n\n const handleDrop = (e: React.DragEvent) => {\n e.preventDefault();\n setIsDragging(false);\n if (e.dataTransfer.files) {\n const droppedFiles = Array.from(e.dataTransfer.files);\n addFiles(droppedFiles);\n }\n };\n\n const handleDragOver = (e: React.DragEvent) => {\n e.preventDefault();\n setIsDragging(true);\n };\n\n const handleDragLeave = (e: React.DragEvent) => {\n setIsDragging(false);\n };\n\n return {\n inputProps: {\n ref: inputRef,\n type: \"file\",\n className: \"hidden\",\n accept: acceptedTypes.join(\",\"),\n onChange: (e) => {\n if (e.target.files) {\n const selectedFiles = Array.from(e.target.files);\n addFiles(selectedFiles);\n }\n },\n },\n isDragging,\n dropSpaceProps: {\n onClick: () => inputRef.current?.click(),\n onDrop: handleDrop,\n onDragOver: handleDragOver,\n onDragLeave: handleDragLeave,\n },\n };\n}\n"],"names":["DEFAULT_ACCEPTED_TYPES","DEFAULT_ALLOWED_EXTENSIONS","useFileUploader","props","inputRef","useRef","_a","useState","isDragging","setIsDragging","acceptedTypes","acceptedFileTypes","allowedExtensions","addFiles","files","validFiles","rejectedFiles","forEach","file","maxFileSize","size","push","extension","name","split","pop","some","ext","toLowerCase","type","endsWith","mainType","startsWith","concat","validateFiles","length","onValidationError","inputProps","ref","className","accept","join","onChange","e","target","selectedFiles","Array","from","dropSpaceProps","onClick","current","click","onDrop","preventDefault","dataTransfer","droppedFiles","onDragOver","onDragLeave"],"mappings":"6CAkCA,IAAMA,EAAyB,CAC7B,UACA,SACA,oEACA,4EACA,0EACA,2BACA,6BACA,mBACA,kBACA,kBACA,2BACA,+BACA,qBACA,sBACA,oBACA,+BACA,8BACA,mBAIIC,EAA6B,CACjC,OACA,OACA,QACA,OACA,OACA,QACA,QACA,OACA,QAGI,SAAUC,EACdC,GAEA,IAAMC,EAAWC,EAAyB,MACpCC,EAA8BC,GAAS,GAAtCC,EAAUF,EAAA,GAAEG,EAAaH,EAAA,GAE1BI,EAAgBP,EAAMQ,mBAAqBX,EAC3CY,EACJT,EAAMS,mBAAqBX,EA8CvBY,EAAW,SAACC,GACV,IAAAR,EA7Cc,SACpBQ,GAEA,IAAMC,EAAqB,GACrBC,EAAwB,GAqC9B,OAnCAF,EAAMG,SAAQ,SAACC,GAEb,GAAIf,EAAMgB,aAAeD,EAAKE,KAAOjB,EAAMgB,YACzCH,EAAcK,KAAKH,OADrB,CAKA,IAAMI,EAAYJ,EAAKK,KAAKC,MAAM,KAAKC,MAErCH,GACAV,EAAkBc,MAChB,SAACC,GACC,OAAAA,EAAIC,gBAAkB,WAAIN,EAAUM,gBACpCD,EAAIC,gBAAkBN,EAAUM,aADhC,KASJlB,EAAcgB,MAAK,SAACG,GAClB,GAAIA,EAAKC,SAAS,MAAO,CACvB,IAAMC,EAAWF,EAAKL,MAAM,KAAK,GACjC,OAAON,EAAKW,KAAKG,WAAW,GAAAC,OAAGF,EAAQ,KACzC,CACA,OAAOb,EAAKW,OAASA,CACvB,IAXAd,EAAWM,KAAKH,GAehBF,EAAcK,KAAKH,EA1BrB,CA4BF,IAEO,CAAEH,WAAUA,EAAEC,cAAaA,EACpC,CAGwCkB,CAAcpB,GAA5CC,EAAUT,EAAAS,WAAEC,EAAaV,EAAAU,cAC7BD,EAAWoB,OAAS,GACtBhC,EAAMU,SAASE,GAEbC,EAAcmB,OAAS,GAAKhC,EAAMiC,mBACpCjC,EAAMiC,kBAAkBpB,EAE5B,EAoBA,MAAO,CACLqB,WAAY,CACVC,IAAKlC,EACLyB,KAAM,OACNU,UAAW,SACXC,OAAQ9B,EAAc+B,KAAK,KAC3BC,SAAU,SAACC,GACT,GAAIA,EAAEC,OAAO9B,MAAO,CAClB,IAAM+B,EAAgBC,MAAMC,KAAKJ,EAAEC,OAAO9B,OAC1CD,EAASgC,EACX,CACF,GAEFrC,WAAUA,EACVwC,eAAgB,CACdC,QAAS,WAAA,IAAA3C,EAAM,OAAgB,QAAhBA,EAAAF,EAAS8C,eAAO,IAAA5C,OAAA,EAAAA,EAAE6C,OAAO,EACxCC,OAlCe,SAACT,GAGlB,GAFAA,EAAEU,iBACF5C,GAAc,GACVkC,EAAEW,aAAaxC,MAAO,CACxB,IAAMyC,EAAeT,MAAMC,KAAKJ,EAAEW,aAAaxC,OAC/CD,EAAS0C,EACX,CACF,EA4BIC,WA1BmB,SAACb,GACtBA,EAAEU,iBACF5C,GAAc,EAChB,EAwBIgD,YAtBoB,SAACd,GACvBlC,GAAc,EAChB,GAuBF"}
@@ -1 +1 @@
1
- {"version":3,"file":"cancel-icon.js","sources":["../../../../src/icon/cancel-icon.tsx"],"sourcesContent":["import { MdOutlineCancel } from \"react-icons/md\";\n\ntype TPropsCancelIcon = {\n size: number;\n};\n\nexport function CancelIcon(props: TPropsCancelIcon) {\n return <MdOutlineCancel size={`${props.size}px`} />;\n}\n"],"names":["CancelIcon","props","_jsx","MdOutlineCancel","size","concat"],"mappings":"qHAMM,SAAUA,EAAWC,GACzB,OAAOC,EAACC,EAAe,CAACC,KAAM,GAAGC,OAAAJ,EAAMG,KAAQ,OACjD"}
1
+ {"version":3,"file":"cancel-icon.js","sources":["../../../../src/icon/cancel-icon.tsx"],"sourcesContent":["import { MdOutlineCancel } from \"react-icons/md\";\n\ntype TPropsCancelIcon = {\n size: number;\n};\n\nexport function CancelIcon(props: TPropsCancelIcon) {\n return <MdOutlineCancel size={`${props.size}px`} />;\n}\n"],"names":["CancelIcon","props","_jsx","MdOutlineCancel","size","concat"],"mappings":"qHAMM,SAAUA,EAAWC,GACzB,OAAOC,EAACC,EAAe,CAACC,KAAM,GAAAC,OAAGJ,EAAMG,KAAI,OAC7C"}
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sources":["../../../../src/lib/errors.ts"],"sourcesContent":["export class ReactUIError extends Error {\n code: string;\n details: string;\n timestamp: Date;\n\n constructor(message: string, code: string, details: string) {\n super(message);\n this.name = \"ReactUIError\";\n this.code = code;\n this.details = details;\n this.timestamp = new Date();\n }\n\n toJSON() {\n return {\n name: this.name,\n code: this.code,\n message: this.message,\n details: this.details,\n timestamp: this.timestamp,\n };\n }\n}\n"],"names":["ReactUIError","_super","message","code","details","_this","call","this","name","timestamp","Date","__extends","prototype","toJSON","Error"],"mappings":"kEAAA,IAAAA,EAAA,SAAAC,GAKE,SAAAD,EAAYE,EAAiBC,EAAcC,GACzC,IAAAC,EAAAJ,EAAKK,KAAAC,KAACL,IAASK,YACfF,EAAKG,KAAO,eACZH,EAAKF,KAAOA,EACZE,EAAKD,QAAUA,EACfC,EAAKI,UAAY,IAAIC,MACtB,CAWH,OAtBkCC,EAAKX,EAAAC,GAarCD,EAAAY,UAAAC,OAAA,WACE,MAAO,CACLL,KAAMD,KAAKC,KACXL,KAAMI,KAAKJ,KACXD,QAASK,KAAKL,QACdE,QAASG,KAAKH,QACdK,UAAWF,KAAKE,YAGrBT,CAAD,CAtBA,CAAkCc"}
1
+ {"version":3,"file":"errors.js","sources":["../../../../src/lib/errors.ts"],"sourcesContent":["export class ReactUIError extends Error {\n code: string;\n details: string;\n timestamp: Date;\n\n constructor(message: string, code: string, details: string) {\n super(message);\n this.name = \"ReactUIError\";\n this.code = code;\n this.details = details;\n this.timestamp = new Date();\n }\n\n toJSON() {\n return {\n name: this.name,\n code: this.code,\n message: this.message,\n details: this.details,\n timestamp: this.timestamp,\n };\n }\n}\n"],"names":["ReactUIError","_super","message","code","details","_this","call","this","name","timestamp","Date","__extends","prototype","toJSON","Error"],"mappings":"kEAAA,IAAAA,EAAA,SAAAC,GAKE,SAAAD,EAAYE,EAAiBC,EAAcC,GACzC,IAAAC,EAAAJ,EAAKK,KAAAC,KAACL,IAAQK,YACdF,EAAKG,KAAO,eACZH,EAAKF,KAAOA,EACZE,EAAKD,QAAUA,EACfC,EAAKI,UAAY,IAAIC,MACvB,CAWF,OAtBkCC,EAAAX,EAAAC,GAahCD,EAAAY,UAAAC,OAAA,WACE,MAAO,CACLL,KAAMD,KAAKC,KACXL,KAAMI,KAAKJ,KACXD,QAASK,KAAKL,QACdE,QAASG,KAAKH,QACdK,UAAWF,KAAKE,UAEpB,EACFT,CAAA,CAtBA,CAAkCc"}
@@ -1 +1 @@
1
- {"version":3,"file":"hook.js","sources":["../../../../../../src/search-bar/condition-search-bar/condition-input-management/hook.ts"],"sourcesContent":["import { useEffect, useMemo, useReducer } from \"react\";\nimport { SearchInput, Target, TConditionInputHook } from \"./type\";\nimport { conditionInputReducer } from \"./reducer\";\n\nexport const useConditionInputHook: TConditionInputHook = (\n targets,\n onChangeCondition\n) => {\n const [state, dispatch] = useReducer(conditionInputReducer, {\n targets,\n status: \"waiting for input\",\n });\n\n useEffect(() => {\n if (state.changeAction) {\n onChangeCondition(state.changeAction);\n dispatch({ type: \"executedChangeAction\" });\n }\n }, [state.changeAction]);\n\n useEffect(() => {\n if (targets && targets.length > 0) {\n dispatch({ type: \"updateTargets\", payload: { targets } });\n }\n }, [targets]);\n\n const actions = useMemo(\n () => ({\n inputTarget: (targetKey: string) => {\n dispatch({ type: \"inputTarget\", payload: { targetKey } });\n },\n inputOperator: (operatorKey: string) => {\n dispatch({ type: \"inputOperator\", payload: { operatorKey } });\n },\n inputValue: (value: SearchInput) => {\n dispatch({ type: \"inputValue\", payload: value });\n },\n deleteCondition: (index: number) => {\n dispatch({ type: \"deleteCondition\", payload: { index } });\n },\n reset: () => {\n dispatch({ type: \"reset\" });\n },\n updateTargets: (targets: Target[]) => {\n dispatch({ type: \"updateTargets\", payload: { targets } });\n },\n removeInputedTarget: () => {\n dispatch({ type: \"removeInputedTarget\" });\n },\n removeInputedOperator: () => {\n dispatch({ type: \"removeInputedOperator\" });\n },\n }),\n []\n );\n\n return {\n state,\n actions,\n };\n};\n"],"names":["useConditionInputHook","targets","onChangeCondition","_a","useReducer","conditionInputReducer","status","state","dispatch","useEffect","changeAction","type","length","payload","actions","useMemo","inputTarget","targetKey","inputOperator","operatorKey","inputValue","value","deleteCondition","index","reset","updateTargets","removeInputedTarget","removeInputedOperator"],"mappings":"oHAIa,IAAAA,EAA6C,SACxDC,EACAC,GAEM,IAAAC,EAAoBC,EAAWC,EAAuB,CAC1DJ,QAAOA,EACPK,OAAQ,sBAFHC,EAAKJ,EAAA,GAAEK,OAKdC,GAAU,WACJF,EAAMG,eACRR,EAAkBK,EAAMG,cACxBF,EAAS,CAAEG,KAAM,yBAErB,GAAG,CAACJ,EAAMG,eAEVD,GAAU,WACJR,GAAWA,EAAQW,OAAS,GAC9BJ,EAAS,CAAEG,KAAM,gBAAiBE,QAAS,CAAEZ,QAAOA,IAExD,GAAG,CAACA,IAEJ,IAAMa,EAAUC,GACd,WAAM,MAAC,CACLC,YAAa,SAACC,GACZT,EAAS,CAAEG,KAAM,cAAeE,QAAS,CAAEI,UAASA,IACrD,EACDC,cAAe,SAACC,GACdX,EAAS,CAAEG,KAAM,gBAAiBE,QAAS,CAAEM,YAAWA,IACzD,EACDC,WAAY,SAACC,GACXb,EAAS,CAAEG,KAAM,aAAcE,QAASQ,GACzC,EACDC,gBAAiB,SAACC,GAChBf,EAAS,CAAEG,KAAM,kBAAmBE,QAAS,CAAEU,MAAKA,IACrD,EACDC,MAAO,WACLhB,EAAS,CAAEG,KAAM,SAClB,EACDc,cAAe,SAACxB,GACdO,EAAS,CAAEG,KAAM,gBAAiBE,QAAS,CAAEZ,QAAOA,IACrD,EACDyB,oBAAqB,WACnBlB,EAAS,CAAEG,KAAM,uBAClB,EACDgB,sBAAuB,WACrBnB,EAAS,CAAEG,KAAM,yBAClB,EAxBG,GA0BN,IAGF,MAAO,CACLJ,MAAKA,EACLO,QAAOA,EAEX"}
1
+ {"version":3,"file":"hook.js","sources":["../../../../../../src/search-bar/condition-search-bar/condition-input-management/hook.ts"],"sourcesContent":["import { useEffect, useMemo, useReducer } from \"react\";\nimport { SearchInput, Target, TConditionInputHook } from \"./type\";\nimport { conditionInputReducer } from \"./reducer\";\n\nexport const useConditionInputHook: TConditionInputHook = (\n targets,\n onChangeCondition\n) => {\n const [state, dispatch] = useReducer(conditionInputReducer, {\n targets,\n status: \"waiting for input\",\n });\n\n useEffect(() => {\n if (state.changeAction) {\n onChangeCondition(state.changeAction);\n dispatch({ type: \"executedChangeAction\" });\n }\n }, [state.changeAction]);\n\n useEffect(() => {\n if (targets && targets.length > 0) {\n dispatch({ type: \"updateTargets\", payload: { targets } });\n }\n }, [targets]);\n\n const actions = useMemo(\n () => ({\n inputTarget: (targetKey: string) => {\n dispatch({ type: \"inputTarget\", payload: { targetKey } });\n },\n inputOperator: (operatorKey: string) => {\n dispatch({ type: \"inputOperator\", payload: { operatorKey } });\n },\n inputValue: (value: SearchInput) => {\n dispatch({ type: \"inputValue\", payload: value });\n },\n deleteCondition: (index: number) => {\n dispatch({ type: \"deleteCondition\", payload: { index } });\n },\n reset: () => {\n dispatch({ type: \"reset\" });\n },\n updateTargets: (targets: Target[]) => {\n dispatch({ type: \"updateTargets\", payload: { targets } });\n },\n removeInputedTarget: () => {\n dispatch({ type: \"removeInputedTarget\" });\n },\n removeInputedOperator: () => {\n dispatch({ type: \"removeInputedOperator\" });\n },\n }),\n []\n );\n\n return {\n state,\n actions,\n };\n};\n"],"names":["useConditionInputHook","targets","onChangeCondition","_a","useReducer","conditionInputReducer","status","state","dispatch","useEffect","changeAction","type","length","payload","actions","useMemo","inputTarget","targetKey","inputOperator","operatorKey","inputValue","value","deleteCondition","index","reset","updateTargets","removeInputedTarget","removeInputedOperator"],"mappings":"oHAIO,IAAMA,EAA6C,SACxDC,EACAC,GAEM,IAAAC,EAAoBC,EAAWC,EAAuB,CAC1DJ,QAAOA,EACPK,OAAQ,sBAFHC,EAAKJ,EAAA,GAAEK,OAKdC,GAAU,WACJF,EAAMG,eACRR,EAAkBK,EAAMG,cACxBF,EAAS,CAAEG,KAAM,yBAErB,GAAG,CAACJ,EAAMG,eAEVD,GAAU,WACJR,GAAWA,EAAQW,OAAS,GAC9BJ,EAAS,CAAEG,KAAM,gBAAiBE,QAAS,CAAEZ,QAAOA,IAExD,GAAG,CAACA,IAEJ,IAAMa,EAAUC,GACd,WAAM,MAAA,CACJC,YAAa,SAACC,GACZT,EAAS,CAAEG,KAAM,cAAeE,QAAS,CAAEI,UAASA,IACtD,EACAC,cAAe,SAACC,GACdX,EAAS,CAAEG,KAAM,gBAAiBE,QAAS,CAAEM,YAAWA,IAC1D,EACAC,WAAY,SAACC,GACXb,EAAS,CAAEG,KAAM,aAAcE,QAASQ,GAC1C,EACAC,gBAAiB,SAACC,GAChBf,EAAS,CAAEG,KAAM,kBAAmBE,QAAS,CAAEU,MAAKA,IACtD,EACAC,MAAO,WACLhB,EAAS,CAAEG,KAAM,SACnB,EACAc,cAAe,SAACxB,GACdO,EAAS,CAAEG,KAAM,gBAAiBE,QAAS,CAAEZ,QAAOA,IACtD,EACAyB,oBAAqB,WACnBlB,EAAS,CAAEG,KAAM,uBACnB,EACAgB,sBAAuB,WACrBnB,EAAS,CAAEG,KAAM,yBACnB,EAxBI,GA0BN,IAGF,MAAO,CACLJ,MAAKA,EACLO,QAAOA,EAEX"}
@@ -1 +1 @@
1
- {"version":3,"file":"reducer.js","sources":["../../../../../../src/search-bar/condition-search-bar/condition-input-management/reducer.ts"],"sourcesContent":["import { DEFAULT_SEARCH_OPERATOR } from \"../../../share/search-operator\";\nimport { TConditionInputReducer } from \"./type\";\n\nexport const conditionInputReducer: TConditionInputReducer = (\n state,\n action\n) => {\n switch (action.type) {\n case \"inputTarget\": {\n if (state.status !== \"waiting for input\") {\n return state;\n }\n\n const target = state.targets.find(\n (t) => t.key === action.payload.targetKey\n );\n\n if (!target) {\n return state;\n }\n\n return {\n targets: state.targets,\n status: \"inputted target\",\n inputtingCondition: {\n type: target.type,\n target,\n },\n useableOperators: DEFAULT_SEARCH_OPERATOR.filter(\n (o) => o.type === target.type\n ),\n };\n }\n\n case \"inputOperator\": {\n if (state.status !== \"inputted target\") {\n return state;\n }\n\n const operator = DEFAULT_SEARCH_OPERATOR.find(\n (o) => o.key === action.payload.operatorKey\n );\n\n if (!operator) {\n return state;\n }\n\n if (operator.type !== state.inputtingCondition.target.type) {\n return state;\n }\n\n if (operator.inputType === \"none\") {\n return {\n targets: state.targets,\n changeAction: {\n type: \"add\",\n payload: {\n condition: {\n target: state.inputtingCondition.target,\n operator,\n input: {\n type: \"none\",\n },\n },\n },\n },\n status: \"waiting for input\",\n };\n }\n\n return {\n targets: state.targets,\n status: \"inputted operator\",\n inputtingCondition: {\n type: state.inputtingCondition.target.type,\n target: state.inputtingCondition.target,\n operator,\n },\n };\n }\n\n case \"inputValue\": {\n if (state.status !== \"inputted operator\") {\n return state;\n }\n\n return {\n targets: state.targets,\n changeAction: {\n type: \"add\",\n payload: {\n condition: {\n target: state.inputtingCondition.target,\n operator: state.inputtingCondition.operator,\n input: action.payload,\n },\n },\n },\n status: \"waiting for input\",\n };\n }\n\n case \"deleteCondition\": {\n return {\n ...state,\n changeAction: {\n type: \"remove\",\n payload: {\n index: action.payload.index,\n },\n },\n };\n }\n\n case \"reset\": {\n return {\n targets: state.targets,\n status: \"waiting for input\",\n };\n }\n\n case \"updateTargets\": {\n return {\n targets: action.payload.targets,\n status: \"waiting for input\",\n };\n }\n\n case \"removeInputedTarget\": {\n if (\n !(\n state.status == \"inputted target\" ||\n state.status == \"inputted operator\"\n )\n ) {\n return state;\n }\n\n return {\n targets: state.targets,\n status: \"waiting for input\",\n };\n }\n\n case \"removeInputedOperator\": {\n if (state.status !== \"inputted operator\") {\n return state;\n }\n\n return {\n targets: state.targets,\n status: \"inputted target\",\n inputtingCondition: {\n type: state.inputtingCondition.target.type,\n target: state.inputtingCondition.target,\n },\n useableOperators: DEFAULT_SEARCH_OPERATOR.filter(\n (o) => o.type === state.inputtingCondition.target.type\n ),\n };\n }\n\n case \"executedChangeAction\": {\n return {\n ...state,\n changeAction: undefined,\n };\n }\n }\n};\n"],"names":["conditionInputReducer","state","action","type","status","target_1","targets","find","t","key","payload","targetKey","inputtingCondition","target","useableOperators","DEFAULT_SEARCH_OPERATOR","filter","o","operator","operatorKey","inputType","changeAction","condition","input","__assign","index","undefined"],"mappings":"4JAGa,IAAAA,EAAgD,SAC3DC,EACAC,GAEA,OAAQA,EAAOC,MACb,IAAK,cACH,GAAqB,sBAAjBF,EAAMG,OACR,OAAOH,EAGT,IAAMI,EAASJ,EAAMK,QAAQC,MAC3B,SAACC,GAAM,OAAAA,EAAEC,MAAQP,EAAOQ,QAAQC,SAAS,IAG3C,OAAKN,EAIE,CACLC,QAASL,EAAMK,QACfF,OAAQ,kBACRQ,mBAAoB,CAClBT,KAAME,EAAOF,KACbU,OAAMR,GAERS,iBAAkBC,EAAwBC,QACxC,SAACC,GAAM,OAAAA,EAAEd,OAASE,EAAOF,SAXpBF,EAgBX,IAAK,gBACH,GAAqB,oBAAjBA,EAAMG,OACR,OAAOH,EAGT,IAAMiB,EAAWH,EAAwBR,MACvC,SAACU,GAAM,OAAAA,EAAER,MAAQP,EAAOQ,QAAQS,WAAW,IAG7C,OAAKD,EAIDA,EAASf,OAASF,EAAMW,mBAAmBC,OAAOV,KAC7CF,EAGkB,SAAvBiB,EAASE,UACJ,CACLd,QAASL,EAAMK,QACfe,aAAc,CACZlB,KAAM,MACNO,QAAS,CACPY,UAAW,CACTT,OAAQZ,EAAMW,mBAAmBC,OACjCK,SAAQA,EACRK,MAAO,CACLpB,KAAM,WAKdC,OAAQ,qBAIL,CACLE,QAASL,EAAMK,QACfF,OAAQ,oBACRQ,mBAAoB,CAClBT,KAAMF,EAAMW,mBAAmBC,OAAOV,KACtCU,OAAQZ,EAAMW,mBAAmBC,OACjCK,SAAQA,IAhCHjB,EAqCX,IAAK,aACH,MAAqB,sBAAjBA,EAAMG,OACDH,EAGF,CACLK,QAASL,EAAMK,QACfe,aAAc,CACZlB,KAAM,MACNO,QAAS,CACPY,UAAW,CACTT,OAAQZ,EAAMW,mBAAmBC,OACjCK,SAAUjB,EAAMW,mBAAmBM,SACnCK,MAAOrB,EAAOQ,WAIpBN,OAAQ,qBAIZ,IAAK,kBACH,OACKoB,EAAAA,EAAA,CAAA,EAAAvB,GACH,CAAAoB,aAAc,CACZlB,KAAM,SACNO,QAAS,CACPe,MAAOvB,EAAOQ,QAAQe,UAM9B,IAAK,QACH,MAAO,CACLnB,QAASL,EAAMK,QACfF,OAAQ,qBAIZ,IAAK,gBACH,MAAO,CACLE,QAASJ,EAAOQ,QAAQJ,QACxBF,OAAQ,qBAIZ,IAAK,sBACH,MAEoB,mBAAhBH,EAAMG,QACU,qBAAhBH,EAAMG,OAGDH,EAGF,CACLK,QAASL,EAAMK,QACfF,OAAQ,qBAIZ,IAAK,wBACH,MAAqB,sBAAjBH,EAAMG,OACDH,EAGF,CACLK,QAASL,EAAMK,QACfF,OAAQ,kBACRQ,mBAAoB,CAClBT,KAAMF,EAAMW,mBAAmBC,OAAOV,KACtCU,OAAQZ,EAAMW,mBAAmBC,QAEnCC,iBAAkBC,EAAwBC,QACxC,SAACC,GAAM,OAAAA,EAAEd,OAASF,EAAMW,mBAAmBC,OAAOV,IAA3C,KAKb,IAAK,uBACH,OAAAqB,EAAAA,EAAA,GACKvB,GAAK,CACRoB,kBAAcK,IAItB"}
1
+ {"version":3,"file":"reducer.js","sources":["../../../../../../src/search-bar/condition-search-bar/condition-input-management/reducer.ts"],"sourcesContent":["import { DEFAULT_SEARCH_OPERATOR } from \"../../../share/search-operator\";\nimport { TConditionInputReducer } from \"./type\";\n\nexport const conditionInputReducer: TConditionInputReducer = (\n state,\n action\n) => {\n switch (action.type) {\n case \"inputTarget\": {\n if (state.status !== \"waiting for input\") {\n return state;\n }\n\n const target = state.targets.find(\n (t) => t.key === action.payload.targetKey\n );\n\n if (!target) {\n return state;\n }\n\n return {\n targets: state.targets,\n status: \"inputted target\",\n inputtingCondition: {\n type: target.type,\n target,\n },\n useableOperators: DEFAULT_SEARCH_OPERATOR.filter(\n (o) => o.type === target.type\n ),\n };\n }\n\n case \"inputOperator\": {\n if (state.status !== \"inputted target\") {\n return state;\n }\n\n const operator = DEFAULT_SEARCH_OPERATOR.find(\n (o) => o.key === action.payload.operatorKey\n );\n\n if (!operator) {\n return state;\n }\n\n if (operator.type !== state.inputtingCondition.target.type) {\n return state;\n }\n\n if (operator.inputType === \"none\") {\n return {\n targets: state.targets,\n changeAction: {\n type: \"add\",\n payload: {\n condition: {\n target: state.inputtingCondition.target,\n operator,\n input: {\n type: \"none\",\n },\n },\n },\n },\n status: \"waiting for input\",\n };\n }\n\n return {\n targets: state.targets,\n status: \"inputted operator\",\n inputtingCondition: {\n type: state.inputtingCondition.target.type,\n target: state.inputtingCondition.target,\n operator,\n },\n };\n }\n\n case \"inputValue\": {\n if (state.status !== \"inputted operator\") {\n return state;\n }\n\n return {\n targets: state.targets,\n changeAction: {\n type: \"add\",\n payload: {\n condition: {\n target: state.inputtingCondition.target,\n operator: state.inputtingCondition.operator,\n input: action.payload,\n },\n },\n },\n status: \"waiting for input\",\n };\n }\n\n case \"deleteCondition\": {\n return {\n ...state,\n changeAction: {\n type: \"remove\",\n payload: {\n index: action.payload.index,\n },\n },\n };\n }\n\n case \"reset\": {\n return {\n targets: state.targets,\n status: \"waiting for input\",\n };\n }\n\n case \"updateTargets\": {\n return {\n targets: action.payload.targets,\n status: \"waiting for input\",\n };\n }\n\n case \"removeInputedTarget\": {\n if (\n !(\n state.status == \"inputted target\" ||\n state.status == \"inputted operator\"\n )\n ) {\n return state;\n }\n\n return {\n targets: state.targets,\n status: \"waiting for input\",\n };\n }\n\n case \"removeInputedOperator\": {\n if (state.status !== \"inputted operator\") {\n return state;\n }\n\n return {\n targets: state.targets,\n status: \"inputted target\",\n inputtingCondition: {\n type: state.inputtingCondition.target.type,\n target: state.inputtingCondition.target,\n },\n useableOperators: DEFAULT_SEARCH_OPERATOR.filter(\n (o) => o.type === state.inputtingCondition.target.type\n ),\n };\n }\n\n case \"executedChangeAction\": {\n return {\n ...state,\n changeAction: undefined,\n };\n }\n }\n};\n"],"names":["conditionInputReducer","state","action","type","status","target_1","targets","find","t","key","payload","targetKey","inputtingCondition","target","useableOperators","DEFAULT_SEARCH_OPERATOR","filter","o","operator","operatorKey","inputType","changeAction","condition","input","__assign","index","undefined"],"mappings":"4JAGO,IAAMA,EAAgD,SAC3DC,EACAC,GAEA,OAAQA,EAAOC,MACb,IAAK,cACH,GAAqB,sBAAjBF,EAAMG,OACR,OAAOH,EAGT,IAAMI,EAASJ,EAAMK,QAAQC,MAC3B,SAACC,GAAM,OAAAA,EAAEC,MAAQP,EAAOQ,QAAQC,SAAzB,IAGT,OAAKN,EAIE,CACLC,QAASL,EAAMK,QACfF,OAAQ,kBACRQ,mBAAoB,CAClBT,KAAME,EAAOF,KACbU,OAAMR,GAERS,iBAAkBC,EAAwBC,QACxC,SAACC,GAAM,OAAAA,EAAEd,OAASE,EAAOF,IAAlB,KAXFF,EAgBX,IAAK,gBACH,GAAqB,oBAAjBA,EAAMG,OACR,OAAOH,EAGT,IAAMiB,EAAWH,EAAwBR,MACvC,SAACU,GAAM,OAAAA,EAAER,MAAQP,EAAOQ,QAAQS,WAAzB,IAGT,OAAKD,EAIDA,EAASf,OAASF,EAAMW,mBAAmBC,OAAOV,KAC7CF,EAGkB,SAAvBiB,EAASE,UACJ,CACLd,QAASL,EAAMK,QACfe,aAAc,CACZlB,KAAM,MACNO,QAAS,CACPY,UAAW,CACTT,OAAQZ,EAAMW,mBAAmBC,OACjCK,SAAQA,EACRK,MAAO,CACLpB,KAAM,WAKdC,OAAQ,qBAIL,CACLE,QAASL,EAAMK,QACfF,OAAQ,oBACRQ,mBAAoB,CAClBT,KAAMF,EAAMW,mBAAmBC,OAAOV,KACtCU,OAAQZ,EAAMW,mBAAmBC,OACjCK,SAAQA,IAhCHjB,EAqCX,IAAK,aACH,MAAqB,sBAAjBA,EAAMG,OACDH,EAGF,CACLK,QAASL,EAAMK,QACfe,aAAc,CACZlB,KAAM,MACNO,QAAS,CACPY,UAAW,CACTT,OAAQZ,EAAMW,mBAAmBC,OACjCK,SAAUjB,EAAMW,mBAAmBM,SACnCK,MAAOrB,EAAOQ,WAIpBN,OAAQ,qBAIZ,IAAK,kBACH,OAAAoB,EAAAA,EAAA,CAAA,EACKvB,GAAK,CACRoB,aAAc,CACZlB,KAAM,SACNO,QAAS,CACPe,MAAOvB,EAAOQ,QAAQe,UAM9B,IAAK,QACH,MAAO,CACLnB,QAASL,EAAMK,QACfF,OAAQ,qBAIZ,IAAK,gBACH,MAAO,CACLE,QAASJ,EAAOQ,QAAQJ,QACxBF,OAAQ,qBAIZ,IAAK,sBACH,MAEoB,mBAAhBH,EAAMG,QACU,qBAAhBH,EAAMG,OAGDH,EAGF,CACLK,QAASL,EAAMK,QACfF,OAAQ,qBAIZ,IAAK,wBACH,MAAqB,sBAAjBH,EAAMG,OACDH,EAGF,CACLK,QAASL,EAAMK,QACfF,OAAQ,kBACRQ,mBAAoB,CAClBT,KAAMF,EAAMW,mBAAmBC,OAAOV,KACtCU,OAAQZ,EAAMW,mBAAmBC,QAEnCC,iBAAkBC,EAAwBC,QACxC,SAACC,GAAM,OAAAA,EAAEd,OAASF,EAAMW,mBAAmBC,OAAOV,IAA3C,KAKb,IAAK,uBACH,OAAAqB,EAAAA,EAAA,CAAA,EACKvB,GAAK,CACRoB,kBAAcK,IAItB"}
@@ -1,3 +1,3 @@
1
1
  "use client";
2
- import{jsx as e,jsxs as n,Fragment as t}from"react/jsx-runtime";import{useState as i,useRef as o,useEffect as r}from"react";import{SelectBox as a}from"../../select-box/index.js";import{useConditionInputState as u,useConditionInputAction as l}from"./condition-input-management/context.js";import"../../../node_modules/tslib/tslib.es6.js";import{useIdGenerator as p}from"../id-generator/context.js";import{TiDeleteOutline as c}from"../../../node_modules/react-icons/ti/index.js";function s(n){switch(u().status){case"waiting for input":return e(d,{});case"inputted target":return e(f,{});case"inputted operator":return e(g,{size:n.size})}}function d(){var n=p().generateId,t=u().targets,i=l().inputTarget;return e(a,{id:n("TargetInput"),onSelect:function(e){i(e)},options:t.map((function(e){return{value:e.key,label:e.label}})),placeholder:"Select target",no_appearance:!0,no_icon:!0})}function f(){var i=p().generateId,o=u(),r=l(),c=r.inputOperator,s=r.removeInputedTarget;if("inputted target"!==o.status)return null;var d=o.inputtingCondition.target,f=o.useableOperators;return n(t,{children:[e(T,{label:d.label,onClickDelete:function(){s()}}),e("div",{className:"w-full min-w-64",children:e(a,{id:i("OperatorInput"),onSelect:function(e){c(e),setTimeout((function(){var e=document.getElementById(i("ValueInput"));e&&e.focus()}),10)},options:f.map((function(e){return{value:e.key,label:e.label}})),defaultIsOpen:!0,placeholder:"Select operator",no_appearance:!0,no_icon:!0})})]})}function g(i){var o=u(),r=l(),a=r.removeInputedOperator,p=r.removeInputedTarget;if("inputted operator"!==o.status)return null;var c=o.inputtingCondition.target,s=o.inputtingCondition.operator;return n(t,{children:[e(T,{label:c.label,onClickDelete:function(){p()}}),e(T,{label:s.label,onClickDelete:function(){a()}}),"single string"===o.inputtingCondition.operator.inputType?e(m,{inputType:o.inputtingCondition.operator.inputType,size:i.size}):"single number"===o.inputtingCondition.operator.inputType?e(y,{inputType:o.inputtingCondition.operator.inputType,size:i.size}):"select"===o.inputtingCondition.operator.inputType?e(v,{inputType:o.inputtingCondition.operator.inputType,options:"select"===o.inputtingCondition.target.type?o.inputtingCondition.target.options:[]}):"single datetime"===o.inputtingCondition.operator.inputType?e(b,{inputType:o.inputtingCondition.operator.inputType,size:i.size}):"single date"===o.inputtingCondition.operator.inputType?e(w,{inputType:o.inputtingCondition.operator.inputType,size:i.size}):console.error("Not implemented")]})}function m(n){var t=p().generateId,o=i(""),r=o[0],a=o[1],u=l().inputValue;return e("input",{id:t("ValueInput"),className:"appearance-none w-full min-w-64 border-none px-2 py-1 focus:outline-none focus-visible:outline-none bg-transparent ".concat("small"===n.size?"text-sm":"large"===n.size?"text-lg":""),type:"text",placeholder:"Search text",value:r,onChange:function(e){a(e.target.value)},onKeyDown:function(e){"Enter"===e.key&&(u({type:n.inputType,payload:{value:r}}),a(""))}})}function y(n){var t=p().generateId,o=i(""),r=o[0],a=o[1],u=l().inputValue;return e("input",{id:t("ValueInput"),className:"appearance-none w-full min-w-64 border-none px-2 py-1 focus:outline-none focus-visible:outline-none bg-transparent ".concat("small"===n.size?"text-sm":"large"===n.size?"text-lg":""),type:"text",placeholder:"Search text",value:r,onChange:function(e){a(e.target.value)},onKeyDown:function(e){"Enter"===e.key&&(u({type:n.inputType,payload:{value:Number(r)}}),a(""))}})}function v(n){var t=l().inputValue,i=p().generateId;return e("div",{className:"w-full min-w-64",children:e(a,{id:i("ValueInput"),onSelect:function(e){t({type:n.inputType,payload:{value:e}})},options:n.options,defaultIsOpen:!0,placeholder:"Select value",no_appearance:!0,no_icon:!0})})}function b(n){var t=p().generateId,i=l().inputValue,a=o(null);return r((function(){if(a.current){var e=a.current;e.focus(),e.scrollIntoView(),e.click()}}),[]),e("input",{ref:a,id:t("ValueInput"),className:"appearance-none w-fit min-w-64 border-none px-2 py-1 focus:outline-none focus-visible:outline-none bg-transparent ".concat("small"===n.size?"text-sm":"large"===n.size?"text-lg":""),type:"datetime-local",defaultValue:new Date((new Date).getTime()-6e4*(new Date).getTimezoneOffset()).toISOString().slice(0,16),onKeyDown:function(e){var t,o;if("Enter"===e.key){var r=new Date(null!==(o=null===(t=a.current)||void 0===t?void 0:t.value)&&void 0!==o?o:"");if(isNaN(r.getTime()))return;i({type:n.inputType,payload:{value:r}})}},onClick:function(e){e.currentTarget.showPicker()}})}function w(n){var t=p().generateId,i=l().inputValue,a=o(null),u=o(!1);return r((function(){if(a.current){var e=a.current;e.focus(),e.scrollIntoView(),e.click()}}),[]),e("input",{ref:a,id:t("ValueInput"),className:"appearance-none w-fit min-w-64 border-none px-2 py-1 focus:outline-none focus-visible:outline-none bg-transparent ".concat("small"===n.size?"text-sm":"large"===n.size?"text-lg":""),type:"date",defaultValue:new Date((new Date).getTime()-6e4*(new Date).getTimezoneOffset()).toISOString().slice(0,10),onKeyDown:function(e){var t;if("Enter"===e.key){if(!(null===(t=a.current)||void 0===t?void 0:t.value))return;var o=a.current.value.split("-"),r=o[0],u=o[1],l=o[2],p=new Date(Number(r),Number(u)-1,Number(l));if(isNaN(p.getTime()))return;i({type:n.inputType,payload:{value:p}})}},onClick:function(e){u.current||(e.currentTarget.showPicker(),u.current=!0)}})}function T(t){return n("div",{className:"flex items-center gap-2 w-fit px-2 border rounded bg-slate-100",children:[e("p",{className:"whitespace-nowrap",children:t.label}),t.onClickDelete&&e("div",{children:e(c,{className:"bg-white hover:bg-slate-300 rounded-full cursor-pointer",onClick:t.onClickDelete})})]})}export{s as SearchBarInputForm};
2
+ import{jsx as e,jsxs as t,Fragment as n}from"react/jsx-runtime";import{useState as i,useRef as o,useEffect as r}from"react";import{SelectBox as a}from"../../select-box/index.js";import{useConditionInputState as u,useConditionInputAction as l}from"./condition-input-management/context.js";import"../../../node_modules/tslib/tslib.es6.js";import{useIdGenerator as p}from"../id-generator/context.js";import{TiDeleteOutline as c}from"../../../node_modules/react-icons/ti/index.js";function s(t){switch(u().status){case"waiting for input":return e(d,{});case"inputted target":return e(g,{});case"inputted operator":return e(f,{size:t.size})}}function d(){var t=p().generateId,n=u().targets,i=l().inputTarget;return e(a,{id:t("TargetInput"),onSelect:function(e){i(e)},options:n.map((function(e){return{value:e.key,label:e.label}})),placeholder:"Select target",no_appearance:!0,no_icon:!0})}function g(){var i=p().generateId,o=u(),r=l(),c=r.inputOperator,s=r.removeInputedTarget;if("inputted target"!==o.status)return null;var d=o.inputtingCondition.target,g=o.useableOperators;return t(n,{children:[e(T,{label:d.label,onClickDelete:function(){s()}}),e("div",{className:"w-full min-w-64",children:e(a,{id:i("OperatorInput"),onSelect:function(e){c(e),setTimeout((function(){var e=document.getElementById(i("ValueInput"));e&&e.focus()}),10)},options:g.map((function(e){return{value:e.key,label:e.label}})),defaultIsOpen:!0,placeholder:"Select operator",no_appearance:!0,no_icon:!0})})]})}function f(i){var o=u(),r=l(),a=r.removeInputedOperator,p=r.removeInputedTarget;if("inputted operator"!==o.status)return null;var c=o.inputtingCondition.target,s=o.inputtingCondition.operator;return t(n,{children:[e(T,{label:c.label,onClickDelete:function(){p()}}),e(T,{label:s.label,onClickDelete:function(){a()}}),"single string"===o.inputtingCondition.operator.inputType?e(m,{inputType:o.inputtingCondition.operator.inputType,size:i.size}):"single number"===o.inputtingCondition.operator.inputType?e(y,{inputType:o.inputtingCondition.operator.inputType,size:i.size}):"select"===o.inputtingCondition.operator.inputType?e(v,{inputType:o.inputtingCondition.operator.inputType,options:"select"===o.inputtingCondition.target.type?o.inputtingCondition.target.options:[]}):"single datetime"===o.inputtingCondition.operator.inputType?e(b,{inputType:o.inputtingCondition.operator.inputType,size:i.size}):"single date"===o.inputtingCondition.operator.inputType?e(w,{inputType:o.inputtingCondition.operator.inputType,size:i.size}):console.error("Not implemented")]})}function m(t){var n=p().generateId,o=i(""),r=o[0],a=o[1],u=l().inputValue;return e("input",{id:n("ValueInput"),className:"appearance-none w-full min-w-64 border-none px-2 py-1 placeholder:text-gray-400 focus:outline-none focus-visible:outline-none bg-transparent ".concat("small"===t.size?"text-sm":"large"===t.size?"text-lg":""),type:"text",placeholder:"Search text",value:r,onChange:function(e){a(e.target.value)},onKeyDown:function(e){"Enter"===e.key&&(u({type:t.inputType,payload:{value:r}}),a(""))}})}function y(t){var n=p().generateId,o=i(""),r=o[0],a=o[1],u=l().inputValue;return e("input",{id:n("ValueInput"),className:"appearance-none w-full min-w-64 border-none px-2 py-1 placeholder:text-gray-400 focus:outline-none focus-visible:outline-none bg-transparent ".concat("small"===t.size?"text-sm":"large"===t.size?"text-lg":""),type:"text",placeholder:"Search text",value:r,onChange:function(e){a(e.target.value)},onKeyDown:function(e){"Enter"===e.key&&(u({type:t.inputType,payload:{value:Number(r)}}),a(""))}})}function v(t){var n=l().inputValue,i=p().generateId;return e("div",{className:"w-full min-w-64",children:e(a,{id:i("ValueInput"),onSelect:function(e){n({type:t.inputType,payload:{value:e}})},options:t.options,defaultIsOpen:!0,placeholder:"Select value",no_appearance:!0,no_icon:!0})})}function b(t){var n=p().generateId,i=l().inputValue,a=o(null);return r((function(){if(a.current){var e=a.current;e.focus(),e.scrollIntoView(),e.click()}}),[]),e("input",{ref:a,id:n("ValueInput"),className:"appearance-none w-fit min-w-64 border-none px-2 py-1 focus:outline-none focus-visible:outline-none bg-transparent ".concat("small"===t.size?"text-sm":"large"===t.size?"text-lg":""),type:"datetime-local",defaultValue:new Date((new Date).getTime()-6e4*(new Date).getTimezoneOffset()).toISOString().slice(0,16),onKeyDown:function(e){var n,o;if("Enter"===e.key){var r=new Date(null!==(o=null===(n=a.current)||void 0===n?void 0:n.value)&&void 0!==o?o:"");if(isNaN(r.getTime()))return;i({type:t.inputType,payload:{value:r}})}},onClick:function(e){e.currentTarget.showPicker()}})}function w(t){var n=p().generateId,i=l().inputValue,a=o(null),u=o(!1);return r((function(){if(a.current){var e=a.current;e.focus(),e.scrollIntoView(),e.click()}}),[]),e("input",{ref:a,id:n("ValueInput"),className:"appearance-none w-fit min-w-64 border-none px-2 py-1 focus:outline-none focus-visible:outline-none bg-transparent ".concat("small"===t.size?"text-sm":"large"===t.size?"text-lg":""),type:"date",defaultValue:new Date((new Date).getTime()-6e4*(new Date).getTimezoneOffset()).toISOString().slice(0,10),onKeyDown:function(e){var n;if("Enter"===e.key){if(!(null===(n=a.current)||void 0===n?void 0:n.value))return;var o=a.current.value.split("-"),r=o[0],u=o[1],l=o[2],p=new Date(Number(r),Number(u)-1,Number(l));if(isNaN(p.getTime()))return;i({type:t.inputType,payload:{value:p}})}},onClick:function(e){u.current||(e.currentTarget.showPicker(),u.current=!0)}})}function T(n){return t("div",{className:"flex items-center gap-2 w-fit px-2 border border-gray-200 rounded bg-slate-100",children:[e("p",{className:"whitespace-nowrap",children:n.label}),n.onClickDelete&&e("div",{children:e(c,{className:"bg-white hover:bg-slate-300 rounded-full cursor-pointer",onClick:n.onClickDelete})})]})}export{s as SearchBarInputForm};
3
3
  //# sourceMappingURL=input-form.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"id-generator.js","sources":["../../../../../src/select-box/lib/id-generator.ts"],"sourcesContent":["const ID_PREFIX = \"teppen:react-ui:select-box\";\n\nexport class IdGenerator {\n static generateIdSelectBoxInputArea(id: string): string {\n if (id === \"\") {\n return `${ID_PREFIX}:input-area`;\n } else {\n return `${ID_PREFIX}:${id}:input-area`;\n }\n }\n\n static generateIdSelectBoxOptionsArea(id: string): string {\n if (id === \"\") {\n return `${ID_PREFIX}:options-area`;\n } else {\n return `${ID_PREFIX}:${id}:options-area`;\n }\n }\n\n static generateIdSelectBoxFrame(id: string): string {\n if (id === \"\") {\n return `${ID_PREFIX}:frame`;\n } else {\n return `${ID_PREFIX}:${id}:frame`;\n }\n }\n\n static generateIdSelectBoxOption(id: string, value: string): string {\n if (id === \"\") {\n return `${ID_PREFIX}:option:${value}`;\n } else {\n return `${ID_PREFIX}:${id}:option:${value}`;\n }\n }\n}\n"],"names":["ID_PREFIX","IdGenerator","generateIdSelectBoxInputArea","id","concat","generateIdSelectBoxOptionsArea","generateIdSelectBoxFrame","generateIdSelectBoxOption","value"],"mappings":"AAAA,IAAMA,EAAY,6BAElBC,EAAA,WAAA,SAAAA,IAgCC,CAAD,OA/BSA,EAA4BC,6BAAnC,SAAoCC,GAClC,MAAW,KAAPA,EACK,GAAAC,OAAGJ,EAAS,eAEZ,GAAGI,OAAAJ,EAAa,KAAAI,OAAAD,kBAIpBF,EAA8BI,+BAArC,SAAsCF,GACpC,MAAW,KAAPA,EACK,GAAAC,OAAGJ,EAAS,iBAEZ,GAAGI,OAAAJ,EAAa,KAAAI,OAAAD,oBAIpBF,EAAwBK,yBAA/B,SAAgCH,GAC9B,MAAW,KAAPA,EACK,GAAAC,OAAGJ,EAAS,UAEZ,GAAGI,OAAAJ,EAAa,KAAAI,OAAAD,aAIpBF,EAAAM,0BAAP,SAAiCJ,EAAYK,GAC3C,MAAW,KAAPL,EACK,GAAGC,OAAAJ,EAAoB,YAAAI,OAAAI,GAEvB,UAAGR,EAAS,KAAAI,OAAID,EAAa,YAAAC,OAAAI,IAGzCP,CAAD"}
1
+ {"version":3,"file":"id-generator.js","sources":["../../../../../src/select-box/lib/id-generator.ts"],"sourcesContent":["const ID_PREFIX = \"teppen:react-ui:select-box\";\n\nexport class IdGenerator {\n static generateIdSelectBoxInputArea(id: string): string {\n if (id === \"\") {\n return `${ID_PREFIX}:input-area`;\n } else {\n return `${ID_PREFIX}:${id}:input-area`;\n }\n }\n\n static generateIdSelectBoxOptionsArea(id: string): string {\n if (id === \"\") {\n return `${ID_PREFIX}:options-area`;\n } else {\n return `${ID_PREFIX}:${id}:options-area`;\n }\n }\n\n static generateIdSelectBoxFrame(id: string): string {\n if (id === \"\") {\n return `${ID_PREFIX}:frame`;\n } else {\n return `${ID_PREFIX}:${id}:frame`;\n }\n }\n\n static generateIdSelectBoxOption(id: string, value: string): string {\n if (id === \"\") {\n return `${ID_PREFIX}:option:${value}`;\n } else {\n return `${ID_PREFIX}:${id}:option:${value}`;\n }\n }\n}\n"],"names":["ID_PREFIX","IdGenerator","generateIdSelectBoxInputArea","id","concat","generateIdSelectBoxOptionsArea","generateIdSelectBoxFrame","generateIdSelectBoxOption","value"],"mappings":"AAAA,IAAMA,EAAY,6BAElBC,EAAA,WAAA,SAAAA,IAgCA,CAAA,OA/BSA,EAAAC,6BAAP,SAAoCC,GAClC,MAAW,KAAPA,EACK,GAAAC,OAAGJ,EAAS,eAEZ,GAAAI,OAAGJ,EAAS,KAAAI,OAAID,gBAE3B,EAEOF,EAAAI,+BAAP,SAAsCF,GACpC,MAAW,KAAPA,EACK,GAAAC,OAAGJ,EAAS,iBAEZ,GAAAI,OAAGJ,EAAS,KAAAI,OAAID,kBAE3B,EAEOF,EAAAK,yBAAP,SAAgCH,GAC9B,MAAW,KAAPA,EACK,GAAAC,OAAGJ,EAAS,UAEZ,GAAAI,OAAGJ,EAAS,KAAAI,OAAID,WAE3B,EAEOF,EAAAM,0BAAP,SAAiCJ,EAAYK,GAC3C,MAAW,KAAPL,EACK,GAAAC,OAAGJ,EAAS,YAAAI,OAAWI,GAEvB,UAAGR,EAAS,KAAAI,OAAID,EAAE,YAAAC,OAAWI,EAExC,EACFP,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sources":["../../../../../src/select-box/options-window/component.tsx"],"sourcesContent":["import { useEffect, useRef, useState } from \"react\";\nimport { useIdContext } from \"../id/provider\";\nimport { IdGenerator } from \"../lib\";\nimport { useOptionsWindow } from \"./context\";\n\nexport function OptionsArea() {\n const id = useIdContext();\n const { state, actions } = useOptionsWindow();\n const [value, setValue] = useState(\"\");\n const [selectingIndex, setSelectingIndex] = useState<number | undefined>(\n undefined\n );\n const [position, setPosition] = useState({ top: 0, left: 0 });\n\n const selectingValue = state.isOpen\n ? state.options.length === 0\n ? undefined\n : typeof selectingIndex === \"number\" &&\n selectingIndex < state.options.length &&\n selectingIndex >= 0\n ? state.options[selectingIndex].value\n : undefined\n : undefined;\n\n useEffect(() => {\n if (state.isOpen) {\n const optionElement = document.getElementById(\n IdGenerator.generateIdSelectBoxOption(id, selectingValue ?? \"\")\n );\n\n if (!optionElement) return;\n if (position.top === 0 && position.left === 0) return;\n\n optionElement.scrollIntoView({\n behavior: \"smooth\",\n block: \"nearest\",\n inline: \"nearest\",\n });\n } else {\n setSelectingIndex(undefined);\n }\n }, [state, position, selectingValue]);\n\n useEffect(() => {\n if (state.isOpen) {\n const handleKeydown = (e: KeyboardEvent) => {\n if (e.key === \"ArrowDown\") {\n e.preventDefault();\n setSelectingIndex((prev) =>\n typeof prev === \"number\"\n ? Math.min(prev + 1, state.options.length - 1)\n : 0\n );\n } else if (e.key === \"ArrowUp\") {\n e.preventDefault();\n setSelectingIndex((prev) =>\n typeof prev === \"number\" ? Math.max(prev - 1, 0) : 0\n );\n } else if (e.key === \"Enter\") {\n e.preventDefault();\n if (typeof selectingIndex === \"number\") {\n if (\n state.options.length === 0 ||\n state.options.length <= selectingIndex\n )\n return;\n\n const value = state.options[selectingIndex].value;\n\n if (!value) return;\n\n setValue(value);\n state.onSelect(value);\n actions.closeOptionsWindow();\n }\n } else if (e.key === \"Escape\") {\n e.preventDefault();\n actions.closeOptionsWindow();\n }\n };\n\n document.addEventListener(\"keydown\", handleKeydown);\n\n return () => {\n document.removeEventListener(\"keydown\", handleKeydown);\n };\n }\n }, [state, selectingIndex, setSelectingIndex, actions]);\n\n useEffect(() => {\n const searchParentElement = () => {\n if (state.isOpen) {\n let parentElement = document.getElementById(\n \"ReactUI:SelectBox:OptionsArea\"\n )?.parentElement;\n\n const positionClasses = [\"relative\", \"fixed\", \"absolute\", \"sticky\"];\n\n while (parentElement) {\n const hasPositionClass = positionClasses.some((className) =>\n parentElement!.className.includes(className)\n );\n\n const hasPositionStyle = positionClasses.some((style) =>\n parentElement!.style.position.includes(style)\n );\n\n if (hasPositionClass || hasPositionStyle) break;\n\n parentElement = parentElement.parentElement;\n }\n\n const selectBoxElement = document.getElementById(state.selectBoxId);\n\n if (selectBoxElement) {\n const rect = selectBoxElement.getBoundingClientRect();\n let top = rect.top + rect.height;\n let left = rect.left;\n\n if (parentElement) {\n const parentRect = parentElement.getBoundingClientRect();\n setPosition({\n top: top - parentRect.top + parentElement.scrollTop,\n left: left - parentRect.left + parentElement.scrollLeft,\n });\n } else {\n setPosition({\n top: top + window.scrollY,\n left: left + window.scrollX,\n });\n }\n }\n }\n };\n\n const timer = setTimeout(searchParentElement, 0);\n\n return () => {\n clearTimeout(timer);\n };\n }, [state.isOpen]);\n\n useEffect(() => {\n const onClickOutOfSelectBox = (e: MouseEvent) => {\n if (!state.isOpen) return;\n\n // SelectBox関連の要素を取得\n const frameElement = document.getElementById(state.selectBoxId);\n const optionsElement = document.getElementById(\n \"ReactUI:SelectBox:OptionsArea\"\n );\n\n // クリックされた要素を取得\n const ele = e.target;\n\n if (ele instanceof Node && frameElement?.contains(ele)) return;\n\n if (ele instanceof Node && optionsElement?.contains(ele)) return;\n\n actions.setSearchText(\"\");\n actions.closeOptionsWindow();\n };\n\n document.addEventListener(\"mousedown\", onClickOutOfSelectBox);\n\n return () => {\n document.removeEventListener(\"mousedown\", onClickOutOfSelectBox);\n };\n }, [state.isOpen]);\n\n if (!state.isOpen) return <></>;\n\n return (\n <div\n id={\"ReactUI:SelectBox:OptionsArea\"}\n className=\"absolute min-w-fit max-h-[40vh] overflow-auto border border-gray-300 z-10\"\n style={position}\n >\n {state.options.map((option) => (\n <div\n id={IdGenerator.generateIdSelectBoxOption(id, option.value ?? \"\")}\n className={`hover:bg-gray-200 px-2 py-1 ${\n typeof selectingValue === \"string\"\n ? selectingValue === option.value\n ? \"bg-gray-100\"\n : \"bg-white\"\n : value === option.value\n ? \"bg-gray-100\"\n : \"bg-white\"\n }`}\n key={option.value}\n onClick={() => {\n state.onSelect(option.value);\n actions.closeOptionsWindow();\n }}\n >\n {option.searchLabel ?? option.label}\n </div>\n ))}\n </div>\n );\n}\n"],"names":["OptionsArea","id","useIdContext","_a","useOptionsWindow","state","actions","_b","useState","value","setValue","_c","undefined","selectingIndex","setSelectingIndex","_d","top","left","position","setPosition","selectingValue","isOpen","options","length","useEffect","optionElement","document","getElementById","IdGenerator","generateIdSelectBoxOption","scrollIntoView","behavior","block","inline","handleKeydown_1","e","key","preventDefault","prev","Math","min","max","value_1","onSelect","closeOptionsWindow","addEventListener","removeEventListener","timer","setTimeout","parentElement_1","parentElement","positionClasses","hasPositionClass","some","className","includes","hasPositionStyle","style","selectBoxElement","selectBoxId","rect","getBoundingClientRect","top_1","height","parentRect","scrollTop","scrollLeft","window","scrollY","scrollX","clearTimeout","onClickOutOfSelectBox","frameElement","optionsElement","ele","target","Node","contains","setSearchText","_jsx","map","option","concat","onClick","children","searchLabel","label"],"mappings":"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"}
1
+ {"version":3,"file":"component.js","sources":["../../../../../src/select-box/options-window/component.tsx"],"sourcesContent":["import { useEffect, useRef, useState } from \"react\";\nimport { useIdContext } from \"../id/provider\";\nimport { IdGenerator } from \"../lib\";\nimport { useOptionsWindow } from \"./context\";\n\nexport function OptionsArea() {\n const id = useIdContext();\n const { state, actions } = useOptionsWindow();\n const [value, setValue] = useState(\"\");\n const [selectingIndex, setSelectingIndex] = useState<number | undefined>(\n undefined\n );\n const [position, setPosition] = useState({ top: 0, left: 0 });\n\n const selectingValue = state.isOpen\n ? state.options.length === 0\n ? undefined\n : typeof selectingIndex === \"number\" &&\n selectingIndex < state.options.length &&\n selectingIndex >= 0\n ? state.options[selectingIndex].value\n : undefined\n : undefined;\n\n useEffect(() => {\n if (state.isOpen) {\n const optionElement = document.getElementById(\n IdGenerator.generateIdSelectBoxOption(id, selectingValue ?? \"\")\n );\n\n if (!optionElement) return;\n if (position.top === 0 && position.left === 0) return;\n\n optionElement.scrollIntoView({\n behavior: \"smooth\",\n block: \"nearest\",\n inline: \"nearest\",\n });\n } else {\n setSelectingIndex(undefined);\n }\n }, [state, position, selectingValue]);\n\n useEffect(() => {\n if (state.isOpen) {\n const handleKeydown = (e: KeyboardEvent) => {\n if (e.key === \"ArrowDown\") {\n e.preventDefault();\n setSelectingIndex((prev) =>\n typeof prev === \"number\"\n ? Math.min(prev + 1, state.options.length - 1)\n : 0\n );\n } else if (e.key === \"ArrowUp\") {\n e.preventDefault();\n setSelectingIndex((prev) =>\n typeof prev === \"number\" ? Math.max(prev - 1, 0) : 0\n );\n } else if (e.key === \"Enter\") {\n e.preventDefault();\n if (typeof selectingIndex === \"number\") {\n if (\n state.options.length === 0 ||\n state.options.length <= selectingIndex\n )\n return;\n\n const value = state.options[selectingIndex].value;\n\n if (!value) return;\n\n setValue(value);\n state.onSelect(value);\n actions.closeOptionsWindow();\n }\n } else if (e.key === \"Escape\") {\n e.preventDefault();\n actions.closeOptionsWindow();\n }\n };\n\n document.addEventListener(\"keydown\", handleKeydown);\n\n return () => {\n document.removeEventListener(\"keydown\", handleKeydown);\n };\n }\n }, [state, selectingIndex, setSelectingIndex, actions]);\n\n useEffect(() => {\n const searchParentElement = () => {\n if (state.isOpen) {\n let parentElement = document.getElementById(\n \"ReactUI:SelectBox:OptionsArea\"\n )?.parentElement;\n\n const positionClasses = [\"relative\", \"fixed\", \"absolute\", \"sticky\"];\n\n while (parentElement) {\n const hasPositionClass = positionClasses.some((className) =>\n parentElement!.className.includes(className)\n );\n\n const hasPositionStyle = positionClasses.some((style) =>\n parentElement!.style.position.includes(style)\n );\n\n if (hasPositionClass || hasPositionStyle) break;\n\n parentElement = parentElement.parentElement;\n }\n\n const selectBoxElement = document.getElementById(state.selectBoxId);\n\n if (selectBoxElement) {\n const rect = selectBoxElement.getBoundingClientRect();\n let top = rect.top + rect.height;\n let left = rect.left;\n\n if (parentElement) {\n const parentRect = parentElement.getBoundingClientRect();\n setPosition({\n top: top - parentRect.top + parentElement.scrollTop,\n left: left - parentRect.left + parentElement.scrollLeft,\n });\n } else {\n setPosition({\n top: top + window.scrollY,\n left: left + window.scrollX,\n });\n }\n }\n }\n };\n\n const timer = setTimeout(searchParentElement, 0);\n\n return () => {\n clearTimeout(timer);\n };\n }, [state.isOpen]);\n\n useEffect(() => {\n const onClickOutOfSelectBox = (e: MouseEvent) => {\n if (!state.isOpen) return;\n\n // SelectBox関連の要素を取得\n const frameElement = document.getElementById(state.selectBoxId);\n const optionsElement = document.getElementById(\n \"ReactUI:SelectBox:OptionsArea\"\n );\n\n // クリックされた要素を取得\n const ele = e.target;\n\n if (ele instanceof Node && frameElement?.contains(ele)) return;\n\n if (ele instanceof Node && optionsElement?.contains(ele)) return;\n\n actions.setSearchText(\"\");\n actions.closeOptionsWindow();\n };\n\n document.addEventListener(\"mousedown\", onClickOutOfSelectBox);\n\n return () => {\n document.removeEventListener(\"mousedown\", onClickOutOfSelectBox);\n };\n }, [state.isOpen]);\n\n if (!state.isOpen) return <></>;\n\n return (\n <div\n id={\"ReactUI:SelectBox:OptionsArea\"}\n className=\"absolute min-w-fit max-h-[40vh] overflow-auto border border-gray-300 z-10\"\n style={position}\n >\n {state.options.map((option) => (\n <div\n id={IdGenerator.generateIdSelectBoxOption(id, option.value ?? \"\")}\n className={`hover:bg-gray-200 px-2 py-1 ${\n typeof selectingValue === \"string\"\n ? selectingValue === option.value\n ? \"bg-gray-100\"\n : \"bg-white\"\n : value === option.value\n ? \"bg-gray-100\"\n : \"bg-white\"\n }`}\n key={option.value}\n onClick={() => {\n state.onSelect(option.value);\n actions.closeOptionsWindow();\n }}\n >\n {option.searchLabel ?? option.label}\n </div>\n ))}\n </div>\n );\n}\n"],"names":["OptionsArea","id","useIdContext","_a","useOptionsWindow","state","actions","_b","useState","value","setValue","_c","undefined","selectingIndex","setSelectingIndex","_d","top","left","position","setPosition","selectingValue","isOpen","options","length","useEffect","optionElement","document","getElementById","IdGenerator","generateIdSelectBoxOption","scrollIntoView","behavior","block","inline","handleKeydown_1","e","key","preventDefault","prev","Math","min","max","value_1","onSelect","closeOptionsWindow","addEventListener","removeEventListener","timer","setTimeout","parentElement_1","parentElement","positionClasses","hasPositionClass","some","className","includes","hasPositionStyle","style","selectBoxElement","selectBoxId","rect","getBoundingClientRect","top_1","height","parentRect","scrollTop","scrollLeft","window","scrollY","scrollX","clearTimeout","onClickOutOfSelectBox","frameElement","optionsElement","ele","target","Node","contains","setSearchText","_jsx","map","option","concat","onClick","children","searchLabel","label"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"hook.js","sources":["../../../../../src/select-box/options-window/hook.ts"],"sourcesContent":["import { useMemo, useReducer } from \"react\";\nimport { Options, TOptionsWindowHook } from \"./type\";\nimport { optionsWindowReducer } from \"./reducer\";\n\nexport const useOptionsWindowHook: TOptionsWindowHook = () => {\n const [state, dispatch] = useReducer(optionsWindowReducer, {\n isOpen: false,\n });\n\n const retrunState = useMemo(() => {\n if (!state.isOpen) {\n return state;\n } else {\n return {\n ...state,\n options: state.options.filter((option) => {\n if (option.searchText) {\n return option.searchText\n .toLowerCase()\n .includes(state.searchText.toLowerCase());\n } else if (option.searchLabel) {\n return option.searchLabel\n .toLowerCase()\n .includes(state.searchText.toLowerCase());\n } else {\n return option.label\n .toLowerCase()\n .includes(state.searchText.toLowerCase());\n }\n }),\n };\n }\n }, [state]);\n\n const returnActions = useMemo(\n () => ({\n openOptionsWindow: (\n selectBoxId: string,\n options: Options[],\n onSelect: (value: string) => void,\n option?: { defaultValue?: string; searchText?: string }\n ) => {\n dispatch({\n type: \"open\",\n payload: {\n selectBoxId,\n options,\n onSelect,\n searchText: option?.searchText,\n defaultValue: option?.defaultValue,\n },\n });\n },\n setSearchText: (searchText: string) => {\n dispatch({\n type: \"setSearchText\",\n payload: {\n searchText,\n },\n });\n },\n closeOptionsWindow: () => {\n dispatch({\n type: \"close\",\n });\n },\n }),\n []\n );\n\n return {\n state: retrunState,\n actions: returnActions,\n };\n};\n"],"names":["useOptionsWindowHook","_a","useReducer","optionsWindowReducer","isOpen","state","dispatch","useMemo","__assign","options","filter","option","searchText","toLowerCase","includes","searchLabel","label","actions","openOptionsWindow","selectBoxId","onSelect","type","payload","defaultValue","setSearchText","closeOptionsWindow"],"mappings":"wKAIa,IAAAA,EAA2C,WAChD,IAAAC,EAAoBC,EAAWC,EAAsB,CACzDC,QAAQ,IADHC,EAAKJ,EAAA,GAAEK,OAiEd,MAAO,CACLD,MA9DkBE,GAAQ,WAC1B,OAAKF,EAAMD,OAIJI,EAAAA,EAAA,CAAA,EAAAH,GACH,CAAAI,QAASJ,EAAMI,QAAQC,QAAO,SAACC,GAC7B,OAAIA,EAAOC,WACFD,EAAOC,WACXC,cACAC,SAAST,EAAMO,WAAWC,eACpBF,EAAOI,YACTJ,EAAOI,YACXF,cACAC,SAAST,EAAMO,WAAWC,eAEtBF,EAAOK,MACXH,cACAC,SAAST,EAAMO,WAAWC,cAEhC,MAlBIR,CAqBX,GAAG,CAACA,IAwCFY,QAtCoBV,GACpB,WAAM,MAAC,CACLW,kBAAmB,SACjBC,EACAV,EACAW,EACAT,GAEAL,EAAS,CACPe,KAAM,OACNC,QAAS,CACPH,YAAWA,EACXV,QAAOA,EACPW,SAAQA,EACRR,WAAYD,aAAA,EAAAA,EAAQC,WACpBW,aAAcZ,aAAA,EAAAA,EAAQY,eAG3B,EACDC,cAAe,SAACZ,GACdN,EAAS,CACPe,KAAM,gBACNC,QAAS,CACPV,WAAUA,IAGf,EACDa,mBAAoB,WAClBnB,EAAS,CACPe,KAAM,SAET,EA9BG,GAgCN,IAOJ"}
1
+ {"version":3,"file":"hook.js","sources":["../../../../../src/select-box/options-window/hook.ts"],"sourcesContent":["import { useMemo, useReducer } from \"react\";\nimport { Options, TOptionsWindowHook } from \"./type\";\nimport { optionsWindowReducer } from \"./reducer\";\n\nexport const useOptionsWindowHook: TOptionsWindowHook = () => {\n const [state, dispatch] = useReducer(optionsWindowReducer, {\n isOpen: false,\n });\n\n const retrunState = useMemo(() => {\n if (!state.isOpen) {\n return state;\n } else {\n return {\n ...state,\n options: state.options.filter((option) => {\n if (option.searchText) {\n return option.searchText\n .toLowerCase()\n .includes(state.searchText.toLowerCase());\n } else if (option.searchLabel) {\n return option.searchLabel\n .toLowerCase()\n .includes(state.searchText.toLowerCase());\n } else {\n return option.label\n .toLowerCase()\n .includes(state.searchText.toLowerCase());\n }\n }),\n };\n }\n }, [state]);\n\n const returnActions = useMemo(\n () => ({\n openOptionsWindow: (\n selectBoxId: string,\n options: Options[],\n onSelect: (value: string) => void,\n option?: { defaultValue?: string; searchText?: string }\n ) => {\n dispatch({\n type: \"open\",\n payload: {\n selectBoxId,\n options,\n onSelect,\n searchText: option?.searchText,\n defaultValue: option?.defaultValue,\n },\n });\n },\n setSearchText: (searchText: string) => {\n dispatch({\n type: \"setSearchText\",\n payload: {\n searchText,\n },\n });\n },\n closeOptionsWindow: () => {\n dispatch({\n type: \"close\",\n });\n },\n }),\n []\n );\n\n return {\n state: retrunState,\n actions: returnActions,\n };\n};\n"],"names":["useOptionsWindowHook","_a","useReducer","optionsWindowReducer","isOpen","state","dispatch","useMemo","__assign","options","filter","option","searchText","toLowerCase","includes","searchLabel","label","actions","openOptionsWindow","selectBoxId","onSelect","type","payload","defaultValue","setSearchText","closeOptionsWindow"],"mappings":"wKAIO,IAAMA,EAA2C,WAChD,IAAAC,EAAoBC,EAAWC,EAAsB,CACzDC,QAAQ,IADHC,EAAKJ,EAAA,GAAEK,OAiEd,MAAO,CACLD,MA9DkBE,GAAQ,WAC1B,OAAKF,EAAMD,OAGTI,EAAAA,EAAA,CAAA,EACKH,GAAK,CACRI,QAASJ,EAAMI,QAAQC,QAAO,SAACC,GAC7B,OAAIA,EAAOC,WACFD,EAAOC,WACXC,cACAC,SAAST,EAAMO,WAAWC,eACpBF,EAAOI,YACTJ,EAAOI,YACXF,cACAC,SAAST,EAAMO,WAAWC,eAEtBF,EAAOK,MACXH,cACAC,SAAST,EAAMO,WAAWC,cAEjC,MAlBKR,CAqBX,GAAG,CAACA,IAwCFY,QAtCoBV,GACpB,WAAM,MAAA,CACJW,kBAAmB,SACjBC,EACAV,EACAW,EACAT,GAEAL,EAAS,CACPe,KAAM,OACNC,QAAS,CACPH,YAAWA,EACXV,QAAOA,EACPW,SAAQA,EACRR,WAAYD,aAAM,EAANA,EAAQC,WACpBW,aAAcZ,aAAM,EAANA,EAAQY,eAG5B,EACAC,cAAe,SAACZ,GACdN,EAAS,CACPe,KAAM,gBACNC,QAAS,CACPV,WAAUA,IAGhB,EACAa,mBAAoB,WAClBnB,EAAS,CACPe,KAAM,SAEV,EA9BI,GAgCN,IAOJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"reducer.js","sources":["../../../../../src/select-box/options-window/reducer.ts"],"sourcesContent":["import { TOptionsWindowReducer } from \"./type\";\n\nexport const optionsWindowReducer: TOptionsWindowReducer = (state, action) => {\n switch (action.type) {\n case \"open\":\n return {\n isOpen: true,\n selectBoxId: action.payload.selectBoxId,\n options: action.payload.options,\n searchText: action.payload.searchText || \"\",\n onSelect: action.payload.onSelect,\n selectingValue: action.payload.defaultValue,\n };\n case \"setSearchText\":\n if (!state.isOpen) return state;\n\n if (state.searchText === action.payload.searchText) return state;\n\n return {\n ...state,\n searchText: action.payload.searchText,\n };\n case \"close\":\n if (!state.isOpen) return state;\n\n return {\n isOpen: false,\n };\n }\n};\n"],"names":["optionsWindowReducer","state","action","type","isOpen","selectBoxId","payload","options","searchText","onSelect","selectingValue","defaultValue","__assign"],"mappings":"oEAEa,IAAAA,EAA8C,SAACC,EAAOC,GACjE,OAAQA,EAAOC,MACb,IAAK,OACH,MAAO,CACLC,QAAQ,EACRC,YAAaH,EAAOI,QAAQD,YAC5BE,QAASL,EAAOI,QAAQC,QACxBC,WAAYN,EAAOI,QAAQE,YAAc,GACzCC,SAAUP,EAAOI,QAAQG,SACzBC,eAAgBR,EAAOI,QAAQK,cAEnC,IAAK,gBACH,OAAKV,EAAMG,OAEPH,EAAMO,aAAeN,EAAOI,QAAQE,WAAmBP,EAGtDW,EAAAA,EAAA,CAAA,EAAAX,IACHO,WAAYN,EAAOI,QAAQE,aANHP,EAQ5B,IAAK,QACH,OAAKA,EAAMG,OAEJ,CACLA,QAAQ,GAHgBH,EAMhC"}
1
+ {"version":3,"file":"reducer.js","sources":["../../../../../src/select-box/options-window/reducer.ts"],"sourcesContent":["import { TOptionsWindowReducer } from \"./type\";\n\nexport const optionsWindowReducer: TOptionsWindowReducer = (state, action) => {\n switch (action.type) {\n case \"open\":\n return {\n isOpen: true,\n selectBoxId: action.payload.selectBoxId,\n options: action.payload.options,\n searchText: action.payload.searchText || \"\",\n onSelect: action.payload.onSelect,\n selectingValue: action.payload.defaultValue,\n };\n case \"setSearchText\":\n if (!state.isOpen) return state;\n\n if (state.searchText === action.payload.searchText) return state;\n\n return {\n ...state,\n searchText: action.payload.searchText,\n };\n case \"close\":\n if (!state.isOpen) return state;\n\n return {\n isOpen: false,\n };\n }\n};\n"],"names":["optionsWindowReducer","state","action","type","isOpen","selectBoxId","payload","options","searchText","onSelect","selectingValue","defaultValue","__assign"],"mappings":"oEAEO,IAAMA,EAA8C,SAACC,EAAOC,GACjE,OAAQA,EAAOC,MACb,IAAK,OACH,MAAO,CACLC,QAAQ,EACRC,YAAaH,EAAOI,QAAQD,YAC5BE,QAASL,EAAOI,QAAQC,QACxBC,WAAYN,EAAOI,QAAQE,YAAc,GACzCC,SAAUP,EAAOI,QAAQG,SACzBC,eAAgBR,EAAOI,QAAQK,cAEnC,IAAK,gBACH,OAAKV,EAAMG,OAEPH,EAAMO,aAAeN,EAAOI,QAAQE,WAAmBP,EAE3DW,EAAAA,EAAA,CAAA,EACKX,IACHO,WAAYN,EAAOI,QAAQE,aANHP,EAQ5B,IAAK,QACH,OAAKA,EAAMG,OAEJ,CACLA,QAAQ,GAHgBH,EAMhC"}
@@ -1 +1 @@
1
- {"version":3,"file":"frame.js","sources":["../../../../../src/select-box/parts/frame.tsx"],"sourcesContent":["import { useIdContext } from \"../id/provider\";\nimport { IdGenerator } from \"../lib\";\nimport { MdOutlineKeyboardArrowLeft } from \"react-icons/md\";\nimport { useOptionsWindow } from \"../options-window\";\n\ninterface IPropsSelectBoxFrame {\n open: () => void;\n close: () => void;\n children: React.ReactNode;\n no_icon?: boolean;\n}\n\nexport function SelectBoxFrame(props: IPropsSelectBoxFrame) {\n const id = useIdContext();\n const { state } = useOptionsWindow();\n\n return (\n <div\n id={IdGenerator.generateIdSelectBoxFrame(id)}\n className=\"relative w-full\"\n >\n <div\n onClick={(e) => {\n if (!state.isOpen) {\n props.open();\n }\n }}\n >\n {props.children}\n </div>\n {!props.no_icon && (\n <div\n className=\"absolute grid place-items-center h-full right-1 top-0\"\n onClick={(e) => {\n e.stopPropagation();\n if (state.isOpen) {\n props.close();\n } else {\n props.open();\n }\n }}\n >\n <MdOutlineKeyboardArrowLeft\n className={`duration-300 ${state.isOpen ? \"-rotate-90\" : \"\"}`}\n />\n </div>\n )}\n </div>\n );\n}\n"],"names":["SelectBoxFrame","props","id","useIdContext","state","useOptionsWindow","_jsxs","IdGenerator","generateIdSelectBoxFrame","className","children","_jsx","onClick","e","isOpen","open","no_icon","stopPropagation","close","MdOutlineKeyboardArrowLeft","concat"],"mappings":"iUAYM,SAAUA,EAAeC,GAC7B,IAAMC,EAAKC,IACHC,EAAUC,UAElB,OACEC,EACE,MAAA,CAAAJ,GAAIK,EAAYC,yBAAyBN,GACzCO,UAAU,kBAAiBC,SAAA,CAE3BC,SACEC,QAAS,SAACC,GACHT,EAAMU,QACTb,EAAMc,MAET,EAAAL,SAEAT,EAAMS,YAEPT,EAAMe,SACNL,EAAA,MAAA,CACEF,UAAU,wDACVG,QAAS,SAACC,GACRA,EAAEI,kBACEb,EAAMU,OACRb,EAAMiB,QAENjB,EAAMc,QAETL,SAEDC,EAACQ,EACC,CAAAV,UAAW,gBAAgBW,OAAAhB,EAAMU,OAAS,aAAe,UAMrE"}
1
+ {"version":3,"file":"frame.js","sources":["../../../../../src/select-box/parts/frame.tsx"],"sourcesContent":["import { useIdContext } from \"../id/provider\";\nimport { IdGenerator } from \"../lib\";\nimport { MdOutlineKeyboardArrowLeft } from \"react-icons/md\";\nimport { useOptionsWindow } from \"../options-window\";\n\ninterface IPropsSelectBoxFrame {\n open: () => void;\n close: () => void;\n children: React.ReactNode;\n no_icon?: boolean;\n}\n\nexport function SelectBoxFrame(props: IPropsSelectBoxFrame) {\n const id = useIdContext();\n const { state } = useOptionsWindow();\n\n return (\n <div\n id={IdGenerator.generateIdSelectBoxFrame(id)}\n className=\"relative w-full\"\n >\n <div\n onClick={(e) => {\n if (!state.isOpen) {\n props.open();\n }\n }}\n >\n {props.children}\n </div>\n {!props.no_icon && (\n <div\n className=\"absolute grid place-items-center h-full right-1 top-0\"\n onClick={(e) => {\n e.stopPropagation();\n if (state.isOpen) {\n props.close();\n } else {\n props.open();\n }\n }}\n >\n <MdOutlineKeyboardArrowLeft\n className={`duration-300 ${state.isOpen ? \"-rotate-90\" : \"\"}`}\n />\n </div>\n )}\n </div>\n );\n}\n"],"names":["SelectBoxFrame","props","id","useIdContext","state","useOptionsWindow","_jsxs","IdGenerator","generateIdSelectBoxFrame","className","children","_jsx","onClick","e","isOpen","open","no_icon","stopPropagation","close","MdOutlineKeyboardArrowLeft","concat"],"mappings":"iUAYM,SAAUA,EAAeC,GAC7B,IAAMC,EAAKC,IACHC,EAAUC,UAElB,OACEC,EAAA,MAAA,CACEJ,GAAIK,EAAYC,yBAAyBN,GACzCO,UAAU,kBAAiBC,SAAA,CAE3BC,SACEC,QAAS,SAACC,GACHT,EAAMU,QACTb,EAAMc,MAEV,EAACL,SAEAT,EAAMS,YAEPT,EAAMe,SACNL,EAAA,MAAA,CACEF,UAAU,wDACVG,QAAS,SAACC,GACRA,EAAEI,kBACEb,EAAMU,OACRb,EAAMiB,QAENjB,EAAMc,MAEV,EAACL,SAEDC,EAACQ,EAA0B,CACzBV,UAAW,gBAAAW,OAAgBhB,EAAMU,OAAS,aAAe,UAMrE"}
@@ -1,3 +1,3 @@
1
1
  "use client";
2
- import{jsx as e}from"react/jsx-runtime";import{useMemo as t,useEffect as n}from"react";import{useIdContext as r}from"../id/provider.js";import{IdGenerator as o}from"../lib/id-generator.js";import{useOptionsWindow as a}from"../options-window/context.js";function i(i){var s,c,l,u=r(),p=a(),d=p.state,f=p.actions,v=t((function(){return d.isOpen?i.options.filter((function(e){return e.searchText?e.searchText.toLowerCase().includes(d.searchText.toLowerCase()):e.searchLabel?e.searchLabel.toLowerCase().includes(d.searchText.toLowerCase()):e.label.toLowerCase().includes(d.searchText.toLowerCase())})):[]}),[i.options,d]);n((function(){d.isOpen&&f.setSearchText(d.searchText)}),[d]),n((function(){if(!d.isOpen){var e=document.getElementById(o.generateIdSelectBoxInputArea(i.id));if(e){var t=function(e){"ArrowDown"===e.key&&(e.preventDefault(),i.open())};return e.addEventListener("keydown",t),function(){e.removeEventListener("keydown",t)}}}}),[d,v]);var x=null!==(c=null===(s=i.options.find((function(e){return e.value===i.value})))||void 0===s?void 0:s.label)&&void 0!==c?c:"";return e("input",{id:o.generateIdSelectBoxInputArea(u),ref:i.inputRef,className:"px-2 py-1 ".concat(i.no_appearance?"appearance-none border-none focus:outline-none focus-visible:outline-none bg-transparent w-full":"border border-gray-300 w-full"),type:"text",placeholder:""===x?null!==(l=i.placeholder)&&void 0!==l?l:"選択してください":x,value:d.isOpen?d.searchText:x,onChange:function(e){e.preventDefault(),f.setSearchText(e.target.value)}})}export{i as InputArea};
2
+ import{jsx as e}from"react/jsx-runtime";import{useMemo as t,useEffect as n}from"react";import{useIdContext as r}from"../id/provider.js";import{IdGenerator as o}from"../lib/id-generator.js";import{useOptionsWindow as a}from"../options-window/context.js";function i(i){var s,c,l,u=r(),p=a(),d=p.state,f=p.actions,v=t((function(){return d.isOpen?i.options.filter((function(e){return e.searchText?e.searchText.toLowerCase().includes(d.searchText.toLowerCase()):e.searchLabel?e.searchLabel.toLowerCase().includes(d.searchText.toLowerCase()):e.label.toLowerCase().includes(d.searchText.toLowerCase())})):[]}),[i.options,d]);n((function(){d.isOpen&&f.setSearchText(d.searchText)}),[d]),n((function(){if(!d.isOpen){var e=document.getElementById(o.generateIdSelectBoxInputArea(i.id));if(e){var t=function(e){"ArrowDown"===e.key&&(e.preventDefault(),i.open())};return e.addEventListener("keydown",t),function(){e.removeEventListener("keydown",t)}}}}),[d,v]);var x=null!==(c=null===(s=i.options.find((function(e){return e.value===i.value})))||void 0===s?void 0:s.label)&&void 0!==c?c:"";return e("input",{id:o.generateIdSelectBoxInputArea(u),ref:i.inputRef,className:"px-2 py-1 placeholder:text-gray-400 ".concat(i.no_appearance?"appearance-none border-none focus:outline-none focus-visible:outline-none bg-transparent w-full":"border border-gray-300 w-full"),type:"text",placeholder:""===x?null!==(l=i.placeholder)&&void 0!==l?l:"選択してください":x,value:d.isOpen?d.searchText:x,onChange:function(e){e.preventDefault(),f.setSearchText(e.target.value)}})}export{i as InputArea};
3
3
  //# sourceMappingURL=input-area.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sources":["../../../../../src/table/cell/hooks.ts"],"sourcesContent":["import { useMemo } from \"react\";\nimport { useEditActionContext } from \"../edit/provider\";\nimport { useColumnsContext } from \"../sheet/providers\";\nimport { DataObject, DataRecord, TColumnType } from \"../table/type\";\nimport { useRangeActionContext } from \"../range/provider\";\nimport { useTableIdGenerator } from \"../id\";\n\nexport function useCell(id: string, row: DataObject<DataRecord>) {\n const IdGenerator = useTableIdGenerator();\n const { startSelectRange, moveSelectRange, endSelectRange } =\n useRangeActionContext();\n const { startEditing } = useEditActionContext();\n const [rowIndex, colIndex] = IdGenerator.extractCellIndexFromId(id);\n const col = useColumnsContext()[colIndex];\n const value = row[col.key as string];\n\n const label =\n col.type === \"select\"\n ? col.options?.find((op) => op.value === value)?.label ?? \"\"\n : col.type === \"date\" || col.type === \"datetime\"\n ? col.render(value instanceof Date ? value : new Date(value))\n : (value as string | number);\n\n const component = useMemo(() => {\n if (col.type === \"date\" || col.type === \"datetime\" || col.editable) {\n return label;\n } else {\n return col.render ? col.render(value as never, row) : label;\n }\n }, [col.editable, label, value, row]);\n\n const type: TColumnType | \"component\" =\n !col.editable && col.render ? \"component\" : col.type;\n\n const onDoubleClick: React.MouseEventHandler<HTMLDivElement> = (e) => {\n e.preventDefault();\n startEditing();\n };\n\n /**\n * onBlurよりも先に発火するため、onBlurでendEditingを呼ぶと\n * すぐにstartEditingが呼ばれてしまうため、setTimeoutで遅延させる\n * これにより、endEditingが先に呼ばれるようになる\n */\n const onMouseDown: React.MouseEventHandler<HTMLDivElement> = (e) => {\n const element = document.getElementById(IdGenerator.getEditorId());\n\n if (!!element) {\n return;\n }\n\n setTimeout(() => {\n startSelectRange({ rowIndex, colIndex });\n\n const onMouseUp = (e: MouseEvent) => {\n e.preventDefault();\n e.stopPropagation();\n endSelectRange();\n document.removeEventListener(\"mouseup\", onMouseUp);\n };\n\n document.addEventListener(\"mouseup\", onMouseUp);\n }, 0);\n };\n\n const onMouseEnter: React.MouseEventHandler<HTMLDivElement> = (e) => {\n e.preventDefault();\n e.stopPropagation();\n moveSelectRange({ rowIndex, colIndex });\n };\n\n return {\n type,\n component,\n onDoubleClick,\n onMouseDown,\n onMouseEnter,\n };\n}\n"],"names":["useCell","id","row","IdGenerator","useTableIdGenerator","_d","useRangeActionContext","startSelectRange","moveSelectRange","endSelectRange","startEditing","useEditActionContext","_e","extractCellIndexFromId","rowIndex","colIndex","col","useColumnsContext","value","key","label","type","_c","_b","_a","options","find","op","render","Date","component","useMemo","editable","onDoubleClick","e","preventDefault","onMouseDown","document","getElementById","getEditorId","setTimeout","onMouseUp","stopPropagation","removeEventListener","addEventListener","onMouseEnter"],"mappings":"0QAOgB,SAAAA,EAAQC,EAAYC,aAC5BC,EAAcC,IACdC,EACJC,IADMC,EAAgBF,EAAAE,iBAAEC,EAAeH,EAAAG,gBAAEC,EAAcJ,EAAAI,eAEjDC,EAAiBC,iBACnBC,EAAuBT,EAAYU,uBAAuBZ,GAAzDa,EAAQF,EAAA,GAAEG,OACXC,EAAMC,IAAoBF,GAC1BG,EAAQhB,EAAIc,EAAIG,KAEhBC,EACS,WAAbJ,EAAIK,KACoD,QAApDC,EAA6C,QAA7CC,EAAW,QAAXC,EAAAR,EAAIS,eAAO,IAAAD,OAAA,EAAAA,EAAEE,MAAK,SAACC,GAAO,OAAAA,EAAGT,QAAUA,CAAK,WAAC,IAAAK,OAAA,EAAAA,EAAEH,aAAK,IAAAE,EAAAA,EAAI,GAC3C,SAAbN,EAAIK,MAAgC,aAAbL,EAAIK,KAC3BL,EAAIY,OAAOV,aAAiBW,KAAOX,EAAQ,IAAIW,KAAKX,IACnDA,EAEDY,EAAYC,GAAQ,WACxB,MAAiB,SAAbf,EAAIK,MAAgC,aAAbL,EAAIK,MAAuBL,EAAIgB,SACjDZ,EAEAJ,EAAIY,OAASZ,EAAIY,OAAOV,EAAgBhB,GAAOkB,CAE1D,GAAG,CAACJ,EAAIgB,SAAUZ,EAAOF,EAAOhB,IA0ChC,MAAO,CACLmB,MAxCCL,EAAIgB,UAAYhB,EAAIY,OAAS,YAAcZ,EAAIK,KAyChDS,UAASA,EACTG,cAxC6D,SAACC,GAC9DA,EAAEC,iBACFzB,GACF,EAsCE0B,YA/B2D,SAACF,GAC5CG,SAASC,eAAenC,EAAYoC,gBAMpDC,YAAW,WACTjC,EAAiB,CAAEO,SAAQA,EAAEC,SAAQA,IAErC,IAAM0B,EAAY,SAACP,GACjBA,EAAEC,iBACFD,EAAEQ,kBACFjC,IACA4B,SAASM,oBAAoB,UAAWF,EAC1C,EAEAJ,SAASO,iBAAiB,UAAWH,EACtC,GAAE,EACL,EAaEI,aAX4D,SAACX,GAC7DA,EAAEC,iBACFD,EAAEQ,kBACFlC,EAAgB,CAAEM,SAAQA,EAAEC,SAAQA,GACtC,EASF"}
1
+ {"version":3,"file":"hooks.js","sources":["../../../../../src/table/cell/hooks.ts"],"sourcesContent":["import { useMemo } from \"react\";\nimport { useEditActionContext } from \"../edit/provider\";\nimport { useColumnsContext } from \"../sheet/providers\";\nimport { DataObject, DataRecord, TColumnType } from \"../table/type\";\nimport { useRangeActionContext } from \"../range/provider\";\nimport { useTableIdGenerator } from \"../id\";\n\nexport function useCell(id: string, row: DataObject<DataRecord>) {\n const IdGenerator = useTableIdGenerator();\n const { startSelectRange, moveSelectRange, endSelectRange } =\n useRangeActionContext();\n const { startEditing } = useEditActionContext();\n const [rowIndex, colIndex] = IdGenerator.extractCellIndexFromId(id);\n const col = useColumnsContext()[colIndex];\n const value = row[col.key as string];\n\n const label =\n col.type === \"select\"\n ? col.options?.find((op) => op.value === value)?.label ?? \"\"\n : col.type === \"date\" || col.type === \"datetime\"\n ? col.render(value instanceof Date ? value : new Date(value))\n : (value as string | number);\n\n const component = useMemo(() => {\n if (col.type === \"date\" || col.type === \"datetime\" || col.editable) {\n return label;\n } else {\n return col.render ? col.render(value as never, row) : label;\n }\n }, [col.editable, label, value, row]);\n\n const type: TColumnType | \"component\" =\n !col.editable && col.render ? \"component\" : col.type;\n\n const onDoubleClick: React.MouseEventHandler<HTMLDivElement> = (e) => {\n e.preventDefault();\n startEditing();\n };\n\n /**\n * onBlurよりも先に発火するため、onBlurでendEditingを呼ぶと\n * すぐにstartEditingが呼ばれてしまうため、setTimeoutで遅延させる\n * これにより、endEditingが先に呼ばれるようになる\n */\n const onMouseDown: React.MouseEventHandler<HTMLDivElement> = (e) => {\n const element = document.getElementById(IdGenerator.getEditorId());\n\n if (!!element) {\n return;\n }\n\n setTimeout(() => {\n startSelectRange({ rowIndex, colIndex });\n\n const onMouseUp = (e: MouseEvent) => {\n e.preventDefault();\n e.stopPropagation();\n endSelectRange();\n document.removeEventListener(\"mouseup\", onMouseUp);\n };\n\n document.addEventListener(\"mouseup\", onMouseUp);\n }, 0);\n };\n\n const onMouseEnter: React.MouseEventHandler<HTMLDivElement> = (e) => {\n e.preventDefault();\n e.stopPropagation();\n moveSelectRange({ rowIndex, colIndex });\n };\n\n return {\n type,\n component,\n onDoubleClick,\n onMouseDown,\n onMouseEnter,\n };\n}\n"],"names":["useCell","id","row","IdGenerator","useTableIdGenerator","_d","useRangeActionContext","startSelectRange","moveSelectRange","endSelectRange","startEditing","useEditActionContext","_e","extractCellIndexFromId","rowIndex","colIndex","col","useColumnsContext","value","key","label","type","_c","_b","_a","options","find","op","render","Date","component","useMemo","editable","onDoubleClick","e","preventDefault","onMouseDown","document","getElementById","getEditorId","setTimeout","onMouseUp","stopPropagation","removeEventListener","addEventListener","onMouseEnter"],"mappings":"0QAOM,SAAUA,EAAQC,EAAYC,aAC5BC,EAAcC,IACdC,EACJC,IADMC,EAAgBF,EAAAE,iBAAEC,EAAeH,EAAAG,gBAAEC,EAAcJ,EAAAI,eAEjDC,EAAiBC,iBACnBC,EAAuBT,EAAYU,uBAAuBZ,GAAzDa,EAAQF,EAAA,GAAEG,OACXC,EAAMC,IAAoBF,GAC1BG,EAAQhB,EAAIc,EAAIG,KAEhBC,EACS,WAAbJ,EAAIK,KACoD,QAApDC,EAA6C,QAA7CC,EAAW,QAAXC,EAAAR,EAAIS,eAAO,IAAAD,OAAA,EAAAA,EAAEE,MAAK,SAACC,GAAO,OAAAA,EAAGT,QAAUA,CAAb,WAAmB,IAAAK,OAAA,EAAAA,EAAEH,aAAK,IAAAE,EAAAA,EAAI,GAC3C,SAAbN,EAAIK,MAAgC,aAAbL,EAAIK,KAC3BL,EAAIY,OAAOV,aAAiBW,KAAOX,EAAQ,IAAIW,KAAKX,IACnDA,EAEDY,EAAYC,GAAQ,WACxB,MAAiB,SAAbf,EAAIK,MAAgC,aAAbL,EAAIK,MAAuBL,EAAIgB,SACjDZ,EAEAJ,EAAIY,OAASZ,EAAIY,OAAOV,EAAgBhB,GAAOkB,CAE1D,GAAG,CAACJ,EAAIgB,SAAUZ,EAAOF,EAAOhB,IA0ChC,MAAO,CACLmB,MAxCCL,EAAIgB,UAAYhB,EAAIY,OAAS,YAAcZ,EAAIK,KAyChDS,UAASA,EACTG,cAxC6D,SAACC,GAC9DA,EAAEC,iBACFzB,GACF,EAsCE0B,YA/B2D,SAACF,GAC5CG,SAASC,eAAenC,EAAYoC,gBAMpDC,YAAW,WACTjC,EAAiB,CAAEO,SAAQA,EAAEC,SAAQA,IAErC,IAAM0B,EAAY,SAACP,GACjBA,EAAEC,iBACFD,EAAEQ,kBACFjC,IACA4B,SAASM,oBAAoB,UAAWF,EAC1C,EAEAJ,SAASO,iBAAiB,UAAWH,EACvC,GAAG,EACL,EAaEI,aAX4D,SAACX,GAC7DA,EAAEC,iBACFD,EAAEQ,kBACFlC,EAAgB,CAAEM,SAAQA,EAAEC,SAAQA,GACtC,EASF"}
@@ -1,3 +1,3 @@
1
1
  "use client";
2
- import{jsx as o}from"react/jsx-runtime";import{useTableIdGenerator as e}from"../../id/provider.js";import{useCell as n}from"../hooks.js";function l(l){var t=e(),i=n(l.id,l.row),r=i.type,c=i.component,a=i.onDoubleClick,s=i.onMouseDown,m=i.onMouseEnter,d=t.extractCellIndexFromId(l.id);d[0];var p=d[1];return o("td",{id:l.id,className:"table-col-".concat(p," ").concat(l.cellFormatClassName),onDoubleClick:l.isExistOnClickRow?void 0:a,onMouseDown:s,onMouseEnter:m,children:o("div",{className:"flex items-center gap-3 min-h-10 w-fit max-w-full p-2 cursor-default",onClick:function(o){o.stopPropagation()},children:"component"===r?c:o("div",{onDoubleClick:a,className:"max-w-full",children:o("p",{className:"text-left max-w-full select-none overflow-hidden whitespace-nowrap text-ellipsis",children:c})})})})}export{l as TableCell};
2
+ import{jsx as o}from"react/jsx-runtime";import{useTableIdGenerator as e}from"../../id/provider.js";import{useCell as n}from"../hooks.js";function l(l){var t=e(),i=n(l.id,l.row),r=i.type,c=i.component,a=i.onDoubleClick,s=i.onMouseDown,m=i.onMouseEnter,d=t.extractCellIndexFromId(l.id);d[0];var p=d[1];return o("td",{id:l.id,className:"table-col-".concat(p," p-px ").concat(l.cellFormatClassName),onDoubleClick:l.isExistOnClickRow?void 0:a,onMouseDown:s,onMouseEnter:m,children:o("div",{className:"flex items-center gap-3 min-h-10 w-fit max-w-full p-2 cursor-default",onClick:function(o){o.stopPropagation()},children:"component"===r?c:o("div",{onDoubleClick:a,className:"max-w-full",children:o("p",{className:"text-left max-w-full select-none overflow-hidden whitespace-nowrap text-ellipsis",children:c})})})})}export{l as TableCell};
3
3
  //# sourceMappingURL=cell.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"provider.js","sources":["../../../../../src/table/checkbox/provider.tsx"],"sourcesContent":["import { createContext, useContext } from \"react\";\nimport { TCheckboxProperty } from \"../table/type\";\nimport { useCheckboxStatusReducer } from \"./hooks\";\n\nconst CheckboxStatusContext = createContext<\n ReturnType<typeof useCheckboxStatusReducer>\n>({\n checkboxStatusState: {\n checkedRecords: [],\n },\n dispatchCheckboxStatus: () => {},\n allUnchecked: false,\n existChecked: false,\n indeterminate: false,\n});\n\nexport function CheckboxStatusProvider({\n children,\n checkboxCount,\n}: {\n children: JSX.Element;\n checkboxCount: number;\n}) {\n return (\n <CheckboxStatusContext.Provider\n value={useCheckboxStatusReducer(checkboxCount)}\n >\n {children}\n </CheckboxStatusContext.Provider>\n );\n}\n\nexport function useCheckboxStatusContext() {\n return useContext(CheckboxStatusContext);\n}\n\nconst CheckboxContext =\n createContext<TCheckboxProperty<any>[\"checkbox\"]>(undefined);\n\nexport function CheckboxProvider({\n children,\n checkbox,\n}: {\n children: React.ReactNode;\n checkbox: TCheckboxProperty<any>[\"checkbox\"];\n}) {\n return (\n <CheckboxContext.Provider value={checkbox}>\n {children}\n </CheckboxContext.Provider>\n );\n}\n\nexport function useCheckboxContext() {\n return useContext(CheckboxContext);\n}\n"],"names":["CheckboxStatusContext","createContext","checkboxStatusState","checkedRecords","dispatchCheckboxStatus","allUnchecked","existChecked","indeterminate","CheckboxStatusProvider","_a","children","checkboxCount","_jsx","Provider","value","useCheckboxStatusReducer","useCheckboxStatusContext","useContext","CheckboxContext","undefined","CheckboxProvider","checkbox","useCheckboxContext"],"mappings":"oJAIA,IAAMA,EAAwBC,EAE5B,CACAC,oBAAqB,CACnBC,eAAgB,IAElBC,uBAAwB,WAAQ,EAChCC,cAAc,EACdC,cAAc,EACdC,eAAe,IAGX,SAAUC,EAAuBC,OACrCC,EAAQD,EAAAC,SACRC,EAAaF,EAAAE,cAKb,OACEC,EAACZ,EAAsBa,UACrBC,MAAOC,EAAyBJ,GAAcD,SAE7CA,GAGP,UAEgBM,IACd,OAAOC,EAAWjB,EACpB,CAEA,IAAMkB,EACJjB,OAAkDkB,GAE9C,SAAUC,EAAiBX,OAC/BC,EAAQD,EAAAC,SACRW,EAAQZ,EAAAY,SAKR,OACET,EAACM,EAAgBL,SAAQ,CAACC,MAAOO,EAAQX,SACtCA,GAGP,UAEgBY,IACd,OAAOL,EAAWC,EACpB"}
1
+ {"version":3,"file":"provider.js","sources":["../../../../../src/table/checkbox/provider.tsx"],"sourcesContent":["import { createContext, useContext } from \"react\";\nimport { TCheckboxProperty } from \"../table/type\";\nimport { useCheckboxStatusReducer } from \"./hooks\";\n\nconst CheckboxStatusContext = createContext<\n ReturnType<typeof useCheckboxStatusReducer>\n>({\n checkboxStatusState: {\n checkedRecords: [],\n },\n dispatchCheckboxStatus: () => {},\n allUnchecked: false,\n existChecked: false,\n indeterminate: false,\n});\n\nexport function CheckboxStatusProvider({\n children,\n checkboxCount,\n}: {\n children: React.JSX.Element;\n checkboxCount: number;\n}) {\n return (\n <CheckboxStatusContext.Provider\n value={useCheckboxStatusReducer(checkboxCount)}\n >\n {children}\n </CheckboxStatusContext.Provider>\n );\n}\n\nexport function useCheckboxStatusContext() {\n return useContext(CheckboxStatusContext);\n}\n\nconst CheckboxContext =\n createContext<TCheckboxProperty<any>[\"checkbox\"]>(undefined);\n\nexport function CheckboxProvider({\n children,\n checkbox,\n}: {\n children: React.ReactNode;\n checkbox: TCheckboxProperty<any>[\"checkbox\"];\n}) {\n return (\n <CheckboxContext.Provider value={checkbox}>\n {children}\n </CheckboxContext.Provider>\n );\n}\n\nexport function useCheckboxContext() {\n return useContext(CheckboxContext);\n}\n"],"names":["CheckboxStatusContext","createContext","checkboxStatusState","checkedRecords","dispatchCheckboxStatus","allUnchecked","existChecked","indeterminate","CheckboxStatusProvider","_a","children","checkboxCount","_jsx","Provider","value","useCheckboxStatusReducer","useCheckboxStatusContext","useContext","CheckboxContext","undefined","CheckboxProvider","checkbox","useCheckboxContext"],"mappings":"oJAIA,IAAMA,EAAwBC,EAE5B,CACAC,oBAAqB,CACnBC,eAAgB,IAElBC,uBAAwB,WAAO,EAC/BC,cAAc,EACdC,cAAc,EACdC,eAAe,IAGX,SAAUC,EAAuBC,OACrCC,EAAQD,EAAAC,SACRC,EAAaF,EAAAE,cAKb,OACEC,EAACZ,EAAsBa,UACrBC,MAAOC,EAAyBJ,GAAcD,SAE7CA,GAGP,UAEgBM,IACd,OAAOC,EAAWjB,EACpB,CAEA,IAAMkB,EACJjB,OAAkDkB,GAE9C,SAAUC,EAAiBX,OAC/BC,EAAQD,EAAAC,SACRW,EAAQZ,EAAAY,SAKR,OACET,EAACM,EAAgBL,SAAQ,CAACC,MAAOO,EAAQX,SACtCA,GAGP,UAEgBY,IACd,OAAOL,EAAWC,EACpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"components.js","sources":["../../../../../src/table/copy/components.tsx"],"sourcesContent":["import { useEffect, useState } from \"react\";\nimport { useCopyStateContext } from \"./provider\";\nimport { useTableIdGenerator } from \"../id\";\n\nexport function CopiedMessage() {\n const IdGenerator = useTableIdGenerator();\n const [isDisplay, setIsDisplay] = useState(false);\n const { copiedAt } = useCopyStateContext();\n\n useEffect(() => {\n if (copiedAt) {\n setIsDisplay(true);\n\n const timer = setTimeout(() => {\n setIsDisplay(false);\n }, 1000);\n\n return () => {\n setIsDisplay(false);\n clearTimeout(timer);\n };\n }\n }, [copiedAt]);\n\n if (!isDisplay) {\n return <></>;\n }\n\n const tableElement = document.getElementById(IdGenerator.getTableId());\n\n if (!tableElement) {\n return <></>;\n }\n\n // テーブルの右下の位置を取得\n const rect = tableElement.getBoundingClientRect();\n const x = rect.right - 120;\n const y = rect.bottom - 50;\n\n return (\n <div\n className={`fixed z-[100] p-1 bg-gray-800 duration-300 pointer-events-none ${\n isDisplay ? \"opacity-100\" : \"opacity-0\"\n }`}\n style={{ top: y, left: x }}\n >\n <p className=\"text-white text-xs\">コピーしました!!!</p>\n </div>\n );\n}\n"],"names":["CopiedMessage","IdGenerator","useTableIdGenerator","_a","useState","isDisplay","setIsDisplay","copiedAt","useCopyStateContext","useEffect","timer_1","setTimeout","clearTimeout","_jsx","tableElement","document","getElementById","getTableId","rect","getBoundingClientRect","x","right","y","bottom","className","style","top","left","children"],"mappings":"2NAIgBA,IACd,IAAMC,EAAcC,IACdC,EAA4BC,GAAS,GAApCC,EAASF,EAAA,GAAEG,EAAYH,EAAA,GACtBI,EAAaC,aAiBrB,GAfAC,GAAU,WACR,GAAIF,EAAU,CACZD,GAAa,GAEb,IAAMI,EAAQC,YAAW,WACvBL,GAAa,EACd,GAAE,KAEH,OAAO,WACLA,GAAa,GACbM,aAAaF,EACf,CACD,CACH,GAAG,CAACH,KAECF,EACH,OAAOQ,QAGT,IAAMC,EAAeC,SAASC,eAAef,EAAYgB,cAEzD,IAAKH,EACH,OAAOD,QAIT,IAAMK,EAAOJ,EAAaK,wBACpBC,EAAIF,EAAKG,MAAQ,IACjBC,EAAIJ,EAAKK,OAAS,GAExB,OACEV,EAAA,MAAA,CACEW,UAAW,yEACTnB,EAAY,cAAgB,aAE9BoB,MAAO,CAAEC,IAAKJ,EAAGK,KAAMP,GAEvBQ,SAAAf,EAAA,IAAA,CAAGW,UAAU,qBAAmCI,SAAA,gBAGtD"}
1
+ {"version":3,"file":"components.js","sources":["../../../../../src/table/copy/components.tsx"],"sourcesContent":["import { useEffect, useState } from \"react\";\nimport { useCopyStateContext } from \"./provider\";\nimport { useTableIdGenerator } from \"../id\";\n\nexport function CopiedMessage() {\n const IdGenerator = useTableIdGenerator();\n const [isDisplay, setIsDisplay] = useState(false);\n const { copiedAt } = useCopyStateContext();\n\n useEffect(() => {\n if (copiedAt) {\n setIsDisplay(true);\n\n const timer = setTimeout(() => {\n setIsDisplay(false);\n }, 1000);\n\n return () => {\n setIsDisplay(false);\n clearTimeout(timer);\n };\n }\n }, [copiedAt]);\n\n if (!isDisplay) {\n return <></>;\n }\n\n const tableElement = document.getElementById(IdGenerator.getTableId());\n\n if (!tableElement) {\n return <></>;\n }\n\n // テーブルの右下の位置を取得\n const rect = tableElement.getBoundingClientRect();\n const x = rect.right - 120;\n const y = rect.bottom - 50;\n\n return (\n <div\n className={`fixed z-[100] p-1 bg-gray-800 duration-300 pointer-events-none ${\n isDisplay ? \"opacity-100\" : \"opacity-0\"\n }`}\n style={{ top: y, left: x }}\n >\n <p className=\"text-white text-xs\">コピーしました!!!</p>\n </div>\n );\n}\n"],"names":["CopiedMessage","IdGenerator","useTableIdGenerator","_a","useState","isDisplay","setIsDisplay","copiedAt","useCopyStateContext","useEffect","timer_1","setTimeout","clearTimeout","_jsx","tableElement","document","getElementById","getTableId","rect","getBoundingClientRect","x","right","y","bottom","className","style","top","left","children"],"mappings":"2NAIgBA,IACd,IAAMC,EAAcC,IACdC,EAA4BC,GAAS,GAApCC,EAASF,EAAA,GAAEG,EAAYH,EAAA,GACtBI,EAAaC,aAiBrB,GAfAC,GAAU,WACR,GAAIF,EAAU,CACZD,GAAa,GAEb,IAAMI,EAAQC,YAAW,WACvBL,GAAa,EACf,GAAG,KAEH,OAAO,WACLA,GAAa,GACbM,aAAaF,EACf,CACF,CACF,GAAG,CAACH,KAECF,EACH,OAAOQ,QAGT,IAAMC,EAAeC,SAASC,eAAef,EAAYgB,cAEzD,IAAKH,EACH,OAAOD,QAIT,IAAMK,EAAOJ,EAAaK,wBACpBC,EAAIF,EAAKG,MAAQ,IACjBC,EAAIJ,EAAKK,OAAS,GAExB,OACEV,EAAA,MAAA,CACEW,UAAW,yEACTnB,EAAY,cAAgB,aAE9BoB,MAAO,CAAEC,IAAKJ,EAAGK,KAAMP,GAAGQ,SAE1Bf,EAAA,IAAA,CAAGW,UAAU,qBAAoBI,SAAA,gBAGvC"}
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sources":["../../../../../src/table/copy/hooks.ts"],"sourcesContent":["import { useCallback, useEffect, useMemo, useReducer } from \"react\";\nimport { useRangeStateContext } from \"../range/provider\";\nimport { TCopyReducer, TReturnCopyReducer } from \"./types\";\n\nconst reducer: TCopyReducer = (state, action) => {\n switch (action.type) {\n case \"setRows\":\n return { ...state, rows: action.payload.rows };\n case \"setCols\":\n return { ...state, cols: action.payload.cols };\n case \"copied\":\n return { ...state, copiedAt: new Date() };\n default:\n return state;\n }\n};\n\nexport function useCopyReducer(initial: {\n rows: any[];\n cols: any[];\n onUpdateRowFunction?: (newRow: any, oldRow: any) => void;\n}): TReturnCopyReducer {\n const [state, dispatch] = useReducer(reducer, {\n ...initial,\n });\n const range = useRangeStateContext();\n\n useEffect(() => {\n dispatch({ type: \"setCols\", payload: { cols: initial.cols } });\n }, [initial.cols]);\n\n const copy = useCallback(\n (options?: { enableDeprecatedCopy?: boolean }) => {\n if (!range.isSelecting) {\n return;\n }\n\n const startRowIndex =\n range.start.rowIndex <= range.end.rowIndex\n ? range.start.rowIndex\n : range.end.rowIndex;\n const endRowIndex =\n range.start.rowIndex >= range.end.rowIndex\n ? range.start.rowIndex\n : range.end.rowIndex;\n const startColIndex =\n range.start.colIndex <= range.end.colIndex\n ? range.start.colIndex\n : range.end.colIndex;\n const endColIndex =\n range.start.colIndex >= range.end.colIndex\n ? range.start.colIndex\n : range.end.colIndex;\n\n const copiedData = state.rows\n .slice(startRowIndex, endRowIndex + 1)\n .map((row) => {\n const copiedRow = [];\n for (let i = startColIndex; i <= endColIndex; i++) {\n const col = state.cols[i];\n\n if (col.type == \"number\" || col.type == \"string\") {\n copiedRow.push(row[col.key]);\n continue;\n } else if (col.type == \"select\") {\n const value = row[col.key];\n\n if (value === null || value === undefined || value === \"\") {\n copiedRow.push(\"\");\n } else {\n copiedRow.push(\n col.options.find((option) => option.value === row[col.key])!\n .label\n );\n }\n continue;\n } else if (col.type === \"date\") {\n copiedRow.push(row[col.key].toISOString().split(\"T\")[0]);\n continue;\n } else if (col.type === \"datetime\") {\n copiedRow.push(row[col.key].toISOString());\n continue;\n }\n\n col satisfies never;\n }\n return copiedRow;\n });\n\n const copiedDataString = copiedData\n .map((row) => row.join(\"\\t\"))\n .join(\"\\n\");\n\n if (options?.enableDeprecatedCopy) {\n const textArea = document.createElement(\"textarea\");\n textArea.style.position = \"fixed\";\n textArea.style.top = \"0\";\n textArea.style.left = \"0\";\n textArea.style.width = \"2em\";\n textArea.style.height = \"2em\";\n textArea.style.padding = \"0\";\n textArea.style.border = \"none\";\n textArea.style.outline = \"none\";\n textArea.style.boxShadow = \"none\";\n textArea.style.background = \"transparent\";\n textArea.value = copiedDataString;\n document.body.appendChild(textArea);\n textArea.select();\n document.execCommand(\"copy\");\n document.body.removeChild(textArea);\n } else {\n navigator.clipboard.writeText(copiedDataString);\n }\n\n dispatch({ type: \"copied\" });\n },\n [range, state.rows, state.cols]\n );\n\n const setRows = useCallback((rows: any[]) => {\n dispatch({ type: \"setRows\", payload: { rows } });\n }, []);\n\n const states = useMemo(\n () => ({\n copiedAt: state.copiedAt,\n }),\n [state.copiedAt]\n );\n\n const actions = useMemo(\n () => ({\n copy,\n setRows,\n }),\n [copy, setRows]\n );\n\n return {\n states,\n actions,\n };\n}\n"],"names":["reducer","state","action","type","__assign","rows","payload","cols","copiedAt","Date","useCopyReducer","initial","_a","useReducer","dispatch","range","useRangeStateContext","useEffect","copy","useCallback","options","isSelecting","startRowIndex","start","rowIndex","end","endRowIndex","startColIndex","colIndex","endColIndex","copiedDataString","slice","map","row","copiedRow","i","col","push","key","value","find","option","label","toISOString","split","join","enableDeprecatedCopy","textArea","document","createElement","style","position","top","left","width","height","padding","border","outline","boxShadow","background","body","appendChild","select","execCommand","removeChild","navigator","clipboard","writeText","setRows","states","useMemo","actions"],"mappings":"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"}
1
+ {"version":3,"file":"hooks.js","sources":["../../../../../src/table/copy/hooks.ts"],"sourcesContent":["import { useCallback, useEffect, useMemo, useReducer } from \"react\";\nimport { useRangeStateContext } from \"../range/provider\";\nimport { TCopyReducer, TReturnCopyReducer } from \"./types\";\n\nconst reducer: TCopyReducer = (state, action) => {\n switch (action.type) {\n case \"setRows\":\n return { ...state, rows: action.payload.rows };\n case \"setCols\":\n return { ...state, cols: action.payload.cols };\n case \"copied\":\n return { ...state, copiedAt: new Date() };\n default:\n return state;\n }\n};\n\nexport function useCopyReducer(initial: {\n rows: any[];\n cols: any[];\n onUpdateRowFunction?: (newRow: any, oldRow: any) => void;\n}): TReturnCopyReducer {\n const [state, dispatch] = useReducer(reducer, {\n ...initial,\n });\n const range = useRangeStateContext();\n\n useEffect(() => {\n dispatch({ type: \"setCols\", payload: { cols: initial.cols } });\n }, [initial.cols]);\n\n const copy = useCallback(\n (options?: { enableDeprecatedCopy?: boolean }) => {\n if (!range.isSelecting) {\n return;\n }\n\n const startRowIndex =\n range.start.rowIndex <= range.end.rowIndex\n ? range.start.rowIndex\n : range.end.rowIndex;\n const endRowIndex =\n range.start.rowIndex >= range.end.rowIndex\n ? range.start.rowIndex\n : range.end.rowIndex;\n const startColIndex =\n range.start.colIndex <= range.end.colIndex\n ? range.start.colIndex\n : range.end.colIndex;\n const endColIndex =\n range.start.colIndex >= range.end.colIndex\n ? range.start.colIndex\n : range.end.colIndex;\n\n const copiedData = state.rows\n .slice(startRowIndex, endRowIndex + 1)\n .map((row) => {\n const copiedRow = [];\n for (let i = startColIndex; i <= endColIndex; i++) {\n const col = state.cols[i];\n\n if (col.type == \"number\" || col.type == \"string\") {\n copiedRow.push(row[col.key]);\n continue;\n } else if (col.type == \"select\") {\n const value = row[col.key];\n\n if (value === null || value === undefined || value === \"\") {\n copiedRow.push(\"\");\n } else {\n copiedRow.push(\n col.options.find((option) => option.value === row[col.key])!\n .label\n );\n }\n continue;\n } else if (col.type === \"date\") {\n copiedRow.push(row[col.key].toISOString().split(\"T\")[0]);\n continue;\n } else if (col.type === \"datetime\") {\n copiedRow.push(row[col.key].toISOString());\n continue;\n }\n\n col satisfies never;\n }\n return copiedRow;\n });\n\n const copiedDataString = copiedData\n .map((row) => row.join(\"\\t\"))\n .join(\"\\n\");\n\n if (options?.enableDeprecatedCopy) {\n const textArea = document.createElement(\"textarea\");\n textArea.style.position = \"fixed\";\n textArea.style.top = \"0\";\n textArea.style.left = \"0\";\n textArea.style.width = \"2em\";\n textArea.style.height = \"2em\";\n textArea.style.padding = \"0\";\n textArea.style.border = \"none\";\n textArea.style.outline = \"none\";\n textArea.style.boxShadow = \"none\";\n textArea.style.background = \"transparent\";\n textArea.value = copiedDataString;\n document.body.appendChild(textArea);\n textArea.select();\n document.execCommand(\"copy\");\n document.body.removeChild(textArea);\n } else {\n navigator.clipboard.writeText(copiedDataString);\n }\n\n dispatch({ type: \"copied\" });\n },\n [range, state.rows, state.cols]\n );\n\n const setRows = useCallback((rows: any[]) => {\n dispatch({ type: \"setRows\", payload: { rows } });\n }, []);\n\n const states = useMemo(\n () => ({\n copiedAt: state.copiedAt,\n }),\n [state.copiedAt]\n );\n\n const actions = useMemo(\n () => ({\n copy,\n setRows,\n }),\n [copy, setRows]\n );\n\n return {\n states,\n actions,\n };\n}\n"],"names":["reducer","state","action","type","__assign","rows","payload","cols","copiedAt","Date","useCopyReducer","initial","_a","useReducer","dispatch","range","useRangeStateContext","useEffect","copy","useCallback","options","isSelecting","startRowIndex","start","rowIndex","end","endRowIndex","startColIndex","colIndex","endColIndex","copiedDataString","slice","map","row","copiedRow","i","col","push","key","value","find","option","label","toISOString","split","join","enableDeprecatedCopy","textArea","document","createElement","style","position","top","left","width","height","padding","border","outline","boxShadow","background","body","appendChild","select","execCommand","removeChild","navigator","clipboard","writeText","setRows","states","useMemo","actions"],"mappings":"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"}