gitifact 0.7.1 → 0.8.1

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 (134) hide show
  1. package/README.md +44 -28
  2. package/dist/THIRD_PARTY_NOTICES.txt +213 -0
  3. package/dist/browser/assets/Banner-c1hFCLs8.js +1 -0
  4. package/dist/browser/assets/Grid-BrUBBmhu.js +1 -0
  5. package/dist/browser/assets/HoverCard-D6keobP0.js +1 -0
  6. package/dist/browser/assets/{Markdown-68DgpF6D.js → Markdown-Droxhk-G.js} +3 -3
  7. package/dist/browser/assets/MetadataListItem-C3SqHyk0.js +1 -0
  8. package/dist/browser/assets/PretendardVariable-CJuje-Rk.woff2 +0 -0
  9. package/dist/browser/assets/Selector-D_xYW7R_.js +2 -0
  10. package/dist/browser/assets/Tab-VVHagF2Z.js +1 -0
  11. package/dist/browser/assets/{Table-GZptlOQa.js → Table-D4v8xCrw.js} +2 -2
  12. package/dist/browser/assets/TimestampHoverCard-qfGbCkoP.js +1 -0
  13. package/dist/browser/assets/Token-BLd8-jfF.js +1 -0
  14. package/dist/browser/assets/about-DeUi-_2z.js +3 -0
  15. package/dist/browser/assets/activity-CiuGYDQ8.jpg +0 -0
  16. package/dist/browser/assets/activity-timeline-BEeyw2GA.css +1 -0
  17. package/dist/browser/assets/activity-timeline-bFoqFwVu.js +2 -0
  18. package/dist/browser/assets/changelog-Brd1Ninm.js +2 -0
  19. package/dist/browser/assets/commit-CiMtFlZl.js +4 -0
  20. package/dist/browser/assets/commit-DVyOH45R.css +1 -0
  21. package/dist/browser/assets/contributor-2mkEa2Wo.css +1 -0
  22. package/dist/browser/assets/contributor-C_IskSHq.js +1 -0
  23. package/dist/browser/assets/contributors-CPdOQKMF.css +1 -0
  24. package/dist/browser/assets/contributors-CbwXLc7M.js +1 -0
  25. package/dist/browser/assets/contributors._email-BRfre3dw.js +1 -0
  26. package/dist/browser/assets/contributors.index-CV84owW7.js +1 -0
  27. package/dist/browser/assets/dashboard-CMSj2wu3.css +1 -0
  28. package/dist/browser/assets/dashboard.index-CQdr7hsf.js +1 -0
  29. package/dist/browser/assets/document-BZmiLx-e.js +2 -0
  30. package/dist/browser/assets/document-DEGaf2yT.css +1 -0
  31. package/dist/browser/assets/document-Drgtj94X.css +1 -0
  32. package/dist/browser/assets/document-JLY2-z8S.js +19 -0
  33. package/dist/browser/assets/feature-requirements-CA8f9Bcf.jpg +0 -0
  34. package/dist/browser/assets/features-Cj41kcXf.js +4 -0
  35. package/dist/browser/assets/features-g3j2elTj.css +1 -0
  36. package/dist/browser/assets/features._featureId-BgFHsRcy.js +1 -0
  37. package/dist/browser/assets/features.index-Ca0rzFW6.js +1 -0
  38. package/dist/browser/assets/getting-started-CgL3Vi9o.js +1 -0
  39. package/dist/browser/assets/getting-started-DQwukRnd.css +1 -0
  40. package/dist/browser/assets/git-B7oxggGB.js +1 -0
  41. package/dist/browser/assets/git-D_wcK2vC.css +1 -0
  42. package/dist/browser/assets/{gitifact-logo-DPewkDQ4.svg → gitifact-logo-B5c-L14Z.svg} +5 -5
  43. package/dist/browser/assets/index-CmU7dwFQ.css +1 -0
  44. package/dist/browser/assets/index-DWRGm9YO.js +48 -0
  45. package/dist/browser/assets/instructions-2OUMP-vh.css +1 -0
  46. package/dist/browser/assets/instructions-D3cdAPD3.js +1 -0
  47. package/dist/browser/assets/instructions._instructionId-BkT14646.js +1 -0
  48. package/dist/browser/assets/instructions.agents-B3jLRl1u.js +1 -0
  49. package/dist/browser/assets/instructions.index-8qlhSXoy.js +1 -0
  50. package/dist/browser/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2 +0 -0
  51. package/dist/browser/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2 +0 -0
  52. package/dist/browser/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2 +0 -0
  53. package/dist/browser/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2 +0 -0
  54. package/dist/browser/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2 +0 -0
  55. package/dist/browser/assets/lazyRouteComponent-JkRa2CHo.js +1 -0
  56. package/dist/browser/assets/page-header-CPL7myjo.js +1 -0
  57. package/dist/browser/assets/page-header-atX8Nsmd.css +1 -0
  58. package/dist/browser/assets/project-instructions-DsWrw-nY.jpg +0 -0
  59. package/dist/browser/assets/records-Dk3shbYl.css +1 -0
  60. package/dist/browser/assets/records-page-B4Al3fIQ.js +1 -0
  61. package/dist/browser/assets/records-page-D2F1WJrh.css +1 -0
  62. package/dist/browser/assets/records._recordId-Chn1SO5R.js +1 -0
  63. package/dist/browser/assets/records.commits._commit-D4Wk4i_m.js +1 -0
  64. package/dist/browser/assets/records.index-CViTeD08.js +1 -0
  65. package/dist/browser/assets/records.working-BsHKMIz-.js +1 -0
  66. package/dist/browser/assets/request-state-oiWyP9c-.js +1 -0
  67. package/dist/browser/assets/search-BCYi0CBz.js +1 -0
  68. package/dist/browser/assets/search-palette-D0ctICJy.js +561 -0
  69. package/dist/browser/assets/{page-header-ClRsIf4A.css → search-palette-DpmGOAIg.css} +1 -1
  70. package/dist/browser/assets/settings-BDVKHrS8.js +1 -0
  71. package/dist/browser/assets/useInfiniteQuery-Bn_R13Ih.js +1 -0
  72. package/dist/browser/assets/useKeyboardHint-lSxUw5Qj.js +1 -0
  73. package/dist/browser/favicon.svg +5 -5
  74. package/dist/browser/gitifact-logo.svg +4 -4
  75. package/dist/browser/index.html +15 -14
  76. package/dist/browser/licenses/jetbrains-mono.txt +93 -0
  77. package/dist/browser/licenses/pretendard.txt +94 -0
  78. package/dist/i18n/en/block.md +25 -25
  79. package/dist/i18n/en/changelog.md +44 -0
  80. package/dist/i18n/en/docs/commit.md +23 -22
  81. package/dist/i18n/en/docs/design.md +45 -26
  82. package/dist/i18n/en/docs/instructions.md +94 -0
  83. package/dist/i18n/en/docs/migrate.md +140 -0
  84. package/dist/i18n/en/docs/records.md +82 -0
  85. package/dist/i18n/en/docs/spec.md +68 -31
  86. package/dist/i18n/en/docs/workflow.md +23 -17
  87. package/dist/i18n/en/docs/writing.md +46 -15
  88. package/dist/i18n/ko/block.md +28 -28
  89. package/dist/i18n/ko/changelog.md +209 -165
  90. package/dist/i18n/ko/docs/commit.md +21 -20
  91. package/dist/i18n/ko/docs/design.md +44 -25
  92. package/dist/i18n/ko/docs/instructions.md +94 -0
  93. package/dist/i18n/ko/docs/migrate.md +140 -0
  94. package/dist/i18n/ko/docs/records.md +82 -0
  95. package/dist/i18n/ko/docs/spec.md +66 -29
  96. package/dist/i18n/ko/docs/workflow.md +24 -18
  97. package/dist/i18n/ko/docs/writing.md +46 -15
  98. package/dist/main.js +4953 -3240
  99. package/package.json +1 -1
  100. package/dist/browser/assets/Grid-DlI9bhVm.js +0 -1
  101. package/dist/browser/assets/MetadataListItem-Bvdm7SCW.js +0 -1
  102. package/dist/browser/assets/TimestampHoverCard-_VKbn1Py.js +0 -1
  103. package/dist/browser/assets/about-LBmmoJtj.js +0 -3
  104. package/dist/browser/assets/activity-DRgs2s8a.jpg +0 -0
  105. package/dist/browser/assets/activity-paVxugse.js +0 -1
  106. package/dist/browser/assets/changelog-DMndHW2p.js +0 -2
  107. package/dist/browser/assets/contributors._email-Ch0pZAte.js +0 -1
  108. package/dist/browser/assets/contributors.index-BwSL0x8o.js +0 -1
  109. package/dist/browser/assets/document-Ceyg9sKE.js +0 -11
  110. package/dist/browser/assets/document-ChObsStB.css +0 -1
  111. package/dist/browser/assets/feature-requirements-Ci6Hez1P.jpg +0 -0
  112. package/dist/browser/assets/features._featureId-DtlIpe3Y.js +0 -1
  113. package/dist/browser/assets/features.index-CsxYbWGn.js +0 -1
  114. package/dist/browser/assets/getting-started-7e77o6gE.css +0 -1
  115. package/dist/browser/assets/getting-started-LVh16CZ8.js +0 -1
  116. package/dist/browser/assets/git-DF8OMSPX.css +0 -1
  117. package/dist/browser/assets/git-H0K9dpC3.js +0 -1
  118. package/dist/browser/assets/index-DClmARNh.js +0 -48
  119. package/dist/browser/assets/index-DJrBgKkG.css +0 -1
  120. package/dist/browser/assets/page-header-sbYRXZP4.js +0 -531
  121. package/dist/browser/assets/product-BIGIVBUa.js +0 -10
  122. package/dist/browser/assets/product-DNaVAIwO.css +0 -1
  123. package/dist/browser/assets/product.index-vzVtG_rC.js +0 -1
  124. package/dist/browser/assets/project-wiki-BBWDVTfk.jpg +0 -0
  125. package/dist/browser/assets/request-state-J0QLm_8G.js +0 -1
  126. package/dist/browser/assets/requirements-POF-07kZ.js +0 -1
  127. package/dist/browser/assets/settings-eas7Zq56.js +0 -1
  128. package/dist/browser/assets/wiki-fpAHbhnh.js +0 -1
  129. package/dist/browser/assets/wiki._documentId-DJ7LAi8J.js +0 -1
  130. package/dist/browser/assets/wiki.index-DJ7LAi8J.js +0 -1
  131. package/dist/i18n/en/docs/wiki.default.md +0 -27
  132. package/dist/i18n/en/docs/wiki.md +0 -43
  133. package/dist/i18n/ko/docs/wiki.default.md +0 -27
  134. package/dist/i18n/ko/docs/wiki.md +0 -43
package/README.md CHANGED
@@ -19,7 +19,7 @@ After setup, ask your agent to work as usual.
19
19
  Let users delete their posts.
20
20
  ```
21
21
 
22
- The agent organizes requirements and designs according to the project guidelines. When the work is ready, ask it to “Commit the changes.” It will include the relevant specifications and reasons along with the code.
22
+ The agent organizes requirements and designs as the GITIFACT block instructs. When the work is ready, ask it to “Commit the changes.” It will include the relevant specifications and reasons along with the code.
23
23
 
24
24
  For an existing project, you can start with the features you work on next. To document the whole product first, ask:
25
25
 
@@ -27,12 +27,12 @@ For an existing project, you can start with the features you work on next. To do
27
27
  Document this project's requirements and designs.
28
28
  ```
29
29
 
30
- ## Tailor the wiki
30
+ ## Write project instructions
31
31
 
32
- Use the wiki for development rules and architecture decisions. You can adjust its structure and guidelines with your agent.
32
+ Keep development rules and architecture decisions as project instructions, one per kind of task. Decide with your agent which instructions to keep and when each should be read.
33
33
 
34
34
  ```text
35
- Add our project's development rules to the wiki.
35
+ Write our project's development rules as project instructions.
36
36
  ```
37
37
 
38
38
  ## View documents and history
@@ -48,14 +48,24 @@ The browser viewer includes:
48
48
 
49
49
  | Page | Contents |
50
50
  | :--- | :--- |
51
- | Product overview | Project size and recent activity |
51
+ | Dashboard | Project size and recent activity |
52
52
  | Features | Current requirements and designs by feature |
53
- | Project wiki | Development rules, architecture decisions, and other project documents |
54
- | Activity | Reasons for committed changes and before/after content |
53
+ | Project instructions | AGENTS.md and per-task instructions such as development rules and architecture decisions |
54
+ | Decision records | Committed decision records and the before/after content of the documents they explain |
55
55
  | Contributors | Contributions by Git author |
56
56
  | Git status | Changed files in the working directory |
57
57
 
58
- Requirements, designs, and wiki pages show the working copy. Activity shows committed history.
58
+ Requirements, designs, and instructions show the working copy. Decision records show committed history.
59
+
60
+ ## Send feedback on Gitifact
61
+
62
+ To report a bug in Gitifact or suggest an improvement, tell your agent.
63
+
64
+ ```text
65
+ Report this bug to Gitifact as an issue.
66
+ ```
67
+
68
+ The agent shows you the title and body first and sends the issue to the Gitifact repository once you confirm. If the GitHub CLI (`gh`) is signed in, the issue is created under your account; otherwise you get the new-issue page with everything filled in. Only the Gitifact, OS and Node versions are appended; no project files are sent.
59
69
 
60
70
  ## Language
61
71
 
@@ -71,7 +81,9 @@ At the start of a new session, your agent checks for a newer version and asks wh
71
81
  Update Gitifact.
72
82
  ```
73
83
 
74
- For npx, run `npx gitifact@latest update` to refresh the project instructions. If you use a project dependency or global installation, update it using that method and run `update` with the updated installation. Restart the browser server with the new version.
84
+ For npx, run `npx gitifact@latest update` to refresh the GITIFACT block in your agent instruction files. If you use a project dependency or global installation, update it using that method and run `update` with the updated installation. Restart the browser server with the new version.
85
+
86
+ Projects recorded with 0.7 (storage schemaVersion 2) need a one-time move, because the document layout changed in 0.8.0. After an update your agent tells you so, and if you agree it moves the documents following `npx gitifact guide show migrate`, keeping their IDs and reasons.
75
87
 
76
88
  ## Run commands yourself
77
89
 
@@ -84,7 +96,7 @@ npx gitifact browser
84
96
 
85
97
  Open the local URL printed by `browser`. Press Ctrl+C in the terminal to stop the server.
86
98
 
87
- Agents use the version recorded in the project instructions.
99
+ Agents use the global `gitifact` at the version recorded in the GITIFACT block. If it is missing or another version, they suggest `npm install -g gitifact@<version>` and run npx until it is installed.
88
100
 
89
101
  ### Install in a project
90
102
 
@@ -96,7 +108,7 @@ npx gitifact init
96
108
  npx gitifact browser
97
109
  ```
98
110
 
99
- The version is recorded in `package.json` and the lockfile. Tell agents to use the project installation in your project instructions. If you prefer a global command, you can still install it with `npm install -g gitifact@latest`.
111
+ The version is recorded in `package.json` and the lockfile. Tell agents to use the project installation in AGENTS.md, outside the GITIFACT block. If you prefer a global command, you can still install it with `npm install -g gitifact@latest`.
100
112
 
101
113
  ### Common commands
102
114
 
@@ -105,28 +117,32 @@ The version is recorded in `package.json` and the lockfile. Tell agents to use t
105
117
  | `npx gitifact init --dry-run` | Preview setup without changing files |
106
118
  | `npx gitifact init` | Set up Gitifact and install or refresh agent instructions |
107
119
  | `npx gitifact browser` | Start the browser viewer |
108
- | `npx gitifact status` | Read the current Git status |
109
120
  | `npx gitifact update --check` | Check for a newer version without changing files |
110
- | `npx gitifact@latest update` | Refresh project instructions with the latest version |
111
- | `npx gitifact docs` | List agent guide topics |
112
- | `npx gitifact docs spec` | Requirements format and writing rules |
113
- | `npx gitifact docs design` | Feature design rules |
114
- | `npx gitifact docs wiki` | Wiki format and this project's guidelines |
115
- | `npx gitifact docs commit` | Commit changes with their reasons and related files |
121
+ | `npx gitifact@latest update` | Refresh the GITIFACT block in agent instruction files with the latest version |
122
+ | `npx gitifact guide list` | List agent guide topics |
123
+ | `npx gitifact guide show spec` | Requirement file format and writing rules |
124
+ | `npx gitifact guide show design` | Feature design rules |
125
+ | `npx gitifact guide show instructions` | Project instruction format and the AGENTS.md index |
126
+ | `npx gitifact guide show records` | When to write a decision record and its format |
127
+ | `npx gitifact guide show commit` | Commit changes with their records and related files |
128
+
129
+ ### Read documents and commit
116
130
 
117
- ### Read and save specifications
131
+ Requirements, designs and instructions are Markdown files under `.gitifact/` that you edit directly. New documents are created through the CLI, which issues their IDs.
118
132
 
119
133
  | Command | Purpose |
120
134
  | :--- | :--- |
121
- | `npx gitifact spec working` | Read current specifications, wiki pages, and save metadata |
122
- | `npx gitifact spec save --file <input-file>` | Save requirements, designs, and wiki pages |
123
- | `npx gitifact spec changes` | Compare working specifications with HEAD and read uncommitted reasons |
124
- | `npx gitifact spec commit --file <input-file> --dry-run` | Preview the commit without changing files |
125
- | `npx gitifact spec commit --file <input-file>` | Record reasons and commit related files |
126
- | `npx gitifact spec read --ref HEAD` | Read specifications at a commit |
127
- | `npx gitifact spec diff --from <earlier-commit> --to <later-commit>` | Compare specifications between commits |
128
-
129
- See `npx gitifact docs spec` and `npx gitifact docs commit` for input formats.
135
+ | `npx gitifact specs list` | Features, requirements and designs (IDs, titles, descriptions, no bodies); filter with `--uncovered`, `--changed-since`, `--q` and more |
136
+ | `npx gitifact instructions list` | AGENTS.md and the project instructions |
137
+ | `npx gitifact specs show <ID>` | A document's source and the designs pointing to it; `--ref <commit>` for past text |
138
+ | `npx gitifact records list --doc <ID>` | Decision records and commits for a document |
139
+ | `npx gitifact specs new requirement <feature>/<name>` | Create a document with an issued ID and a skeleton |
140
+ | `npx gitifact check` | Check format, IDs and references across all documents |
141
+ | `npx gitifact changes list` | Documents changed since HEAD, uncommitted records, and changes without a record |
142
+ | `npx gitifact changes commit --file <input-file> --dry-run` | Preview the commit without changing files |
143
+ | `npx gitifact changes commit --file <input-file>` | Commit the selected documents, records and related files |
144
+
145
+ See `npx gitifact guide show commit` for the input format.
130
146
 
131
147
  ### Setup and runtime options
132
148
 
@@ -314,6 +314,105 @@ SOFTWARE.
314
314
  limitations under the License.
315
315
 
316
316
 
317
+ -----
318
+
319
+ @fontsource-variable/jetbrains-mono@5.3.0 (OFL-1.1)
320
+
321
+ Copyright 2020 The JetBrains Mono Project Authors (https://github.com/JetBrains/JetBrainsMono) JetBrainsMono-Italic[wght].ttf: Copyright 2020 The JetBrains Mono Project Authors (https://github.com/JetBrains/JetBrainsMono)
322
+
323
+ This Font Software is licensed under the SIL Open Font License, Version 1.1.
324
+ This license is copied below, and is also available with a FAQ at:
325
+ http://scripts.sil.org/OFL
326
+
327
+
328
+ -----------------------------------------------------------
329
+ SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
330
+ -----------------------------------------------------------
331
+
332
+ PREAMBLE
333
+ The goals of the Open Font License (OFL) are to stimulate worldwide
334
+ development of collaborative font projects, to support the font creation
335
+ efforts of academic and linguistic communities, and to provide a free and
336
+ open framework in which fonts may be shared and improved in partnership
337
+ with others.
338
+
339
+ The OFL allows the licensed fonts to be used, studied, modified and
340
+ redistributed freely as long as they are not sold by themselves. The
341
+ fonts, including any derivative works, can be bundled, embedded,
342
+ redistributed and/or sold with any software provided that any reserved
343
+ names are not used by derivative works. The fonts and derivatives,
344
+ however, cannot be released under any other type of license. The
345
+ requirement for fonts to remain under this license does not apply
346
+ to any document created using the fonts or their derivatives.
347
+
348
+ DEFINITIONS
349
+ "Font Software" refers to the set of files released by the Copyright
350
+ Holder(s) under this license and clearly marked as such. This may
351
+ include source files, build scripts and documentation.
352
+
353
+ "Reserved Font Name" refers to any names specified as such after the
354
+ copyright statement(s).
355
+
356
+ "Original Version" refers to the collection of Font Software components as
357
+ distributed by the Copyright Holder(s).
358
+
359
+ "Modified Version" refers to any derivative made by adding to, deleting,
360
+ or substituting -- in part or in whole -- any of the components of the
361
+ Original Version, by changing formats or by porting the Font Software to a
362
+ new environment.
363
+
364
+ "Author" refers to any designer, engineer, programmer, technical
365
+ writer or other person who contributed to the Font Software.
366
+
367
+ PERMISSION & CONDITIONS
368
+ Permission is hereby granted, free of charge, to any person obtaining
369
+ a copy of the Font Software, to use, study, copy, merge, embed, modify,
370
+ redistribute, and sell modified and unmodified copies of the Font
371
+ Software, subject to the following conditions:
372
+
373
+ 1) Neither the Font Software nor any of its individual components,
374
+ in Original or Modified Versions, may be sold by itself.
375
+
376
+ 2) Original or Modified Versions of the Font Software may be bundled,
377
+ redistributed and/or sold with any software, provided that each copy
378
+ contains the above copyright notice and this license. These can be
379
+ included either as stand-alone text files, human-readable headers or
380
+ in the appropriate machine-readable metadata fields within text or
381
+ binary files as long as those fields can be easily viewed by the user.
382
+
383
+ 3) No Modified Version of the Font Software may use the Reserved Font
384
+ Name(s) unless explicit written permission is granted by the corresponding
385
+ Copyright Holder. This restriction only applies to the primary font name as
386
+ presented to the users.
387
+
388
+ 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
389
+ Software shall not be used to promote, endorse or advertise any
390
+ Modified Version, except to acknowledge the contribution(s) of the
391
+ Copyright Holder(s) and the Author(s) or with their explicit written
392
+ permission.
393
+
394
+ 5) The Font Software, modified or unmodified, in part or in whole,
395
+ must be distributed entirely under this license, and must not be
396
+ distributed under any other license. The requirement for fonts to
397
+ remain under this license does not apply to any document created
398
+ using the Font Software.
399
+
400
+ TERMINATION
401
+ This license becomes null and void if any of the above conditions are
402
+ not met.
403
+
404
+ DISCLAIMER
405
+ THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
406
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
407
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
408
+ OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
409
+ COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
410
+ INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
411
+ DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
412
+ FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
413
+ OTHER DEALINGS IN THE FONT SOFTWARE.
414
+
415
+
317
416
  -----
318
417
 
319
418
  @formatjs/fast-memoize@3.1.7 (MIT)
@@ -3399,6 +3498,20 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
3399
3498
  SOFTWARE.
3400
3499
 
3401
3500
 
3501
+ -----
3502
+
3503
+ lenis@1.3.26 (MIT)
3504
+
3505
+ The MIT License
3506
+
3507
+ Copyright (c) 2024 darkroom.engineering
3508
+
3509
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
3510
+
3511
+ The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
3512
+
3513
+ THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
3514
+
3402
3515
  -----
3403
3516
 
3404
3517
  lodash-es@4.18.1 (MIT)
@@ -3713,6 +3826,106 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
3713
3826
  SOFTWARE.
3714
3827
 
3715
3828
 
3829
+ -----
3830
+
3831
+ pretendard@1.3.9 (OFL-1.1)
3832
+
3833
+ Copyright (c) 2021, Kil Hyung-jin (https://github.com/orioncactus/pretendard),
3834
+ with Reserved Font Name Pretendard.
3835
+
3836
+ This Font Software is licensed under the SIL Open Font License, Version 1.1.
3837
+ This license is copied below, and is also available with a FAQ at:
3838
+ https://scripts.sil.org/OFL
3839
+
3840
+
3841
+ -----------------------------------------------------------
3842
+ SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
3843
+ -----------------------------------------------------------
3844
+
3845
+ PREAMBLE
3846
+ The goals of the Open Font License (OFL) are to stimulate worldwide
3847
+ development of collaborative font projects, to support the font creation
3848
+ efforts of academic and linguistic communities, and to provide a free and
3849
+ open framework in which fonts may be shared and improved in partnership
3850
+ with others.
3851
+
3852
+ The OFL allows the licensed fonts to be used, studied, modified and
3853
+ redistributed freely as long as they are not sold by themselves. The
3854
+ fonts, including any derivative works, can be bundled, embedded,
3855
+ redistributed and/or sold with any software provided that any reserved
3856
+ names are not used by derivative works. The fonts and derivatives,
3857
+ however, cannot be released under any other type of license. The
3858
+ requirement for fonts to remain under this license does not apply
3859
+ to any document created using the fonts or their derivatives.
3860
+
3861
+ DEFINITIONS
3862
+ "Font Software" refers to the set of files released by the Copyright
3863
+ Holder(s) under this license and clearly marked as such. This may
3864
+ include source files, build scripts and documentation.
3865
+
3866
+ "Reserved Font Name" refers to any names specified as such after the
3867
+ copyright statement(s).
3868
+
3869
+ "Original Version" refers to the collection of Font Software components as
3870
+ distributed by the Copyright Holder(s).
3871
+
3872
+ "Modified Version" refers to any derivative made by adding to, deleting,
3873
+ or substituting -- in part or in whole -- any of the components of the
3874
+ Original Version, by changing formats or by porting the Font Software to a
3875
+ new environment.
3876
+
3877
+ "Author" refers to any designer, engineer, programmer, technical
3878
+ writer or other person who contributed to the Font Software.
3879
+
3880
+ PERMISSION & CONDITIONS
3881
+ Permission is hereby granted, free of charge, to any person obtaining
3882
+ a copy of the Font Software, to use, study, copy, merge, embed, modify,
3883
+ redistribute, and sell modified and unmodified copies of the Font
3884
+ Software, subject to the following conditions:
3885
+
3886
+ 1) Neither the Font Software nor any of its individual components,
3887
+ in Original or Modified Versions, may be sold by itself.
3888
+
3889
+ 2) Original or Modified Versions of the Font Software may be bundled,
3890
+ redistributed and/or sold with any software, provided that each copy
3891
+ contains the above copyright notice and this license. These can be
3892
+ included either as stand-alone text files, human-readable headers or
3893
+ in the appropriate machine-readable metadata fields within text or
3894
+ binary files as long as those fields can be easily viewed by the user.
3895
+
3896
+ 3) No Modified Version of the Font Software may use the Reserved Font
3897
+ Name(s) unless explicit written permission is granted by the corresponding
3898
+ Copyright Holder. This restriction only applies to the primary font name as
3899
+ presented to the users.
3900
+
3901
+ 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
3902
+ Software shall not be used to promote, endorse or advertise any
3903
+ Modified Version, except to acknowledge the contribution(s) of the
3904
+ Copyright Holder(s) and the Author(s) or with their explicit written
3905
+ permission.
3906
+
3907
+ 5) The Font Software, modified or unmodified, in part or in whole,
3908
+ must be distributed entirely under this license, and must not be
3909
+ distributed under any other license. The requirement for fonts to
3910
+ remain under this license does not apply to any document created
3911
+ using the Font Software.
3912
+
3913
+ TERMINATION
3914
+ This license becomes null and void if any of the above conditions are
3915
+ not met.
3916
+
3917
+ DISCLAIMER
3918
+ THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
3919
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
3920
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
3921
+ OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
3922
+ COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
3923
+ INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
3924
+ DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
3925
+ FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
3926
+ OTHER DEALINGS IN THE FONT SOFTWARE.
3927
+
3928
+
3716
3929
  -----
3717
3930
 
3718
3931
  react-dom@19.3.0 (MIT)
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{H as t,J as n,l as r,n as i,q as a}from"./themeProps-CfjLB1h4.js";import{Qt as o,at as s}from"./search-palette-D0ctICJy.js";import{S as c}from"./Table-D4v8xCrw.js";import{a as l}from"./useMediaQuery-CqJr5z44.js";import{_ as u,t as d}from"./Icon-EsJf4C7A.js";import{n as f,o as p}from"./IconButton-CgOx1Jog.js";var m=[[`path`,{d:`M20.4879 15C19.2524 18.4956 15.9187 21 12 21C7.02943 21 3 16.9706 3 12C3 7.02943 7.02943 3 12 3C15.7292 3 18.9286 5.26806 20.2941 8.5`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:`1.5`,key:`0`}],[`path`,{d:`M15 9H18C19.4142 9 20.1213 9 20.5607 8.56066C21 8.12132 21 7.41421 21 6V3`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:`1.5`,key:`1`}]],h=r();function g({size:e=18}){return(0,h.jsx)(s,{data:m,size:e})}var _=e(n(),1),v=(0,_.createContext)(null);v.displayName=`CollapsibleGroupContext`;var y=(0,_.createContext)(null);y.displayName=`CollapsibleGroupPresentationContext`;function b(e){let{isCollapsible:t,value:n}=e,r=(0,_.use)(v),i=r!=null&&n!=null,a=t===!0?{}:t||null,o=a!=null,[s,c]=(0,_.useState)(()=>i?!0:a?.isOpen===void 0?a?.defaultIsOpen??!0:a.isOpen),l;return l=i&&n!=null?r.isOpen(n):a?.isOpen===void 0?s:a.isOpen,{isEnabled:o,isOpen:l,toggle:()=>{if(i&&n!=null){r.toggle(n);return}let e=!l;a?.isOpen===void 0&&c(e),a?.onOpenChange?.(e)}}}var x={info:`info`,warning:`warning`,error:`error`,success:`success`},S={info:`status`,warning:`alert`,error:`alert`,success:`status`},ee=`status`,te={info:`accent`,warning:`warning`,error:`error`,success:`success`},C={root:{k1xSpc:`x78zum5`,kXwgrk:`xdt5ytf`,kMv6JI:`xjb2p0i`,$$css:!0},rootElevatedCard:{kaIpWk:`x1vf2byn`,$$css:!0},header:{k1xSpc:`x78zum5`,kGNEyG:`x1cy8zhl`,kwnvtZ:`x1a02dak`,k1C7PZ:`xak3so`,khm7nJ:`x4olc9o`,k8WAf4:`x8o8v82`,kg3NbH:`x1pzlopt`,$$css:!0},headerCardStandalone:{kaIpWk:`x1vf2byn`,$$css:!0},headerCardWithContent:{krdFHd:`xwxb7qi`,kfmiAY:`x13nour3`,kVL7Gh:`xbiv7yw`,kT0f0o:`x16uus16`,$$css:!0},headerCentered:{kGNEyG:`x6s0dn4`,$$css:!0},endArea:{k1xSpc:`x78zum5`,kGNEyG:`x6s0dn4`,kwnvtZ:`x1a02dak`,kjj79g:`x13a6bvl`,kOIVth:`x1txdalj`,kmuXW:`x2lah0s`,ks0D6T:`x193iq5w`,keTefX:`xvc5jky`,kqGvvJ:`x81ka23`,$$css:!0},chevron:{k1ekBW:`x11xpdln`,kIyJzY:`xuedmi6 x12w9bfk`,kAMwcw:`xlr8y92`,$$css:!0},chevronExpanded:{k3aq6I:`x19jd1h0`,$$css:!0}},w={info:{kWkggS:`xgcxg3y`,$$css:!0},warning:{kWkggS:`x24i8r5`,$$css:!0},error:{kWkggS:`x1pritpl`,$$css:!0},success:{kWkggS:`xu13z74`,$$css:!0}};function ne(e){return Object.prototype.hasOwnProperty.call(w,e)}var T={none:{kGVxlE:`x1gnnqk1`,$$css:!0},low:{kGVxlE:`x1i5ehqx`,$$css:!0},med:{kGVxlE:`x14hfi27`,$$css:!0},high:{kGVxlE:`x1kcpxr7`,$$css:!0}};function E({status:e,title:n,description:r,icon:s,isDismissable:m=!1,onDismiss:g,dismissLabel:v,endContent:y,container:E=`card`,elevation:D=`none`,collapsible:O=!0,children:k,xstyle:A,className:j,style:M,ref:N,onFocusCapture:P,onPointerDownCapture:re,...ie}){let F=u(),[I,L]=(0,_.useState)(!1),R=typeof O==`object`&&O?O:{},{isEnabled:z,isOpen:B,toggle:V}=b({isCollapsible:O!==!1&&{...R,defaultIsOpen:R.defaultIsOpen??!1}}),H=(0,_.useRef)(null),U=(0,_.useId)(),W=x[e],G=S[e]??ee,K=te[e],q=c(k),J=F(`@astryx.banner.dismiss`),ae=v??J,Y=v??(typeof n==`string`?F(`@astryx.banner.dismissTitled`,{dismiss:J,title:n}):J);if(I)return null;let X=(e,t)=>{e instanceof HTMLElement&&e!==document.body&&!t.contains(e)&&(H.current=e)},oe=e=>{X(e.relatedTarget,e.currentTarget)},se=e=>{X(document.activeElement,e.currentTarget)},ce=()=>{let e=H.current;L(!0),g?.(),e?.isConnected&&e.focus()},Z=z&&q,le=c(y)||m||Z,ue=c(y)||m,de=!c(r)&&ue,Q=q&&(!z||B),$=E===`card`;return(0,h.jsxs)(`div`,{ref:N,role:G,onFocusCapture:o(P,oe),onPointerDownCapture:o(re,se),...l(i(`banner-frame`,{container:E,elevation:D}),a(C.root,T[D],$&&D!==`none`&&C.rootElevatedCard,A),j,M),...ie,children:[(0,h.jsxs)(`div`,{...l(i(`banner`,{container:E,status:e}),a(C.header,de&&C.headerCentered,ne(e)&&w[e],$&&(Q?C.headerCardWithContent:C.headerCardStandalone))),children:[(0,h.jsx)(`div`,{...c(s)?l(i(`banner-icon`,{status:e}),{className:`x78zum5 x6s0dn4 x2lah0s`}):{className:`x78zum5 x6s0dn4 x2lah0s`},"aria-hidden":`true`,children:c(s)?s:W==null?null:(0,h.jsx)(d,{icon:W,size:`md`,color:K,...i(`banner-icon`,{status:e})})}),(0,h.jsxs)(`div`,{...{0:{className:`x78zum5 xdt5ytf xxhr3t x98rzlu xeuugli`},1:{className:`x78zum5 xdt5ytf xxhr3t x98rzlu xeuugli xgualba`}}[!!c(y)<<0],children:[(0,h.jsx)(`div`,{className:`x1ghz6dp xjb2p0i xcr08ib x2mo6ok x1kq96og x1tgivj0 xj0a0fe`,children:n}),c(r)&&(0,h.jsx)(`div`,{...l(i(`banner-description`),{className:`x1ghz6dp xjb2p0i x141an7d x1sodnla x1ltkj2j xv1l7n4 xj0a0fe`}),children:r})]}),le&&(0,h.jsxs)(`div`,{...a(C.endArea,p.inset(t[`--spacing-2`])),children:[y,Z&&(0,h.jsx)(f,{variant:`ghost`,size:`sm`,label:F(B?`@astryx.banner.collapse`:`@astryx.banner.expand`),tooltip:F(B?`@astryx.banner.collapse`:`@astryx.banner.expand`),icon:(0,h.jsx)(d,{icon:`chevronDown`,size:`sm`,color:`inherit`,xstyle:[C.chevron,B&&C.chevronExpanded]}),onClick:V,"aria-expanded":B,"aria-controls":Q?U:void 0,isIconOnly:!0}),m&&(0,h.jsx)(f,{variant:`ghost`,size:`sm`,label:Y,tooltip:ae,icon:(0,h.jsx)(d,{icon:`close`,size:`sm`,color:`inherit`}),onClick:ce,isIconOnly:!0})]})]}),Q&&(0,h.jsx)(`div`,{id:Z?U:void 0,...l(i(`banner-content`,{container:E,status:e}),{0:{className:`x1de1mus x8o8v82 x1pzlopt xgbv0en xw8tdv1 x92x3c3 x1t7ytsu x18b5jzi x1q0q8m5 x1j92z86 x1gejf6u xw8gpjh`},1:{className:`x1de1mus x8o8v82 x1pzlopt xgbv0en xw8tdv1 x92x3c3 x1t7ytsu x18b5jzi x1q0q8m5 x1j92z86 x1gejf6u xw8gpjh x1k5g1gk x1eprgri`}}[!!$<<0]),children:k})]})}E.displayName=`Banner`;export{g as i,b as n,y as r,E as t};
@@ -0,0 +1 @@
1
+ import{E as e,l as t,n,q as r}from"./themeProps-CfjLB1h4.js";import{a as i}from"./useMediaQuery-CqJr5z44.js";import{t as a}from"./container.stylex-6OsSOpKw.js";var o=t(),s={card:{"--_card-radius":`x2kkz0m`,kaIpWk:`x153u1i6`,kVQacm:`x7giv3`,kGVxlE:`x1p8z4y0`,$$css:!0},withBorder:{kMzoRj:`x1litavf`,ksu8eU:`x1y0btm7`,kVAM5u:`x14i3s5s`,kZCmMZ:`xs19ii7`,kwRFfy:`x12frdag`,kLKAdn:`x1nex4ik`,kGO01o:`xbv1mwh`,$$css:!0},scrollable:{kVQacm:`xysyzu8`,$$css:!0}},c={default:{kWkggS:`x1de1mus`,$$css:!0},transparent:{kWkggS:`xjbqb8w`,$$css:!0},muted:{kWkggS:`xwmxj5m`,$$css:!0},blue:{kWkggS:`x1o0wnni`,$$css:!0},cyan:{kWkggS:`x1rgj867`,$$css:!0},gray:{kWkggS:`xspzpui`,$$css:!0},green:{kWkggS:`x1sqjeoo`,$$css:!0},orange:{kWkggS:`x1e9xt6e`,$$css:!0},pink:{kWkggS:`xnpoty2`,$$css:!0},purple:{kWkggS:`x16i6n6f`,$$css:!0},red:{kWkggS:`x1cibrc5`,$$css:!0},teal:{kWkggS:`x1jtji5o`,$$css:!0},yellow:{kWkggS:`x1bo7t0x`,$$css:!0}},l={none:{"--_card-elevation":`xw28qpl`,$$css:!0},low:{"--_card-elevation":`x1nn8khe`,$$css:!0},med:{"--_card-elevation":`x1ovzxg0`,$$css:!0},high:{"--_card-elevation":`xnpe7fx`,$$css:!0}},u={sizing:(e,t,n,r)=>[{kzqmXN:e==null?e:`x5lhr3w`,kZKoxP:t==null?t:`x16ye13r`,ks0D6T:n==null?n:`xf68679`,kAzted:r==null?r:`x82snj4`,$$css:!0},{"--x-width":(e=>typeof e==`number`?e+`px`:e??void 0)(e),"--x-height":(e=>typeof e==`number`?e+`px`:e??void 0)(t),"--x-maxWidth":(e=>typeof e==`number`?e+`px`:e??void 0)(n),"--x-minHeight":(e=>typeof e==`number`?e+`px`:e??void 0)(r)}]};function d({width:t,height:d,maxWidth:f,minHeight:p,children:m,padding:h,variant:g=`default`,elevation:_=`none`,xstyle:v,className:y,style:b,ref:x,...S}){let C=d!=null&&d!==`auto`,w=h==null?void 0:e[h];return(0,o.jsx)(`div`,{ref:x,...i(n(`card`,{variant:g,elevation:_}),r(s.card,c[g],l[_],C&&s.scrollable,u.sizing(t??null,d??null,f??null,p??null),...a(w==null?{useThemeDefault:`card`}:{paddingInnerX:w,paddingInnerY:w,paddingOuterX:w,paddingOuterY:w}),g==="default"&&s.withBorder,v),y,b),...S,children:m})}d.displayName=`Card`;var f={grid:{k1xSpc:`xrvj5dj`,$$css:!0}},p={kJBjZk:`xhij9v2`,$$css:!0},m={templateColumns:e=>[{kumcoG:e==null?e:`xqketvx`,$$css:!0},{"--x-gridTemplateColumns":e??void 0}],autoRows:e=>[p,{"--x-gridAutoRows":`${e}px`==null?void 0:`${e}px`}]},h={start:{kGNEyG:`x7a106z`,$$css:!0},center:{kGNEyG:`x6s0dn4`,$$css:!0},end:{kGNEyG:`xpqajaz`,$$css:!0},stretch:{kGNEyG:`x1qjc9v5`,$$css:!0}},g={start:{kAPf3g:`x619ttb`,$$css:!0},center:{kAPf3g:`x1o2pa38`,$$css:!0},end:{kAPf3g:`x4xo5sw`,$$css:!0},stretch:{kAPf3g:`xl4xnwh`,$$css:!0}},_={0:{kOIVth:`xsn7fz1`,$$css:!0},1:{kOIVth:`xzye2dw`,$$css:!0},2:{kOIVth:`x1txdalj`,$$css:!0},3:{kOIVth:`xjcht0a`,$$css:!0},4:{kOIVth:`x18g69wz`,$$css:!0},5:{kOIVth:`x9mgr7n`,$$css:!0},6:{kOIVth:`x1qh66ti`,$$css:!0},8:{kOIVth:`x4t41sb`,$$css:!0},10:{kOIVth:`x3hoi3v`,$$css:!0},"0.5":{kOIVth:`x1lsbc85`,$$css:!0},"1.5":{kOIVth:`x1s4dlld`,$$css:!0}},v={0:{khm7nJ:`x6yxi7o`,$$css:!0},1:{khm7nJ:`x1ngg2t4`,$$css:!0},2:{khm7nJ:`x1x7z4sm`,$$css:!0},3:{khm7nJ:`x4olc9o`,$$css:!0},4:{khm7nJ:`xtx9w7w`,$$css:!0},5:{khm7nJ:`x1iu6piu`,$$css:!0},6:{khm7nJ:`xczp1bk`,$$css:!0},8:{khm7nJ:`xgx0vcf`,$$css:!0},10:{khm7nJ:`x1xpicb7`,$$css:!0},"0.5":{khm7nJ:`x1tw44j4`,$$css:!0},"1.5":{khm7nJ:`xhq53yo`,$$css:!0}},y={0:{k1C7PZ:`x1o57wo1`,$$css:!0},1:{k1C7PZ:`x1lfs0n9`,$$css:!0},2:{k1C7PZ:`xak3so`,$$css:!0},3:{k1C7PZ:`xewh9hi`,$$css:!0},4:{k1C7PZ:`xty4p9g`,$$css:!0},5:{k1C7PZ:`x1eqhezk`,$$css:!0},6:{k1C7PZ:`x3qlgwd`,$$css:!0},8:{k1C7PZ:`xicv188`,$$css:!0},10:{k1C7PZ:`x1p37tyl`,$$css:!0},"0.5":{k1C7PZ:`x1kihgfc`,$$css:!0},"1.5":{k1C7PZ:`x1thn6ci`,$$css:!0}},b={0:`--spacing-0`,.5:`--spacing-0-5`,1:`--spacing-1`,1.5:`--spacing-1-5`,2:`--spacing-2`,3:`--spacing-3`,4:`--spacing-4`,5:`--spacing-5`,6:`--spacing-6`,8:`--spacing-8`,10:`--spacing-10`};function x(e,t,n,r,i){let a=i==null?r==null?null:b[r]:b[i];return`repeat(${n}, minmax(${`min(100%, max(${e}px, ${a?`calc((100% - ${t-1} * var(${a})) / ${t})`:`calc(100% / ${t})`}))`}, 1fr))`}function S({columns:e,rowHeight:t,width:a,height:s,maxWidth:c,minHeight:l,gap:u,rowGap:d,columnGap:p,align:b,justify:S,xstyle:C,className:w,style:T,children:E,ref:D,...O}){let k;if(typeof e==`object`&&e){let t=e.repeat===`fit`?`auto-fit`:`auto-fill`;k=e.max!=null&&e.max>0?x(e.minWidth,e.max,t,u,p):`repeat(${t}, minmax(${e.minWidth}px, 1fr))`}else k=typeof e==`number`&&e>0?`repeat(${e}, 1fr)`:`1fr`;let A={...a!=null&&{width:typeof a==`number`?`${a}px`:a},...s!=null&&{height:typeof s==`number`?`${s}px`:s},...c!=null&&{maxWidth:typeof c==`number`?`${c}px`:c},...l!=null&&{minHeight:typeof l==`number`?`${l}px`:l}};return(0,o.jsx)(`div`,{ref:D,...i(n(`grid`,{columns:typeof e==`number`?e:void 0,gap:u,align:b,justify:S}),r(f.grid,m.templateColumns(k),t!=null&&m.autoRows(t),u!=null&&_[u],d!=null&&v[d],p!=null&&y[p],b!=null&&h[b],S!=null&&g[S],C),w,{...T,...A}),...O,children:E})}S.displayName=`Grid`;export{d as n,S as t};
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{H as t,J as n,l as r,n as i}from"./themeProps-CfjLB1h4.js";import{i as a,r as o,s,t as c,u as l}from"./useIsomorphicLayoutEffect-DByj3svz.js";var u=e(n(),1),d=r(),f={container:{kWkggS:`x10xzikg`,"--_hovercard-radius":`xqwz7mz`,kaIpWk:`x7a53xk`,kGVxlE:`x14hfi27`,$$css:!0}};function p(e){return e.hasAttribute(`tabindex`)?e.tabIndex>=0:[`A`,`BUTTON`,`INPUT`,`SELECT`,`TEXTAREA`].includes(e.tagName)?!e.disabled:!!e.isContentEditable}function m(e={}){let{placement:n=`above`,alignment:r=`center`,delay:c=300,hideDelay:m=200,focusTrigger:h=`auto`,touchTrigger:g=`auto`,isEnabled:_=!0,label:v,isOpen:y,isDefaultOpen:b=!1,onShow:x,onHide:S}=e,C=l({mode:`context`,lazyMount:!0,onShow:x,onHide:S}),w=f.container,T=(0,u.useRef)(null),E=(0,u.useRef)(null),D=(0,u.useRef)(null),O=(0,u.useRef)(!1),k=(0,u.useRef)(!1),A=(0,u.useCallback)(()=>{T.current&&=(clearTimeout(T.current),null),E.current&&=(clearTimeout(E.current),null)},[]),j=(0,u.useCallback)(()=>{A(),C.show()},[A,C]),M=(0,u.useCallback)(()=>{A(),O.current=!1,C.hide()},[A,C]),N=a({touchTrigger:g,isEnabled:_,isControlled:y!==void 0,isOpen:C.isOpen,layerId:C.id,triggerRef:D,show:j,hide:M}),P=(0,u.useCallback)(()=>{_&&y!==!1&&(A(),T.current=setTimeout(()=>{C.show()},c))},[_,y,A,C,c]),F=(0,u.useCallback)(()=>{y!==!0&&(A(),E.current=setTimeout(()=>{O.current||C.hide()},m))},[y,A,C,m]),I=(0,u.useCallback)(()=>{N.isTouchPointerRef.current||P()},[N,P]),L=(0,u.useCallback)(()=>{N.isTouchPointerRef.current||F()},[N,F]),R=(0,u.useCallback)(e=>{N.handlePointerDown(e)},[N]),z=(0,u.useCallback)(()=>{if(_&&!N.isTouchInteraction()){if(k.current){k.current=!1;return}A(),C.show()}},[_,N,A,C]),B=(0,u.useCallback)(e=>{let t=e.relatedTarget;document.getElementById(C.id)?.contains(t)||F()},[C.id,F]);s({isActive:!0,isPresent:()=>{let e=typeof document>`u`?null:document.getElementById(C.id);if(e==null)return!1;try{return e.matches(`:popover-open`)}catch{return C.isOpen}},onDismiss:()=>{if(A(),N.clearTapOpen(),y!==void 0){S?.();return}let e=(typeof document>`u`?null:document.getElementById(C.id))?.contains(document.activeElement)??!1;C.hide(),e&&(k.current=!0,D.current?.focus())}});let{handlePointerEnter:V}=N,H=(0,u.useCallback)(e=>{D.current&&(D.current.removeEventListener(`mouseenter`,I),D.current.removeEventListener(`mouseleave`,L),D.current.removeEventListener(`focusin`,z),D.current.removeEventListener(`focusout`,B),D.current.removeEventListener(`pointerenter`,V),D.current.removeEventListener(`pointerdown`,R)),e&&(e.addEventListener(`pointerenter`,V),e.addEventListener(`mouseenter`,I),e.addEventListener(`mouseleave`,L),e.addEventListener(`pointerdown`,R),(h===`always`||h===`auto`&&p(e))&&(e.addEventListener(`focusin`,z),e.addEventListener(`focusout`,B))),D.current=e},[h,I,L,z,B,V,R]),U=(0,u.useCallback)(e=>{C.ref(e),H(e)},[C,H]);(0,u.useEffect)(()=>()=>{A()},[A]),(0,u.useEffect)(()=>{b&&C.show()},[]),(0,u.useEffect)(()=>{if(y!==void 0){if(y)A(),C.show();else{A();let e=(typeof document>`u`?null:document.getElementById(C.id))?.contains(document.activeElement)??!1;C.hide(),e&&(k.current=!0,D.current?.focus())}}},[y,A,C]);let W=(0,u.useCallback)((e,a)=>{let s=a?.placement??n,c=i(`hover-card`,void 0,{legacyNames:[`hovercard`]}).className,l={placement:s,alignment:a?.alignment??r,offset:t[`--spacing-1`],role:v?`dialog`:`group`,"aria-label":v||void 0,xstyle:[w,o[s],a?.xstyle],className:a?.className?`${c} ${a.className}`:c,style:a?.style,as:`div`};return C.render((0,d.jsx)(`div`,{className:`x1lliihq x1vlblms xvmdzux x126nfab x1t818jl`,onMouseEnter:()=>{N.isTouchPointerRef.current||(O.current=!0,A())},onMouseLeave:()=>{N.isTouchPointerRef.current||(O.current=!1,F())},onBlur:e=>{let t=e.relatedTarget;e.currentTarget.contains(t)||D.current?.contains(t)||F()},children:e}),l)},[C,n,r,v,A,F,w,N]);return{ref:U,positionRef:C.ref,interactionRef:H,anchorId:C.anchorId,id:C.id,describedBy:C.id,isOpen:C.isOpen,renderHoverCard:W,show:C.show,hide:C.hide}}var h=new Set([`application`,`button`,`checkbox`,`columnheader`,`combobox`,`gridcell`,`link`,`listbox`,`menuitem`,`menuitemcheckbox`,`menuitemradio`,`row`,`rowheader`,`switch`,`tab`,`treeitem`]),g=new Set([`button`,`submit`,`reset`,`image`]);function _(e){let t=e.getAttribute(`role`)?.trim().split(/\s+/)[0];if(t)return h.has(t);switch(e.tagName){case`BUTTON`:case`SUMMARY`:return!0;case`A`:case`AREA`:return e.hasAttribute(`href`);case`INPUT`:return g.has(e.type?.toLowerCase());case`SELECT`:return!0;default:return!1}}function v(e){return typeof e==`string`||typeof e==`number`}function y(...e){let t=e.filter(Boolean);return t.length>0?t.join(` `):void 0}function b({children:e,content:t,placement:n=`above`,alignment:r=`center`,delay:i=300,hideDelay:a=200,focusTrigger:o=`auto`,touchTrigger:s=`auto`,isEnabled:l=!0,label:f,onOpenChange:p,hasHoverIndication:h=`auto`,isOpen:g,isDefaultOpen:b,xstyle:x,className:S,style:C}){let w=(0,u.useRef)(null),T=v(e),E=h===!0||h===`auto`&&T,D=m({placement:n,alignment:r,delay:i,hideDelay:a,focusTrigger:o,touchTrigger:s,isEnabled:l,label:f,isOpen:g,isDefaultOpen:b,onShow:(0,u.useCallback)(()=>{p?.(!0)},[p]),onHide:(0,u.useCallback)(()=>{p?.(!1)},[p])});c(()=>{if(T)return;let e=w.current;if(!e)return;let t=e.firstElementChild;if(!t)return;if(D.ref(t),f){let e=t.getAttribute(`aria-haspopup`),n=t.getAttribute(`aria-controls`),r=t.getAttribute(`aria-expanded`),i=_(t);return t.setAttribute(`aria-haspopup`,`dialog`),D.isOpen?t.setAttribute(`aria-controls`,y(n,D.id)??``):n?t.setAttribute(`aria-controls`,n):t.removeAttribute(`aria-controls`),i?t.setAttribute(`aria-expanded`,String(D.isOpen)):r?t.setAttribute(`aria-expanded`,r):t.removeAttribute(`aria-expanded`),()=>{D.ref(null),e?t.setAttribute(`aria-haspopup`,e):t.removeAttribute(`aria-haspopup`),n?t.setAttribute(`aria-controls`,n):t.removeAttribute(`aria-controls`),r?t.setAttribute(`aria-expanded`,r):t.removeAttribute(`aria-expanded`)}}let n=t.getAttribute(`aria-describedby`);return t.setAttribute(`aria-describedby`,y(n,D.describedBy)??``),()=>{D.ref(null),n?t.setAttribute(`aria-describedby`,n):t.removeAttribute(`aria-describedby`)}},[T,f,D.ref,D.id,D.isOpen,D.describedBy]);let O=D.renderHoverCard(t,{xstyle:x,className:S,style:C});return T?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(`span`,{ref:D.ref,tabIndex:0,"aria-haspopup":f?`dialog`:void 0,"aria-controls":f&&D.isOpen?D.id:void 0,"aria-describedby":f?void 0:D.describedBy,...{0:{className:`xt0psk2`},1:{className:`xt0psk2 xujl8zx xev0dqp xycaml9 x11b3rvo`}}[!!E<<0],children:e}),O]}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(`span`,{ref:w,className:`xjp7ctv`,children:e}),O]})}b.displayName=`HoverCard`;export{b as t};