spindb 0.46.4 → 0.47.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.
- package/dist/cli/commands/info.js +12 -2
- package/dist/cli/commands/info.js.map +1 -1
- package/dist/cli/commands/link.js +6 -0
- package/dist/cli/commands/link.js.map +1 -1
- package/dist/cli/commands/list.js +4 -1
- package/dist/cli/commands/list.js.map +1 -1
- package/dist/cli/commands/menu/container-handlers.js +25 -7
- package/dist/cli/commands/menu/container-handlers.js.map +1 -1
- package/dist/config/backup-formats.js +11 -11
- package/dist/config/backup-formats.js.map +1 -1
- package/dist/config/version.js +1 -1
- package/dist/core/credential-manager.js +34 -11
- package/dist/core/credential-manager.js.map +1 -1
- package/dist/core/query-parser.js +55 -1
- package/dist/core/query-parser.js.map +1 -1
- package/dist/core/remote-container.js +11 -0
- package/dist/core/remote-container.js.map +1 -1
- package/dist/engines/clickhouse/backup.js +42 -10
- package/dist/engines/clickhouse/backup.js.map +1 -1
- package/dist/engines/clickhouse/restore.js +41 -10
- package/dist/engines/clickhouse/restore.js.map +1 -1
- package/dist/engines/cockroachdb/backup.js +18 -22
- package/dist/engines/cockroachdb/backup.js.map +1 -1
- package/dist/engines/cockroachdb/cli-utils.js +66 -0
- package/dist/engines/cockroachdb/cli-utils.js.map +1 -1
- package/dist/engines/cockroachdb/index.js +199 -116
- package/dist/engines/cockroachdb/index.js.map +1 -1
- package/dist/engines/cockroachdb/restore.js +19 -26
- package/dist/engines/cockroachdb/restore.js.map +1 -1
- package/dist/engines/couchdb/backup.js +13 -4
- package/dist/engines/couchdb/backup.js.map +1 -1
- package/dist/engines/couchdb/index.js +93 -25
- package/dist/engines/couchdb/index.js.map +1 -1
- package/dist/engines/couchdb/restore.js +15 -4
- package/dist/engines/couchdb/restore.js.map +1 -1
- package/dist/engines/ferretdb/backup.js +88 -91
- package/dist/engines/ferretdb/backup.js.map +1 -1
- package/dist/engines/ferretdb/index.js +179 -226
- package/dist/engines/ferretdb/index.js.map +1 -1
- package/dist/engines/ferretdb/restore.js +223 -20
- package/dist/engines/ferretdb/restore.js.map +1 -1
- package/dist/engines/influxdb/api-client.js +1 -1
- package/dist/engines/influxdb/api-client.js.map +1 -1
- package/dist/engines/influxdb/backup.js +25 -5
- package/dist/engines/influxdb/backup.js.map +1 -1
- package/dist/engines/influxdb/index.js +165 -43
- package/dist/engines/influxdb/index.js.map +1 -1
- package/dist/engines/influxdb/restore.js +22 -2
- package/dist/engines/influxdb/restore.js.map +1 -1
- package/dist/engines/mariadb/backup.js +24 -15
- package/dist/engines/mariadb/backup.js.map +1 -1
- package/dist/engines/mariadb/env.js +11 -0
- package/dist/engines/mariadb/env.js.map +1 -0
- package/dist/engines/mariadb/index.js +192 -113
- package/dist/engines/mariadb/index.js.map +1 -1
- package/dist/engines/mariadb/restore.js +21 -5
- package/dist/engines/mariadb/restore.js.map +1 -1
- package/dist/engines/meilisearch/backup.js +8 -4
- package/dist/engines/meilisearch/backup.js.map +1 -1
- package/dist/engines/meilisearch/index.js +55 -58
- package/dist/engines/meilisearch/index.js.map +1 -1
- package/dist/engines/mongo-uri.js +8 -0
- package/dist/engines/mongo-uri.js.map +1 -0
- package/dist/engines/mongodb/backup.js +62 -13
- package/dist/engines/mongodb/backup.js.map +1 -1
- package/dist/engines/mongodb/index.js +170 -108
- package/dist/engines/mongodb/index.js.map +1 -1
- package/dist/engines/mongodb/restore.js +21 -1
- package/dist/engines/mongodb/restore.js.map +1 -1
- package/dist/engines/mysql/backup.js +24 -7
- package/dist/engines/mysql/backup.js.map +1 -1
- package/dist/engines/mysql/index.js +154 -89
- package/dist/engines/mysql/index.js.map +1 -1
- package/dist/engines/mysql/restore.js +14 -4
- package/dist/engines/mysql/restore.js.map +1 -1
- package/dist/engines/postgresql/backup.js +9 -2
- package/dist/engines/postgresql/backup.js.map +1 -1
- package/dist/engines/postgresql/index.js +10 -4
- package/dist/engines/postgresql/index.js.map +1 -1
- package/dist/engines/postgresql/restore.js +7 -3
- package/dist/engines/postgresql/restore.js.map +1 -1
- package/dist/engines/qdrant/backup.js +5 -1
- package/dist/engines/qdrant/backup.js.map +1 -1
- package/dist/engines/qdrant/index.js +31 -2
- package/dist/engines/qdrant/index.js.map +1 -1
- package/dist/engines/qdrant/restore.js +5 -3
- package/dist/engines/qdrant/restore.js.map +1 -1
- package/dist/engines/questdb/auth.js +26 -0
- package/dist/engines/questdb/auth.js.map +1 -0
- package/dist/engines/questdb/backup.js +10 -8
- package/dist/engines/questdb/backup.js.map +1 -1
- package/dist/engines/questdb/index.js +16 -8
- package/dist/engines/questdb/index.js.map +1 -1
- package/dist/engines/questdb/restore.js +7 -5
- package/dist/engines/questdb/restore.js.map +1 -1
- package/dist/engines/redis/backup.js +48 -15
- package/dist/engines/redis/backup.js.map +1 -1
- package/dist/engines/redis/index.js +45 -12
- package/dist/engines/redis/index.js.map +1 -1
- package/dist/engines/redis/restore.js +21 -2
- package/dist/engines/redis/restore.js.map +1 -1
- package/dist/engines/surrealdb/auth.js +98 -0
- package/dist/engines/surrealdb/auth.js.map +1 -0
- package/dist/engines/surrealdb/backup.js +72 -9
- package/dist/engines/surrealdb/backup.js.map +1 -1
- package/dist/engines/surrealdb/index.js +84 -144
- package/dist/engines/surrealdb/index.js.map +1 -1
- package/dist/engines/surrealdb/restore.js +32 -31
- package/dist/engines/surrealdb/restore.js.map +1 -1
- package/dist/engines/typedb/backup.js +9 -1
- package/dist/engines/typedb/backup.js.map +1 -1
- package/dist/engines/typedb/cli-utils.js +3 -3
- package/dist/engines/typedb/cli-utils.js.map +1 -1
- package/dist/engines/typedb/index.js +9 -2
- package/dist/engines/typedb/index.js.map +1 -1
- package/dist/engines/typedb/restore.js +19 -7
- package/dist/engines/typedb/restore.js.map +1 -1
- package/dist/engines/valkey/backup.js +37 -13
- package/dist/engines/valkey/backup.js.map +1 -1
- package/dist/engines/valkey/index.js +207 -58
- package/dist/engines/valkey/index.js.map +1 -1
- package/dist/engines/valkey/restore.js +21 -2
- package/dist/engines/valkey/restore.js.map +1 -1
- package/dist/engines/weaviate/backup.js +7 -2
- package/dist/engines/weaviate/backup.js.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../engines/mariadb/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,EAAE,IAAI,EAAqB,MAAM,eAAe,CAAA;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAA;AAChC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,IAAI,CAAA;AACjD,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,aAAa,CAAA;AACpE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EACL,eAAe,EACf,SAAS,EACT,sBAAsB,GACvB,MAAM,6BAA6B,CAAA;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AACzD,OAAO,EACL,QAAQ,EACR,UAAU,EACV,UAAU,EACV,WAAW,EACX,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAC5E,OAAO,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AAC9E,OAAO,EACL,kBAAkB,IAAI,sBAAsB,EAC5C,aAAa,EACb,qBAAqB,GACtB,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACvC,OAAO,EACL,QAAQ,GAcT,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAE1E,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;AAEjC,MAAM,MAAM,GAAG,SAAS,CAAA;AACxB,MAAM,SAAS,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAA;AAE3C,+EAA+E;AAC/E,MAAM,UAAU,0BAA0B,CACxC,SAAiB,EACjB,IAAY,EACZ,IAAY,EACZ,EAAU,EACV,OAAwC;IAExC,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;IAC/D,CAAC;IAED,IAAI,GAAG,GAAG,IAAI,SAAS,qBAAqB,IAAI,OAAO,IAAI,IAAI,EAAE,EAAE,CAAA;IAEnE,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,GAAG,IAAI,OAAO,OAAO,CAAC,IAAI,GAAG,CAAA;IAC/B,CAAC;SAAM,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QAChD,GAAG,IAAI,QAAQ,OAAO,GAAG,CAAA;IAC3B,CAAC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,yBAAyB,CACvC,SAAiB,EACjB,IAAY,EACZ,IAAY,EACZ,GAAW,EACX,UAAiC,EAAE;IAEnC,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IAE5D,IAAI,SAAS,EAAE,EAAE,CAAC;QAChB,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QACxC,OAAO,IAAI,SAAS,qBAAqB,IAAI,OAAO,IAAI,GAAG,KAAK,QAAQ,OAAO,GAAG,CAAA;IACpF,CAAC;SAAM,CAAC;QACN,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAC1C,OAAO,IAAI,SAAS,qBAAqB,IAAI,OAAO,IAAI,GAAG,KAAK,QAAQ,OAAO,GAAG,CAAA;IACpF,CAAC;AACH,CAAC;AAED,MAAM,OAAO,aAAc,SAAQ,UAAU;IAC3C,IAAI,GAAG,MAAM,CAAA;IACb,WAAW,GAAG,SAAS,CAAA;IACvB,WAAW,GAAG,SAAS,CAAC,WAAW,CAAA;IACnC,iBAAiB,GAAG,wBAAwB,CAAA;IAE5C,KAAK,CAAC,sBAAsB;QAC1B,OAAO,sBAAsB,EAAE,CAAA;IACjC,CAAC;IAED,eAAe;QACb,MAAM,IAAI,GAAG,eAAe,CAAC,eAAe,EAAE,CAAA;QAC9C,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAA;IACH,CAAC;IAED,kBAAkB,CAAC,OAAe;QAChC,0DAA0D;QAC1D,IAAI,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACnC,OAAO,OAAO,CAAA;QAChB,CAAC;QACD,mDAAmD;QACnD,OAAO,mBAAmB,CAAC,OAAO,CAAC,IAAI,GAAG,OAAO,IAAI,CAAA;IACvD,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,OAAe;QAC3C,IAAI,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACnC,OAAO,OAAO,CAAA;QAChB,CAAC;QACD,OAAO,gBAAgB,CAAC,OAAO,CAAC,CAAA;IAClC,CAAC;IAED,aAAa,CAAC,OAAe;QAC3B,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAA;QACpD,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,eAAe,EAAE,CAAA;QACvD,OAAO,KAAK,CAAC,aAAa,CAAC;YACzB,MAAM,EAAE,SAAS;YACjB,OAAO,EAAE,WAAW;YACpB,QAAQ,EAAE,CAAC;YACX,IAAI,EAAE,CAAC;SACR,CAAC,CAAA;IACJ,CAAC;IAED,YAAY,CAAC,OAAe,EAAE,IAAc,EAAE,GAAS;QACrD,OAAO,YAAY,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;IACzC,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,OAAe;QAChC,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,eAAe,EAAE,CAAA;QACvD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAChC,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QACxB,OAAO,oBAAoB,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IACnD,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,OAAe,EACf,UAA6B;QAE7B,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,eAAe,EAAE,CAAA;QACvD,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC,eAAe,CACxD,OAAO,EACP,CAAC,EACD,CAAC,EACD,UAAU,CACX,CAAA;QAED,wDAAwD;QACxD,sFAAsF;QACtF,MAAM,GAAG,GAAG,eAAe,CAAC,sBAAsB,EAAE,CAAA;QACpD,MAAM,KAAK,GAAG;YACZ,UAAU;YACV,eAAe;YACf,SAAS;YACT,cAAc;SACN,CAAA;QAEV,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,IAAI,GAAG,GAAG,EAAE,CAAC,CAAA;YACtD,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACzB,MAAM,aAAa,CAAC,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAA;YAC9D,CAAC;iBAAM,CAAC;gBACN,QAAQ,CAAC,mCAAmC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;YACnE,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,OAAe;QACrC,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,eAAe,EAAE,CAAA;QACvD,OAAO,oBAAoB,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IACxD,CAAC;IAED,KAAK,CAAC,WAAW,CACf,aAAqB,EACrB,OAAe,EACf,WAAoC,EAAE;QAEtC,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;QAC3C,MAAM,GAAG,GAAG,eAAe,CAAC,sBAAsB,EAAE,CAAA;QACpD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAoB,CAAC,aAAa,EAAE;YACxD,MAAM,EAAE,MAAM;SACf,CAAC,CAAA;QAEF,IAAI,cAAc,GAAG,KAAK,CAAA;QAE1B,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,MAAM,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;YACzC,cAAc,GAAG,IAAI,CAAA;QACvB,CAAC;QAED,MAAM,gBAAgB,GAAG,KAAK,IAAI,EAAE;YAClC,IAAI,cAAc,EAAE,CAAC;gBACnB,IAAI,CAAC;oBACH,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;oBACnD,QAAQ,CAAC,iDAAiD,OAAO,EAAE,CAAC,CAAA;gBACtE,CAAC;gBAAC,OAAO,UAAU,EAAE,CAAC;oBACpB,QAAQ,CACN,sCAAsC,UAAU,YAAY,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAC9G,CAAA;gBACH,CAAC;YACH,CAAC;QACH,CAAC,CAAA;QAED,sDAAsD;QACtD,IAAI,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,qBAAqB,GAAG,EAAE,CAAC,CAAA;QACpE,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC3B,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,mBAAmB,GAAG,EAAE,CAAC,CAAA;QAChE,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC3B,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,qBAAqB,GAAG,EAAE,CAAC,CAAA;QAC9D,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC3B,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,mBAAmB,GAAG,EAAE,CAAC,CAAA;QAC5D,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC3B,MAAM,gBAAgB,EAAE,CAAA;YACxB,MAAM,IAAI,KAAK,CACb,8CAA8C,OAAO,KAAK;gBACxD,mEAAmE,CACtE,CAAA;QACH,CAAC;QAED,yBAAyB;QACzB,6DAA6D;QAC7D,qFAAqF;QACrF,IAAI,SAAS,EAAE,EAAE,CAAC;YAChB,yDAAyD;YACzD,6EAA6E;YAC7E,MAAM,GAAG,GAAG,IAAI,SAAS,gBAAgB,OAAO,GAAG,CAAA;YAEnD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACrC,IAAI,CACF,GAAG,EACH;oBACE,OAAO,EAAE,MAAM;oBACf,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,aAAa,CAAC,OAAO,CAAC,EAAE;iBACnD,EACD,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;oBAC9B,IAAI,KAAK,EAAE,CAAC;wBACV,MAAM,gBAAgB,EAAE,CAAA;wBACxB,MAAM,QAAQ,GAAG,kBAAkB,CACjC,MAAM,IAAI,MAAM,IAAI,KAAK,CAAC,OAAO,EACjC,SAAS,CACV,CAAA;wBACD,MAAM,CACJ,IAAI,KAAK,CACP,QAAQ;4BACN,2CAA2C,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAChG,CACF,CAAA;oBACH,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,OAAO,CAAC,CAAA;oBAClB,CAAC;gBACH,CAAC,CACF,CAAA;YACH,CAAC,CAAC,CAAA;QACJ,CAAC;QAED,0BAA0B;QAC1B,4FAA4F;QAC5F,wFAAwF;QACxF,kFAAkF;QAClF,kEAAkE;QAClE,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,CAAC,CAAA;QAChD,MAAM,IAAI,GAAG;YACX,eAAe;YACf,aAAa,OAAO,EAAE;YACtB,0CAA0C;YAC1C,aAAa,OAAO,EAAE;SACvB,CAAA;QAED,2CAA2C;QAC3C,2EAA2E;QAC3E,IAAI,CAAC,eAAe,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;YACzC,IAAI,CAAC,IAAI,CAAC,UAAU,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAA;QACzC,CAAC;QAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE;gBAClC,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;gBACjC,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,aAAa,CAAC,OAAO,CAAC,EAAE;aACnD,CAAC,CAAA;YAEF,IAAI,MAAM,GAAG,EAAE,CAAA;YACf,IAAI,MAAM,GAAG,EAAE,CAAA;YAEf,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;gBACvC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAA;YAC3B,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;gBACvC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAA;YAC3B,CAAC,CAAC,CAAA;YAEF,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBAC9B,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;oBACf,OAAO,CAAC,OAAO,CAAC,CAAA;gBAClB,CAAC;qBAAM,CAAC;oBACN,MAAM,gBAAgB,EAAE,CAAA;oBACxB,MAAM,QAAQ,GAAG,kBAAkB,CAAC,MAAM,IAAI,MAAM,EAAE,SAAS,CAAC,CAAA;oBAChE,MAAM,CACJ,IAAI,KAAK,CACP,QAAQ;wBACN,2CAA2C,IAAI,KAAK,MAAM,IAAI,MAAM,EAAE,CACzE,CACF,CAAA;gBACH,CAAC;YACH,CAAC,CAAC,CAAA;YAEF,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;gBAC7B,MAAM,gBAAgB,EAAE,CAAA;gBACxB,MAAM,CAAC,GAAG,CAAC,CAAA;YACb,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,KAAK,CACT,SAA0B,EAC1B,UAA6B;QAE7B,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,SAAS,CAAA;QAEzC,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QACjD,IAAI,cAAc,EAAE,CAAC;YACnB,OAAO;gBACL,IAAI;gBACJ,gBAAgB,EAAE,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC;aACtD,CAAA;QACH,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;QAC3C,MAAM,GAAG,GAAG,eAAe,CAAC,sBAAsB,EAAE,CAAA;QAEpD,kCAAkC;QAClC,IAAI,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,WAAW,GAAG,EAAE,CAAC,CAAA;QACnD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YACxB,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,GAAG,EAAE,CAAC,CAAA;QAC/C,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CACb,sCAAsC,OAAO,UAAU;gBACrD,mEAAmE,CACtE,CAAA;QACH,CAAC;QAED,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAoB,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;QACpE,MAAM,OAAO,GAAG,KAAK,CAAC,mBAAmB,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;QACnE,MAAM,OAAO,GAAG,KAAK,CAAC,mBAAmB,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;QACnE,MAAM,EAAE,QAAQ,EAAE,GAAG,eAAe,CAAC,eAAe,EAAE,CAAA;QAEtD,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,qBAAqB,EAAE,CAAC,CAAA;QAEnE,oFAAoF;QACpF,gFAAgF;QAChF,MAAM,IAAI,GAAG;YACX,eAAe;YACf,aAAa,OAAO,EAAE;YACtB,UAAU,IAAI,EAAE;YAChB,cAAc,OAAO,EAAE;YACvB,eAAe,OAAO,EAAE;YACxB,kBAAkB,SAAS,CAAC,WAAW,IAAI,WAAW,EAAE;YACxD,qBAAqB,SAAS,CAAC,cAAc,EAAE;SAChD,CAAA;QAED,IAAI,QAAQ,KAAK,QAAQ,CAAC,KAAK,EAAE,CAAC;YAChC,MAAM,UAAU,GAAG,IAAI,CACrB,KAAK,CAAC,gBAAgB,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAChD,YAAY,CACb,CAAA;YACD,IAAI,CAAC,IAAI,CAAC,YAAY,UAAU,EAAE,CAAC,CAAA;QACrC,CAAC;QAED,IAAI,IAAI,GAAoC,IAAI,CAAA;QAEhD,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,CAAA;QAEzC,IAAI,SAAS,EAAE,EAAE,CAAC;YAChB,IAAI,GAAG,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE;gBACzB,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;gBACjC,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,IAAI;gBACjB,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,UAAU,EAAE;aACvC,CAAC,CAAA;YAEF,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;gBACvC,QAAQ,CAAC,oBAAoB,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;YACjD,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;gBACvC,QAAQ,CAAC,oBAAoB,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;YACjD,CAAC,CAAC,CAAA;YAEF,IAAI,CAAC,KAAK,EAAE,CAAA;QACd,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE;gBACzB,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;gBACrC,QAAQ,EAAE,IAAI;gBACd,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,UAAU,EAAE;aACvC,CAAC,CAAA;YACF,IAAI,CAAC,KAAK,EAAE,CAAA;QACd,CAAC;QAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,2EAA2E;YAC3E,IAAI,OAAO,GAAG,KAAK,CAAA;YAEnB,MAAM,YAAY,GAAG,CAAC,GAAU,EAAE,EAAE;gBAClC,IAAI,OAAO;oBAAE,OAAM;gBACnB,OAAO,GAAG,IAAI,CAAA;gBACd,IAAI,IAAI,EAAE,CAAC;oBACT,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;gBAC5C,CAAC;gBACD,MAAM,CAAC,GAAG,CAAC,CAAA;YACb,CAAC,CAAA;YAED,IAAI,IAAI,EAAE,CAAC;gBACT,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;YAChC,CAAC;YAED,UAAU,CAAC,KAAK,IAAI,EAAE;gBACpB,IAAI,IAAI,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;oBACrB,IAAI,CAAC;wBACH,MAAM,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;oBAC5C,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,QAAQ,CAAC,6BAA6B,KAAK,EAAE,CAAC,CAAA;oBAChD,CAAC;gBACH,CAAC;gBAED,+BAA+B;gBAC/B,IAAI,QAAQ,GAAG,CAAC,CAAA;gBAChB,MAAM,WAAW,GAAG,EAAE,CAAA;gBACtB,MAAM,aAAa,GAAG,GAAG,CAAA;gBAEzB,MAAM,UAAU,GAAG,KAAK,IAAI,EAAE;oBAC5B,IAAI,OAAO;wBAAE,OAAM;oBACnB,QAAQ,EAAE,CAAA;oBACV,IAAI,CAAC;wBACH,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAA;wBACjD,MAAM,SAAS,CACb,IAAI,UAAU,qBAAqB,IAAI,eAAe,CACvD,CAAA;wBACD,IAAI,OAAO;4BAAE,OAAM;wBACnB,OAAO,GAAG,IAAI,CAAA;wBACd,IAAI,IAAI,EAAE,CAAC;4BACT,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;wBAC5C,CAAC;wBACD,OAAO,CAAC;4BACN,IAAI;4BACJ,gBAAgB,EAAE,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC;yBACtD,CAAC,CAAA;oBACJ,CAAC;oBAAC,MAAM,CAAC;wBACP,IAAI,OAAO;4BAAE,OAAM;wBACnB,IAAI,QAAQ,GAAG,WAAW,EAAE,CAAC;4BAC3B,UAAU,CAAC,UAAU,EAAE,aAAa,CAAC,CAAA;wBACvC,CAAC;6BAAM,CAAC;4BACN,IAAI,OAAO;gCAAE,OAAM;4BACnB,OAAO,GAAG,IAAI,CAAA;4BACd,IAAI,IAAI,EAAE,CAAC;gCACT,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;4BAC5C,CAAC;4BAED,oCAAoC;4BACpC,IAAI,QAAQ,GAAkB,IAAI,CAAA;4BAClC,IAAI,CAAC;gCACH,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;gCACnD,QAAQ,GAAG,kBAAkB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;4BACtD,CAAC;4BAAC,MAAM,CAAC;gCACP,2BAA2B;4BAC7B,CAAC;4BAED,MAAM,CACJ,IAAI,KAAK,CAAC,QAAQ,IAAI,wCAAwC,CAAC,CAChE,CAAA;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC,CAAA;gBAED,UAAU,EAAE,CAAA;YACd,CAAC,EAAE,IAAI,CAAC,CAAA;QACV,CAAC,CAAC,CAAA;IACJ,CAAC;IAEO,KAAK,CAAC,SAAS,CAAC,aAAqB;QAC3C,MAAM,OAAO,GAAG,KAAK,CAAC,mBAAmB,CAAC,aAAa,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;QAC5E,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,OAAO,KAAK,CAAA;QACd,CAAC;QAED,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAA;YACzD,OAAO,eAAe,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAA;QAC9C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAA;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,SAA0B;QACnC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,SAAS,CAAA;QAChC,MAAM,OAAO,GAAG,KAAK,CAAC,mBAAmB,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;QAEnE,QAAQ,CAAC,+BAA+B,IAAI,aAAa,IAAI,EAAE,CAAC,CAAA;QAEhE,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QAC/C,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACjB,QAAQ,CAAC,yDAAyD,CAAC,CAAA;YACnE,IAAI,CAAC;gBACH,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAA;gBACjD,MAAM,SAAS,CACb,IAAI,UAAU,qBAAqB,IAAI,eAAe,EACtD,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAA;gBACD,UAAU,CAAC,8BAA8B,IAAI,wBAAwB,CAAC,CAAA;gBACtE,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;YACnC,CAAC;YAAC,MAAM,CAAC;gBACP,QAAQ,CAAC,yCAAyC,CAAC,CAAA;YACrD,CAAC;YACD,OAAM;QACR,CAAC;QAED,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;QAC9D,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;YAClC,QAAQ,CAAC,4BAA4B,CAAC,CAAA;YACtC,OAAM;QACR,CAAC;QAED,MAAM,IAAI,CAAC,uBAAuB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IAClD,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,OAAe;QAC3C,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,QAAQ,CAAC,yBAAyB,CAAC,CAAA;YACnC,OAAO,IAAI,CAAA;QACb,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;YAC/C,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAA;YAExC,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;gBAC3B,UAAU,CAAC,qCAAqC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;gBAClE,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;gBAClC,OAAO,IAAI,CAAA;YACb,CAAC;YAED,IAAI,eAAe,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC1C,QAAQ,CAAC,iBAAiB,GAAG,EAAE,CAAC,CAAA;gBAChC,OAAO,GAAG,CAAA;YACZ,CAAC;iBAAM,CAAC;gBACN,UAAU,CAAC,4CAA4C,GAAG,EAAE,CAAC,CAAA;gBAC7D,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;gBAClC,OAAO,IAAI,CAAA;YACb,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,GAAG,KAA8B,CAAA;YACxC,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACxB,UAAU,CAAC,4BAA4B,CAAC,CAAC,OAAO,EAAE,CAAC,CAAA;YACrD,CAAC;YACD,OAAO,IAAI,CAAA;QACb,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAC5B,IAAY,EACZ,GAAY,EACZ,SAAS,GAAG,KAAK;QAEjB,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAA;YACjD,QAAQ,CAAC,gCAAgC,CAAC,CAAA;YAC1C,MAAM,SAAS,CACb,IAAI,UAAU,qBAAqB,IAAI,mBAAmB,EAC1D,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAA;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,GAAG,KAAc,CAAA;YACxB,QAAQ,CAAC,+BAA+B,CAAC,CAAC,OAAO,EAAE,CAAC,CAAA;YACpD,IAAI,GAAG,EAAE,CAAC;gBACR,IAAI,CAAC;oBACH,MAAM,eAAe,CAAC,gBAAgB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;gBACpD,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,IAAI,CAAA;gBACb,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;YAC5B,MAAM,eAAe,GAAG,GAAG,CAAA;YAE3B,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,GAAG,SAAS,EAAE,CAAC;gBAC1C,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC3C,QAAQ,CAAC,WAAW,GAAG,qCAAqC,CAAC,CAAA;oBAC7D,OAAO,IAAI,CAAA;gBACb,CAAC;gBACD,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;YACnC,CAAC;YAED,QAAQ,CAAC,qCAAqC,SAAS,IAAI,CAAC,CAAA;YAC5D,OAAO,KAAK,CAAA;QACd,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAEO,KAAK,CAAC,uBAAuB,CACnC,GAAW,EACX,OAAe;QAEf,UAAU,CAAC,mDAAmD,GAAG,EAAE,CAAC,CAAA;QAEpE,IAAI,CAAC;YACH,MAAM,eAAe,CAAC,gBAAgB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;YAClD,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YAEtB,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC3C,QAAQ,CAAC,WAAW,GAAG,mCAAmC,CAAC,CAAA;gBAC3D,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;gBAClC,OAAM;YACR,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,GAAG,KAA8B,CAAA;YACxC,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBACvB,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;gBAClC,OAAM;YACR,CAAC;YACD,QAAQ,CAAC,gCAAgC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAA;QACvD,CAAC;QAED,MAAM,EAAE,QAAQ,EAAE,GAAG,eAAe,CAAC,eAAe,EAAE,CAAA;QACtD,MAAM,OAAO,GAAG,QAAQ,KAAK,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAA;QACvE,UAAU,CAAC,wCAAwC,GAAG,EAAE,CAAC,CAAA;QACzD,IAAI,CAAC;YACH,MAAM,eAAe,CAAC,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;YACjD,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YAEtB,IAAI,eAAe,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC1C,MAAM,IAAI,WAAW,CACnB,UAAU,CAAC,oBAAoB,EAC/B,kCAAkC,GAAG,uBAAuB,EAC5D,OAAO,EACP,qCAAqC,OAAO,IAAI,GAAG,EAAE,CACtD,CAAA;YACH,CAAC;YACD,QAAQ,CAAC,WAAW,GAAG,8BAA8B,CAAC,CAAA;YACtD,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;QACpC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,WAAW;gBAAE,MAAM,KAAK,CAAA;YAC7C,MAAM,CAAC,GAAG,KAA8B,CAAA;YACxC,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBACvB,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;gBAClC,OAAM;YACR,CAAC;YACD,QAAQ,CAAC,sBAAsB,CAAC,CAAC,OAAO,EAAE,CAAC,CAAA;QAC7C,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,OAAe;QAC1C,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,OAAO,CAAC,CAAA;YACrB,QAAQ,CAAC,qBAAqB,CAAC,CAAA;QACjC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,GAAG,KAA8B,CAAA;YACxC,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACxB,QAAQ,CAAC,gCAAgC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAA;YACvD,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,EAAU;QACtB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAA;IAC1D,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,SAA0B;QACrC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,SAAS,CAAA;QAChC,MAAM,OAAO,GAAG,KAAK,CAAC,mBAAmB,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;QAEnE,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAA;QAC9D,CAAC;QAED,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAA;YACjD,MAAM,SAAS,CAAC,IAAI,UAAU,qBAAqB,IAAI,eAAe,CAAC,CAAA;YACvE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAA;QACzD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAA;QACjE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,QAAgB;QACvC,OAAO,sBAAsB,CAAC,QAAQ,CAAC,CAAA;IACzC,CAAC;IAED,KAAK,CAAC,OAAO,CACX,SAA0B,EAC1B,UAAkB,EAClB,UAAmC,EAAE;QAErC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,SAAS,CAAA;QACnC,MAAM,QAAQ,GAAI,OAAO,CAAC,QAAmB,IAAI,SAAS,CAAC,QAAQ,CAAA;QACnE,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;QAE3C,IAAI,OAAO,CAAC,cAAc,KAAK,KAAK,EAAE,CAAC;YACrC,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;QAChD,CAAC;QAED,OAAO,aAAa,CAAC,UAAU,EAAE;YAC/B,IAAI;YACJ,QAAQ;YACR,IAAI,EAAE,SAAS,CAAC,SAAS;YACzB,cAAc,EAAE,KAAK;YACrB,eAAe,EAAE,OAAO,CAAC,eAAe,KAAK,KAAK;YAClD,OAAO;SACR,CAAC,CAAA;IACJ,CAAC;IAED,mBAAmB,CAAC,SAA0B,EAAE,QAAiB;QAC/D,MAAM,EAAE,IAAI,EAAE,GAAG,SAAS,CAAA;QAC1B,MAAM,EAAE,GAAG,QAAQ,IAAI,SAAS,CAAC,QAAQ,IAAI,OAAO,CAAA;QACpD,OAAO,WAAW,SAAS,CAAC,SAAS,cAAc,IAAI,IAAI,EAAE,EAAE,CAAA;IACjE,CAAC;IAEQ,KAAK,CAAC,oBAAoB;QACjC,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;QAC/D,IAAI,UAAU;YAAE,OAAO,UAAU,CAAA;QAEjC,MAAM,IAAI,KAAK,CACb,qEAAqE;YACnE,mCAAmC,CACtC,CAAA;IACH,CAAC;IAEQ,KAAK,CAAC,iBAAiB;QAC9B,MAAM,GAAG,GAAG,MAAM,aAAa,CAAC,aAAa,CAAC,eAAe,CAAC,CAAA;QAC9D,IAAI,GAAG;YAAE,OAAO,GAAG,CAAA;QAEnB,MAAM,IAAI,KAAK,CACb,oEAAoE;YAClE,mCAAmC,CACtC,CAAA;IACH,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAA0B,EAAE,QAAiB;QACzD,MAAM,EAAE,IAAI,EAAE,GAAG,SAAS,CAAA;QAC1B,MAAM,EAAE,GAAG,QAAQ,IAAI,SAAS,CAAC,QAAQ,IAAI,OAAO,CAAA;QAEpD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAA;QAE/C,MAAM,YAAY,GAAiB;YACjC,KAAK,EAAE,SAAS;YAChB,GAAG,sBAAsB,EAAE;SAC5B,CAAA;QAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,IAAI,GAAG,KAAK,CAChB,KAAK,EACL,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,SAAS,EAAE,EAAE,CAAC,EACtE,YAAY,CACb,CAAA;YAED,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;YACxB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAA;QACnC,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,SAA0B,EAC1B,QAAgB;QAEhB,uBAAuB,CAAC,QAAQ,CAAC,CAAA;QACjC,MAAM,EAAE,IAAI,EAAE,GAAG,SAAS,CAAA;QAE1B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAA;QAE/C,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,yBAAyB,CACnC,KAAK,EACL,IAAI,EACJ,SAAS,CAAC,SAAS,EACnB,mCAAmC,QAAQ,IAAI,CAChD,CAAA;YACD,MAAM,SAAS,CAAC,GAAG,CAAC,CAAA;QACtB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,GAAG,GAAG,KAAc,CAAA;YAC1B,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBAC7C,MAAM,KAAK,CAAA;YACb,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,SAA0B,EAC1B,QAAgB;QAEhB,uBAAuB,CAAC,QAAQ,CAAC,CAAA;QACjC,MAAM,EAAE,IAAI,EAAE,GAAG,SAAS,CAAA;QAE1B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAA;QAE/C,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,yBAAyB,CACnC,KAAK,EACL,IAAI,EACJ,SAAS,CAAC,SAAS,EACnB,6BAA6B,QAAQ,IAAI,CAC1C,CAAA;YACD,MAAM,SAAS,CAAC,GAAG,CAAC,CAAA;QACtB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,GAAG,GAAG,KAAc,CAAA;YAC1B,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,CAAC;gBACpD,MAAM,KAAK,CAAA;YACb,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,SAA0B;QAC9C,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAA;QACpC,MAAM,EAAE,GAAG,QAAQ,IAAI,OAAO,CAAA;QAE9B,uBAAuB,CAAC,EAAE,CAAC,CAAA;QAE3B,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAA;YAE/C,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,SAAS,CAChC,IAAI,KAAK,qBAAqB,IAAI,OAAO,SAAS,CAAC,SAAS,oHAAoH,EAAE,IAAI,CACvL,CAAA;YACD,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAA;YACxC,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;QAClC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAA;QACb,CAAC;IACH,CAAC;IAED,KAAK,CAAC,wBAAwB,CAC5B,gBAAwB,EACxB,UAAkB;QAElB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAA;QAEzC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAC5C,qBAAqB,CAAC,gBAAgB,CAAC,CAAA;QAEzC,IAAI,SAAS,EAAE,EAAE,CAAC;YAChB,MAAM,GAAG,GAAG,IAAI,QAAQ,QAAQ,IAAI,OAAO,IAAI,OAAO,IAAI,mBAAmB,UAAU,KAAK,QAAQ,EAAE,CAAA;YACtG,MAAM,WAAW,GAAiD,EAAE,CAAA;YAEpE,IAAI,QAAQ,EAAE,CAAC;gBACb,WAAW,CAAC,GAAG,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAA;YAC3D,CAAC;YACD,IAAI,CAAC;gBACH,QAAQ,CAAC,gCAAgC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;gBACnD,MAAM,SAAS,CAAC,GAAG,EAAE,WAAW,CAAC,CAAA;gBACjC,OAAO;oBACL,QAAQ,EAAE,UAAU;oBACpB,MAAM,EAAE,EAAE;oBACV,MAAM,EAAE,EAAE;oBACV,IAAI,EAAE,CAAC;iBACR,CAAA;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAE,KAAe,CAAC,OAAO,CAAC,CAAA;YAC3C,CAAC;QACH,CAAC;QAED,MAAM,IAAI,GAAG;YACX,IAAI;YACJ,IAAI;YACJ,IAAI;YACJ,IAAI;YACJ,IAAI;YACJ,IAAI;YACJ,eAAe;YACf,UAAU;YACV,QAAQ;SACT,CAAA;QAED,MAAM,YAAY,GAAiB;YACjC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;YAC/B,GAAG,sBAAsB,EAAE;YAC3B,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG;SACtE,CAAA;QAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,YAAY,CAAC,CAAA;YAEhD,IAAI,MAAM,GAAG,EAAE,CAAA;YACf,IAAI,MAAM,GAAG,EAAE,CAAA;YAEf,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;gBACvC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAA;YAC3B,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;gBACvC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAA;YAC3B,CAAC,CAAC,CAAA;YAEF,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;YAExB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;gBACxB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;oBACf,OAAO,CAAC;wBACN,QAAQ,EAAE,UAAU;wBACpB,MAAM;wBACN,MAAM;wBACN,IAAI;qBACL,CAAC,CAAA;gBACJ,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,iCAAiC,IAAI,EAAE,CAAC,CAAC,CAAA;gBACtE,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC;IAEO,KAAK,CAAC,WAAW;QACvB,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,aAAa,CAAC,cAAc,CAAC,CAAA;QACpE,IAAI,UAAU;YAAE,OAAO,UAAU,CAAA;QAEjC,MAAM,IAAI,KAAK,CACb,mEAAmE;YACjE,mCAAmC,CACtC,CAAA;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CACV,SAA0B,EAC1B,UAAkB,EAClB,OAAsB;QAEtB,OAAO,YAAY,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA;IACrD,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,SAA0B,EAC1B,QAAgB;QAEhB,uBAAuB,CAAC,QAAQ,CAAC,CAAA;QACjC,MAAM,EAAE,IAAI,EAAE,GAAG,SAAS,CAAA;QAC1B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAA;QAE/C,+DAA+D;QAC/D,mFAAmF;QACnF,MAAM,SAAS,GAAG,yBAAyB,CACzC,KAAK,EACL,IAAI,EACJ,SAAS,CAAC,SAAS,EACnB,6DAA6D,QAAQ,6BAA6B,CACnG,CAAA;QAED,IAAI,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,SAAS,CAAC,CAAA;YAC7C,MAAM,KAAK,GAAG,MAAM;iBACjB,IAAI,EAAE;iBACN,KAAK,CAAC,IAAI,CAAC;iBACX,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;YAC1B,6BAA6B;YAC7B,MAAM,GAAG,GAAG,KAAK;iBACd,KAAK,CAAC,CAAC,CAAC;iBACR,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;iBACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;YAEjC,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;gBACrB,MAAM,OAAO,GAAG,yBAAyB,CACvC,KAAK,EACL,IAAI,EACJ,SAAS,CAAC,SAAS,EACnB,mBAAmB,EAAE,EAAE,CACxB,CAAA;gBACD,IAAI,CAAC;oBACH,MAAM,SAAS,CAAC,OAAO,CAAC,CAAA;gBAC1B,CAAC;gBAAC,MAAM,CAAC;oBACP,iCAAiC;gBACnC,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,kDAAkD;QACpD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CACb,SAA0B,EAC1B,OAA2D;QAE3D,MAAM,EAAE,IAAI,EAAE,GAAG,SAAS,CAAA;QAC1B,MAAM,EAAE,GAAG,OAAO,CAAC,QAAQ,IAAI,SAAS,CAAC,QAAQ,IAAI,OAAO,CAAA;QAC5D,uBAAuB,CAAC,EAAE,CAAC,CAAA;QAE3B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAA;QAE/C,IAAI,SAAS,EAAE,EAAE,CAAC;YAChB,MAAM,GAAG,GAAG,0BAA0B,CACpC,KAAK,EACL,IAAI,EACJ,SAAS,CAAC,SAAS,EACnB,EAAE,EACF,OAAO,CACR,CAAA;YACD,IAAI,CAAC;gBACH,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,CAAA;gBAC/C,IAAI,MAAM;oBAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;gBACxC,IAAI,MAAM;oBAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;gBACxC,OAAM;YACR,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,GAAG,GAAG,KAAc,CAAA;gBAC1B,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;YAC1D,CAAC;QACH,CAAC;QAED,MAAM,IAAI,GAAG;YACX,IAAI;YACJ,WAAW;YACX,IAAI;YACJ,MAAM,CAAC,IAAI,CAAC;YACZ,IAAI;YACJ,SAAS,CAAC,SAAS;YACnB,EAAE;SACH,CAAA;QAED,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;YAChB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,CAAA;YAE5B,MAAM,YAAY,GAAiB;gBACjC,KAAK,EAAE,SAAS;aACjB,CAAA;YAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACrC,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,CAAA;gBAE7C,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;gBACxB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;oBACxB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;wBACf,OAAO,EAAE,CAAA;oBACX,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,IAAI,KAAK,CAAC,mCAAmC,IAAI,EAAE,CAAC,CAAC,CAAA;oBAC9D,CAAC;gBACH,CAAC,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;QACJ,CAAC;aAAM,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACxB,MAAM,YAAY,GAAiB;gBACjC,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC;aACtC,CAAA;YAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACrC,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,IAAK,CAAC,CAAA;gBAClD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,CAAA;gBAE7C,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAM,CAAC,CAAA;gBAE5B,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;oBAC7B,IAAI,CAAC,IAAI,EAAE,CAAA;oBACX,MAAM,CAAC,GAAG,CAAC,CAAA;gBACb,CAAC,CAAC,CAAA;gBAEF,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;gBACxB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;oBACxB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;wBACf,OAAO,EAAE,CAAA;oBACX,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,IAAI,KAAK,CAAC,mCAAmC,IAAI,EAAE,CAAC,CAAC,CAAA;oBAC9D,CAAC;gBACH,CAAC,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;QAC/D,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,SAA0B,EAC1B,KAAa,EACb,OAAsB;QAEtB,MAAM,EAAE,IAAI,EAAE,GAAG,SAAS,CAAA;QAC1B,MAAM,EAAE,GAAG,OAAO,EAAE,QAAQ,IAAI,SAAS,CAAC,QAAQ,IAAI,OAAO,CAAA;QAC7D,uBAAuB,CAAC,EAAE,CAAC,CAAA;QAE3B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAA;QACjD,MAAM,IAAI,GAAG,OAAO,EAAE,IAAI,IAAI,WAAW,CAAA;QACzC,MAAM,IAAI,GAAG,OAAO,EAAE,QAAQ,IAAI,SAAS,CAAC,SAAS,CAAA;QAErD,+CAA+C;QAC/C,MAAM,IAAI,GAAG;YACX,IAAI;YACJ,IAAI;YACJ,IAAI;YACJ,MAAM,CAAC,IAAI,CAAC;YACZ,IAAI;YACJ,IAAI;YACJ,IAAI;YACJ,EAAE;YACF,IAAI;YACJ,KAAK;SACN,CAAA;QAED,IAAI,OAAO,EAAE,GAAG,EAAE,CAAC;YACjB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACpB,CAAC;QAED,iEAAiE;QACjE,MAAM,GAAG,GAAG,OAAO,EAAE,QAAQ;YAC3B,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAE;YACjD,CAAC,CAAC,OAAO,CAAC,GAAG,CAAA;QAEf,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE;gBAChC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;gBAC/B,GAAG;aACJ,CAAC,CAAA;YAEF,IAAI,MAAM,GAAG,EAAE,CAAA;YACf,IAAI,MAAM,GAAG,EAAE,CAAA;YAEf,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;gBACvC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAA;YAC3B,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;gBACvC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAA;YAC3B,CAAC,CAAC,CAAA;YAEF,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;YAExB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;gBACxB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;oBACf,OAAO,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAA;gBACxC,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,4BAA4B,IAAI,EAAE,CAAC,CAAC,CAAA;gBACjE,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,aAAa,CAAC,SAA0B;QAC5C,MAAM,EAAE,IAAI,EAAE,GAAG,SAAS,CAAA;QAC1B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAA;QAEjD,qCAAqC;QACrC,MAAM,GAAG,GAAG,uGAAuG,CAAA;QAEnH,MAAM,IAAI,GAAG;YACX,IAAI;YACJ,WAAW;YACX,IAAI;YACJ,MAAM,CAAC,IAAI,CAAC;YACZ,IAAI;YACJ,SAAS,CAAC,SAAS;YACnB,IAAI,EAAE,oBAAoB;YAC1B,IAAI,EAAE,6BAA6B;YACnC,IAAI;YACJ,GAAG;SACJ,CAAA;QAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE;gBAChC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;aAChC,CAAC,CAAA;YAEF,IAAI,MAAM,GAAG,EAAE,CAAA;YACf,IAAI,MAAM,GAAG,EAAE,CAAA;YAEf,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;gBACvC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAA;YAC3B,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;gBACvC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAA;YAC3B,CAAC,CAAC,CAAA;YAEF,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;YAExB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;gBACxB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;oBACf,MAAM,SAAS,GAAG,MAAM;yBACrB,IAAI,EAAE;yBACN,KAAK,CAAC,IAAI,CAAC;yBACX,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;yBACtB,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;oBAChC,OAAO,CAAC,SAAS,CAAC,CAAA;gBACpB,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,4BAA4B,IAAI,EAAE,CAAC,CAAC,CAAA;gBACjE,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CACd,SAA0B,EAC1B,OAA0B;QAE1B,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAA;QAChD,mBAAmB,CAAC,QAAQ,CAAC,CAAA;QAC7B,MAAM,EAAE,IAAI,EAAE,GAAG,SAAS,CAAA;QAC1B,MAAM,EAAE,GAAG,QAAQ,IAAI,SAAS,CAAC,QAAQ,IAAI,OAAO,CAAA;QACpD,uBAAuB,CAAC,EAAE,CAAC,CAAA;QAC3B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAA;QAEjD,8EAA8E;QAC9E,IAAI,kBAAkB,GAAG,KAAK,CAAA;QAC9B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG;gBACf,IAAI;gBACJ,WAAW;gBACX,IAAI;gBACJ,MAAM,CAAC,IAAI,CAAC;gBACZ,IAAI;gBACJ,SAAS,CAAC,SAAS;gBACnB,IAAI;gBACJ,IAAI;gBACJ,IAAI;gBACJ,mBAAmB;aACpB,CAAA;YACD,MAAM,UAAU,GAAG,MAAM,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC/D,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE;oBACpC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;iBAChC,CAAC,CAAA;gBACF,IAAI,MAAM,GAAG,EAAE,CAAA;gBACf,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;oBACvC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAA;gBAC3B,CAAC,CAAC,CAAA;gBACF,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;oBACxB,IAAI,IAAI,KAAK,CAAC;wBAAE,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;;wBACjC,MAAM,CAAC,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC,CAAA;gBACpD,CAAC,CAAC,CAAA;gBACF,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;YAC1B,CAAC,CAAC,CAAA;YACF,kBAAkB,GAAG,UAAU,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAA;QAClE,CAAC;QAAC,MAAM,CAAC;YACP,+CAA+C;QACjD,CAAC;QAED,MAAM,WAAW,GAAG,kBAAkB;YACpC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC;YAC9B,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QACvD,MAAM,GAAG,GAAG,8BAA8B,QAAQ,wBAAwB,WAAW,iCAAiC,QAAQ,gCAAgC,WAAW,kBAAkB,QAAQ,wBAAwB,WAAW,kBAAkB,QAAQ,gCAAgC,WAAW,qBAAqB,EAAE,YAAY,QAAQ,yBAAyB,EAAE,YAAY,QAAQ,kCAAkC,CAAA;QAEva,+DAA+D;QAC/D,MAAM,IAAI,GAAG;YACX,IAAI;YACJ,WAAW;YACX,IAAI;YACJ,MAAM,CAAC,IAAI,CAAC;YACZ,IAAI;YACJ,SAAS,CAAC,SAAS;SACpB,CAAA;QAED,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC1C,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE;gBAChC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;aAChC,CAAC,CAAA;YAEF,IAAI,MAAM,GAAG,EAAE,CAAA;YACf,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;gBACvC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAA;YAC3B,CAAC,CAAC,CAAA;YAEF,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;gBACxB,IAAI,IAAI,KAAK,CAAC;oBAAE,OAAO,EAAE,CAAA;;oBACpB,MAAM,CAAC,IAAI,KAAK,CAAC,0BAA0B,MAAM,EAAE,CAAC,CAAC,CAAA;YAC5D,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;YAExB,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;YACtB,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,CAAA;QACnB,CAAC,CAAC,CAAA;QAEF,MAAM,gBAAgB,GAAG,WAAW,kBAAkB,CAAC,QAAQ,CAAC,IAAI,kBAAkB,CAAC,QAAQ,CAAC,cAAc,IAAI,IAAI,EAAE,EAAE,CAAA;QAE1H,OAAO;YACL,QAAQ;YACR,QAAQ;YACR,gBAAgB;YAChB,MAAM,EAAE,SAAS,CAAC,MAAM;YACxB,SAAS,EAAE,SAAS,CAAC,IAAI;YACzB,QAAQ,EAAE,EAAE;SACb,CAAA;IACH,CAAC;CACF;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,aAAa,EAAE,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../engines/mariadb/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,8 +11,9 @@ import { createGunzip } from 'zlib';
|
|
|
11
11
|
import { validateRestoreCompatibility } from './version-validator.js';
|
|
12
12
|
import { getEngineDefaults } from '../../config/defaults.js';
|
|
13
13
|
import { logDebug, SpinDBError, ErrorCodes } from '../../core/error-handler.js';
|
|
14
|
+
import { getDefaultUsername, loadCredentials, } from '../../core/credential-manager.js';
|
|
14
15
|
import { platformService } from '../../core/platform-service.js';
|
|
15
|
-
import { Platform } from '../../types/index.js';
|
|
16
|
+
import { Engine, Platform, } from '../../types/index.js';
|
|
16
17
|
const engineDef = getEngineDefaults('mariadb');
|
|
17
18
|
// =============================================================================
|
|
18
19
|
// Backup Format Detection
|
|
@@ -143,9 +144,17 @@ const COMPAT_INIT_SQL = [
|
|
|
143
144
|
/**
|
|
144
145
|
* Internal restore function with optional compatibility mode
|
|
145
146
|
*/
|
|
146
|
-
function doRestore(backupPath, mysql, port, database, user, format, withCompatSettings) {
|
|
147
|
+
function doRestore(backupPath, mysql, port, database, user, password, format, withCompatSettings) {
|
|
148
|
+
const env = { ...process.env };
|
|
149
|
+
if (password) {
|
|
150
|
+
env.MYSQL_PWD = password;
|
|
151
|
+
}
|
|
152
|
+
else {
|
|
153
|
+
delete env.MYSQL_PWD;
|
|
154
|
+
}
|
|
147
155
|
const spawnOptions = {
|
|
148
156
|
stdio: ['pipe', 'pipe', 'pipe'],
|
|
157
|
+
env,
|
|
149
158
|
};
|
|
150
159
|
return new Promise((resolve, reject) => {
|
|
151
160
|
const args = ['-h', '127.0.0.1', '-P', String(port), '-u', user, database];
|
|
@@ -236,7 +245,7 @@ function doRestore(backupPath, mysql, port, database, user, format, withCompatSe
|
|
|
236
245
|
* automatically retries with compatibility settings that enable DYNAMIC row format.
|
|
237
246
|
*/
|
|
238
247
|
export async function restoreBackup(backupPath, options) {
|
|
239
|
-
const { port, database, user = engineDef.superuser, validateVersion = true, binPath, } = options;
|
|
248
|
+
const { containerName, port, database, user: requestedUser = engineDef.superuser, password: requestedPassword, validateVersion = true, binPath, } = options;
|
|
240
249
|
// Validate version compatibility if requested
|
|
241
250
|
if (validateVersion) {
|
|
242
251
|
try {
|
|
@@ -253,12 +262,19 @@ export async function restoreBackup(backupPath, options) {
|
|
|
253
262
|
}
|
|
254
263
|
}
|
|
255
264
|
const mysql = getMysqlClientPath(binPath);
|
|
265
|
+
const savedCreds = containerName &&
|
|
266
|
+
requestedPassword === undefined &&
|
|
267
|
+
requestedUser === engineDef.superuser
|
|
268
|
+
? await loadCredentials(containerName, Engine.MariaDB, getDefaultUsername(Engine.MariaDB))
|
|
269
|
+
: null;
|
|
270
|
+
const user = savedCreds?.username || requestedUser;
|
|
271
|
+
const password = requestedPassword ?? savedCreds?.password;
|
|
256
272
|
// Detect format and check for wrong engine
|
|
257
273
|
const format = await detectBackupFormat(backupPath);
|
|
258
274
|
logDebug('Detected backup format', { format: format.format });
|
|
259
275
|
assertCompatibleFormat(format);
|
|
260
276
|
// First attempt: try without compatibility settings
|
|
261
|
-
const result = await doRestore(backupPath, mysql, port, database, user, format, false);
|
|
277
|
+
const result = await doRestore(backupPath, mysql, port, database, user, password, format, false);
|
|
262
278
|
// Check if restore succeeded
|
|
263
279
|
if (result.code === 0) {
|
|
264
280
|
return result;
|
|
@@ -270,7 +286,7 @@ export async function restoreBackup(backupPath, options) {
|
|
|
270
286
|
if (isRowSizeError) {
|
|
271
287
|
logDebug('Detected row size error, retrying with compatibility settings');
|
|
272
288
|
// Retry with compatibility settings
|
|
273
|
-
const retryResult = await doRestore(backupPath, mysql, port, database, user, format, true);
|
|
289
|
+
const retryResult = await doRestore(backupPath, mysql, port, database, user, password, format, true);
|
|
274
290
|
if (retryResult.code === 0) {
|
|
275
291
|
return {
|
|
276
292
|
...retryResult,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"restore.js","sourceRoot":"","sources":["../../../engines/mariadb/restore.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAqB,MAAM,eAAe,CAAA;AACxD,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,IAAI,CAAA;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AACnC,OAAO,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAA;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,
|
|
1
|
+
{"version":3,"file":"restore.js","sourceRoot":"","sources":["../../../engines/mariadb/restore.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,9 +5,11 @@
|
|
|
5
5
|
import { mkdir, stat, copyFile, readdir } from 'fs/promises';
|
|
6
6
|
import { existsSync } from 'fs';
|
|
7
7
|
import { join, dirname } from 'path';
|
|
8
|
+
import { getDefaultUsername, loadCredentials } from '../../core/credential-manager.js';
|
|
8
9
|
import { logDebug } from '../../core/error-handler.js';
|
|
9
10
|
import { paths } from '../../config/paths.js';
|
|
10
11
|
import { meilisearchApiRequest } from './api-client.js';
|
|
12
|
+
import { Engine } from '../../types/index.js';
|
|
11
13
|
// Backup operations may take longer than the default timeout
|
|
12
14
|
const BACKUP_TIMEOUT_MS = 600000; // 10 minutes
|
|
13
15
|
/**
|
|
@@ -16,6 +18,8 @@ const BACKUP_TIMEOUT_MS = 600000; // 10 minutes
|
|
|
16
18
|
*/
|
|
17
19
|
export async function createBackup(container, outputPath, _options) {
|
|
18
20
|
const { port, name } = container;
|
|
21
|
+
const savedCreds = await loadCredentials(name, Engine.Meilisearch, getDefaultUsername(Engine.Meilisearch));
|
|
22
|
+
const apiKey = savedCreds?.apiKey;
|
|
19
23
|
// Ensure output directory exists
|
|
20
24
|
const outputDir = dirname(outputPath);
|
|
21
25
|
if (!existsSync(outputDir)) {
|
|
@@ -23,7 +27,7 @@ export async function createBackup(container, outputPath, _options) {
|
|
|
23
27
|
}
|
|
24
28
|
// Trigger snapshot creation via REST API
|
|
25
29
|
logDebug(`Creating Meilisearch snapshot via REST API on port ${port}`);
|
|
26
|
-
const response = await meilisearchApiRequest(port, 'POST', '/snapshots', undefined, BACKUP_TIMEOUT_MS);
|
|
30
|
+
const response = await meilisearchApiRequest(port, 'POST', '/snapshots', undefined, BACKUP_TIMEOUT_MS, apiKey);
|
|
27
31
|
// Meilisearch returns 202 Accepted for snapshot creation
|
|
28
32
|
if (response.status !== 202 && response.status !== 200) {
|
|
29
33
|
throw new Error(`Failed to create Meilisearch snapshot: ${JSON.stringify(response.data)}`);
|
|
@@ -35,7 +39,7 @@ export async function createBackup(container, outputPath, _options) {
|
|
|
35
39
|
if (taskUid !== undefined) {
|
|
36
40
|
logDebug(`Meilisearch snapshot task created: ${taskUid}`);
|
|
37
41
|
// Wait for task to complete
|
|
38
|
-
await waitForTask(port, taskUid, BACKUP_TIMEOUT_MS);
|
|
42
|
+
await waitForTask(port, taskUid, BACKUP_TIMEOUT_MS, apiKey);
|
|
39
43
|
}
|
|
40
44
|
// The snapshot is stored in the snapshots folder (sibling of data, not inside it)
|
|
41
45
|
// IMPORTANT: Meilisearch fails if --snapshot-dir is inside --db-path
|
|
@@ -106,11 +110,11 @@ export async function createBackup(container, outputPath, _options) {
|
|
|
106
110
|
/**
|
|
107
111
|
* Wait for a Meilisearch task to complete
|
|
108
112
|
*/
|
|
109
|
-
async function waitForTask(port, taskUid, timeoutMs) {
|
|
113
|
+
async function waitForTask(port, taskUid, timeoutMs, apiKey) {
|
|
110
114
|
const startTime = Date.now();
|
|
111
115
|
const checkInterval = 500;
|
|
112
116
|
while (Date.now() - startTime < timeoutMs) {
|
|
113
|
-
const response = await meilisearchApiRequest(port, 'GET', `/tasks/${taskUid}
|
|
117
|
+
const response = await meilisearchApiRequest(port, 'GET', `/tasks/${taskUid}`, undefined, 30000, apiKey);
|
|
114
118
|
if (response.status === 200) {
|
|
115
119
|
const task = response.data;
|
|
116
120
|
if (task.status === 'succeeded') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backup.js","sourceRoot":"","sources":["../../../engines/meilisearch/backup.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAA;AAC/B,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"backup.js","sourceRoot":"","sources":["../../../engines/meilisearch/backup.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { spawn } from 'child_process';
|
|
2
2
|
import { existsSync } from 'fs';
|
|
3
|
-
import { mkdir, writeFile, readFile, unlink } from 'fs/promises';
|
|
3
|
+
import { chmod, mkdir, writeFile, readFile, unlink } from 'fs/promises';
|
|
4
4
|
import { join } from 'path';
|
|
5
5
|
import { BaseEngine } from '../base-engine.js';
|
|
6
6
|
import { paths } from '../../config/paths.js';
|
|
7
7
|
import { getEngineDefaults } from '../../config/defaults.js';
|
|
8
8
|
import { platformService, isWindows } from '../../core/platform-service.js';
|
|
9
9
|
import { configManager } from '../../core/config-manager.js';
|
|
10
|
-
import { logDebug, logWarning, assertValidUsername,
|
|
10
|
+
import { logDebug, logWarning, assertValidUsername, } from '../../core/error-handler.js';
|
|
11
|
+
import { getDefaultUsername, loadCredentials, } from '../../core/credential-manager.js';
|
|
11
12
|
import { processManager } from '../../core/process-manager.js';
|
|
12
13
|
import { portManager } from '../../core/port-manager.js';
|
|
13
14
|
import { meilisearchBinaryManager } from './binary-manager.js';
|
|
@@ -17,9 +18,11 @@ import { fetchAvailableVersions as fetchHostdbVersions } from './hostdb-releases
|
|
|
17
18
|
import { detectBackupFormat as detectBackupFormatImpl, restoreBackup, } from './restore.js';
|
|
18
19
|
import { createBackup } from './backup.js';
|
|
19
20
|
import { meilisearchApiRequest } from './api-client.js';
|
|
21
|
+
import { Engine, } from '../../types/index.js';
|
|
20
22
|
import { parseRESTAPIResult } from '../../core/query-parser.js';
|
|
21
23
|
const ENGINE = 'meilisearch';
|
|
22
24
|
const engineDef = getEngineDefaults(ENGINE);
|
|
25
|
+
const MASTER_KEY_FILE = 'master.key';
|
|
23
26
|
/**
|
|
24
27
|
* Initial delay before checking if Meilisearch is ready after spawning.
|
|
25
28
|
* Windows requires a longer delay as process startup is slower.
|
|
@@ -104,6 +107,18 @@ async function remoteMeilisearchRequest(baseUrl, method, path, headers, body, ti
|
|
|
104
107
|
clearTimeout(timeoutId);
|
|
105
108
|
}
|
|
106
109
|
}
|
|
110
|
+
function getMasterKeyPath(containerName) {
|
|
111
|
+
const containerDir = paths.getContainerPath(containerName, { engine: ENGINE });
|
|
112
|
+
return join(containerDir, MASTER_KEY_FILE);
|
|
113
|
+
}
|
|
114
|
+
async function readMasterKey(containerName) {
|
|
115
|
+
const masterKeyPath = getMasterKeyPath(containerName);
|
|
116
|
+
if (!existsSync(masterKeyPath)) {
|
|
117
|
+
return null;
|
|
118
|
+
}
|
|
119
|
+
const masterKey = (await readFile(masterKeyPath, 'utf-8')).trim();
|
|
120
|
+
return masterKey || null;
|
|
121
|
+
}
|
|
107
122
|
export class MeilisearchEngine extends BaseEngine {
|
|
108
123
|
name = ENGINE;
|
|
109
124
|
displayName = 'Meilisearch';
|
|
@@ -337,6 +352,12 @@ export class MeilisearchEngine extends BaseEngine {
|
|
|
337
352
|
args.push('--import-snapshot', pendingSnapshotImport);
|
|
338
353
|
logDebug(`Will import snapshot: ${pendingSnapshotImport}`);
|
|
339
354
|
}
|
|
355
|
+
const masterKey = await readMasterKey(name);
|
|
356
|
+
const processEnv = { ...process.env };
|
|
357
|
+
if (masterKey) {
|
|
358
|
+
processEnv.MEILI_MASTER_KEY = masterKey;
|
|
359
|
+
logDebug(`Using persisted Meilisearch master key for ${name}`);
|
|
360
|
+
}
|
|
340
361
|
logDebug(`Starting meilisearch with args: ${args.join(' ')}`);
|
|
341
362
|
/**
|
|
342
363
|
* Check log file for startup errors
|
|
@@ -366,6 +387,7 @@ export class MeilisearchEngine extends BaseEngine {
|
|
|
366
387
|
stdio: ['ignore', 'pipe', 'pipe'],
|
|
367
388
|
detached: true,
|
|
368
389
|
windowsHide: true,
|
|
390
|
+
env: processEnv,
|
|
369
391
|
};
|
|
370
392
|
const proc = spawn(meilisearchServer, args, spawnOpts);
|
|
371
393
|
let settled = false;
|
|
@@ -462,6 +484,7 @@ export class MeilisearchEngine extends BaseEngine {
|
|
|
462
484
|
cwd: containerDir,
|
|
463
485
|
stdio: ['ignore', 'ignore', 'ignore'],
|
|
464
486
|
detached: true,
|
|
487
|
+
env: processEnv,
|
|
465
488
|
});
|
|
466
489
|
proc.unref();
|
|
467
490
|
if (!proc.pid) {
|
|
@@ -905,7 +928,11 @@ export class MeilisearchEngine extends BaseEngine {
|
|
|
905
928
|
* POST /indexes/movies/search {"q": "action"}
|
|
906
929
|
*/
|
|
907
930
|
async executeQuery(container, query, options) {
|
|
908
|
-
const { port } = container;
|
|
931
|
+
const { name, port } = container;
|
|
932
|
+
const savedCreds = options?.password
|
|
933
|
+
? null
|
|
934
|
+
: await loadCredentials(name, Engine.Meilisearch, getDefaultUsername(Engine.Meilisearch));
|
|
935
|
+
const apiKey = options?.password || savedCreds?.apiKey;
|
|
909
936
|
// Parse the query string: METHOD /path [body]
|
|
910
937
|
const trimmed = query.trim();
|
|
911
938
|
const spaceIdx = trimmed.indexOf(' ');
|
|
@@ -941,7 +968,7 @@ export class MeilisearchEngine extends BaseEngine {
|
|
|
941
968
|
if (!path.startsWith('/')) {
|
|
942
969
|
path = '/' + path;
|
|
943
970
|
}
|
|
944
|
-
const response = await meilisearchApiRequest(port, method, path, body, 30000,
|
|
971
|
+
const response = await meilisearchApiRequest(port, method, path, body, 30000, apiKey);
|
|
945
972
|
if (response.status >= 400) {
|
|
946
973
|
throw new Error(`Meilisearch API error (${response.status}): ${JSON.stringify(response.data)}`);
|
|
947
974
|
}
|
|
@@ -952,9 +979,10 @@ export class MeilisearchEngine extends BaseEngine {
|
|
|
952
979
|
* Meilisearch uses indexes, so we query the /indexes endpoint.
|
|
953
980
|
*/
|
|
954
981
|
async listDatabases(container) {
|
|
955
|
-
const { port } = container;
|
|
982
|
+
const { name, port } = container;
|
|
983
|
+
const savedCreds = await loadCredentials(name, Engine.Meilisearch, getDefaultUsername(Engine.Meilisearch));
|
|
956
984
|
try {
|
|
957
|
-
const response = await meilisearchApiRequest(port, 'GET', '/indexes');
|
|
985
|
+
const response = await meilisearchApiRequest(port, 'GET', '/indexes', undefined, 30000, savedCreds?.apiKey);
|
|
958
986
|
if (response.status === 200 && response.data) {
|
|
959
987
|
// Response is { results: [{ uid: "index_name", ... }, ...], ... }
|
|
960
988
|
const data = response.data;
|
|
@@ -972,59 +1000,28 @@ export class MeilisearchEngine extends BaseEngine {
|
|
|
972
1000
|
}
|
|
973
1001
|
}
|
|
974
1002
|
async createUser(container, options) {
|
|
975
|
-
const {
|
|
1003
|
+
const { name, port } = container;
|
|
1004
|
+
const { username, password } = options;
|
|
976
1005
|
assertValidUsername(username);
|
|
977
|
-
const
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
const
|
|
981
|
-
if (
|
|
982
|
-
|
|
983
|
-
'
|
|
984
|
-
}
|
|
985
|
-
// Derive a deterministic UID from the username so createUser is idempotent.
|
|
986
|
-
// Meilisearch UIDs are UUIDv4 format; we derive one via a stable hash.
|
|
987
|
-
const { createHash } = await import('crypto');
|
|
988
|
-
const hashBuf = createHash('md5').update(`spindb:${username}`).digest();
|
|
989
|
-
// Set version (4) and variant (RFC 4122) bits for valid UUIDv4
|
|
990
|
-
hashBuf[6] = (hashBuf[6] & 0x0f) | 0x40;
|
|
991
|
-
hashBuf[8] = (hashBuf[8] & 0x3f) | 0x80;
|
|
992
|
-
const hash = hashBuf.toString('hex');
|
|
993
|
-
const uid = `${hash.slice(0, 8)}-${hash.slice(8, 12)}-${hash.slice(12, 16)}-${hash.slice(16, 20)}-${hash.slice(20, 32)}`;
|
|
994
|
-
// Check if a key with this UID already exists
|
|
995
|
-
const existingResponse = await meilisearchApiRequest(port, 'GET', `/keys/${uid}`);
|
|
996
|
-
let apiKey;
|
|
997
|
-
if (existingResponse.status === 200) {
|
|
998
|
-
// Key already exists — return it
|
|
999
|
-
const existingData = existingResponse.data;
|
|
1000
|
-
if (!existingData.key) {
|
|
1001
|
-
throw new Error('Existing API key response missing key property');
|
|
1002
|
-
}
|
|
1003
|
-
apiKey = existingData.key;
|
|
1004
|
-
logDebug(`Found existing Meilisearch API key: ${username}`);
|
|
1005
|
-
}
|
|
1006
|
-
else if (existingResponse.status !== 404) {
|
|
1007
|
-
// Unexpected error (e.g., 401, 403, 429, 500) — surface it instead of silently creating a new key
|
|
1008
|
-
throw new Error(`Failed to check existing API key (HTTP ${existingResponse.status}): ${JSON.stringify(existingResponse.data)}`);
|
|
1009
|
-
}
|
|
1010
|
-
else {
|
|
1011
|
-
// Create a new API key with the deterministic UID
|
|
1012
|
-
const response = await meilisearchApiRequest(port, 'POST', '/keys', {
|
|
1013
|
-
uid,
|
|
1014
|
-
description: username,
|
|
1015
|
-
actions: ['*'],
|
|
1016
|
-
indexes: ['*'],
|
|
1017
|
-
expiresAt: null,
|
|
1018
|
-
});
|
|
1019
|
-
if (response.status !== 201 && response.status !== 200) {
|
|
1020
|
-
throw new Error(`Failed to create API key: ${JSON.stringify(response.data)}`);
|
|
1006
|
+
const masterKeyPath = getMasterKeyPath(name);
|
|
1007
|
+
let masterKey = await readMasterKey(name);
|
|
1008
|
+
const nextMasterKey = (password || '').trim();
|
|
1009
|
+
const shouldRotateKey = nextMasterKey.length > 0 && nextMasterKey !== masterKey;
|
|
1010
|
+
if (!masterKey || shouldRotateKey) {
|
|
1011
|
+
if (!nextMasterKey) {
|
|
1012
|
+
throw new Error('Meilisearch auth requires a non-empty master key password');
|
|
1021
1013
|
}
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
1014
|
+
masterKey = nextMasterKey;
|
|
1015
|
+
await writeFile(masterKeyPath, `${masterKey}\n`, 'utf-8');
|
|
1016
|
+
await chmod(masterKeyPath, 0o600);
|
|
1017
|
+
const statusResult = await this.status(container);
|
|
1018
|
+
if (statusResult.running) {
|
|
1019
|
+
logWarning(`Restarting Meilisearch container "${name}" to apply master key change. ` +
|
|
1020
|
+
'Active client connections will be disconnected.');
|
|
1021
|
+
await this.stop(container);
|
|
1022
|
+
await this.start(container);
|
|
1025
1023
|
}
|
|
1026
|
-
|
|
1027
|
-
logDebug(`Created Meilisearch API key: ${username}`);
|
|
1024
|
+
logDebug(`Configured persisted Meilisearch master key for ${name}`);
|
|
1028
1025
|
}
|
|
1029
1026
|
const connectionString = `http://127.0.0.1:${port}`;
|
|
1030
1027
|
return {
|
|
@@ -1032,8 +1029,8 @@ export class MeilisearchEngine extends BaseEngine {
|
|
|
1032
1029
|
password: '',
|
|
1033
1030
|
connectionString,
|
|
1034
1031
|
engine: container.engine,
|
|
1035
|
-
container:
|
|
1036
|
-
apiKey,
|
|
1032
|
+
container: name,
|
|
1033
|
+
apiKey: masterKey,
|
|
1037
1034
|
};
|
|
1038
1035
|
}
|
|
1039
1036
|
}
|