@idds/react 1.5.3 → 1.5.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.es.js CHANGED
@@ -6012,6 +6012,8 @@ const TimePicker = forwardRef(
6012
6012
  disabledTimeBefore,
6013
6013
  disabledTimeAfter,
6014
6014
  showNowButton = false,
6015
+ label,
6016
+ required,
6015
6017
  ...props
6016
6018
  }, ref) => {
6017
6019
  const [isOpen, setIsOpen] = useState(false);
@@ -6298,6 +6300,10 @@ const TimePicker = forwardRef(
6298
6300
  (suffixIcon || allowClear) && "ina-time-picker__input--with-suffix"
6299
6301
  );
6300
6302
  return /* @__PURE__ */ jsxs("div", { ref: containerRef, className: containerClasses, children: [
6303
+ label && /* @__PURE__ */ jsxs("label", { className: "ina-time-picker__label", children: [
6304
+ label,
6305
+ required && /* @__PURE__ */ jsx("span", { className: "ina-time-picker__required", children: "*" })
6306
+ ] }),
6301
6307
  /* @__PURE__ */ jsxs(
6302
6308
  "div",
6303
6309
  {
@@ -9408,7 +9414,9 @@ function DatePicker({
9408
9414
  disabledDateAfter,
9409
9415
  disabled = false,
9410
9416
  readonly = false,
9411
- size = "md"
9417
+ size = "md",
9418
+ label,
9419
+ required
9412
9420
  }) {
9413
9421
  const [isOpen, setIsOpen] = useState(false);
9414
9422
  const [currentMonth, setCurrentMonth] = useState(/* @__PURE__ */ new Date());
@@ -10073,274 +10081,290 @@ function DatePicker({
10073
10081
  () => generateCalendarDays(nextMonth),
10074
10082
  [nextMonth, generateCalendarDays]
10075
10083
  );
10076
- return /* @__PURE__ */ jsxs("div", { ref: containerRef, className: clsx("ina-date-picker", className), children: [
10077
- /* @__PURE__ */ jsxs(
10078
- "button",
10079
- {
10080
- ref: triggerRef,
10081
- type: "button",
10082
- onClick: () => {
10083
- if (disabled || readonly) return;
10084
- if (!isOpen) {
10085
- const allDatePickers = document.querySelectorAll(".ina-date-picker");
10086
- allDatePickers.forEach((picker) => {
10087
- if (picker !== containerRef.current) {
10088
- const closeEvent = new CustomEvent("closeDatePicker", {
10089
- detail: { exclude: containerRef.current }
10084
+ return /* @__PURE__ */ jsxs(
10085
+ "div",
10086
+ {
10087
+ ref: containerRef,
10088
+ className: clsx(
10089
+ "ina-date-picker",
10090
+ disabled && "ina-date-picker--disabled",
10091
+ className
10092
+ ),
10093
+ style: { width: validatedTriggerWidth },
10094
+ children: [
10095
+ label && /* @__PURE__ */ jsxs("label", { className: "ina-date-picker__label", children: [
10096
+ label,
10097
+ required && /* @__PURE__ */ jsx("span", { className: "ina-date-picker__required", children: "*" })
10098
+ ] }),
10099
+ /* @__PURE__ */ jsxs(
10100
+ "button",
10101
+ {
10102
+ ref: triggerRef,
10103
+ type: "button",
10104
+ onClick: () => {
10105
+ if (disabled || readonly) return;
10106
+ if (!isOpen) {
10107
+ const allDatePickers = document.querySelectorAll(".ina-date-picker");
10108
+ allDatePickers.forEach((picker) => {
10109
+ if (picker !== containerRef.current) {
10110
+ const closeEvent = new CustomEvent("closeDatePicker", {
10111
+ detail: { exclude: containerRef.current }
10112
+ });
10113
+ document.dispatchEvent(closeEvent);
10114
+ }
10090
10115
  });
10091
- document.dispatchEvent(closeEvent);
10092
10116
  }
10093
- });
10094
- }
10095
- setIsOpen(!isOpen);
10096
- },
10097
- className: clsx(
10098
- "ina-date-picker__trigger",
10099
- `ina-date-picker__trigger--size-${size}`,
10100
- disabled && "ina-date-picker__trigger--disabled",
10101
- readonly && "ina-date-picker__trigger--readonly",
10102
- triggerClassname
10103
- ),
10104
- style: { width: validatedTriggerWidth },
10105
- disabled,
10106
- children: [
10107
- /* @__PURE__ */ jsx(IconCalendar, { size: 20, className: "ina-date-picker__trigger-icon" }),
10108
- /* @__PURE__ */ jsx(
10109
- "span",
10110
- {
10111
- className: clsx(
10112
- "ina-date-picker__trigger-text",
10113
- getDisplayText() ? "ina-date-picker__trigger-text--value" : "ina-date-picker__trigger-text--placeholder"
10117
+ setIsOpen(!isOpen);
10118
+ },
10119
+ className: clsx(
10120
+ "ina-date-picker__trigger",
10121
+ `ina-date-picker__trigger--size-${size}`,
10122
+ disabled && "ina-date-picker__trigger--disabled",
10123
+ readonly && "ina-date-picker__trigger--readonly",
10124
+ triggerClassname
10125
+ ),
10126
+ style: { width: validatedTriggerWidth },
10127
+ disabled,
10128
+ children: [
10129
+ /* @__PURE__ */ jsx(IconCalendar, { size: 20, className: "ina-date-picker__trigger-icon" }),
10130
+ /* @__PURE__ */ jsx(
10131
+ "span",
10132
+ {
10133
+ className: clsx(
10134
+ "ina-date-picker__trigger-text",
10135
+ getDisplayText() ? "ina-date-picker__trigger-text--value" : "ina-date-picker__trigger-text--placeholder"
10136
+ ),
10137
+ children: getDisplayText() || placeholder
10138
+ }
10114
10139
  ),
10115
- children: getDisplayText() || placeholder
10116
- }
10117
- ),
10118
- getDisplayText() && !disabled && !readonly && /* @__PURE__ */ jsx(
10119
- "div",
10120
- {
10121
- onClick: (e) => {
10122
- e.stopPropagation();
10123
- handleUnselect();
10124
- },
10125
- className: "ina-date-picker__clear-button",
10126
- "aria-label": "Clear selected date",
10127
- children: /* @__PURE__ */ jsx(IconX, { size: 16, className: "ina-date-picker__clear-icon" })
10128
- }
10129
- )
10130
- ]
10131
- }
10132
- ),
10133
- isOpen && !disabled && !readonly && /* @__PURE__ */ jsx(
10134
- "div",
10135
- {
10136
- ref: panelRef,
10137
- className: clsx(
10138
- "ina-date-picker__panel",
10139
- `ina-date-picker__panel--${popperPlacement.split("-")[0]}`,
10140
- useRightPositioning && !popperPlacement.includes("left") && !popperPlacement.includes("right") && "ina-date-picker__panel--right-aligned",
10141
- panelClassName
10142
- ),
10143
- style: {
10144
- ...panelMaxHeight !== void 0 && {
10145
- maxHeight: typeof panelMaxHeight === "string" ? panelMaxHeight : `${panelMaxHeight}px`
10146
- },
10147
- ...popperPlacement.includes("bottom") && {
10148
- top: "100%",
10149
- marginTop: "4px"
10150
- },
10151
- ...popperPlacement.includes("top") && {
10152
- bottom: "100%",
10153
- marginBottom: "4px"
10154
- },
10155
- ...popperPlacement.includes("left") && {
10156
- right: "100%",
10157
- marginRight: "4px"
10158
- },
10159
- ...popperPlacement.includes("right") && {
10160
- left: "100%",
10161
- marginLeft: "4px"
10140
+ getDisplayText() && !disabled && !readonly && /* @__PURE__ */ jsx(
10141
+ "div",
10142
+ {
10143
+ onClick: (e) => {
10144
+ e.stopPropagation();
10145
+ handleUnselect();
10146
+ },
10147
+ className: "ina-date-picker__clear-button",
10148
+ "aria-label": "Clear selected date",
10149
+ children: /* @__PURE__ */ jsx(IconX, { size: 16, className: "ina-date-picker__clear-icon" })
10150
+ }
10151
+ )
10152
+ ]
10162
10153
  }
10163
- },
10164
- children: /* @__PURE__ */ jsxs(
10154
+ ),
10155
+ isOpen && !disabled && !readonly && /* @__PURE__ */ jsx(
10165
10156
  "div",
10166
10157
  {
10158
+ ref: panelRef,
10167
10159
  className: clsx(
10168
- "ina-date-picker__panel-content",
10169
- "ina-date-picker__panel-content--responsive",
10170
- mode === "single" && "ina-date-picker__panel-content--single",
10171
- (mode === "range" || mode === "multiple") && "ina-date-picker__panel-content--dual"
10160
+ "ina-date-picker__panel",
10161
+ `ina-date-picker__panel--${popperPlacement.split("-")[0]}`,
10162
+ useRightPositioning && !popperPlacement.includes("left") && !popperPlacement.includes("right") && "ina-date-picker__panel--right-aligned",
10163
+ panelClassName
10172
10164
  ),
10173
- children: [
10174
- /* @__PURE__ */ jsxs("div", { className: "ina-date-picker__calendar-container", children: [
10175
- /* @__PURE__ */ jsxs("div", { className: "ina-date-picker__calendar-header", children: [
10176
- /* @__PURE__ */ jsx(
10177
- "button",
10178
- {
10179
- type: "button",
10180
- onClick: () => navigateLeftMonth("prev"),
10181
- className: "ina-date-picker__nav-button",
10182
- children: /* @__PURE__ */ jsx(
10183
- IconChevronLeft,
10165
+ style: {
10166
+ ...panelMaxHeight !== void 0 && {
10167
+ maxHeight: typeof panelMaxHeight === "string" ? panelMaxHeight : `${panelMaxHeight}px`
10168
+ },
10169
+ ...popperPlacement.includes("bottom") && {
10170
+ top: "100%",
10171
+ marginTop: "4px"
10172
+ },
10173
+ ...popperPlacement.includes("top") && {
10174
+ bottom: "100%",
10175
+ marginBottom: "4px"
10176
+ },
10177
+ ...popperPlacement.includes("left") && {
10178
+ right: "100%",
10179
+ marginRight: "4px"
10180
+ },
10181
+ ...popperPlacement.includes("right") && {
10182
+ left: "100%",
10183
+ marginLeft: "4px"
10184
+ }
10185
+ },
10186
+ children: /* @__PURE__ */ jsxs(
10187
+ "div",
10188
+ {
10189
+ className: clsx(
10190
+ "ina-date-picker__panel-content",
10191
+ "ina-date-picker__panel-content--responsive",
10192
+ mode === "single" && "ina-date-picker__panel-content--single",
10193
+ (mode === "range" || mode === "multiple") && "ina-date-picker__panel-content--dual"
10194
+ ),
10195
+ children: [
10196
+ /* @__PURE__ */ jsxs("div", { className: "ina-date-picker__calendar-container", children: [
10197
+ /* @__PURE__ */ jsxs("div", { className: "ina-date-picker__calendar-header", children: [
10198
+ /* @__PURE__ */ jsx(
10199
+ "button",
10184
10200
  {
10185
- size: 20,
10186
- className: "ina-date-picker__nav-icon"
10201
+ type: "button",
10202
+ onClick: () => navigateLeftMonth("prev"),
10203
+ className: "ina-date-picker__nav-button",
10204
+ children: /* @__PURE__ */ jsx(
10205
+ IconChevronLeft,
10206
+ {
10207
+ size: 20,
10208
+ className: "ina-date-picker__nav-icon"
10209
+ }
10210
+ )
10187
10211
  }
10188
- )
10189
- }
10190
- ),
10191
- /* @__PURE__ */ jsxs("div", { className: "ina-date-picker__header-controls", children: [
10192
- /* @__PURE__ */ jsx("div", { className: "ina-date-picker__dropdown-container", children: /* @__PURE__ */ jsx(
10193
- MonthPicker,
10194
- {
10195
- value: currentMonth.getMonth(),
10196
- onChange: (month) => setMonth(month),
10197
- locale: "id",
10198
- disabled,
10199
- readonly,
10200
- size: "sm"
10201
- }
10202
- ) }),
10203
- /* @__PURE__ */ jsx("div", { className: "ina-date-picker__dropdown-container", children: /* @__PURE__ */ jsx(
10204
- YearPicker,
10205
- {
10206
- value: currentMonth.getFullYear(),
10207
- onChange: (year) => {
10208
- const yearNumber = typeof year === "string" ? parseInt(year, 10) : year;
10209
- setYear(yearNumber);
10210
- },
10211
- minYear: 1900,
10212
- maxYear: 2100,
10213
- decadeSize: 20,
10214
- disabled,
10215
- readonly,
10216
- size: "sm"
10217
- }
10218
- ) })
10219
- ] }),
10220
- /* @__PURE__ */ jsx(
10221
- "button",
10222
- {
10223
- type: "button",
10224
- onClick: () => navigateLeftMonth("next"),
10225
- className: "ina-date-picker__nav-button",
10226
- children: /* @__PURE__ */ jsx(
10227
- IconChevronRight,
10212
+ ),
10213
+ /* @__PURE__ */ jsxs("div", { className: "ina-date-picker__header-controls", children: [
10214
+ /* @__PURE__ */ jsx("div", { className: "ina-date-picker__dropdown-container", children: /* @__PURE__ */ jsx(
10215
+ MonthPicker,
10216
+ {
10217
+ value: currentMonth.getMonth(),
10218
+ onChange: (month) => setMonth(month),
10219
+ locale: "id",
10220
+ disabled,
10221
+ readonly,
10222
+ size: "sm"
10223
+ }
10224
+ ) }),
10225
+ /* @__PURE__ */ jsx("div", { className: "ina-date-picker__dropdown-container", children: /* @__PURE__ */ jsx(
10226
+ YearPicker,
10227
+ {
10228
+ value: currentMonth.getFullYear(),
10229
+ onChange: (year) => {
10230
+ const yearNumber = typeof year === "string" ? parseInt(year, 10) : year;
10231
+ setYear(yearNumber);
10232
+ },
10233
+ minYear: 1900,
10234
+ maxYear: 2100,
10235
+ decadeSize: 20,
10236
+ disabled,
10237
+ readonly,
10238
+ size: "sm"
10239
+ }
10240
+ ) })
10241
+ ] }),
10242
+ /* @__PURE__ */ jsx(
10243
+ "button",
10228
10244
  {
10229
- size: 20,
10230
- className: "ina-date-picker__nav-icon"
10245
+ type: "button",
10246
+ onClick: () => navigateLeftMonth("next"),
10247
+ className: "ina-date-picker__nav-button",
10248
+ children: /* @__PURE__ */ jsx(
10249
+ IconChevronRight,
10250
+ {
10251
+ size: 20,
10252
+ className: "ina-date-picker__nav-icon"
10253
+ }
10254
+ )
10231
10255
  }
10232
10256
  )
10233
- }
10234
- )
10235
- ] }),
10236
- /* @__PURE__ */ jsxs("div", { className: "ina-date-picker__calendar-grid", children: [
10237
- dayNames.map((day) => /* @__PURE__ */ jsx("div", { className: "ina-date-picker__day-header", children: day }, day)),
10238
- currentDays.map((day) => {
10239
- const styling = getDateStyling(day);
10240
- return /* @__PURE__ */ jsx(
10241
- "button",
10242
- {
10243
- type: "button",
10244
- onClick: () => !styling.isDisabled && handleDateClick(day.date),
10245
- onMouseEnter: () => !styling.isDisabled && setHoveredDate(day.date),
10246
- onMouseLeave: () => setHoveredDate(null),
10247
- disabled: styling.isDisabled,
10248
- className: styling.className + (!styling.isSelected && !styling.isInRange && !styling.isHovered && !styling.isHoveredEnd && !styling.isDisabled ? " ina-date-picker__day--hover" : ""),
10249
- children: /* @__PURE__ */ jsx("span", { className: "ina-date-picker__day-number", children: day.date.getDate() })
10250
- },
10251
- `${day.date.getFullYear()}-${day.date.getMonth()}-${day.date.getDate()}`
10252
- );
10253
- })
10254
- ] })
10255
- ] }),
10256
- (mode === "range" || mode === "multiple") && /* @__PURE__ */ jsxs("div", { className: "ina-date-picker__calendar", children: [
10257
- /* @__PURE__ */ jsxs("div", { className: "ina-date-picker__next-month-header", children: [
10258
- /* @__PURE__ */ jsx(
10259
- "button",
10260
- {
10261
- type: "button",
10262
- onClick: () => navigateRightMonth("prev"),
10263
- className: "ina-date-picker__nav-button",
10264
- children: /* @__PURE__ */ jsx(
10265
- IconChevronLeft,
10257
+ ] }),
10258
+ /* @__PURE__ */ jsxs("div", { className: "ina-date-picker__calendar-grid", children: [
10259
+ dayNames.map((day) => /* @__PURE__ */ jsx("div", { className: "ina-date-picker__day-header", children: day }, day)),
10260
+ currentDays.map((day) => {
10261
+ const styling = getDateStyling(day);
10262
+ return /* @__PURE__ */ jsx(
10263
+ "button",
10264
+ {
10265
+ type: "button",
10266
+ onClick: () => !styling.isDisabled && handleDateClick(day.date),
10267
+ onMouseEnter: () => !styling.isDisabled && setHoveredDate(day.date),
10268
+ onMouseLeave: () => setHoveredDate(null),
10269
+ disabled: styling.isDisabled,
10270
+ className: styling.className + (!styling.isSelected && !styling.isInRange && !styling.isHovered && !styling.isHoveredEnd && !styling.isDisabled ? " ina-date-picker__day--hover" : ""),
10271
+ children: /* @__PURE__ */ jsx("span", { className: "ina-date-picker__day-number", children: day.date.getDate() })
10272
+ },
10273
+ `${day.date.getFullYear()}-${day.date.getMonth()}-${day.date.getDate()}`
10274
+ );
10275
+ })
10276
+ ] })
10277
+ ] }),
10278
+ (mode === "range" || mode === "multiple") && /* @__PURE__ */ jsxs("div", { className: "ina-date-picker__calendar", children: [
10279
+ /* @__PURE__ */ jsxs("div", { className: "ina-date-picker__next-month-header", children: [
10280
+ /* @__PURE__ */ jsx(
10281
+ "button",
10266
10282
  {
10267
- size: 20,
10268
- className: "ina-date-picker__nav-icon"
10283
+ type: "button",
10284
+ onClick: () => navigateRightMonth("prev"),
10285
+ className: "ina-date-picker__nav-button",
10286
+ children: /* @__PURE__ */ jsx(
10287
+ IconChevronLeft,
10288
+ {
10289
+ size: 20,
10290
+ className: "ina-date-picker__nav-icon"
10291
+ }
10292
+ )
10269
10293
  }
10270
- )
10271
- }
10272
- ),
10273
- /* @__PURE__ */ jsxs("div", { className: "ina-date-picker__next-month-controls", children: [
10274
- /* @__PURE__ */ jsx("div", { className: "ina-date-picker__dropdown-container", children: /* @__PURE__ */ jsx(
10275
- MonthPicker,
10276
- {
10277
- value: nextMonth.getMonth(),
10278
- onChange: (month) => setMonth(month, true),
10279
- locale: "id",
10280
- disabled,
10281
- readonly,
10282
- size: "sm"
10283
- }
10284
- ) }),
10285
- /* @__PURE__ */ jsx("div", { className: "ina-date-picker__dropdown-container", children: /* @__PURE__ */ jsx(
10286
- YearPicker,
10287
- {
10288
- value: nextMonth.getFullYear(),
10289
- onChange: (year) => {
10290
- const yearNumber = typeof year === "string" ? parseInt(year, 10) : year;
10291
- setYear(yearNumber, true);
10292
- },
10293
- minYear: 1900,
10294
- maxYear: 2100,
10295
- decadeSize: 20,
10296
- disabled,
10297
- readonly,
10298
- size: "sm"
10299
- }
10300
- ) })
10301
- ] }),
10302
- /* @__PURE__ */ jsx(
10303
- "button",
10304
- {
10305
- type: "button",
10306
- onClick: () => navigateRightMonth("next"),
10307
- className: "ina-date-picker__nav-button",
10308
- children: /* @__PURE__ */ jsx(
10309
- IconChevronRight,
10294
+ ),
10295
+ /* @__PURE__ */ jsxs("div", { className: "ina-date-picker__next-month-controls", children: [
10296
+ /* @__PURE__ */ jsx("div", { className: "ina-date-picker__dropdown-container", children: /* @__PURE__ */ jsx(
10297
+ MonthPicker,
10298
+ {
10299
+ value: nextMonth.getMonth(),
10300
+ onChange: (month) => setMonth(month, true),
10301
+ locale: "id",
10302
+ disabled,
10303
+ readonly,
10304
+ size: "sm"
10305
+ }
10306
+ ) }),
10307
+ /* @__PURE__ */ jsx("div", { className: "ina-date-picker__dropdown-container", children: /* @__PURE__ */ jsx(
10308
+ YearPicker,
10309
+ {
10310
+ value: nextMonth.getFullYear(),
10311
+ onChange: (year) => {
10312
+ const yearNumber = typeof year === "string" ? parseInt(year, 10) : year;
10313
+ setYear(yearNumber, true);
10314
+ },
10315
+ minYear: 1900,
10316
+ maxYear: 2100,
10317
+ decadeSize: 20,
10318
+ disabled,
10319
+ readonly,
10320
+ size: "sm"
10321
+ }
10322
+ ) })
10323
+ ] }),
10324
+ /* @__PURE__ */ jsx(
10325
+ "button",
10310
10326
  {
10311
- size: 20,
10312
- className: "ina-date-picker__nav-icon"
10327
+ type: "button",
10328
+ onClick: () => navigateRightMonth("next"),
10329
+ className: "ina-date-picker__nav-button",
10330
+ children: /* @__PURE__ */ jsx(
10331
+ IconChevronRight,
10332
+ {
10333
+ size: 20,
10334
+ className: "ina-date-picker__nav-icon"
10335
+ }
10336
+ )
10313
10337
  }
10314
10338
  )
10315
- }
10316
- )
10317
- ] }),
10318
- /* @__PURE__ */ jsxs("div", { className: "ina-date-picker__calendar-grid", children: [
10319
- dayNames.map((day) => /* @__PURE__ */ jsx("div", { className: "ina-date-picker__day-header", children: day }, day)),
10320
- nextDays.map((day) => {
10321
- const styling = getDateStyling(day);
10322
- return /* @__PURE__ */ jsx(
10323
- "button",
10324
- {
10325
- type: "button",
10326
- onClick: () => !styling.isDisabled && handleDateClick(day.date),
10327
- onMouseEnter: () => !styling.isDisabled && setHoveredDate(day.date),
10328
- onMouseLeave: () => setHoveredDate(null),
10329
- disabled: styling.isDisabled,
10330
- className: styling.className + (!styling.isSelected && !styling.isInRange && !styling.isHovered && !styling.isHoveredEnd && !styling.isDisabled ? " ina-date-picker__day--hover" : ""),
10331
- children: day.date.getDate()
10332
- },
10333
- `right-${day.date.getFullYear()}-${day.date.getMonth()}-${day.date.getDate()}`
10334
- );
10335
- })
10336
- ] })
10337
- ] })
10338
- ]
10339
+ ] }),
10340
+ /* @__PURE__ */ jsxs("div", { className: "ina-date-picker__calendar-grid", children: [
10341
+ dayNames.map((day) => /* @__PURE__ */ jsx("div", { className: "ina-date-picker__day-header", children: day }, day)),
10342
+ nextDays.map((day) => {
10343
+ const styling = getDateStyling(day);
10344
+ return /* @__PURE__ */ jsx(
10345
+ "button",
10346
+ {
10347
+ type: "button",
10348
+ onClick: () => !styling.isDisabled && handleDateClick(day.date),
10349
+ onMouseEnter: () => !styling.isDisabled && setHoveredDate(day.date),
10350
+ onMouseLeave: () => setHoveredDate(null),
10351
+ disabled: styling.isDisabled,
10352
+ className: styling.className + (!styling.isSelected && !styling.isInRange && !styling.isHovered && !styling.isHoveredEnd && !styling.isDisabled ? " ina-date-picker__day--hover" : ""),
10353
+ children: day.date.getDate()
10354
+ },
10355
+ `right-${day.date.getFullYear()}-${day.date.getMonth()}-${day.date.getDate()}`
10356
+ );
10357
+ })
10358
+ ] })
10359
+ ] })
10360
+ ]
10361
+ }
10362
+ )
10339
10363
  }
10340
10364
  )
10341
- }
10342
- )
10343
- ] });
10365
+ ]
10366
+ }
10367
+ );
10344
10368
  }
10345
10369
  function MultipleChoiceGrid({
10346
10370
  columns,