poi-plugin-remodel-assistant 1.2.8 → 1.2.9

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 (70) hide show
  1. package/README.md +6 -5
  2. package/assets/help/zh-CN/allocation-suggestions-guide.png +0 -0
  3. package/assets/help/zh-CN/configuration-backup-guide.png +0 -0
  4. package/assets/help/zh-CN/detail-sections-guide.png +0 -0
  5. package/assets/help/zh-CN/equipment-library-guide.png +0 -0
  6. package/assets/help/zh-CN/low-priority-equipment-guide.png +0 -0
  7. package/assets/help/zh-CN/recovery-diagnostics-guide.png +0 -0
  8. package/assets/help/zh-CN/route-selection-guide.png +0 -0
  9. package/assets/help/zh-CN/statistics-guide.png +0 -0
  10. package/assets/help/zh-CN/today-guide.png +0 -0
  11. package/assets/main.css +257 -5
  12. package/data/changelog.json +7 -0
  13. package/data/kancolle-data/CHANGELOG.md +3 -0
  14. package/data/kancolle-data/README.md +5 -5
  15. package/data/kancolle-data/audit/build-report.json +634 -14
  16. package/data/kancolle-data/development/base-pools.nedb +12 -0
  17. package/data/kancolle-data/development/meta.json +29 -0
  18. package/data/kancolle-data/development/secretaries.nedb +865 -0
  19. package/data/kancolle-data/development/special-rules.nedb +148 -0
  20. package/data/kancolle-data/development/theory.nedb +584 -0
  21. package/data/kancolle-data/i18n/en-US.json +4 -629
  22. package/data/kancolle-data/i18n/zh-CN.json +4 -628
  23. package/data/kancolle-data/i18n/zh-TW.json +4 -629
  24. package/data/kancolle-data/improvement/detail.nedb +8 -8
  25. package/data/kancolle-data/improvement/list.json +3 -3
  26. package/data/kancolle-data/index.d.ts +6 -0
  27. package/data/kancolle-data/index.js +12 -0
  28. package/data/kancolle-data/manifest.json +3708 -321
  29. package/data/kancolle-data/master/quests.json +10 -1912
  30. package/data/kancolle-data/master/ships.json +12 -0
  31. package/data/kancolle-data/package.json +8 -2
  32. package/data/kancolle-data/schemas/development-base-pool.schema.json +13 -0
  33. package/data/kancolle-data/schemas/development-meta.schema.json +19 -0
  34. package/data/kancolle-data/schemas/development-secretary.schema.json +27 -0
  35. package/data/kancolle-data/schemas/development-special-rule.schema.json +187 -0
  36. package/data/kancolle-data/schemas/development-theory.schema.json +61 -0
  37. package/i18n/en-US.json +141 -1
  38. package/i18n/ja-JP.json +141 -1
  39. package/i18n/zh-CN.json +141 -1
  40. package/i18n/zh-TW.json +141 -1
  41. package/package.json +1 -1
  42. package/views/app/changelog-modal.js +77 -56
  43. package/views/app/changelog.js +1 -1
  44. package/views/new-interface/app/new-interface-area.js +50 -2
  45. package/views/new-interface/data/modals/problem-diagnostics-modal.js +12 -12
  46. package/views/new-interface/development/components/development-workspace.js +507 -0
  47. package/views/new-interface/development/development-service.js +223 -0
  48. package/views/new-interface/development/domain/development-claim-domain.js +200 -0
  49. package/views/new-interface/development/domain/development-data-domain.js +228 -0
  50. package/views/new-interface/development/domain/development-formula-domain.js +200 -0
  51. package/views/new-interface/development/domain/development-optimizer-domain.js +159 -0
  52. package/views/new-interface/development/domain/development-recipe-domain.js +228 -0
  53. package/views/new-interface/development/domain/development-target-catalog-domain.js +29 -0
  54. package/views/new-interface/development/domain/development-target-index.js +123 -0
  55. package/views/new-interface/development/domain/development-task-domain.js +316 -0
  56. package/views/new-interface/development/domain/development-task-optimizer-domain.js +190 -0
  57. package/views/new-interface/plan/domain/actual-equipment-gap-vo.js +75 -0
  58. package/views/new-interface/statistics/components/statistics-page.js +527 -109
  59. package/views/new-interface/workbench/components/workbench-page.js +61 -1
  60. package/views/shared/authority-backup.js +12 -1
  61. package/views/shared/data-package.js +60 -1
  62. package/views/shared/data-transfer.js +13 -0
  63. package/views/shared/domain/data-package-domain.js +13 -0
  64. package/views/shared/plugin-state-schema.js +14 -1
  65. package/views/shared/plugin-state-storage.js +11 -0
  66. package/views/shared/ui-preferences.js +3 -3
  67. package/assets/help/equipment-blacklist-guide.png +0 -0
  68. package/assets/help/equipment-category-guide.png +0 -0
  69. package/assets/help/zh-CN/material-source-guide.png +0 -0
  70. package/assets/help/zh-CN/plan-management-guide.png +0 -0
package/README.md CHANGED
@@ -16,12 +16,13 @@ Tell the plugin the equipment you ultimately want, the target improvement level,
16
16
 
17
17
  ## Quick Start
18
18
 
19
- 1. Open **Equipment library** and select your target equipment.
20
- 2. Set the target improvement level and quantity, then create a plan.
21
- 3. If more than one route is available, choose the route you want.
22
- 4. Open **Today** and follow the current guidance.
19
+ 1. Set low-priority equipment first; low priority affects recommendation/allocation order and is not a blacklist.
20
+ 2. Open **Equipment library**, choose the target equipment, set the target improvement level and quantity, and create the plan.
21
+ 3. If more than one complete route is available, compare the routes and materials and make the route choice explicitly.
22
+ 4. Open **Today** and execute using the current assistant ship, available day, materials, and next-action guidance.
23
+ 5. Open **Statistics analysis** to review plan progress, base materials, equipment demand, Development formulas, and improvement success rates; Statistics analysis is read-only.
23
24
 
24
- The in-plugin **Help** entry contains illustrated guides.
25
+ The in-plugin **Help** entry contains nine localized illustrated guides, including detail-section ordering, allocation suggestions, configuration/backup, and recovery/diagnostics.
25
26
 
26
27
  ## Data Sources
27
28
 
Binary file
package/assets/main.css CHANGED
@@ -12205,6 +12205,38 @@ body.decision-modal-is-dragging * {
12205
12205
  background: rgba(127, 127, 127, 0.055);
12206
12206
  }
12207
12207
 
12208
+ #item-improvement .decision-statistics-sort-button {
12209
+ display: inline-flex;
12210
+ width: 100%;
12211
+ align-items: center;
12212
+ gap: 5px;
12213
+ padding: 0;
12214
+ border: 0;
12215
+ background: transparent;
12216
+ color: inherit;
12217
+ font: inherit;
12218
+ font-weight: inherit;
12219
+ text-align: left;
12220
+ cursor: pointer;
12221
+ }
12222
+
12223
+ #item-improvement .decision-statistics-sort-button:hover,
12224
+ #item-improvement .decision-statistics-sort-button:focus {
12225
+ color: rgba(235, 235, 235, 0.95);
12226
+ }
12227
+
12228
+ #item-improvement .decision-statistics-sort-button:focus-visible {
12229
+ outline: 1px solid rgba(69, 169, 165, 0.75);
12230
+ outline-offset: 2px;
12231
+ }
12232
+
12233
+ #item-improvement .decision-statistics-sort-indicator {
12234
+ flex: 0 0 auto;
12235
+ opacity: 0.62;
12236
+ font-size: 0.82em;
12237
+ line-height: 1;
12238
+ }
12239
+
12208
12240
  #item-improvement .decision-statistics-table tbody tr:last-child td {
12209
12241
  border-bottom: 0;
12210
12242
  }
@@ -12398,7 +12430,7 @@ body.decision-modal-is-dragging * {
12398
12430
  }
12399
12431
 
12400
12432
  #item-improvement .decision-statistics-resource-gap-table {
12401
- min-width: 500px;
12433
+ min-width: 780px;
12402
12434
  table-layout: fixed;
12403
12435
  }
12404
12436
 
@@ -12406,10 +12438,10 @@ body.decision-modal-is-dragging * {
12406
12438
  position: relative;
12407
12439
  }
12408
12440
 
12409
- #item-improvement .decision-statistics-resource-gap-table th:nth-child(2),
12410
- #item-improvement .decision-statistics-resource-gap-table td:nth-child(2),
12411
- #item-improvement .decision-statistics-resource-gap-table th:nth-child(3),
12412
- #item-improvement .decision-statistics-resource-gap-table td:nth-child(3) {
12441
+ #item-improvement .decision-statistics-resource-gap-table th:nth-child(n+2),
12442
+ #item-improvement .decision-statistics-resource-gap-table td:nth-child(n+2),
12443
+ #item-improvement .decision-statistics-equipment-requirement-table th:last-child,
12444
+ #item-improvement .decision-statistics-equipment-requirement-table td:last-child {
12413
12445
  text-align: center;
12414
12446
  }
12415
12447
 
@@ -12451,6 +12483,34 @@ body.decision-modal-is-dragging * {
12451
12483
  min-width: 760px;
12452
12484
  }
12453
12485
 
12486
+
12487
+ #item-improvement .decision-statistics-progress-cell {
12488
+ display: grid;
12489
+ grid-template-columns: minmax(80px, 1fr) 48px;
12490
+ align-items: center;
12491
+ gap: 8px;
12492
+ }
12493
+
12494
+ #item-improvement .decision-statistics-progress-track {
12495
+ height: 8px;
12496
+ overflow: hidden;
12497
+ border-radius: 999px;
12498
+ background: rgba(127, 127, 127, 0.18);
12499
+ }
12500
+
12501
+ #item-improvement .decision-statistics-progress-track > span {
12502
+ display: block;
12503
+ height: 100%;
12504
+ border-radius: inherit;
12505
+ background: currentColor;
12506
+ opacity: 0.72;
12507
+ }
12508
+
12509
+ #item-improvement .decision-statistics-progress-cell > strong {
12510
+ font-variant-numeric: tabular-nums;
12511
+ text-align: right;
12512
+ }
12513
+
12454
12514
  #item-improvement .decision-statistics-success-note {
12455
12515
  margin: 0 0 8px;
12456
12516
  color: rgba(220, 220, 220, 0.7);
@@ -12541,3 +12601,195 @@ body.decision-modal-is-dragging * {
12541
12601
  opacity: 0.66;
12542
12602
  font-size: 0.9em;
12543
12603
  }
12604
+
12605
+ /* Development analysis workspace */
12606
+ #item-improvement .decision-development-workspace {
12607
+ display: flex;
12608
+ flex-direction: column;
12609
+ gap: 14px;
12610
+ }
12611
+
12612
+ #item-improvement .decision-development-columns {
12613
+ display: grid;
12614
+ grid-template-columns: minmax(260px, 0.9fr) minmax(320px, 1.1fr);
12615
+ gap: 12px;
12616
+ }
12617
+
12618
+ #item-improvement .decision-development-panel {
12619
+ min-width: 0;
12620
+ padding: 12px;
12621
+ border: 1px solid rgba(127, 127, 127, 0.22);
12622
+ border-radius: 8px;
12623
+ background: rgba(127, 127, 127, 0.04);
12624
+ }
12625
+
12626
+ #item-improvement .decision-development-panel-heading {
12627
+ margin-bottom: 10px;
12628
+ }
12629
+
12630
+ #item-improvement .decision-development-panel-heading h3,
12631
+ #item-improvement .decision-development-queue-group h4,
12632
+ #item-improvement .decision-development-saved-tasks h4 {
12633
+ margin: 0 0 4px;
12634
+ }
12635
+
12636
+ #item-improvement .decision-development-panel-heading small,
12637
+ #item-improvement .decision-development-recommendation small,
12638
+ #item-improvement .decision-development-today-recipe small {
12639
+ display: block;
12640
+ opacity: 0.72;
12641
+ }
12642
+
12643
+ #item-improvement .decision-development-plan-list,
12644
+ #item-improvement .decision-development-queue,
12645
+ #item-improvement .decision-development-results,
12646
+ #item-improvement .decision-development-saved-tasks {
12647
+ display: flex;
12648
+ flex-direction: column;
12649
+ gap: 8px;
12650
+ }
12651
+
12652
+ #item-improvement .decision-development-plan-row,
12653
+ #item-improvement .decision-development-queue-row,
12654
+ #item-improvement .decision-development-saved-row {
12655
+ display: flex;
12656
+ align-items: center;
12657
+ gap: 8px;
12658
+ min-width: 0;
12659
+ }
12660
+
12661
+ #item-improvement .decision-development-plan-copy {
12662
+ display: flex;
12663
+ flex: 1;
12664
+ min-width: 0;
12665
+ flex-direction: column;
12666
+ }
12667
+
12668
+ #item-improvement .decision-development-plan-copy strong,
12669
+ #item-improvement .decision-development-queue-row > span {
12670
+ overflow: hidden;
12671
+ text-overflow: ellipsis;
12672
+ white-space: nowrap;
12673
+ }
12674
+
12675
+ #item-improvement .decision-development-gap-list {
12676
+ display: flex;
12677
+ flex-wrap: wrap;
12678
+ gap: 4px 6px;
12679
+ margin-top: 4px;
12680
+ }
12681
+
12682
+ #item-improvement .decision-development-gap-item {
12683
+ padding: 2px 6px;
12684
+ border-radius: 999px;
12685
+ background: rgba(127, 127, 127, 0.1);
12686
+ font-size: 11px;
12687
+ line-height: 1.4;
12688
+ }
12689
+
12690
+ #item-improvement .decision-development-queue-group + .decision-development-queue-group {
12691
+ margin-top: 8px;
12692
+ padding-top: 10px;
12693
+ border-top: 1px solid rgba(127, 127, 127, 0.18);
12694
+ }
12695
+
12696
+ #item-improvement .decision-development-queue-row > span {
12697
+ flex: 1;
12698
+ }
12699
+
12700
+ #item-improvement .decision-development-queue-row em {
12701
+ font-size: 11px;
12702
+ opacity: 0.7;
12703
+ }
12704
+
12705
+ #item-improvement .decision-development-manual-add {
12706
+ display: grid;
12707
+ grid-template-columns: minmax(160px, 1fr) 76px auto;
12708
+ gap: 8px;
12709
+ }
12710
+
12711
+ #item-improvement .decision-development-task-name {
12712
+ display: grid;
12713
+ grid-template-columns: auto minmax(160px, 1fr);
12714
+ align-items: center;
12715
+ gap: 8px;
12716
+ margin-top: 12px;
12717
+ }
12718
+
12719
+ #item-improvement .decision-development-actions {
12720
+ display: flex;
12721
+ justify-content: flex-end;
12722
+ gap: 8px;
12723
+ margin-top: 10px;
12724
+ }
12725
+
12726
+ #item-improvement .decision-development-result-note,
12727
+ #item-improvement .decision-development-demand-summary,
12728
+ #item-improvement .decision-development-recommendation,
12729
+ #item-improvement .decision-development-today-recipe {
12730
+ padding: 10px 12px;
12731
+ border-radius: 7px;
12732
+ background: rgba(127, 127, 127, 0.07);
12733
+ }
12734
+
12735
+ #item-improvement .decision-development-result-note {
12736
+ display: flex;
12737
+ flex-direction: column;
12738
+ gap: 4px;
12739
+ }
12740
+
12741
+ #item-improvement .decision-development-demand-summary > div {
12742
+ display: flex;
12743
+ flex-wrap: wrap;
12744
+ gap: 6px;
12745
+ margin-top: 6px;
12746
+ }
12747
+
12748
+ #item-improvement .decision-development-demand-pill {
12749
+ padding: 3px 8px;
12750
+ border-radius: 999px;
12751
+ background: rgba(127, 127, 127, 0.12);
12752
+ }
12753
+
12754
+ #item-improvement .decision-development-recommendation {
12755
+ display: grid;
12756
+ grid-template-columns: 44px 1fr;
12757
+ gap: 10px;
12758
+ }
12759
+
12760
+ #item-improvement .decision-development-recommendation.is-best {
12761
+ border: 1px solid rgba(74, 144, 226, 0.45);
12762
+ }
12763
+
12764
+ #item-improvement .decision-development-recommendation-rank {
12765
+ font-size: 18px;
12766
+ font-weight: 700;
12767
+ }
12768
+
12769
+ #item-improvement .decision-development-recipe-resources,
12770
+ #item-improvement .decision-development-today-recipe > strong {
12771
+ display: block;
12772
+ font-size: 18px;
12773
+ }
12774
+
12775
+ #item-improvement .decision-development-saved-row > .btn-link {
12776
+ flex: 1;
12777
+ padding-left: 0;
12778
+ text-align: left;
12779
+ }
12780
+
12781
+ #item-improvement .decision-development-today-card {
12782
+ margin-bottom: 12px;
12783
+ }
12784
+
12785
+ #item-improvement .decision-development-today-recipe {
12786
+ display: flex;
12787
+ flex-direction: column;
12788
+ gap: 3px;
12789
+ }
12790
+
12791
+ @media (max-width: 900px) {
12792
+ #item-improvement .decision-development-columns {
12793
+ grid-template-columns: 1fr;
12794
+ }
12795
+ }
@@ -1,6 +1,13 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
3
  "entries": [
4
+ {
5
+ "version": "1.2.9",
6
+ "items": [
7
+ "changelog_1_2_9_development_formulas",
8
+ "changelog_1_2_9_statistics_analysis"
9
+ ]
10
+ },
4
11
  {
5
12
  "version": "1.2.8",
6
13
  "items": [
@@ -21,6 +21,9 @@ All notable consumer-visible changes to `@sakura2333/kancolle-data` are document
21
21
 
22
22
  ### Fixed
23
23
 
24
+ - Corrected the Schema 5 package README to document `master/*.json` instead of the retired `master/*.nedb` spelling.
25
+ - Made the generated `improvement2` README an independent legacy-consumer document instead of concatenating canonical Schema 5 paths that are absent from that tarball.
26
+ - Clarified that community quest rows without a resolved canonical `questKey` are excluded from public projections rather than promoted by name/code/position.
24
27
  - Restored ship-acquisition relations for Start2 equipment IDs 142 and 305 when KcWiki uses English “Kai Ni” aliases instead of its canonical equipment names.
25
28
  - Added source-scoped, Start2-validated semantic aliases so accepted upstream naming variants cannot silently disappear from the package.
26
29
 
@@ -27,8 +27,8 @@ Datasets:
27
27
  - `equipment/sources.nedb`: deprecated compatibility shape, mechanically derived from acquisition only.
28
28
  - `schemas/equipment-sources.schema.json`: JSON Schema for the deprecated compatibility projection.
29
29
  - `equipment/special-bonuses.nedb`: bonus rules targeting either concrete equipment IDs or equipment-type IDs.
30
- - `master/*.nedb`: stable-ID master entity facts; equipment/ships/useitems carry Japanese game/master labels, quests remain key-only until canonical label authority exists.
31
- - `i18n/{en-US,zh-CN,zh-TW}.json`: identity-aligned display localization. There is no physical `ja-JP` file.
30
+ - `master/*.json`: stable-ID master entity facts; equipment/ships/useitems carry Japanese game/master labels. Quests are key-only and intentionally limited to the `questKey` closure actually referenced by exported datasets; unrelated upstream catalog quests are not shipped.
31
+ - `i18n/{en-US,zh-CN,zh-TW}.json`: identity-aligned display localization. There is no physical `ja-JP` file. Quest labels enter i18n only after their source code resolves to a canonical `questKey` inside the exported quest closure; unmatched or unreferenced source rows are excluded rather than guessed.
32
32
 
33
33
  Canonical images are intentionally absent. Install `@sakura2333/kancolle-asset` for `equip/{id}.webp` and `useitem/{id}.webp`. Data and asset package versions are independent.
34
34
 
@@ -45,7 +45,7 @@ Strict releases require same-run network validation for the canonical Akashi imp
45
45
 
46
46
  ## Legacy `poi-plugin-item-improvement2` distribution
47
47
 
48
- The Stable main release builds two immutable npm versions from the same canonical candidate:
48
+ The Stable main release builds two npm variants from the same canonical candidate. The `improvement2` business data is refreshed every release, while its legacy consumer contract is frozen:
49
49
 
50
50
  ```text
51
51
  @sakura2333/kancolle-data@latest
@@ -57,7 +57,7 @@ The Stable main release builds two immutable npm versions from the same canonica
57
57
  equipment datasets/images -> intentionally absent
58
58
  ```
59
59
 
60
- The compatibility version is not a second crawler or a copied parser. The release tool builds a minimal package from the explicit schema-3 VO projection and the official useitem PNGs retained for the legacy plugin. It excludes all equipment datasets and equipment images, assigns a unique `*-improvement2` npm version, and binds that version to the `improvement2` dist-tag.
60
+ The compatibility package is regenerated from the same frozen build candidate and published as `<canonical-version>-improvement2`. Its schema version, file paths, field set/meaning, PNG asset contract, and intentionally omitted equipment surface are frozen; only business data is allowed to refresh.
61
61
 
62
62
  Legacy consumers keep their existing code and install the tag:
63
63
 
@@ -65,4 +65,4 @@ Legacy consumers keep their existing code and install the tag:
65
65
  npm install @sakura2333/kancolle-data@improvement2
66
66
  ```
67
67
 
68
- Future canonical fields do not require changes to the compatibility projection. Only changes needed to preserve an original schema-3 field or meaning may modify the frozen VO.
68
+ Future canonical fields do not change the compatibility surface. Business data may refresh, but schema version, paths, field set/meaning, PNG asset contract, and omitted equipment surface are frozen for the retired plugin.